| 1149 | } |
| 1150 | |
| 1151 | bool TriDevice::Render() |
| 1152 | { |
| 1153 | D3DPERF_EVENT( L"TriDevice::Render" ); |
| 1154 | |
| 1155 | // We need to throttle the client right after Present call, so that GPU can have a break |
| 1156 | Throttle(); |
| 1157 | |
| 1158 | |
| 1159 | |
| 1160 | |
| 1161 | USE_MAIN_THREAD_RENDER_CONTEXT(); |
| 1162 | |
| 1163 | Tr2SyncToGpu::GetInstance().Tick(); |
| 1164 | |
| 1165 | Tr2Viewport vp; |
| 1166 | mViewport.ConvertToTr2Viewport( vp ); |
| 1167 | renderContext.SetViewport( vp ); |
| 1168 | |
| 1169 | Tr2GpuProfiler::GetProfiler().BeginFrame( Tr2Renderer::GetCurrentFrameCounter() ); |
| 1170 | |
| 1171 | // start rendering |
| 1172 | Tr2Renderer::BeginFrame(); |
| 1173 | |
| 1174 | Tr2Renderer::BeginRenderContext(); |
| 1175 | |
| 1176 | Tr2Renderer::ReserveQuadListIndexBuffer( 0 ); |
| 1177 | |
| 1178 | if( m_renderJobs ) |
| 1179 | { |
| 1180 | m_renderJobs->Run( m_realTime, m_simTime ); |
| 1181 | } |
| 1182 | |
| 1183 | Tr2GpuProfiler::GetProfiler().EndFrame(); |
| 1184 | Tr2Renderer::EndRenderContext(); |
| 1185 | Tr2Renderer::EndFrame(); |
| 1186 | |
| 1187 | return true; |
| 1188 | } |
| 1189 | |
| 1190 | void TriDevice::AddPostUpdateCallback( IBlueCallbackMan::CallbackFunc cb, void* context ) |
| 1191 | { |
no test coverage detected