void ImposterManager::ProcessQueue() { if(!queue.empty()) { Camera * camera = scene->GetCurrentCamera(); RenderManager::Instance()->SetRenderTarget(sharedFBO->GetTexture()); int32 maxCount = Min(MAX_UPDATES_PER_FRAME, (int32)queue.size()); for(int32 i = 0; i < maxCount; ++i) { ImposterNode * node = queue.front(); queue.pop_front(); node->UpdateImposter(); } BindFBO(RenderManager::Instance()->fboViewFramebuffer); camera->Set(); } }
void RenderPass::PreRender() const { m_pipelineState.BindPipelineState(); m_shader.use(); BindFBO(); }