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:34

Parameters

label

string

backend

WebGLBackend

instanceCount

number

userFragmentShader?

string

atlasId?

string

Returns

WebGLQuadShader

Properties

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:272

Returns

void


endFrame()

endFrame(): void

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

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:199

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:149

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