Class: GPUProgram
December 2, 2022 · View on GitHub
gpu-io / GPUProgram
Class: GPUProgram
Table of contents
Properties
Constructors
Methods
Properties
name
• Readonly name: string
Name of GPUProgram, used for error logging.
_fragmentShaderSource
• Protected _fragmentShaderSource: string
_samplerUniformsIndices
• Protected Readonly _samplerUniformsIndices: { name: string ; inputIndex: number ; shaderIndex: number }[] = []
Constructors
constructor
• new GPUProgram(composer, params)
Create a GPUProgram.
Parameters
| Name | Type | Description |
|---|---|---|
composer | GPUComposer | The current GPUComposer instance. |
params | Object | GPUProgram parameters. |
params.name | string | Name of GPUProgram, used for error logging. |
params.fragmentShader | string | string[] | Fragment shader source or array of sources to be joined. |
params.uniforms? | UniformParams[] | Array of uniforms to initialize with GPUProgram. More uniforms can be added later with GPUProgram.setUniform(). |
params.compileTimeConstants? | CompileTimeConstants | Compile time #define constants to include with fragment shader. |
Methods
recompile
▸ recompile(compileTimeConstants): void
Force compilation of GPUProgram with new compileTimeConstants.
Parameters
| Name | Type | Description |
|---|---|---|
compileTimeConstants | CompileTimeConstants | Compile time #define constants to include with fragment shader. |
Returns
void
setUniform
▸ setUniform(name, value, type?): void
Set fragment shader uniform for GPUProgram.
Parameters
| Name | Type | Description |
|---|---|---|
name | string | Uniform name as it appears in fragment shader. |
value | UniformValue | Uniform value. |
type? | UniformType | Uniform type. |
Returns
void
dispose
▸ dispose(): void
Deallocate GPUProgram instance and associated WebGL properties.
Returns
void