RenderablePtr DebugBuildFrustum( const Frustum& box ) { GeometryBuffer* gb = AllocateHeap(GeometryBuffer); MaterialHandle materialHandle = MaterialCreate(AllocatorGetHeap(), "FrustumDebug"); Material* material = materialHandle.Resolve(); material->setBackfaceCulling( false ); Renderable* renderable = AllocateHeap(Renderable); renderable->setPrimitiveType(PrimitiveType::Quads); renderable->setGeometryBuffer(gb); renderable->setMaterial(materialHandle); renderable->setPrimitiveRasterMode( PrimitiveRasterMode::Wireframe ); DebugUpdateFrustum(renderable, box); return renderable; }
void Projector::updateDebugRenderable() const { if( !debugRenderable ) return; DebugUpdateFrustum( debugRenderable, frustum ); }