Murl::Graph::IShadowCamera Interface Referenceabstract

The IShadowCamera graph node interface. More...

#include "murl_graph_i_shadow_camera.h"

Inheritance diagram for Murl::Graph::IShadowCamera:

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 ISubjectGetSubjectInterface ()=0
 Get the mutable ISubject interface. More...
 
virtual const ISubjectGetSubjectInterface () const =0
 Get the constant ISubject interface. More...
 
virtual ICameraGetCameraInterface ()=0
 Get the mutable ICamera interface. More...
 
virtual const ICameraGetCameraInterface () const =0
 Get the constant ICamera interface. More...
 
virtual ILightNodeTargetGetLightNodeTarget ()=0
 Get the mutable container holding the light node casting the shadow. More...
 
virtual const ILightNodeTargetGetLightNodeTarget () const =0
 Get the constant container holding the light node casting the shadow. More...
 
virtual ICameraNodeTargetGetCameraNodeTarget ()=0
 Get the mutable container holding the camera node rendering the shadowed scene. More...
 
virtual const ICameraNodeTargetGetCameraNodeTarget () const =0
 Get the constant container holding the camera node rendering the shadowed scene. More...
 
virtual Bool SetPlacementMode (IEnums::ShadowMapPlacementMode mode)=0
 Set the shadow map placement mode. More...
 
virtual IEnums::ShadowMapPlacementMode GetPlacementMode () const =0
 Get the shadow map placement mode. More...
 
virtual Bool SetAlignmentMode (IEnums::ShadowMapAlignmentMode mode)=0
 Set the shadow map alignment mode. More...
 
virtual IEnums::ShadowMapAlignmentMode GetAlignmentMode () const =0
 Get the shadow map alignment mode. More...
 
virtual Bool SetUpVector (const Vector &upVector)=0
 Set the alignment plane's up vector. More...
 
virtual const VectorGetUpVector () const =0
 Get the alignment plane's up vector. More...
 
virtual Bool SetStabilizationEnabled (Bool enabled)=0
 Enable/disable shadow map stabilization. More...
 
virtual Bool IsStabilizationEnabled () const =0
 Check if shadow map stabilization is enabled. More...
 
virtual Bool SetSphereScaleFactor (Real scaleFactor)=0
 Set the bounding volume's additonal scale factor. More...
 
virtual Real GetSphereScaleFactor () const =0
 Get the bounding volume's additonal scale factor. More...
 

Detailed Description

The IShadowCamera graph node interface.

Member Function Documentation

◆ GetNodeInterface() [1/2]

virtual INode* Murl::Graph::IShadowCamera::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::IShadowCamera::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

◆ GetSubjectInterface() [1/2]

virtual ISubject* Murl::Graph::IShadowCamera::GetSubjectInterface ( )
pure virtual

Get the mutable ISubject interface.

This method returns a mutable pointer to the node's ISubject interface, to be able to query or modify subject properties such as world transform, viewing matrix, projection matrix etc.

Returns
The mutable ISubject interface, or null if not available

◆ GetSubjectInterface() [2/2]

virtual const ISubject* Murl::Graph::IShadowCamera::GetSubjectInterface ( ) const
pure virtual

Get the constant ISubject interface.

This method returns a constant pointer to the node's ISubject interface, to be able to query subject properties such as world transform, viewing matrix, projection matrix etc.

Returns
The mutable ISubject interface, or null if not available

◆ GetCameraInterface() [1/2]

virtual ICamera* Murl::Graph::IShadowCamera::GetCameraInterface ( )
pure virtual

Get the mutable ICamera interface.

This method returns a mutable pointer to the node's ICamera interface, to be able to query or modify common camera parameters.

Returns
The mutable ICamera interface, or null if not available

◆ GetCameraInterface() [2/2]

virtual const ICamera* Murl::Graph::IShadowCamera::GetCameraInterface ( ) const
pure virtual

Get the constant ICamera interface.

This method returns a constant pointer to the node's ICamera interface, to be able to query common camera parameters.

Returns
The mutable ICamera interface, or null if not available

◆ GetLightNodeTarget() [1/2]

virtual ILightNodeTarget* Murl::Graph::IShadowCamera::GetLightNodeTarget ( )
pure virtual

Get the mutable container holding the light node casting the shadow.

This method returns a mutable pointer to the node's Graph::ILightNodeTarget container, which is used to store the light node.

Returns
The mutable Graph::ILightNodeTarget container, or null if not available.

◆ GetLightNodeTarget() [2/2]

virtual const ILightNodeTarget* Murl::Graph::IShadowCamera::GetLightNodeTarget ( ) const
pure virtual

Get the constant container holding the light node casting the shadow.

This method returns a constant pointer to the node's Graph::ILightNodeTarget container, which is used to store the light node.

Returns
The constant Graph::ILightNodeTarget container, or null if not available.

◆ GetCameraNodeTarget() [1/2]

virtual ICameraNodeTarget* Murl::Graph::IShadowCamera::GetCameraNodeTarget ( )
pure virtual

Get the mutable container holding the camera node rendering the shadowed scene.

This method returns a mutable pointer to the node's Graph::ICameraNodeTarget container, which is used to store the scene camera node.

Returns
The mutable Graph::ICameraNodeTarget container, or null if not available.

◆ GetCameraNodeTarget() [2/2]

virtual const ICameraNodeTarget* Murl::Graph::IShadowCamera::GetCameraNodeTarget ( ) const
pure virtual

Get the constant container holding the camera node rendering the shadowed scene.

This method returns a constant pointer to the node's Graph::ILightNodeTarget container, which is used to store the scene camera node.

Returns
The constant Graph::ICameraNodeTarget container, or null if not available.

◆ SetPlacementMode()

virtual Bool Murl::Graph::IShadowCamera::SetPlacementMode ( IEnums::ShadowMapPlacementMode  mode)
pure virtual

Set the shadow map placement mode.

This method sets the placement mode for the shadow map, either at the view volume's actual center, or at the center of the bounding sphere surrounding the view volume.

Parameters
modeThe placement mode.
Returns
true if successful.

◆ GetPlacementMode()

virtual IEnums::ShadowMapPlacementMode Murl::Graph::IShadowCamera::GetPlacementMode ( ) const
pure virtual

Get the shadow map placement mode.

Returns
The placement mode.

◆ SetAlignmentMode()

virtual Bool Murl::Graph::IShadowCamera::SetAlignmentMode ( IEnums::ShadowMapAlignmentMode  mode)
pure virtual

Set the shadow map alignment mode.

This method sets the alignment mode for the shadow map, either perpendicular to the view vector (i.e. the light's main direction), or perpendicular to a given up vector defining a custom plane. See SetUpVector().

Parameters
modeThe alignment mode.
Returns
true if successful.

◆ GetAlignmentMode()

virtual IEnums::ShadowMapAlignmentMode Murl::Graph::IShadowCamera::GetAlignmentMode ( ) const
pure virtual

Get the shadow map alignment mode.

Returns
The alignment mode.

◆ SetUpVector()

virtual Bool Murl::Graph::IShadowCamera::SetUpVector ( const Vector upVector)
pure virtual

Set the alignment plane's up vector.

The alignment plane's up vector is only used when the actual alignment mode is set to IEnums::SHADOW_MAP_ALIGNMENT_MODE_FIXED_PLANE. See SetAlignmentMode();

Parameters
upVectorThe up vector.
Returns
true if successful.

◆ GetUpVector()

virtual const Vector& Murl::Graph::IShadowCamera::GetUpVector ( ) const
pure virtual

Get the alignment plane's up vector.

Returns
The up vector.

◆ SetStabilizationEnabled()

virtual Bool Murl::Graph::IShadowCamera::SetStabilizationEnabled ( Bool  enabled)
pure virtual

Enable/disable shadow map stabilization.

Parameters
enabledIf true, stabilization is enabled.
Returns
true if successful.

◆ IsStabilizationEnabled()

virtual Bool Murl::Graph::IShadowCamera::IsStabilizationEnabled ( ) const
pure virtual

Check if shadow map stabilization is enabled.

Returns
true if enabled.

◆ SetSphereScaleFactor()

virtual Bool Murl::Graph::IShadowCamera::SetSphereScaleFactor ( Real  scaleFactor)
pure virtual

Set the bounding volume's additonal scale factor.

By default, the scale factor is set to 1.

Parameters
scaleFactorThe scale factor.
Returns
true if successful.

◆ GetSphereScaleFactor()

virtual Real Murl::Graph::IShadowCamera::GetSphereScaleFactor ( ) const
pure virtual

Get the bounding volume's additonal scale factor.

Returns
The scale factor.

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


Copyright © 2011-2024 Spraylight GmbH.