Class GaussianSplattingOverdrawMaterialPlugin
Hierarchy (View Summary)
- MaterialPluginBase
- GaussianSplattingOverdrawMaterialPlugin
Index
Constructors
Properties
Accessors
Methods
Constructors
constructor
-
new GaussianSplattingOverdrawMaterialPlugin(
material: GaussianSplattingMaterial,
): GaussianSplattingOverdrawMaterialPluginAttaches the additive overdraw visualization to a Gaussian splat material.
Parameters
- material: GaussianSplattingMaterial
The material to visualize
Returns GaussianSplattingOverdrawMaterialPlugin
- material: GaussianSplattingMaterial
Properties
do Not Serialize
Specifies if the material plugin should be serialized, true to skip serialization
Readonlymark All Defines As Dirty
Helper function to mark defines as being dirty.
name
Defines the name of the plugin
priority
Defines the priority of the plugin. Lower numbers run first.
register For Extra Events
Indicates that this plugin should be notified for the extra events (HasRenderTargetTextures / FillRenderTargetTextures / HardBindForSubMesh)
resolve Includes
Indicates that any #include directive in the plugin code must be replaced by the corresponding code.
Accessors
intensity
-
get intensity(): number
Equal RGB contribution per surviving fragment. Defaults to 1/256 (256 overlaps reach white).
Returns number
-
set intensity(value: number): void
Parameters
- value: number
Returns void
is Enabled
-
get isEnabled(): boolean
Whether equal-contribution additive rendering is active. Defaults to true.
Returns boolean
-
set isEnabled(value: boolean): void
Parameters
- value: boolean
Returns void
Methods
add Fallbacks
-
Add fallbacks to the effect fallbacks list.
Parameters
- defines: MaterialDefines
defines the Base texture to use.
- fallbacks: EffectFallbacks
defines the current fallback list.
- currentRank: number
defines the current fallback rank.
Returns number
the new fallback rank.
- defines: MaterialDefines
bind For Sub Mesh
-
bindForSubMesh(
_uniformBuffer: UniformBuffer,
_scene: Scene,
_engine: AbstractEngine,
subMesh: SubMesh,
): voidBinds the overdraw visualization uniforms for the rendered submesh.
Parameters
- _uniformBuffer: UniformBuffer
Unused
- _scene: Scene
Current scene
- _engine: AbstractEngine
Current engine
- subMesh: SubMesh
Rendered submesh
Returns void
- _uniformBuffer: UniformBuffer
collect Defines
-
Collects all defines.
Parameters
- defines: { [name: string]: { default: any; type: string } }
The object to append to.
Returns void
- defines: { [name: string]: { default: any; type: string } }
copy To
-
Copies the original blend state as well as the public settings.
Parameters
- plugin: MaterialPluginBase
Destination plugin
Returns void
- plugin: MaterialPluginBase
dispose
-
Restores blend/depth settings owned by this plugin.
Returns void
fill Render Target Textures
-
Fills the list of render target textures.
Parameters
- _renderTargets: SmartArray<RenderTargetTexture>
the list of render targets to update
Returns void
- _renderTargets: SmartArray<RenderTargetTexture>
get Active Textures
-
Returns an array of the actively used textures.
Parameters
- _activeTextures: BaseTexture[]
Array of BaseTextures
Returns void
- _activeTextures: BaseTexture[]
get Animatables
-
Returns the animatable textures.
Parameters
- _animatables: IAnimatable[]
Array of animatable textures.
Returns void
- _animatables: IAnimatable[]
get Attributes
-
Gets the attributes used by the plugin.
Parameters
- _attributes: string[]
list that the attribute names should be added to.
- _scene: Scene
the scene that the material belongs to.
- _mesh: AbstractMesh
the mesh being rendered.
Returns void
- _attributes: string[]
get Class Name
-
Returns string
The registered plugin class name
get Custom Code
-
getCustomCode(
shaderType: string,
shaderLanguage?: ShaderLanguage,
): Nullable<{ [pointName: string]: string }>Parameters
- shaderType: string
Vertex or fragment
- shaderLanguage: ShaderLanguage = ShaderLanguage.GLSL
GLSL or WGSL
Returns Nullable<{ [pointName: string]: string }>
Code inserted into the Gaussian shader, or null
- shaderType: string
get Samplers
-
Gets the samplers used by the plugin.
Parameters
- _samplers: string[]
list that the sampler names should be added to.
Returns void
- _samplers: string[]
get Uniform Buffers Names
-
Gets the uniform buffers names added by the plugin.
Parameters
- _ubos: string[]
list that the ubo names should be added to.
Returns void
- _ubos: string[]
get Uniforms
-
Returns { externalUniforms: string[] }
Shader uniforms for both languages
hard Bind For Sub Mesh
-
hardBindForSubMesh(
_uniformBuffer: UniformBuffer,
_scene: Scene,
_engine: AbstractEngine,
_subMesh: SubMesh,
): voidBinds the material data (this function is called even if mustRebind() returns false)
Parameters
- _uniformBuffer: UniformBuffer
defines the Uniform buffer to fill in.
- _scene: Scene
defines the scene the material belongs to.
- _engine: AbstractEngine
defines the engine the material belongs to.
- _subMesh: SubMesh
the submesh to bind data for
Returns void
- _uniformBuffer: UniformBuffer
has Render Target Textures
-
Gets a boolean indicating that current material needs to register RTT
Returns boolean
true if this uses a render target otherwise false.
has Texture
-
Checks to see if a texture is used in the material.
Parameters
- _texture: BaseTexture
Base texture to use.
Returns boolean
- Boolean specifying if a texture is used in the material.
- _texture: BaseTexture
is Compatible
-
Parameters
- shaderLanguage: ShaderLanguage
Shader language to test
Returns boolean
Whether the shader language is supported
- shaderLanguage: ShaderLanguage
is Ready For Sub Mesh
-
isReadyForSubMesh(
_defines: MaterialDefines,
_scene: Scene,
_engine: AbstractEngine,
_subMesh: SubMesh,
): booleanSpecifies that the submesh is ready to be used.
Parameters
- _defines: MaterialDefines
the list of "defines" to update.
- _scene: Scene
defines the scene the material belongs to.
- _engine: AbstractEngine
the engine this scene belongs to.
- _subMesh: SubMesh
the submesh to check for readiness
Returns boolean
- boolean indicating that the submesh is ready or not.
- _defines: MaterialDefines
parse
-
Restores original blend settings after material parsing.
Parameters
- source: any
Serialized plugin
- scene: Scene
Scene containing the material
- rootUrl: string
Asset root URL
Returns void
- source: any
prepare Defines
-
Sets the defines for the next rendering
Parameters
- _defines: MaterialDefines
the list of "defines" to update.
- _scene: Scene
defines the scene to the material belongs to.
- _mesh: AbstractMesh
the mesh being rendered
Returns void
- _defines: MaterialDefines
prepare Defines Before Attributes
-
prepareDefinesBeforeAttributes(
_defines: MaterialDefines,
_scene: Scene,
_mesh: AbstractMesh,
): voidSets the defines for the next rendering. Called before PrepareDefinesForAttributes is called.
Parameters
- _defines: MaterialDefines
the list of "defines" to update.
- _scene: Scene
defines the scene to the material belongs to.
- _mesh: AbstractMesh
the mesh being rendered
Returns void
- _defines: MaterialDefines
serialize
-
Returns any
Serialized settings, including the pre-plugin blend/depth state
Displays equal-contribution Gaussian fragment overdraw, independently of color and Gaussian opacity. Uses additive ONE+ONE RGB blending and disables depth writes while active; keeps depth testing. Restores the material's prior blending/depth settings on disable or disposal. See https://playground.babylonjs.com/#D4U720#1