bool Model::isHardwareSkinned() { RenderPipeline pipeline = GetRenderDevice()->getPipeline(); bool isFixed = pipeline == RenderPipeline::Fixed; bool isCPU = skinningMode == SkinningMode::CPU; return !(isFixed || isCPU); }
void Camera::render( RenderBlock& block, bool clearView ) { if (!activeView) return; RenderDevice* renderDevice = GetRenderDevice(); renderDevice->setActiveView( activeView ); if (clearView) renderDevice->clearView(); for (auto it= drawer.renderables.end() -1;it >= drawer.renderables.begin();--it) block.renderables.Insert(block.renderables.begin(), *it); renderDevice->render( block ); }
void Camera::render( RenderBlock& block, bool clearView ) { if( !activeView ) return; RenderDevice* renderDevice = GetRenderDevice(); renderDevice->setActiveView( activeView ); if( clearView ) renderDevice->clearView(); block.renderables.insert( block.renderables.begin(), drawer.renderables.begin(), drawer.renderables.end() ); renderDevice->render( block ); }
RenderTarget::~RenderTarget() { if( !context ) return; RenderDevice* renderDevice = GetRenderDevice(); if( renderDevice->getActiveContext() == context ) { // Remove the context from the render device. renderDevice->setActiveContext(nullptr); } for(size_t i = 0; i < views.size(); ++i) { RenderView* view = views[i]; Deallocate(view); } }
void RenderTarget::removeViews() { RenderDevice* renderDevice = GetRenderDevice(); for( size_t i = 0; i < views.size(); i++ ) { RenderView* view = views[i]; if( renderDevice->getActiveView() == view ) { // Remove the active view from the render device. renderDevice->setActiveView(nullptr); } Deallocate(view); } views.clear(); }