RedGPU API / RedGPU / Material / PBRMaterial
Class: PBRMaterial
Defined in: src/material/pbrMaterial/PBRMaterial.ts:186
Material class supporting Physically Based Rendering (PBR) and glTF 2.0 material extensions.
Integrates and manages base color, metallic/roughness, normal, occlusion, emissive textures, and various KHR_materials_* extension properties, configuring packed textures for the render pipeline.
Extends
Constructors
Constructor
new PBRMaterial(
redGPUContext):PBRMaterial
Defined in: src/material/pbrMaterial/PBRMaterial.ts:693
Creates a PBRMaterial instance.
Parameters
| Parameter | Type | Description |
|---|---|---|
redGPUContext | RedGPUContext | RedGPUContext instance |
Returns
PBRMaterial
Inherited from
AUVTransformBaseMaterial.constructor
Properties
alphaBlend
alphaBlend:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:206
Alpha blending mode value
baseColorFactor
baseColorFactor:
number[]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:226
Base color factor [r, g, b, a]
baseColorTexture
baseColorTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:216
Base color texture
baseColorTexture_texCoord_index
baseColorTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:231
Base color texture UV channel index
baseColorTextureSampler
baseColorTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:221
Base color texture sampler
cutOff
cutOff:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:201
Alpha cutoff threshold value
doubleSided
doubleSided:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:656
Whether double-sided rendering is enabled
emissiveFactor
emissiveFactor:
number[]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:601
Emissive color factor [r, g, b]
emissiveStrength
emissiveStrength:
number[]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:606
Emissive strength multiplier (KHR_materials_emissive_strength)
emissiveTexture
emissiveTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:586
Emissive texture
emissiveTexture_texCoord_index
emissiveTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:596
Emissive texture UV channel index
emissiveTextureSampler
emissiveTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:591
Emissive texture sampler
isFoliage
isFoliage:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:661
Whether Two-Sided Foliage shading model is enabled
KHR_anisotropyRotation
KHR_anisotropyRotation:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:311
Anisotropy rotation angle (in radians)
KHR_anisotropyStrength
KHR_anisotropyStrength:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:306
Anisotropy strength
KHR_anisotropyTexture
KHR_anisotropyTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:316
Anisotropy texture
KHR_anisotropyTexture_texCoord_index
KHR_anisotropyTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:326
Anisotropy texture UV channel index
KHR_anisotropyTextureSampler
KHR_anisotropyTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:321
Anisotropy texture sampler
KHR_attenuationColor
KHR_attenuationColor:
number[]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:416
Volume attenuation color [r, g, b]
KHR_attenuationDistance
KHR_attenuationDistance:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:411
Light attenuation distance within the volume
KHR_clearcoatFactor
KHR_clearcoatFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:246
Clearcoat intensity factor
KHR_clearcoatNormalScale
KHR_clearcoatNormalScale:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:241
Clearcoat normal map scale
KHR_clearcoatNormalTexture
KHR_clearcoatNormalTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:261
Clearcoat normal texture
KHR_clearcoatNormalTexture_texCoord_index
KHR_clearcoatNormalTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:291
Clearcoat normal texture UV channel index
KHR_clearcoatNormalTextureSampler
KHR_clearcoatNormalTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:276
Clearcoat normal texture sampler
KHR_clearcoatRoughnessFactor
KHR_clearcoatRoughnessFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:251
Clearcoat roughness factor
KHR_clearcoatRoughnessTexture
KHR_clearcoatRoughnessTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:266
Clearcoat roughness texture
KHR_clearcoatRoughnessTexture_texCoord_index
KHR_clearcoatRoughnessTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:296
Clearcoat roughness texture UV channel index
KHR_clearcoatRoughnessTextureSampler
KHR_clearcoatRoughnessTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:281
Clearcoat roughness texture sampler
KHR_clearcoatTexture
KHR_clearcoatTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:256
Clearcoat texture
KHR_clearcoatTexture_texCoord_index
KHR_clearcoatTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:286
Clearcoat texture UV channel index
KHR_clearcoatTextureSampler
KHR_clearcoatTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:271
Clearcoat texture sampler
KHR_diffuseTransmissionColorFactor
KHR_diffuseTransmissionColorFactor: [
number,number,number]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:366
Diffuse transmission color factor [r, g, b]
KHR_diffuseTransmissionColorTexture
KHR_diffuseTransmissionColorTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:386
Diffuse transmission color texture
KHR_diffuseTransmissionColorTexture_texCoord_index
KHR_diffuseTransmissionColorTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:396
Diffuse transmission color texture UV channel index
KHR_diffuseTransmissionColorTextureSampler
KHR_diffuseTransmissionColorTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:391
Diffuse transmission color texture sampler
KHR_diffuseTransmissionFactor
KHR_diffuseTransmissionFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:361
Diffuse transmission factor
KHR_diffuseTransmissionTexture
KHR_diffuseTransmissionTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:371
Diffuse transmission texture
KHR_diffuseTransmissionTexture_texCoord_index
KHR_diffuseTransmissionTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:381
Diffuse transmission texture UV channel index
KHR_diffuseTransmissionTextureSampler
KHR_diffuseTransmissionTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:376
Diffuse transmission texture sampler
KHR_dispersion
KHR_dispersion:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:666
KHR_materials_dispersion dispersion strength
KHR_iridescenceFactor
KHR_iridescenceFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:511
Iridescence intensity factor
KHR_iridescenceIor
KHR_iridescenceIor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:516
Iridescence thin-film index of refraction (IOR)
KHR_iridescenceTexture
KHR_iridescenceTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:531
Iridescence intensity texture
KHR_iridescenceTextureSampler
KHR_iridescenceTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:536
Iridescence intensity texture sampler
KHR_iridescenceThicknessMaximum
KHR_iridescenceThicknessMaximum:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:526
Iridescence thin-film maximum thickness (nm)
KHR_iridescenceThicknessMinimum
KHR_iridescenceThicknessMinimum:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:521
Iridescence thin-film minimum thickness (nm)
KHR_iridescenceThicknessTexture
KHR_iridescenceThicknessTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:541
Iridescence thickness texture
KHR_iridescenceThicknessTextureSampler
KHR_iridescenceThicknessTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:546
Iridescence thickness texture sampler
KHR_materials_ior
KHR_materials_ior:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:556
KHR_materials_ior index of refraction (IOR) value (default: 1.5)
KHR_sheenColorFactor
KHR_sheenColorFactor: [
number,number,number]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:441
Sheen color factor [r, g, b]
KHR_sheenColorTexture
KHR_sheenColorTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:451
Sheen color texture
KHR_sheenColorTextureSampler
KHR_sheenColorTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:456
Sheen color texture sampler
KHR_sheenRoughnessFactor
KHR_sheenRoughnessFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:446
Sheen roughness factor
KHR_sheenRoughnessTexture
KHR_sheenRoughnessTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:461
Sheen roughness texture
KHR_sheenRoughnessTextureSampler
KHR_sheenRoughnessTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:466
Sheen roughness texture sampler
KHR_specularColorFactor
KHR_specularColorFactor: [
number,number,number]
Defined in: src/material/pbrMaterial/PBRMaterial.ts:481
Specular color factor [r, g, b]
KHR_specularColorTexture
KHR_specularColorTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:496
Specular color texture
KHR_specularColorTextureSampler
KHR_specularColorTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:501
Specular color texture sampler
KHR_specularFactor
KHR_specularFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:476
Specular reflection strength factor
KHR_specularTexture
KHR_specularTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:486
Specular texture
KHR_specularTextureSampler
KHR_specularTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:491
Specular texture sampler
KHR_thicknessFactor
KHR_thicknessFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:406
Volume thickness factor
KHR_thicknessTexture
KHR_thicknessTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:421
Volume thickness texture
KHR_thicknessTexture_texCoord_index
KHR_thicknessTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:431
Volume thickness texture UV channel index
KHR_thicknessTextureSampler
KHR_thicknessTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:426
Volume thickness texture sampler
KHR_transmissionFactor
KHR_transmissionFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:336
Optical transmission factor
KHR_transmissionTexture
KHR_transmissionTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:341
Transmission texture
KHR_transmissionTexture_texCoord_index
KHR_transmissionTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:351
Transmission texture UV channel index
KHR_transmissionTextureSampler
KHR_transmissionTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:346
Transmission texture sampler
metallicFactor
metallicFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:646
Metallic factor (0.0 to 1.0)
metallicRoughnessTexture
metallicRoughnessTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:631
Metallic-Roughness texture
metallicRoughnessTexture_texCoord_index
metallicRoughnessTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:641
Metallic-Roughness texture UV channel index
metallicRoughnessTextureSampler
metallicRoughnessTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:636
Metallic-Roughness texture sampler
normalScale
normalScale:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:561
Normal map scale
normalTexture
normalTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:571
Normal map texture
normalTexture_texCoord_index
normalTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:581
Normal map texture UV channel index
normalTextureSampler
normalTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:576
Normal map texture sampler
occlusionStrength
occlusionStrength:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:626
Occlusion application strength
occlusionTexture
occlusionTexture:
BitmapTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:611
Occlusion (AO) texture
occlusionTexture_texCoord_index
occlusionTexture_texCoord_index:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:621
Occlusion texture UV channel index
occlusionTextureSampler
occlusionTextureSampler:
Sampler
Defined in: src/material/pbrMaterial/PBRMaterial.ts:616
Occlusion texture sampler
roughnessFactor
roughnessFactor:
number
Defined in: src/material/pbrMaterial/PBRMaterial.ts:651
Roughness factor (0.0 to 1.0)
useCutOff
useCutOff:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:196
Whether to use alpha cutoff (MASK)
useKHR_materials_anisotropy
useKHR_materials_anisotropy:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:301
Whether to use the KHR_materials_anisotropy extension
useKHR_materials_clearcoat
useKHR_materials_clearcoat:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:236
Whether to use the KHR_materials_clearcoat extension
useKHR_materials_diffuse_transmission
useKHR_materials_diffuse_transmission:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:356
Whether to use the KHR_materials_diffuse_transmission extension
useKHR_materials_iridescence
useKHR_materials_iridescence:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:506
Whether to use the KHR_materials_iridescence extension
useKHR_materials_sheen
useKHR_materials_sheen:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:436
Whether to use the KHR_materials_sheen extension
useKHR_materials_specular
useKHR_materials_specular:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:471
Whether to use the KHR_materials_specular extension
useKHR_materials_transmission
useKHR_materials_transmission:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:331
Whether to use the KHR_materials_transmission extension
useKHR_materials_unlit
useKHR_materials_unlit:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:551
Whether to use the KHR_materials_unlit extension
useKHR_materials_volume
useKHR_materials_volume:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:401
Whether to use the KHR_materials_volume extension
useNormalTexture
useNormalTexture:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:566
Whether to use normal texture
useVertexColor
useVertexColor:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:191
Whether to use vertex color
Accessors
packedKHR_clearcoatTexture_transmission
Get Signature
readonly get packedKHR_clearcoatTexture_transmission():
PackedTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:722
Returns the packed texture combining clearcoat and transmission/thickness channels.
Returns
PackedTexture instance
packedKHR_diffuse_transmission
Get Signature
readonly get packedKHR_diffuse_transmission():
PackedTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:770
Returns the packed texture combining diffuse transmission color and factor channels.
Returns
PackedTexture instance
packedKHR_iridescence
Get Signature
readonly get packedKHR_iridescence():
PackedTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:734
Returns the packed texture combining iridescence and thickness channels.
Returns
PackedTexture instance
packedKHR_sheen
Get Signature
readonly get packedKHR_sheen():
PackedTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:758
Returns the packed texture combining sheen color and roughness channels.
Returns
PackedTexture instance
packedORMTexture
Get Signature
readonly get packedORMTexture():
PackedTexture
Defined in: src/material/pbrMaterial/PBRMaterial.ts:746
Returns the ORM packed texture combining occlusion (R), roughness (G), and metallic (B).
Returns
PackedTexture instance
Methods
setupPackedKHR_clearcoatTexture_transmission()
setupPackedKHR_clearcoatTexture_transmission():
Promise<void>
Defined in: src/material/pbrMaterial/PBRMaterial.ts:810
Packs clearcoat, clearcoat roughness, transmission, and volume thickness textures into a single 4-channel texture.
Returns
Promise<void>
setupPackedKHR_diffuse_transmission()
setupPackedKHR_diffuse_transmission():
Promise<void>
Defined in: src/material/pbrMaterial/PBRMaterial.ts:852
Merges diffuse transmission color and diffuse transmission factor textures into a single packed texture.
Returns
Promise<void>
setupPackedKHR_iridescence()
setupPackedKHR_iridescence():
Promise<void>
Defined in: src/material/pbrMaterial/PBRMaterial.ts:916
Merges iridescence and iridescence thickness textures into a single packed texture.
Returns
Promise<void>
setupPackedKHR_sheen()
setupPackedKHR_sheen():
Promise<void>
Defined in: src/material/pbrMaterial/PBRMaterial.ts:884
Merges sheen color and sheen roughness textures into a single packed texture.
Returns
Promise<void>
setupPackORMTexture()
setupPackORMTexture():
Promise<void>
Defined in: src/material/pbrMaterial/PBRMaterial.ts:778
Merges occlusion and metallic-roughness textures into a single ORM packed texture.
Returns
Promise<void>
Inherited Properties
View inherited properties (Click to expand)
__packingList
__packingList:
any[]
Defined in: src/material/core/ABitmapBaseMaterial.ts:24
List of texture packing callback functions executed when updating fragment state
Inherited from
AUVTransformBaseMaterial.__packingList
dirtyPipeline
dirtyPipeline:
boolean=false
Defined in: src/material/core/ABaseMaterial.ts:74
Flag indicating whether the pipeline needs updating
Inherited from
AUVTransformBaseMaterial.dirtyPipeline
dirtyTextureTransform
dirtyTextureTransform:
boolean=false
Defined in: src/material/core/AUVTransformBaseMaterial.ts:32
Flag indicating whether texture UV transform information has changed
Inherited from
AUVTransformBaseMaterial.dirtyTextureTransform
gpuRenderInfo
gpuRenderInfo:
FragmentGPURenderInfo
Defined in: src/material/core/ABaseMaterial.ts:69
Fragment GPU render pipeline information object
Inherited from
AUVTransformBaseMaterial.gpuRenderInfo
isInstanceofMaterial
isInstanceofMaterial:
boolean
Defined in: src/material/core/ABaseMaterial.ts:42
Flag indicating whether it is a material instance
Inherited from
AUVTransformBaseMaterial.isInstanceofMaterial
opacity
opacity:
number
Defined in: src/material/core/ABaseMaterial.ts:27
Opacity of the material (0.0 to 1.0)
Inherited from
AUVTransformBaseMaterial.opacity
tint
tint:
ColorRGBA
Defined in: src/material/core/ABaseMaterial.ts:32
Tint color of the material (ColorRGBA)
Inherited from
transparent
transparent:
boolean=false
Defined in: src/material/core/ABaseMaterial.ts:79
Whether transparent rendering is enabled for the material
Inherited from
AUVTransformBaseMaterial.transparent
use2PathRender
use2PathRender:
boolean
Defined in: src/material/pbrMaterial/PBRMaterial.ts:211
Whether to use 2-pass transparent rendering
Inherited from
AUVTransformBaseMaterial.use2PathRender
useTint
useTint:
boolean
Defined in: src/material/core/ABaseMaterial.ts:37
Whether to apply tint color
Inherited from
AUVTransformBaseMaterial.useTint
antialiasingManager
Get Signature
readonly get antialiasingManager():
AntialiasingManager
Defined in: src/base/RedGPUObject.ts:80
Returns the AntialiasingManager instance managing anti-aliasing settings.
Returns
AntialiasingManager instance
Inherited from
AUVTransformBaseMaterial.antialiasingManager
blendAlphaState
Get Signature
readonly get blendAlphaState():
BlendState
Defined in: src/material/core/ABaseMaterial.ts:277
Returns the alpha blend state object.
Returns
Alpha BlendState instance
Inherited from
AUVTransformBaseMaterial.blendAlphaState
blendColorState
Get Signature
readonly get blendColorState():
BlendState
Defined in: src/material/core/ABaseMaterial.ts:265
Returns the color blend state object.
Returns
Color BlendState instance
Inherited from
AUVTransformBaseMaterial.blendColorState
cacheKey
Get Signature
get cacheKey():
string
Defined in: src/resources/core/ResourceBase.ts:61
Gets or sets the cache key.
Returns
string
Cache key string
Set Signature
set cacheKey(
value):void
Defined in: src/resources/core/ResourceBase.ts:65
Parameters
| Parameter | Type |
|---|---|
value | string |
Returns
void
Inherited from
AUVTransformBaseMaterial.cacheKey
commandEncoderManager
Get Signature
readonly get commandEncoderManager():
CommandEncoderManager
Defined in: src/base/RedGPUObject.ts:92
Returns the CommandEncoderManager instance managing WebGPU command encoding.
Returns
CommandEncoderManager instance
Inherited from
AUVTransformBaseMaterial.commandEncoderManager
FRAGMENT_BIND_GROUP_DESCRIPTOR_NAME
Get Signature
readonly get FRAGMENT_BIND_GROUP_DESCRIPTOR_NAME():
string
Defined in: src/material/core/ABaseMaterial.ts:217
Returns the fragment bind group descriptor name.
Returns
string
Bind group descriptor name
Inherited from
AUVTransformBaseMaterial.FRAGMENT_BIND_GROUP_DESCRIPTOR_NAME
FRAGMENT_SHADER_MODULE_NAME
Get Signature
readonly get FRAGMENT_SHADER_MODULE_NAME():
string
Defined in: src/material/core/ABaseMaterial.ts:205
Returns the fragment shader module name.
Returns
string
Fragment shader module name
Inherited from
AUVTransformBaseMaterial.FRAGMENT_SHADER_MODULE_NAME
globalFragmentSlotIndex
Get Signature
readonly get globalFragmentSlotIndex():
number
Defined in: src/material/core/ABaseMaterial.ts:305
Returns the allocated slot index within the global fragment SSBO.
Returns
number
Allocated slot index (-1 if unallocated)
Inherited from
AUVTransformBaseMaterial.globalFragmentSlotIndex
gpuDevice
Get Signature
readonly get gpuDevice():
GPUDevice
Defined in: src/resources/core/ResourceBase.ts:89
Returns the associated GPUDevice.
Returns
GPUDevice
GPUDevice instance
Inherited from
AUVTransformBaseMaterial.gpuDevice
instanceId
Get Signature
readonly get instanceId():
number
Defined in: src/base/BaseObject.ts:36
Returns the unique sequential instance ID assigned per class.
Returns
number
Per-class unique instance ID
Inherited from
AUVTransformBaseMaterial.instanceId
MODULE_NAME
Get Signature
readonly get MODULE_NAME():
string
Defined in: src/material/core/ABaseMaterial.ts:193
Returns the material module name.
Returns
string
Module name
Inherited from
AUVTransformBaseMaterial.MODULE_NAME
name
Get Signature
get name():
string
Defined in: src/base/BaseObject.ts:63
Gets or sets the object name. Returns a default name (ClassName Instance N) if not explicitly set.
Returns
string
Object name string
Set Signature
set name(
value):void
Defined in: src/base/BaseObject.ts:70
Parameters
| Parameter | Type |
|---|---|
value | string |
Returns
void
Inherited from
redGPUContext
Get Signature
readonly get redGPUContext():
RedGPUContext
Defined in: src/base/RedGPUObject.ts:44
Returns the bound RedGPUContext instance.
Returns
RedGPUContext instance
Inherited from
AUVTransformBaseMaterial.redGPUContext
resourceManager
Get Signature
readonly get resourceManager():
ResourceManager
Defined in: src/base/RedGPUObject.ts:68
Returns the ResourceManager instance managing global GPU resources.
Returns
ResourceManager instance
Inherited from
AUVTransformBaseMaterial.resourceManager
resourceManagerKey
Get Signature
readonly get resourceManagerKey():
string
Defined in: src/resources/core/ResourceBase.ts:77
Returns the resource manager key.
Returns
string
Resource manager key string
Inherited from
AUVTransformBaseMaterial.resourceManagerKey
revision
Get Signature
readonly get revision():
number
Defined in: src/resources/core/ResourceBase.ts:49
Returns the revision (update count) of the resource.
Returns
number
Resource revision number
Inherited from
AUVTransformBaseMaterial.revision
SHADER_INFO
Get Signature
readonly get SHADER_INFO():
any
Defined in: src/material/core/ABaseMaterial.ts:241
Returns the complete parsed WGSL shader information.
Returns
any
Parsed shader information object
Inherited from
AUVTransformBaseMaterial.SHADER_INFO
STORAGE_STRUCT
Get Signature
readonly get STORAGE_STRUCT():
any
Defined in: src/material/core/ABaseMaterial.ts:229
Returns the parsed shader storage structure information.
Returns
any
Storage structure information
Inherited from
AUVTransformBaseMaterial.STORAGE_STRUCT
textureOffset
Get Signature
get textureOffset(): [
number,number]
Defined in: src/material/core/AUVTransformBaseMaterial.ts:71
Returns or sets the texture UV offset [u, v].
Returns
[number, number]
UV offset tuple [u, v] (default: [0, 0])
Set Signature
set textureOffset(
value):void
Defined in: src/material/core/AUVTransformBaseMaterial.ts:75
Parameters
| Parameter | Type |
|---|---|
value | [number, number] |
Returns
void
Inherited from
AUVTransformBaseMaterial.textureOffset
textureScale
Get Signature
get textureScale(): [
number,number]
Defined in: src/material/core/AUVTransformBaseMaterial.ts:88
Returns or sets the texture UV tiling scale [u, v].
Returns
[number, number]
UV scale tuple [u, v] (default: [1, 1])
Set Signature
set textureScale(
value):void
Defined in: src/material/core/AUVTransformBaseMaterial.ts:92
Parameters
| Parameter | Type |
|---|---|
value | [number, number] |
Returns
void
Inherited from
AUVTransformBaseMaterial.textureScale
tintBlendMode
Get Signature
get tintBlendMode():
string
Defined in: src/material/core/ABaseMaterial.ts:160
Returns the key name of the currently set tint blend mode or sets a new mode.
Throws
Throws an Error if an invalid tint blend mode value or key is specified
Returns
string
Tint blend mode key string (e.g., 'MULTIPLY')
Set Signature
set tintBlendMode(
value):void
Defined in: src/material/core/ABaseMaterial.ts:168
Parameters
| Parameter | Type |
|---|---|
value | "COLOR" | "NORMAL" | "SUBTRACT" | "MULTIPLY" | "LIGHTEN" | "SCREEN" | "LINEAR_DODGE" | "DARKEN" | "OVERLAY" | "COLOR_DODGE" | "COLOR_BURN" | "HARD_LIGHT" | "SOFT_LIGHT" | "DIFFERENCE" | "EXCLUSION" | "DIVIDE" | "VIVID_LIGHT" | "LINEAR_BURN" | "PIN_LIGHT" | "SATURATION" | "HUE" | "LUMINOSITY" | "NEGATION" | TINT_BLEND_MODE |
Returns
void
Inherited from
AUVTransformBaseMaterial.tintBlendMode
UNIFORM_STRUCT
Get Signature
readonly get UNIFORM_STRUCT():
any
Defined in: src/material/core/ABaseMaterial.ts:253
Returns the parsed shader uniform structure information.
Returns
any
Uniform structure information
Inherited from
AUVTransformBaseMaterial.UNIFORM_STRUCT
uuid
Get Signature
readonly get uuid():
string
Defined in: src/base/BaseObject.ts:48
Returns the universally unique identifier (UUID) of the object.
Returns
string
UUID string of the object
Inherited from
writeMaskState
Get Signature
get writeMaskState():
number
Defined in: src/material/core/ABaseMaterial.ts:289
Returns or sets the color write mask (GPUColorWrite) state.
Returns
number
GPUFlagsConstant value
Set Signature
set writeMaskState(
value):void
Defined in: src/material/core/ABaseMaterial.ts:293
Parameters
| Parameter | Type |
|---|---|
value | number |
Returns
void
Inherited from
Inherited Methods
View inherited methods (Click to expand)
__addDirtyPipelineListener()
__addDirtyPipelineListener(
listener):void
Defined in: src/resources/core/ResourceBase.ts:102
Adds a pipeline dirty listener to be called when the resource changes.
Parameters
| Parameter | Type | Description |
|---|---|---|
listener | () => void | Listener function to register |
Returns
void
Inherited from
AUVTransformBaseMaterial.__addDirtyPipelineListener
__removeDirtyPipelineListener()
__removeDirtyPipelineListener(
listener):void
Defined in: src/resources/core/ResourceBase.ts:115
Removes a registered pipeline dirty listener.
Parameters
| Parameter | Type | Description |
|---|---|---|
listener | () => void | Listener function to remove |
Returns
void
Inherited from
AUVTransformBaseMaterial.__removeDirtyPipelineListener
_updateBaseProperty()
_updateBaseProperty():
void
Defined in: src/material/core/ABaseMaterial.ts:461
Synchronizes basic material properties (uniforms, colors, tint, etc.) to the uniform buffer and global SSBO.
Returns
void
Inherited from
AUVTransformBaseMaterial._updateBaseProperty
_updateFragmentState()
_updateFragmentState():
void
Defined in: src/material/core/ABaseMaterial.ts:357
Checks shader variants and updates the fragment bind group and render state.
Returns
void
Inherited from
AUVTransformBaseMaterial._updateFragmentState
destroy()
destroy():
void
Defined in: src/material/core/ABaseMaterial.ts:510
Destroys the material instance and releases allocated uniform buffers and global fragment slots.
Returns
void
Inherited from
AUVTransformBaseMaterial.destroy
getFragmentRenderState()
getFragmentRenderState(
entryPoint?):GPUFragmentState
Defined in: src/material/core/ABaseMaterial.ts:430
Creates and returns a GPU fragment render state (GPUFragmentState) object.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
entryPoint? | string | 'main' | Fragment shader entry point function name (default: 'main') |
Returns
GPUFragmentState
Configured GPUFragmentState object
Inherited from
AUVTransformBaseMaterial.getFragmentRenderState
getGPUResourceSampler()
getGPUResourceSampler(
sampler):GPUSampler
Defined in: src/material/core/ABaseMaterial.ts:502
Returns the GPUSampler from a Sampler instance, or the default GPUSampler if not provided.
Parameters
| Parameter | Type | Description |
|---|---|---|
sampler | Sampler | Sampler instance |
Returns
GPUSampler
GPUSampler instance
Inherited from
AUVTransformBaseMaterial.getGPUResourceSampler
initGPURenderInfos()
initGPURenderInfos():
void
Defined in: src/material/core/ABaseMaterial.ts:313
Initializes GPU fragment render pipeline information and uniform buffers.
Returns
void
Inherited from
AUVTransformBaseMaterial.initGPURenderInfos
notifyUpdate()
notifyUpdate(
resetList?):void
Defined in: src/resources/core/ResourceBase.ts:131
Notifies registered listeners that the resource has been updated.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
resetList? | boolean | false | Whether to reset the listener list after notification (default: false) |
Returns
void
Inherited from
AUVTransformBaseMaterial.notifyUpdate
updateSampler()
updateSampler(
prevSampler,newSampler):void
Defined in: src/material/core/ABitmapBaseMaterial.ts:80
Updates pipeline dirty listeners upon sampler change and refreshes the fragment state.
Parameters
| Parameter | Type | Description |
|---|---|---|
prevSampler | Sampler | Previously bound Sampler instance |
newSampler | Sampler | New Sampler instance to bind |
Returns
void
Inherited from
AUVTransformBaseMaterial.updateSampler
updateTexture()
updateTexture(
prevTexture,texture):void
Defined in: src/material/core/ABitmapBaseMaterial.ts:63
Updates pipeline dirty listeners upon texture change and refreshes the fragment state.
Parameters
| Parameter | Type | Description |
|---|---|---|
prevTexture | any | Previously bound texture object |
texture | any | New texture object to bind |
Returns
void