Skip to main content

Interface: MaterialExtension

Core-API.MaterialExtension

Implemented by​

Properties​

parsFragmentSnippet​

• Optional parsFragmentSnippet: string | (renderer?: WebGLRenderer, material?: IMaterial<any, IMaterialEventMap>) => string


parsVertexSnippet​

• Optional parsVertexSnippet: string | (renderer?: WebGLRenderer, material?: IMaterial<any, IMaterialEventMap>) => string


extraUniforms​

• Optional extraUniforms: Object

Index signature​

▪ [uniform: string]: IUniform


extraDefines​

• Optional extraDefines: Record<string, string | number>


customCacheKey​

• Optional customCacheKey: string


updaters​

• Optional updaters: IShaderPropertiesUpdater[] | () => IShaderPropertiesUpdater[]


updateVersion​

• Optional updateVersion: number


uuid​

• Optional uuid: string

Methods​

shaderExtender​

▸ Optional shaderExtender(shader, material, renderer): void

Parameters​

NameType
shaderShader & { defines: any }
materialIMaterial<any, IMaterialEventMap>
rendererWebGLRenderer

Returns​

void


computeCacheKey​

▸ Optional computeCacheKey(material): string

Parameters​

NameType
materialIMaterial<any, IMaterialEventMap>

Returns​

string


onObjectRender​

▸ Optional onObjectRender(object, material, renderer): void

Parameters​

NameType
objectObject3D<Object3DEventMap>
materialIMaterial<any, IMaterialEventMap>
rendererWebGLRenderer

Returns​

void


onAfterRender​

▸ Optional onAfterRender(object, material, renderer): void

Parameters​

NameType
objectObject3D<Object3DEventMap>
materialIMaterial<any, IMaterialEventMap>
rendererWebGLRenderer

Returns​

void


onMaterialUpdate​

▸ Optional onMaterialUpdate(material): void

Parameters​

NameType
materialIMaterial<any, IMaterialEventMap>

Returns​

void


onAddToMesh​

▸ Optional onAddToMesh(mesh, material): void

Parameters​

NameType
meshObject3D<Object3DEventMap>
materialIMaterial<any, IMaterialEventMap>

Returns​

void


onRemoveFromMesh​

▸ Optional onRemoveFromMesh(mesh, material): void

Parameters​

NameType
meshObject3D<Object3DEventMap>
materialIMaterial<any, IMaterialEventMap>

Returns​

void


onRegister​

▸ Optional onRegister(material): void

Parameters​

NameType
materialIMaterial<any, IMaterialEventMap>

Returns​

void


isCompatible​

▸ isCompatible(material): boolean

Parameters​

NameType
materialIMaterial<any, IMaterialEventMap>

Returns​

boolean


getUiConfig​

▸ Optional getUiConfig(material): undefined | UiObjectConfig<any, string>

Parameters​

NameType
materialIMaterial<any, IMaterialEventMap>

Returns​

undefined | UiObjectConfig<any, string>


__setDirty​

▸ Optional __setDirty(): void

Returns​

void


setDirty​

▸ Optional setDirty(): void

Returns​

void