Murl::Graph::IResourceShadowGeometry Interface Referenceabstract

The IResourceShadowGeometry graph node interface. More...

#include "murl_graph_i_resource_shadow_geometry.h"

Inheritance diagram for Murl::Graph::IResourceShadowGeometry:

Public Member Functions

virtual INodeGetNodeInterface ()=0
 Get the mutable Graph::INode interface. More...
 
virtual const INodeGetNodeInterface () const =0
 Get the constant Graph::INode interface. More...
 
virtual ITransformGetTransformInterface ()=0
 Get the mutable Graph::ITransform interface. More...
 
virtual const ITransformGetTransformInterface () const =0
 Get the constant Graph::ITransform interface. More...
 
virtual IResourceMeshGeometryGetResourceMeshGeometryInterface ()=0
 Get the mutable Graph::IResourceMeshGeometry interface. More...
 
virtual const IResourceMeshGeometryGetResourceMeshGeometryInterface () const =0
 Get the constant Graph::IResourceMeshGeometry interface. More...
 
virtual Bool SetLightUnit (UInt32 unit)=0
 Set the light unit used for shadow volume creation. More...
 
virtual UInt32 GetLightUnit () const =0
 Get the light unit used for shadow volume creation. More...
 
virtual Bool SetFacesToExtrude (IEnums::PolygonFaces faces)=0
 Set which faces are used to extrude the shadow volumes. More...
 
virtual IEnums::PolygonFaces GetFacesToExtrude () const =0
 Query which faces are used to extrude the shadow volumes. More...
 
virtual Bool SetShadowVolumeGenerationMode (IEnums::ShadowVolumeGenerationMode mode)=0
 Set the shadow volume generation mode. More...
 
virtual IEnums::ShadowVolumeGenerationMode GetShadowVolumeGenerationMode () const =0
 Query the shadow volume generation mode. More...
 

Detailed Description

The IResourceShadowGeometry graph node interface.

This interface represents a renderable shadow volume geometry that is dynamically generated from the geometry information stored in a given read-only Resource::IMesh object, together with (an) active light source(s) at a given unit.

Member Function Documentation

◆ GetNodeInterface() [1/2]

virtual INode* Murl::Graph::IResourceShadowGeometry::GetNodeInterface ( )
pure virtual

Get the mutable Graph::INode interface.

This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.

Returns
The mutable Graph::INode interface, or null if not available

◆ GetNodeInterface() [2/2]

virtual const INode* Murl::Graph::IResourceShadowGeometry::GetNodeInterface ( ) const
pure virtual

Get the constant Graph::INode interface.

This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.

Returns
The constant Graph::INode interface, or null if not available

◆ GetTransformInterface() [1/2]

virtual ITransform* Murl::Graph::IResourceShadowGeometry::GetTransformInterface ( )
pure virtual

Get the mutable Graph::ITransform interface.

This method returns a mutable pointer to the node's Graph::ITransform interface, to be able to query or modify the node's transformation matrix and depth order.

Returns
The mutable Graph::ITransform interface, or null if not available

◆ GetTransformInterface() [2/2]

virtual const ITransform* Murl::Graph::IResourceShadowGeometry::GetTransformInterface ( ) const
pure virtual

Get the constant Graph::ITransform interface.

This method returns a constant pointer to the node's Graph::ITransform interface, to be able to query the node's transformation matrix and depth order.

Returns
The constant Graph::ITransform interface, or null if not available

◆ GetResourceMeshGeometryInterface() [1/2]

virtual IResourceMeshGeometry* Murl::Graph::IResourceShadowGeometry::GetResourceMeshGeometryInterface ( )
pure virtual

Get the mutable Graph::IResourceMeshGeometry interface.

This method returns a mutable pointer to the node's Graph::IResourceMeshGeometry interface, to be able to query or modify base properties of the shadow geometry.

Returns
The mutable Graph::IResourceMeshGeometry interface.

◆ GetResourceMeshGeometryInterface() [2/2]

virtual const IResourceMeshGeometry* Murl::Graph::IResourceShadowGeometry::GetResourceMeshGeometryInterface ( ) const
pure virtual

Get the constant Graph::IResourceMeshGeometry interface.

This method returns a constant pointer to the node's Graph::IResourceMeshGeometry interface, to be able to query base properties of the shadow geometry.

Returns
The constant Graph::ITransform Graph::IResourceMeshGeometry interface.

◆ SetLightUnit()

virtual Bool Murl::Graph::IResourceShadowGeometry::SetLightUnit ( UInt32  unit)
pure virtual

Set the light unit used for shadow volume creation.

Parameters
unitThe light unit in the range from 0 to IEnums::NUM_LIGHT_UNITS-1.
Returns
true if successful.

◆ GetLightUnit()

virtual UInt32 Murl::Graph::IResourceShadowGeometry::GetLightUnit ( ) const
pure virtual

Get the light unit used for shadow volume creation.

Returns
The light unit in the range from 0 to IEnums::NUM_LIGHT_UNITS-1.

◆ SetFacesToExtrude()

virtual Bool Murl::Graph::IResourceShadowGeometry::SetFacesToExtrude ( IEnums::PolygonFaces  faces)
pure virtual

Set which faces are used to extrude the shadow volumes.

Parameters
facesThe used faces, either IEnums::POLYGON_FACES_FRONT_ONLY or IEnums::POLYGON_FACES_BACK_ONLY.
Returns
true if successful.

◆ GetFacesToExtrude()

virtual IEnums::PolygonFaces Murl::Graph::IResourceShadowGeometry::GetFacesToExtrude ( ) const
pure virtual

Query which faces are used to extrude the shadow volumes.

Returns
The used faces.

◆ SetShadowVolumeGenerationMode()

virtual Bool Murl::Graph::IResourceShadowGeometry::SetShadowVolumeGenerationMode ( IEnums::ShadowVolumeGenerationMode  mode)
pure virtual

Set the shadow volume generation mode.

If set to IEnums::SHADOW_VOLUME_GENERATION_MODE_DEFAULT, the preferred way is to use geometry adjacency information, if present. Otherwise, bounding data is used.

Parameters
modeThe generation mode.
Returns
true if successful.

◆ GetShadowVolumeGenerationMode()

virtual IEnums::ShadowVolumeGenerationMode Murl::Graph::IResourceShadowGeometry::GetShadowVolumeGenerationMode ( ) const
pure virtual

Query the shadow volume generation mode.

Returns
The generation mode.

The documentation for this interface was generated from the following file:
  • murl_graph_i_resource_shadow_geometry.h


Copyright © 2011-2024 Spraylight GmbH.