Skip to content

@bloopjs/toodle


@bloopjs/toodle / backends/webgl2/WebGLQuadShader / WebGLQuadShader

Class: WebGLQuadShader ​

Defined in: backends/webgl2/WebGLQuadShader.ts:17

WebGL 2 implementation of quad shader for instanced rendering.

Implements ​

Constructors ​

Constructor ​

new WebGLQuadShader(label, backend, instanceCount, userFragmentShader?, atlasId?): WebGLQuadShader

Defined in: backends/webgl2/WebGLQuadShader.ts:35

Parameters ​

label ​

string

backend ​

WebGLBackend

instanceCount ​

number

userFragmentShader? ​

string

atlasId? ​

string

Returns ​

WebGLQuadShader

Properties ​

code ​

readonly code: string

Defined in: backends/webgl2/WebGLQuadShader.ts:19

The final compiled shader code (for debugging)

Implementation of ​

IBackendShader.code


label ​

readonly label: string

Defined in: backends/webgl2/WebGLQuadShader.ts:18

Debug label for the shader

Implementation of ​

IBackendShader.label

Methods ​

destroy() ​

destroy(): void

Defined in: backends/webgl2/WebGLQuadShader.ts:274

Returns ​

void


endFrame() ​

endFrame(): void

Defined in: backends/webgl2/WebGLQuadShader.ts:249

Cleanup after frame. Called once per frame after all processBatch calls.

Returns ​

void

Implementation of ​

IBackendShader.endFrame


processBatch() ​

processBatch(nodes): number

Defined in: backends/webgl2/WebGLQuadShader.ts:201

Process a batch of nodes and issue draw calls.

Parameters ​

nodes ​

SceneNode[]

The nodes to render

Returns ​

number

Number of draw calls issued

Implementation of ​

IBackendShader.processBatch


startFrame() ​

startFrame(uniform): void

Defined in: backends/webgl2/WebGLQuadShader.ts:151

Prepare for a new frame. Called once per frame before any processBatch calls.

Parameters ​

uniform ​

EngineUniform

Engine uniforms (view-projection, resolution)

Returns ​

void

Implementation of ​

IBackendShader.startFrame