t3d. SpotLight

This light gets emitted from a single point in one direction, along a cone that increases in size the further from the light it gets. This light can cast shadows - see the t3d.SpotLightShadow page for details.

Constructor

new SpotLight(coloropt, intensityopt, distanceopt, angleopt, penumbraopt, decayopt)

Parameters:
NameTypeAttributesDefaultDescription
colorNumber<optional>
0xffffff
intensityNumber<optional>
1
distanceNumber<optional>
200
angleNumber<optional>
Math.PI/6
penumbraNumber<optional>
0
decayNumber<optional>
1

Extends

Members

angle :Number

Maximum extent of the spotlight, in radians, from its direction. Should be no more than Math.PI/2.
Type:
  • Number
Default Value
  • Math.PI/6

castShadow :Boolean

Whether the object gets rendered into shadow map.
Type:
  • Boolean
Default Value
  • false

children :Array.<t3d.Object3D>

Object's parent in the scene graph. An object can have at most one parent.
Type:

color :t3d.Color3

Color of the light.
Default Value
  • t3d.Color3(0xffffff)

decay :Number

The amount the light dims along the distance of the light.
Type:
  • Number
Default Value
  • 1

distance :Number

The distance from the light where the intensity is 0.
Type:
  • Number
Default Value
  • 200

euler :t3d.Euler

Object's local rotation as an t3d.Euler, in radians.
Default Value
  • Euler(0, 0, 0)

frustumCulled :Boolean

When this is set, it checks every frame if the object is in the frustum of the camera before rendering the object. Otherwise the object gets rendered every frame even if it isn't visible.
Type:
  • Boolean
Default Value
  • true

(readonly) id :Number

Unique number for this object instance.
Type:
  • Number
Overrides

intensity :Number

The light's intensity, or strength.
Type:
  • Number
Default Value
  • 1

(readonly) isLight :Boolean

Type:
  • Boolean
Default Value
  • true

(readonly) isSpotLight :Boolean

Type:
  • Boolean
Default Value
  • true

matrix :t3d.Matrix4

The local transform matrix.

matrixAutoUpdate :Boolean

When this is set, it calculates the matrix of position, (rotation or quaternion) and scale every frame and also recalculates the worldMatrix property.
Type:
  • Boolean
Default Value
  • true

matrixNeedsUpdate :Boolean

When this is set, it calculates the matrix in that frame and resets this property to false.
Type:
  • Boolean
Default Value
  • true

name :String

Optional name of the object (doesn't need to be unique).
Type:
  • String
Default Value
  • ""

parent :t3d.Object3D

Object's parent in the scene graph. An object can have at most one parent.

penumbra :Number

Percent of the spotlight cone that is attenuated due to penumbra. Takes values between zero and 1.
Type:
  • Number
Default Value
  • 0

position :t3d.Vector3

A Vector3 representing the object's local position.
Default Value
  • Vector3(0, 0, 0)

quaternion :t3d.Quaternion

Object's local rotation as a t3d.Quaternion.
Default Value
  • Quaternion(0, 0, 0, 1)

receiveShadow :Boolean

Whether the material receives shadows.
Type:
  • Boolean
Default Value
  • false

renderLayer :Number

Render layer of this object. RenderQueue will dispatch all renderable objects to the corresponding RenderQueueLayer according to object.renderLayer.
Type:
  • Number
Default Value
  • 0

renderOrder :Number

This value allows the default rendering order of scene graph objects to be overridden although opaque and transparent objects remain sorted independently. Sorting is from lowest to highest renderOrder.
Type:
  • Number
Default Value
  • 0

renderable :Boolean

Whether it can be collected into the Render Queue.
Type:
  • Boolean
Default Value
  • true

scale :t3d.Vector3

The object's local scale.
Default Value
  • Vector3(1, 1, 1)

shadow :t3d.SpotLightShadow

A t3d.SpotLightShadow used to calculate shadows for this light.
Default Value
  • t3d.SpotLightShadow()

shadowType :t3d.SHADOW_TYPE

Defines shadow map type. Note: In webgl1 or t3d.Scene#disableShadowSampler is true, soft shadow types will fallback to POISSON_SOFT without warning. Note: Point light only support POISSON_SOFT for now.
Default Value
  • SHADOW_TYPE.PCF3_SOFT

userData :Object

An object that can be used to store custom data about the t3d.Object3D. It should not hold references to functions as these will not be cloned.
Type:
  • Object
Default Value
  • {}

uuid :String

UUID of this object instance. This gets automatically assigned, so this shouldn't be edited.
Type:
  • String

visible :Boolean

Object gets rendered if true.
Type:
  • Boolean
Default Value
  • true

worldMatrix :t3d.Matrix4

The global transform of the object. If the Object3D has no parent, then it's identical to the local transform t3d.Object3D#matrix.

worldMatrixNeedsUpdate :Boolean

When this is set, it calculates the world matrix in that frame and resets this property to false.
Type:
  • Boolean
Default Value
  • true

Methods

add(object)

Add object as child of this object.
Parameters:
NameTypeDescription
objectt3d.Object3D
Overrides

clone(recursiveopt) → {t3d.Object3D}

Returns a clone of this object and optionally all descendants.
Parameters:
NameTypeAttributesDefaultDescription
recursivefunction<optional>
trueif true, descendants of the object are also cloned.
Returns:
Type: 
t3d.Object3D

copy(source) → {t3d.Light}

Copies properties from the source light into this one.
Parameters:
NameTypeDescription
sourcet3d.LightThe source light.
Returns:
- This light.
Type: 
t3d.Light

getObjectByName(name) → {t3d.Object3D}

Searches through the object's children and returns the first with a matching name. Note that for most objects the name is an empty string by default. You will have to set it manually to make use of this method.
Parameters:
NameTypeDescription
nameStringString to match to the children's t3d.Object3D#name property.
Returns:
Type: 
t3d.Object3D

getObjectByProperty(name, value) → {t3d.Object3D}

Searches through the object's children and returns the first with a property that matches the value given.
Parameters:
NameTypeDescription
nameStringthe property name to search for.
valueNumbervalue of the given property.
Returns:
Type: 
t3d.Object3D

getWorldDirection(optionalTarget=opt) → {Vector3}

Returns a vector representing the direction of object's positive z-axis in world space. This call must be after t3d.Object3D#updateMatrix.
Parameters:
NameTypeAttributesDescription
optionalTarget=Vector3<optional>
— the result will be copied into this Vector3.
Returns:
- the result.
Type: 
Vector3

lookAt(target, up)

Set light direction, this func will set quaternion of this light.
Parameters:
NameTypeDescription
targett3d.Vector3The target that the light look at.
upt3d.Vector3The up direction of the light.

onAfterRender()

An optional callback that is executed immediately after the Object3D is rendered.

onBeforeRender()

An optional callback that is executed immediately before the Object3D is rendered.

(abstract) raycast(ray, intersects)

Method to get intersections between a casted ray and this object.
Parameters:
NameTypeDescription
rayRayThe t3d.Ray instance.
intersectsArrayoutput intersects array.

remove(object)

Remove object as child of this object.
Parameters:
NameTypeDescription
objectt3d.Object3D

traverse(callback)

Executes the callback on this object and all descendants.
Parameters:
NameTypeDescription
callbackfunctionA function with as first argument an object3D object.

updateMatrix()

Update the local transform.