kanzi::MaterialRenderer Class Reference

Material renderer. More...

#include <kanzi/core.ui/graphics3d/material_renderer.hpp>

Public Member Functions

void attach (MaterialSharedPtr material, Node3D &node, Mesh *mesh)
 Reattaches material renderer to a model and a mesh. More...
 
void bind (Renderer3D &renderer)
 Bind material renderer for rendering. More...
 
void draw (Renderer3D &renderer, Node3D &node, KzcDynamicArray *transformedObjects) const
 Draw the given morph using attached material. More...
 
void restoreResources ()
 Restore resources after sleep. More...
 
MaterialSharedPtr getMaterial () const
 Access brush. More...
 
MeshgetMesh () const
 Access mesh. More...
 
unsigned int getPropertyChangeCounter () const
 Access property change counter. More...
 
bool isRenderable () const
 Tells if this material renderer can be used for rendering. More...
 

Static Public Member Functions

static unique_ptr< MaterialRenderercreate ()
 Constructor. More...
 

Protected Member Functions

 MaterialRenderer ()
 Constructor. More...
 

Detailed Description

Material renderer.

Connects material, mesh and 3D node like a brush renderer connects material, brush and 2D node.

Constructor & Destructor Documentation

kanzi::MaterialRenderer::MaterialRenderer ( )
inlineexplicitprotected

Constructor.

Parameters
materialMaterial to use.
meshMesh to use.
nodeNode to attach to.

Member Function Documentation

static unique_ptr<MaterialRenderer> kanzi::MaterialRenderer::create ( )
static

Constructor.

Parameters
nodeNode to attach to.
void kanzi::MaterialRenderer::attach ( MaterialSharedPtr  material,
Node3D node,
Mesh mesh 
)

Reattaches material renderer to a model and a mesh.

Called by Node3D when material or mesh is updated.

Parameters
materialMaterial to use.
meshMesh to use.
void kanzi::MaterialRenderer::bind ( Renderer3D renderer)

Bind material renderer for rendering.

Must be called before calling draw().

Parameters
rendererRenderer to use.
void kanzi::MaterialRenderer::draw ( Renderer3D renderer,
Node3D node,
KzcDynamicArray transformedObjects 
) const

Draw the given morph using attached material.

Parameters
rendererRenderer to use.
transformedObjectsList of transformed objects.
clusterCluster of the mesh to draw.
void kanzi::MaterialRenderer::restoreResources ( )

Restore resources after sleep.

MaterialSharedPtr kanzi::MaterialRenderer::getMaterial ( ) const
inline

Access brush.

Returns
Material shared pointer.
Mesh* kanzi::MaterialRenderer::getMesh ( ) const
inline

Access mesh.

Returns
Mesh pointer.
unsigned int kanzi::MaterialRenderer::getPropertyChangeCounter ( ) const
inline

Access property change counter.

bool kanzi::MaterialRenderer::isRenderable ( ) const
inline

Tells if this material renderer can be used for rendering.

Returns
True if yes, false if no.

The documentation for this class was generated from the following file: