Class TAbstractLightNode
Unit
Declaration
type TAbstractLightNode = class(TAbstractChildNode)
Description
Base class for all the light nodes.
Hierarchy
- TObject
- TPersistent
- TX3DFileItem
- TX3DNode
- TAbstractNode
- TAbstractChildNode
- TAbstractLightNode
Overview
Methods
![]() |
procedure BeforeTraverse(StateStack: TX3DGraphTraverseStateStack); override; |
![]() |
procedure MiddleTraverse(StateStack: TX3DGraphTraverseStateStack); override; |
![]() |
procedure GroupBeforeTraverse(const State: TX3DGraphTraverseState; var WasPointingDeviceSensor: Boolean); override; |
![]() |
constructor Create(const AX3DName: string = ''; const ABaseUrl: string = ''); override; |
![]() |
function CreateLightInstance(State: TX3DGraphTraverseState): TLightInstance; |
![]() |
procedure UpdateLightInstanceState( var LightInstance: TLightInstance; State: TX3DGraphTraverseState); |
![]() |
procedure UpdateLightInstance( var LightInstance: TLightInstance); virtual; |
![]() |
function Scope: TLightScope; virtual; |
![]() |
function Transform: TMatrix4; |
![]() |
function InverseTransform: TMatrix4; |
![]() |
function TransformationChange: TNodeTransformationChange; override; |
![]() |
procedure CreateNode; override; |
![]() |
class function ClassX3DType: string; override; |
![]() |
procedure SetEffects(const Value: array of TEffectNode); |
Properties
![]() |
property FdAmbientIntensity: TSFFloat read FFdAmbientIntensity; |
![]() |
property AmbientIntensity: Single read GetAmbientIntensity write SetAmbientIntensity; |
![]() |
property FdColor: TSFColor read FFdColor; |
![]() |
property Color: TCastleColorRGB read GetColor write SetColor; |
![]() |
property FdGlobal: TSFBool read FFdGlobal; |
![]() |
property Global: Boolean read GetGlobal write SetGlobal; |
![]() |
property FdIntensity: TSFFloat read FFdIntensity; |
![]() |
property Intensity: Single read GetIntensity write SetIntensity; |
![]() |
property FdOn: TSFBool read FFdOn; |
![]() |
property IsOn: Boolean read GetIsOn write SetIsOn; |
![]() |
property FdEffects: TMFNode read FFdEffects; |
![]() |
property FdShadowVolumes: TSFBool read FFdShadowVolumes; |
![]() |
property ShadowVolumes: Boolean read GetShadowVolumes write SetShadowVolumes; |
Description
Methods
![]() |
procedure BeforeTraverse(StateStack: TX3DGraphTraverseStateStack); override; |
![]() |
procedure MiddleTraverse(StateStack: TX3DGraphTraverseStateStack); override; |
![]() |
procedure GroupBeforeTraverse(const State: TX3DGraphTraverseState; var WasPointingDeviceSensor: Boolean); override; |
![]() |
constructor Create(const AX3DName: string = ''; const ABaseUrl: string = ''); override; |
![]() |
function CreateLightInstance(State: TX3DGraphTraverseState): TLightInstance; |
Create TLightInstance record describing this light node under given State. |
![]() |
procedure UpdateLightInstanceState( var LightInstance: TLightInstance; State: TX3DGraphTraverseState); |
Update TLightInstance record when lighting State changes. Assumes that LightInstance.Node = Self. This will set LightInstance.Transform properties, and recalculate all LightInstance properties based on Transform. |
![]() |
procedure UpdateLightInstance( var LightInstance: TLightInstance); virtual; |
Update TLightInstance record when lighting location/direction (and other properties precalculated on TLightInstance) change. Assumes that LightInstance.Node = Self. |
![]() |
function Scope: TLightScope; virtual; |
Light scope. Default implementation returns lsGlobal or lsLocal, depending on "global" field value (this follows VRML/X3D >= 2.0 rules). |
![]() |
function Transform: TMatrix4; |
Transformation of this light node. Beware: In X3D, light nodes can be instantiated many times within the scene, with different transformations, so this transformation property should not be used in general. Use this only if you you know that light node occurs only once within the scene (see [https://castle-engine.io/x3d_extensions.php#section_ext_shadow_maps]). Or if you're fine with just getting an undefined transformation, for any of the light instances. This value is calculated during traversing. Last BeforeTraverse call for this node sets this property. By default, it represents identity transformation. |
![]() |
function InverseTransform: TMatrix4; |
![]() |
function TransformationChange: TNodeTransformationChange; override; |
![]() |
procedure CreateNode; override; |
![]() |
class function ClassX3DType: string; override; |
![]() |
procedure SetEffects(const Value: array of TEffectNode); |
Properties
![]() |
property FdAmbientIntensity: TSFFloat read FFdAmbientIntensity; |
![]() |
property AmbientIntensity: Single read GetAmbientIntensity write SetAmbientIntensity; |
![]() |
property FdColor: TSFColor read FFdColor; |
![]() |
property Color: TCastleColorRGB read GetColor write SetColor; |
![]() |
property FdGlobal: TSFBool read FFdGlobal; |
![]() |
property Global: Boolean read GetGlobal write SetGlobal; |
![]() |
property FdIntensity: TSFFloat read FFdIntensity; |
![]() |
property Intensity: Single read GetIntensity write SetIntensity; |
![]() |
property FdOn: TSFBool read FFdOn; |
![]() |
property IsOn: Boolean read GetIsOn write SetIsOn; |
![]() |
property FdEffects: TMFNode read FFdEffects; |
![]() |
property FdShadowVolumes: TSFBool read FFdShadowVolumes; |
![]() |
property ShadowVolumes: Boolean read GetShadowVolumes write SetShadowVolumes; |
Generated by PasDoc 0.16.0.