Skip to main content

@novorender/api / RenderStateDynamicMaterialGGX

Interface: RenderStateDynamicMaterialGGX

Defined in: @novorender/src/core3d/state/dynamic.ts:213

GGX type of PBR material.

See

https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#materials

Extends

  • RenderStateDynamicMaterialCommon

Properties

alphaCutoff?

readonly optional alphaCutoff: number;

Defined in: @novorender/src/core3d/state/dynamic.ts:189

Cutoff factor used for alpha masking.

Default Value

0.5

Inherited from

RenderStateDynamicMaterialCommon.alphaCutoff

alphaMode?

readonly optional alphaMode: "BLEND" | "OPAQUE" | "MASK";

Defined in: @novorender/src/core3d/state/dynamic.ts:184

How to interpret color alpha channel.

Remarks

"OPAQUE" renders all pixels regardless of alpha value.

"MASK" renders only pixels with alpha larger or equal to alphaCutoff.

"BLEND" blends pixels with background using alpha as blending factor.

Inherited from

RenderStateDynamicMaterialCommon.alphaMode

baseColorFactor?

readonly optional baseColorFactor: RGBA;

Defined in: @novorender/src/core3d/state/dynamic.ts:221

Factor used directly or multiplied with baseColorTexture, if defined, for material base color.

Default Value

[1,1,1,1]


baseColorTexture?

readonly optional baseColorTexture: RenderStateDynamicTextureReference;

Defined in: @novorender/src/core3d/state/dynamic.ts:239

Base color texture.


doubleSided?

readonly optional doubleSided: boolean;

Defined in: @novorender/src/core3d/state/dynamic.ts:174

Whether to render material as double sided or not. @default: false

Inherited from

RenderStateDynamicMaterialCommon.doubleSided

emissiveFactor?

readonly optional emissiveFactor: RGB;

Defined in: @novorender/src/core3d/state/dynamic.ts:236

Emissive light factor (0-1)

Default Value

1

emissiveTexture?

readonly optional emissiveTexture: RenderStateDynamicTextureReference;

Defined in: @novorender/src/core3d/state/dynamic.ts:253

Emissive light texture


kind

readonly kind: "ggx";

Defined in: @novorender/src/core3d/state/dynamic.ts:216

Material union discriminant.


metallicFactor?

readonly optional metallicFactor: number;

Defined in: @novorender/src/core3d/state/dynamic.ts:226

Metallicness PBR factor (0-1)

Default Value

1

metallicRoughnessTexture?

readonly optional metallicRoughnessTexture: RenderStateDynamicTextureReference;

Defined in: @novorender/src/core3d/state/dynamic.ts:244

PBR Mmtallic + roughness texture.

See

https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#metallic-roughness-material


normalTexture?

readonly optional normalTexture: RenderStateDynamicNormalTextureReference;

Defined in: @novorender/src/core3d/state/dynamic.ts:247

PBR surface normal texture


occlusionTexture?

readonly optional occlusionTexture: RenderStateDynamicOcclusionTextureReference;

Defined in: @novorender/src/core3d/state/dynamic.ts:250

Occlusion/AO texture


roughnessFactor?

readonly optional roughnessFactor: number;

Defined in: @novorender/src/core3d/state/dynamic.ts:231

Roughness PBR factor (0-1)

Default Value

1