Class TAbstractPunctualLightNode
Unit
X3DNodes
Declaration
type TAbstractPunctualLightNode = class(TAbstractLightNode)
Description
Base class for all "punctual" light nodes (that have a position and/or direction).
Hierarchy
Overview
Methods
Properties
Description
Methods
 |
function GetProjectionLocationLocal: TVector3; virtual; |
|
 |
procedure SetProjectionLocationLocal(const Value: TVector3); virtual; |
|
 |
function GetProjectionDirectionLocal: TVector3; virtual; |
|
 |
procedure SetProjectionDirectionLocal(const Value: TVector3); virtual; |
|
 |
function ProjectionMatrix: TMatrix4; virtual; |
Matrices for rendering shadow map from this light. Identity in this class, override for subclasses able to do shadow mapping.
|
 |
function ModelviewMatrix: TMatrix4; virtual; |
|
 |
function ModelviewRotationMatrix: TMatrix4; virtual; |
|
 |
procedure GetView(out Pos, Dir, Side, Up: TVector3); overload; |
|
 |
procedure Box3DDistances(const Box: TBox3D; out MinDistance, MaxDistance: Single); virtual; abstract; |
Calculate distances between the given Box and this light source. This is intended to capture the depth distances where the box resides, useful for calculating e.g. depth ranges to capture in the shadow maps. Depending on light source type, various distance measures may be used, appropriate to light sources projection.
Always MinDistance <= MaxDistance. They may be negative when we measure along the light's direction.
Exceptions raised
- EBox3DEmpty
- When used with an empty box.
|
 |
function PositionAndDirection: TVector4; virtual; abstract; |
Position and direction expressed in homogeneous coordinates. For positional lights, the last component is always 1. For directional lights, the last component is always 0.
Note that this is expressed in the local light node coordinate system.
|
 |
procedure CreateNode; override; |
Create node fields and events.
|
 |
class function ClassX3DType: String; override; |
|
Properties
 |
property ProjectionWorldLocation: TVector3
read GetProjectionWorldLocation
write SetProjectionWorldLocation; |
|
 |
property ProjectionWorldDirection: TVector3
read GetProjectionWorldDirection
write SetProjectionWorldDirection; |
|
 |
property FdShadows: TSFBool read FFdShadows; |
Internal wrapper for property Shadows . This wrapper API may change, we advise to access simpler Shadows instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
 |
property Shadows: Boolean read GetShadows write SetShadows; |
|
 |
property FdShadowVolumesMain: TSFBool read FFdShadowVolumesMain; |
Internal wrapper for property ShadowVolumesMain . This wrapper API may change, we advise to access simpler ShadowVolumesMain instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
 |
property ShadowVolumesMain: Boolean read GetShadowVolumesMain write SetShadowVolumesMain; |
Does this light determine shadows (when using shadow volumes). Ignored if not ShadowVolumes.
|
 |
property FdShowProxyGeometry: TSFBool read FFdShowProxyGeometry; |
Internal wrapper for property ShowProxyGeometry . This wrapper API may change, we advise to access simpler ShowProxyGeometry instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
 |
property FdProjectionNear: TSFFloat read FFdProjectionNear; |
Internal wrapper for property ProjectionNear . This wrapper API may change, we advise to access simpler ProjectionNear instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
 |
property FdProjectionFar: TSFFloat read FFdProjectionFar; |
Internal wrapper for property ProjectionFar . This wrapper API may change, we advise to access simpler ProjectionFar instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
 |
property FdUp: TSFVec3f read FFdUp; |
Internal wrapper for property Up . This wrapper API may change, we advise to access simpler Up instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
 |
property FdDefaultShadowMap: TSFNode read FFdDefaultShadowMap; |
Internal wrapper for property DefaultShadowMap . This wrapper API may change, we advise to access simpler DefaultShadowMap instead, if it is defined (TODO: for now, some field types do not have a simpler counterpart).
|
Generated by PasDoc 0.16.0.