📄 threejs/Core/Nodes/PhysicalLightingModel

File: PhysicalLightingModel.md | Updated: 11/15/2025


title: PhysicalLightingModel category: Core layout: docs

PhysicalLightingModel

Represents the lighting model for a PBR material.

Constructor

new PhysicalLightingModel( clearcoat : boolean, sheen : boolean, iridescence : boolean, anisotropy : boolean, transmission : boolean, dispersion : boolean )

Constructs a new physical lighting model.

clearcoat | Whether clearcoat is supported or not. Default is false.
---|---
sheen | Whether sheen is supported or not. Default is false.
iridescence | Whether iridescence is supported or not. Default is false.
anisotropy | Whether anisotropy is supported or not. Default is false.
transmission | Whether transmission is supported or not. Default is false.
dispersion | Whether dispersion is supported or not. Default is false.

Properties

.anisotropy : boolean

Whether anisotropy is supported or not.

Default is false.

.clearcoat : boolean

Whether clearcoat is supported or not.

Default is false.

.clearcoatRadiance : Node

The clear coat radiance.

Default is null.

.clearcoatSpecularDirect : Node

The clear coat specular direct.

Default is null.

.clearcoatSpecularIndirect : Node

The clear coat specular indirect.

Default is null.

.dispersion : boolean

Whether dispersion is supported or not.

Default is false.

.iridescence : boolean

Whether iridescence is supported or not.

Default is false.

.iridescenceF0 : Node

The iridescence F0.

Default is null.

.iridescenceFresnel : Node

The iridescence Fresnel.

Default is null.

.sheen : boolean

Whether sheen is supported or not.

Default is false.

.sheenSpecularDirect : Node

The sheen specular direct.

Default is null.

.sheenSpecularIndirect : Node

The sheen specular indirect.

Default is null.

.transmission : boolean

Whether transmission is supported or not.

Default is false.

Methods

.ambientOcclusion( builder : NodeBuilder )

Implements the ambient occlusion term.

builder | The current node builder.
---|---

Overrides: LightingModel#ambientOcclusion

.direct( lightData : Object, builder : NodeBuilder )

Implements the direct light.

lightData | The light data.
---|---
builder | The current node builder.

Overrides: LightingModel#direct

.directRectArea( input : Object, builder : NodeBuilder )

This method is intended for implementing the direct light term for rect area light nodes.

input | The input data.
---|---
builder | The current node builder.

Overrides: LightingModel#directRectArea

.finish( builder : NodeBuilder )

Used for final lighting accumulations depending on the requested features.

builder | The current node builder.
---|---

Overrides: LightingModel#finish

.indirect( builder : NodeBuilder )

Implements the indirect lighting.

builder | The current node builder.
---|---

Overrides: LightingModel#indirect

.indirectDiffuse( builder : NodeBuilder )

Implements the indirect diffuse term.

builder | The current node builder.
---|---

.indirectSpecular( builder : NodeBuilder )

Implements the indirect specular term.

builder | The current node builder.
---|---

.start( builder : NodeBuilder )

Depending on what features are requested, the method prepares certain node variables which are later used for lighting computations.

builder | The current node builder.
---|---

Overrides: LightingModel#start

Source

src/nodes/functions/PhysicalLightingModel.js