Assimp  v3.0 (July 2012)
Public Member Functions | Public Attributes
aiLight Struct Reference

Helper structure to describe a light source. More...

List of all members.

Public Member Functions

 aiLight ()

Public Attributes

float mAngleInnerCone
 Inner angle of a spot light's light cone.
float mAngleOuterCone
 Outer angle of a spot light's light cone.
float mAttenuationConstant
 Constant light attenuation factor.
float mAttenuationLinear
 Linear light attenuation factor.
float mAttenuationQuadratic
 Quadratic light attenuation factor.
aiColor3D mColorAmbient
 Ambient color of the light source.
aiColor3D mColorDiffuse
 Diffuse color of the light source.
aiColor3D mColorSpecular
 Specular color of the light source.
aiVector3D mDirection
 Direction of the light source in space.
aiString mName
 The name of the light source.
aiVector3D mPosition
 Position of the light source in space.
aiLightSourceType mType
 The type of the light source.

Detailed Description

Helper structure to describe a light source.

Assimp supports multiple sorts of light sources, including directional, point and spot lights. All of them are defined with just a single structure and distinguished by their parameters. Note - some file formats (such as 3DS, ASE) export a "target point" - the point a spot light is looking at (it can even be animated). Assimp writes the target point as a subnode of a spotlights's main node, called "<spotName>.Target". However, this is just additional information then, the transformation tracks of the main node make the spot light already point in the right direction.


Constructor & Destructor Documentation

aiLight::aiLight ( )
inline

Member Data Documentation

float aiLight::mAngleInnerCone

Inner angle of a spot light's light cone.

The spot light has maximum influence on objects inside this angle. The angle is given in radians. It is 2PI for point lights and undefined for directional lights.

float aiLight::mAngleOuterCone

Outer angle of a spot light's light cone.

The spot light does not affect objects outside this angle. The angle is given in radians. It is 2PI for point lights and undefined for directional lights. The outer angle must be greater than or equal to the inner angle. It is assumed that the application uses a smooth interpolation between the inner and the outer cone of the spot light.

float aiLight::mAttenuationConstant

Constant light attenuation factor.

The intensity of the light source at a given distance 'd' from the light's position is

Atten = 1/( att0 + att1 * d + att2 * d*d)

This member corresponds to the att0 variable in the equation. Naturally undefined for directional lights.

float aiLight::mAttenuationLinear

Linear light attenuation factor.

The intensity of the light source at a given distance 'd' from the light's position is

Atten = 1/( att0 + att1 * d + att2 * d*d)

This member corresponds to the att1 variable in the equation. Naturally undefined for directional lights.

float aiLight::mAttenuationQuadratic

Quadratic light attenuation factor.

The intensity of the light source at a given distance 'd' from the light's position is

Atten = 1/( att0 + att1 * d + att2 * d*d)

This member corresponds to the att2 variable in the equation. Naturally undefined for directional lights.

aiColor3D aiLight::mColorAmbient

Ambient color of the light source.

The ambient light color is multiplied with the ambient material color to obtain the final color that contributes to the ambient shading term. Most renderers will ignore this value it, is just a remaining of the fixed-function pipeline that is still supported by quite many file formats.

aiColor3D aiLight::mColorDiffuse

Diffuse color of the light source.

The diffuse light color is multiplied with the diffuse material color to obtain the final color that contributes to the diffuse shading term.

aiColor3D aiLight::mColorSpecular

Specular color of the light source.

The specular light color is multiplied with the specular material color to obtain the final color that contributes to the specular shading term.

aiVector3D aiLight::mDirection

Direction of the light source in space.

Relative to the transformation of the node corresponding to the light.

The direction is undefined for point lights. The vector may be normalized, but it needn't.

aiString aiLight::mName

The name of the light source.

There must be a node in the scenegraph with the same name. This node specifies the position of the light in the scene hierarchy and can be animated.

aiVector3D aiLight::mPosition

Position of the light source in space.

Relative to the transformation of the node corresponding to the light.

The position is undefined for directional lights.

aiLightSourceType aiLight::mType

The type of the light source.

aiLightSource_UNDEFINED is not a valid value for this member.


The documentation for this struct was generated from the following file: