type |
String
|
The type of light. Can be:
- "directional": A light that is infinitely far away and lights the entire scene from one direction.
- "point": A light that illuminates in all directions from a point.
- "spot": A light that illuminates in all directions from a point and is bounded by a cone.
Defaults to "directional". |
color |
pc.Color
|
The Color of the light. The alpha component of the color is
ignored. Defaults to white (1, 1, 1). |
intensity |
Number
|
The brightness of the light. Defaults to 1. |
castShadows |
Boolean
|
If enabled the light will cast shadows. Defaults to false. |
shadowDistance |
Number
|
The distance from the viewpoint beyond which shadows
are no longer rendered. Affects directional lights only. Defaults to 40. |
shadowResolution |
Number
|
The size of the texture used for the shadow map.
Valid sizes are 64, 128, 256, 512, 1024, 2048. Defaults to 1024. |
shadowBias |
Number
|
The depth bias for tuning the appearance of the shadow
mapping generated by this light. Defaults to 0.05. |
normalOffsetBias |
Number
|
Normal offset depth bias. Defaults to 0. |
range |
Number
|
The range of the light. Affects point and spot lights only.
Defaults to 10. |
innerConeAngle |
Number
|
The angle at which the spotlight cone starts
to fade off. The angle is specified in degrees. Affects spot lights only. Defaults
to 40. |
outerConeAngle |
Number
|
The angle at which the spotlight cone has faded
to nothing. The angle is specified in degrees. Affects spot lights only. Defaults
to 45. |
falloffMode |
Number
|
Controls the rate at which a light attentuates from
its position. Can be:
- pc.LIGHTFALLOFF_LINEAR: Linear.
- pc.LIGHTFALLOFF_INVERSESQUARED: Inverse squared.
Affects point and spot lights only. Defaults to pc.LIGHTFALLOFF_LINEAR. |
mask |
Number
|
Defines a mask to determine which pc.MeshInstances are
lit by this light. Defaults to 1. |
affectDynamic |
Boolean
|
If enabled the light will affect non-lightmapped objects |
affectLightmapped |
Boolean
|
If enabled the light will affect lightmapped objects |
bake |
Boolean
|
If enabled the light will be rendered into lightmaps |
bakeDir |
Boolean
|
If enabled and bake=true, the light's direction will contribute to directional lightmaps.
Be aware, that directional lightmap is an approximation and can only hold single direction per pixel.
Intersecting multiple lights with bakeDir=true may lead to incorrect look of specular/bump-mapping in the area of intersection.
The error is not always visible though, and highly scene-dependent. |
shadowUpdateMode |
Number
|
Tells the renderer how often shadows must be updated for this light. Options:
- pc.SHADOWUPDATE_NONE: Don't render shadows.
- pc.SHADOWUPDATE_THISFRAME: Render shadows only once (then automatically switches to pc.SHADOWUPDATE_NONE).
- pc.SHADOWUPDATE_REALTIME: Render shadows every frame (default).
|
shadowType |
Number
|
Type of shadows being rendered by this light. Options:
- pc.SHADOW_PCF3: Render depth (color-packed on WebGL 1.0), can be used for PCF 3x3 sampling.
- pc.SHADOW_VSM8: Render packed variance shadow map. All shadow receivers must also cast shadows for this mode to work correctly.
- pc.SHADOW_VSM16: Render 16-bit exponential variance shadow map. Requires OES_texture_half_float extension. Falls back to pc.SHADOW_VSM8, if not supported.
- pc.SHADOW_VSM32: Render 32-bit exponential variance shadow map. Requires OES_texture_float extension. Falls back to pc.SHADOW_VSM16, if not supported.
- pc.SHADOW_PCF5: Render depth buffer only, can be used for hardware-accelerated PCF 5x5 sampling. Requires WebGL2. Falls back to pc.SHADOW_PCF3 on WebGL 1.0.
|
vsmBlurMode |
Number
|
Blurring mode for variance shadow maps:
- pc.BLUR_BOX: Box filter.
- pc.BLUR_GAUSSIAN: Gaussian filter. May look smoother than box, but requires more samples.
|
vsmBlurSize |
Number
|
Number of samples used for blurring a variance shadow map. Only uneven numbers work, even are incremented. Minimum value is 1, maximum is 25. |
cookieAsset |
Number
|
Asset that has texture that will be assigned to cookie internally once asset resource is available. |
cookie |
pc.Texture
|
Projection texture. Must be 2D for spot and cubemap for point (ignored if incorrect type is used). |
cookieIntensity |
Number
|
Projection texture intensity (default is 1). |
cookieFalloff |
Boolean
|
Toggle normal spotlight falloff when projection texture is used. When set to false, spotlight will work like a pure texture projector (only fading with distance). Default is false. |
cookieChannel |
String
|
Color channels of the projection texture to use. Can be "r", "g", "b", "a", "rgb" or any swizzled combination. |
cookieAngle |
Number
|
Angle for spotlight cookie rotation. |
cookieScale |
pc.Vec2
|
Spotlight cookie scale. |
cookieOffset |
pc.Vec2
|
Spotlight cookie position offset. |
isStatic |
Boolean
|
Mark light as non-movable (optimization) |
layers |
Array
|
An array of layer IDs (pc.Layer#id) to which this light should belong.
Don't push/pop/splice or modify this array, if you want to change it - set a new one instead. |