![]() |
VR-Forces 4.10 Class Documentation
|
Class for generic lights This holds per-light data such as range, attenuation factors, colors, etc. More...
Public Member Functions | |
| DtLight (DtLightManager *lightManager) | |
| CTOR. More... | |
| virtual | ~DtLight () |
| DTOR. More... | |
| DtLight & | operator= (const DtLight &rhs) |
| assignment More... | |
| virtual void | setPosition (const Vector3_64 &vPosition) |
| Only relevant to Point and Spot Lights. More... | |
| virtual const Vector3_64 & | position (void) const |
| virtual void | setDirection (const Vector3_64 &vDirection) |
| Only relevant to Directional and Spot Lights. More... | |
| virtual const Vector3_64 & | direction (void) const |
| virtual LightGroup | lightGroup () const |
| Which group is this light under (prop, terrain, none) More... | |
| virtual void | setLightGroup (LightGroup group) |
| Set the group this light belongs to (props, terrain, none) More... | |
| virtual const AxisAlignedBoundingBox_64 & | worldAABB (void) const |
| Get the world AABB. More... | |
| virtual bool | isInitted () const |
| initialized? More... | |
| virtual void | setLightSourceTypeId (unsigned int lightSourceTypeId) |
| set the light source type id which is used by the light manager to know what type of light source this is. More... | |
| virtual unsigned int | lightSourceTypeId () const |
| get the light source type id More... | |
| virtual void | printDetails (void) const |
| print details More... | |
| virtual void | setUserValue (float64 val) |
| arbitrary value on this light (like user data) More... | |
| virtual float64 | userValue (void) const |
| arbitrary value on this light (like user data) More... | |
| virtual void | setOn (bool bOn) |
| Turn light on or off. More... | |
| virtual bool | isOn (void) const |
| virtual void | setLightType (LightType lightType) |
| Turn light on or off This is separate so as to enable pooling of lights so that a previous light of type x in the pool can be picked up and used as a light of a different type y, or the same type for that matter. More... | |
| virtual LightType | lightType (void) const |
| virtual void | setAmbientColor (const DtColorValue &color) |
| Set ambient, diffuse, specular properties. More... | |
| virtual void | setDiffuseColor (const DtColorValue &color) |
| virtual void | setSpecularColor (const DtColorValue &color) |
| virtual const DtColorValue & | ambientColor (void) const |
| Get ambient, diffuse, specular properties. More... | |
| virtual const DtColorValue & | diffuseColor (void) const |
| virtual const DtColorValue & | specularColor (void) const |
| virtual void | setRange (float32 fRange) |
| Range and Squared Range. More... | |
| virtual float32 | range (void) const |
| virtual float32 | squaredRange (void) const |
| virtual void | setAttenuation (float32 fConstant, float32 fLinear, float32 fQuadratic) |
| Attenuation properties. More... | |
| virtual float32 | constantAttenuation (void) const |
| virtual float32 | linearAttenuation (void) const |
| virtual float32 | quadraticAttenuation (void) const |
| virtual void | getAttenuation (float32 attenuations[3]) const |
| virtual void | setSpotLightParameters (const DtDegrees &fInnerAngleDegrees, const DtDegrees &fOuterAngleDegrees, float32 fFalloff) |
| Spot Light properties. More... | |
| virtual void | setSpotLightAngles (const DtDegrees &fInnerAngleDegrees, const DtDegrees &fOuterAngleDegrees) |
| virtual void | spotLightAngles (DtDegrees &fInnerAngleDegrees, DtDegrees &fOuterAngleDegrees) |
| virtual DtDegrees | innerAngle (void) const |
| virtual DtDegrees | outerAngle (void) const |
| virtual float32 | falloff (void) const |
| virtual DtUserObjectBindings & | userObjectBindings (void) |
| User object bindings. More... | |
| virtual const DtUserObjectBindings & | userObjectBindings (void) const |
| virtual void | setOctreeNode (void *pUserData) |
| octree Data More... | |
| virtual void * | octreeNode () const |
Static Public Member Functions | |
| static const std::string & | reservedBindingKey (void) |
Protected Member Functions | |
| virtual void | getArbitraryBasisVectors (Vector3_64 &vBasis0, Vector3_64 &vBasis1) const |
| Calculate two arbitrary basis vectors for the light direction. More... | |
| virtual void | getArbitraryBasisPoints (float distance, std::array< Vector3_64, 4 > &point) const |
| Calculate basis points along arbitrary basis vectors with given distance. More... | |
| virtual float | getAngleFactor () const |
| Calculate angle multiplicative factor (see comment in C++) More... | |
| virtual Vector3_64 | getSpotCenter () const |
| Return the center of the distant side of the spotlight cone. More... | |
| virtual void | UpdateBounds (void) |
| update bounds More... | |
Protected Attributes | |
| LightType | myLightType |
| DtColorValue | myAmbientColor |
| DtColorValue | myDiffuseColor |
| DtColorValue | mySpecularColor |
| Vector3_64 | myVecPosition |
| Applicable only to point lights and spot lights. More... | |
| Vector3_64 | myVecDirection |
| Applicable only to directional lights. More... | |
| float32 | myfRange |
| float32 | myfSquaredRange |
| float32 | myfConstantAttenuation |
| float32 | myfLinearAttenuation |
| float32 | myfQuadraticAttenuation |
| DtDegrees | myfInnerAngle |
| Angle of a spotlight's inner cone - that is, the fully illuminated spotlight cone. More... | |
| DtDegrees | myfOuterAngle |
| Angle defining the outer edge of the spotlight's outer cone. Points outside this cone are not lit by the spotlight. This value must be between 0 and pi. More... | |
| float32 | myfFallOff |
| Decrease in illumination between a spotlight's inner cone and the outer edge of the outer cone. More... | |
| bool | mybIsOn |
| bool | mybIsInitted |
| init bit to keep track if it's really safe to add to the octtree More... | |
| DtUserObjectBindings | myUserObjectBindings |
| void * | myOctreeNode |
| AxisAlignedBoundingBox_64 | myWorldAABB |
| LightGroup | myLightGroup |
| For switching on and off lights Is this light node under the DtOsgRenderer::propsRoot or under DtOsgRenderer::terrainRoot. More... | |
| DtLightManager * | myLightManager |
| unsigned int | myLightSourceTypeId |
| float64 | myUserValue |
Static Protected Attributes | |
| static const std::string | theStrReservedBinding |
Private Member Functions | |
| DtLight ()=delete | |
| not allowed More... | |
| DtLight (const DtLight &rhs)=delete | |
| not allowed More... | |
Friends | |
| class | DtLightScreenSpaceData |
Class for generic lights This holds per-light data such as range, attenuation factors, colors, etc.
| makVrv::DtLight::DtLight | ( | DtLightManager * | lightManager | ) |
CTOR.
|
virtual |
DTOR.
|
privatedelete |
not allowed
|
privatedelete |
not allowed
|
virtual |
Turn light on or off.
|
virtual |
|
virtual |
Turn light on or off This is separate so as to enable pooling of lights so that a previous light of type x in the pool can be picked up and used as a light of a different type y, or the same type for that matter.
|
virtual |
|
virtual |
Set ambient, diffuse, specular properties.
|
virtual |
|
virtual |
|
virtual |
Get ambient, diffuse, specular properties.
|
virtual |
|
virtual |
|
virtual |
Only relevant to Point and Spot Lights.
|
virtual |
|
virtual |
Only relevant to Directional and Spot Lights.
|
virtual |
|
virtual |
Range and Squared Range.
|
virtual |
|
virtual |
|
virtual |
Attenuation properties.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Spot Light properties.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
User object bindings.
|
virtual |
|
virtual |
octree Data
|
virtual |
|
virtual |
Which group is this light under (prop, terrain, none)
|
virtual |
Set the group this light belongs to (props, terrain, none)
|
virtual |
Get the world AABB.
|
virtual |
initialized?
set the light source type id which is used by the light manager to know what type of light source this is.
get the light source type id
|
virtual |
print details
|
virtual |
arbitrary value on this light (like user data)
|
virtual |
arbitrary value on this light (like user data)
|
static |
|
protectedvirtual |
Calculate two arbitrary basis vectors for the light direction.
|
protectedvirtual |
Calculate basis points along arbitrary basis vectors with given distance.
|
protectedvirtual |
Calculate angle multiplicative factor (see comment in C++)
|
protectedvirtual |
Return the center of the distant side of the spotlight cone.
|
protectedvirtual |
update bounds
|
friend |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Applicable only to point lights and spot lights.
|
protected |
Applicable only to directional lights.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Angle of a spotlight's inner cone - that is, the fully illuminated spotlight cone.
|
protected |
Angle defining the outer edge of the spotlight's outer cone. Points outside this cone are not lit by the spotlight. This value must be between 0 and pi.
|
protected |
Decrease in illumination between a spotlight's inner cone and the outer edge of the outer cone.
|
protected |
|
protected |
init bit to keep track if it's really safe to add to the octtree
|
protected |
|
protected |
|
protected |
|
protected |
For switching on and off lights Is this light node under the DtOsgRenderer::propsRoot or under DtOsgRenderer::terrainRoot.
|
protected |
|
protected |
|
staticprotected |