Light

Light class

The light illuminates the scene.

The formula to calculate the total attenuation of light is: A = ConstantAttenuation + (Dist * LinearAttenuation) + ((Dist^2) * QuadraticAttenuation)

public class Light : Frustum

Constructors

Name Description
Light() Initializes a new instance of the Light class.
Light(string) Initializes a new instance of the Light class.
Light(string, LightType) Initializes a new instance of the Light class.

Properties

Name Description
Aspect { get; set; } Gets or sets the aspect ratio of the frustum
CastLight { get; set; } Gets or sets if the current light instance can illuminate other objects.
CastShadows { get; set; } Gets or sets if the light can cast shadows on other objects.
Color { get; set; } Gets or sets the light’s color
ConstantAttenuation { get; set; } Gets or sets the constant attenuation to calculate the total attenuation of the light
Direction { get; set; } Gets or sets the direction that the camera is looking at. Changes on this property will also affects the LookAt and Target.
Excluded { get; set; } Gets or sets whether to exclude this entity during exporting.
Falloff { get; set; } Gets or sets the falloff cone angle (in degrees).
FarPlane { get; set; } Gets or sets the frustum’s far plane distance.
HotSpot { get; set; } Gets or sets the hot spot cone angle(in degrees).
Intensity { get; set; } Gets or sets the light’s intensity, default value is 100
LightType { get; set; } Gets or sets the light’s type
LinearAttenuation { get; set; } Gets or sets the linear attenuation to calculate the total attenuation of the light
LookAt { get; set; } Gets or sets the the interested position that the camera is looking at.
virtual Name { get; set; } Gets or sets the name.
NearPlane { get; set; } Gets or sets the frustum’s near plane distance.
OrthoHeight { get; set; } Gets or sets the height when frustum in orthographic projection.
ParentNode { get; set; } Gets or sets the first parent node, if set the first parent node, this entity will be detached from other parent nodes.
ParentNodes { get; } Gets all parent nodes, an entity can be attached to multiple parent nodes for geometry instancing
Properties { get; } Gets the collection of all properties.
QuadraticAttenuation { get; set; } Gets or sets the quadratic attenuation to calculate the total attenuation of the light
RotationMode { get; set; } Gets or sets the frustum’s orientation mode This property only works when the Target is null. If the value is FixedTarget, the direction is always calculated by the property LookAt Otherwise the LookAt is always calculated by the Direction
Scene { get; } Gets the scene that this object belongs to
ShadowColor { get; set; } Gets or sets the shadow’s color.
Target { get; set; } Gets or sets the target that the camera is looking at. If the user supports this property, it should be prior to LookAt property.
Up { get; set; } Gets or sets the up direction of the camera

Methods

Name Description
FindProperty(string) Finds the property. It can be a dynamic property (Created by CreateDynamicProperty/SetProperty) or native property(Identified by its name)
GetBoundingBox() Gets the bounding box of current entity in its object space coordinate system.
virtual GetEntityRendererKey() Gets the key of the entity renderer registered in the renderer
GetProperty(string) Get the value of specified property
RemoveProperty(Property) Removes a dynamic property.
RemoveProperty(string) Remove the specified property identified by name
SetProperty(string, object) Sets the value of specified property

See Also