Advanced
Readonly
compatibleA number that uses two bits on whether the shader is compatible with the WebGL renderer and/or the WebGPU renderer. 0b00 - not compatible with either 0b01 - compatible with WebGL 0b10 - compatible with WebGPU This is automatically set based on if a GlProgram or GpuProgram is provided.
An instance of the GL program used by the WebGL renderer
An instance of the GPU program used by the WebGPU renderer
A record of the resources used by the shader.
The texture that the shader uses.
Readonly
uidA unique identifier for the shader
Sometimes a resource group will be provided later (for example global uniforms) In such cases, this method can be used to let the shader know about the group.
the name of the resource group
the index of the group (should match the webGPU shader group location)
the index of the bind point (should match the webGPU shader bind point)
Use to destroy the shader when its not longer needed. It will destroy the resources and remove listeners.
if the programs should be destroyed as well. Make sure its not being used by other shaders!
Shader that uses a texture. This is the default shader used by
Mesh
when no shader is provided. It is a simple shader that samples a texture and applies it to the geometry.