SpotLight - A spotlight

Constructor

class SpotLight(hex, intensity, distance, castShadow)

A point light that can cast shadow in one direction

Part of scene graph

Inherits from Light() Object3D()

Affects MeshLambertMaterial() and MeshPhongMaterial()

Arguments:
  • hex (integer) – light color
  • intensity (float) – light intensity
  • distance (float) – distance affected by light
  • castShadow (bool) – shadow casting

Attributes

SpotLight.color

Light Color()

SpotLight.intensity

Light intensity

default 1.0

SpotLight.position

Position of the light

SpotLight.distance

If non-zero, light will attenuate linearly from maximum intensity at light position down to zero at distance

Shadow attributes

SpotLight.castShadow

If set to true light will cast dynamic shadows

Warning: this is expensive and requires tweaking to get shadows looking right.

default false

SpotLight.onlyShadow

If set to true light will only cast shadow but not contribute any lighting (as if intensity was 0 but cheaper to compute)

default false

SpotLight.target

Object3D() target used for shadow camera orientation

SpotLight.shadowCameraNear

Perspective shadow camera frustum near

default 50

SpotLight.shadowCameraFar

Perspective shadow camera frustum far

default 5000

SpotLight.shadowCameraFov

Perspective shadow camera frustum field-of-view

default 50

SpotLight.shadowCameraVisible

Show debug shadow camera frustum

default false

SpotLight.shadowBias

Shadow map bias

default 0

SpotLight.shadowDarkness

Darkness of shadow casted by this light (float from 0 to 1)

default 0.5

SpotLight.shadowMapWidth

Shadow map texture width in pixels

default 512

SpotLight.shadowMapHeight

Shadow map texture height in pixels

default 512

Example

// white spotlight shining from the side, casting shadow

var spotLight = new THREE.SpotLight( 0xffffff );
spotLight.position.set( 100, 1000, 100 );

spotLight.castShadow = true;

spotLight.shadowMapWidth = 1024;
spotLight.shadowMapHeight = 1024;

spotLight.shadowCameraNear = 500;
spotLight.shadowCameraFar = 4000;
spotLight.shadowCameraFov = 30;

scene.add( spotLight );

Previous topic

PointLight - A point light

This Page