| 62 | void CRenderDevice::Clear() { ::Render->Clear(); } |
| 63 | |
| 64 | void CRenderDevice::End() |
| 65 | { |
| 66 | if (dwPrecacheFrame) |
| 67 | { |
| 68 | ::Sound->set_master_volume(0.f); |
| 69 | |
| 70 | const HWND insertPos = IsDebuggerPresent() ? HWND_NOTOPMOST : HWND_TOPMOST; |
| 71 | |
| 72 | SetWindowPos(Device.m_hWnd, insertPos, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); |
| 73 | |
| 74 | dwPrecacheFrame--; |
| 75 | |
| 76 | if (!load_screen_renderer.b_registered) |
| 77 | { |
| 78 | ::Render->ClearTarget(); |
| 79 | |
| 80 | if (0 == dwPrecacheFrame) |
| 81 | { |
| 82 | ::Sound->set_master_volume(1.f); |
| 83 | } |
| 84 | } |
| 85 | |
| 86 | if (0 == dwPrecacheFrame) |
| 87 | { |
| 88 | SetWindowPos(Device.m_hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE); |
| 89 | |
| 90 | //m_pRender->updateGamma(); |
| 91 | |
| 92 | ::Sound->set_master_volume(1.f); |
| 93 | |
| 94 | //Memory.mem_compact(); |
| 95 | |
| 96 | Msg("* MEMORY USAGE: %d K", Memory.mem_usage() / 1024); |
| 97 | Msg("* End of synchronization A[%d] R[%d]", b_is_Active, b_is_Ready); |
| 98 | } |
| 99 | } |
| 100 | |
| 101 | g_bRendering = FALSE; |
| 102 | |
| 103 | extern BOOL g_appLoaded; |
| 104 | |
| 105 | if (g_appLoaded && is_editor_active) |
| 106 | { |
| 107 | ImGui::Render(); |
| 108 | |
| 109 | ImGui_ImplDX11_RenderDrawData(ImGui::GetDrawData()); |
| 110 | } |
| 111 | |
| 112 | ::Render->End(); |
| 113 | |
| 114 | vCameraPositionSaved = vCameraPosition; |
| 115 | vCameraDirectionSaved = vCameraDirection; |
| 116 | vCameraTopSaved = vCameraTop; |
| 117 | vCameraRightSaved = vCameraRight; |
| 118 | |
| 119 | mFullTransformSaved = mFullTransform; |
| 120 | mViewSaved = mView; |
| 121 | mProjectSaved = mProject; |
no test coverage detected