Skip to content

transformFeedback()

ts
function transformFeedback<O, U>(params: {
  gl: WebGL2RenderingContext;
  vertex: string;
  attributes?: Record<string, Attribute>;
  uniforms?: U;
  outputs: Record<
    O,
    {
      size: number;
    }
  >;
}): TransformFeedbackPass<O, U>;

Creates a Transform Feedback pass for GPGPU tasks without rendering to a texture.

It allows you to run a vertex shader and capture its output varyings into buffers that can then be read back by the CPU or used as input for another pass.

Type Parameters

O

O extends string

U

U extends Uniforms

Parameters

params

Configuration for the transform feedback pass.

gl

WebGL2RenderingContext

WebGL2 context.

vertex

string

Vertex shader source. Should write to the output varyings.

attributes?

Record<string, Attribute> = {}

Vertex attributes (input buffers).

uniforms?

U = ...

Uniform values for the pass.

outputs

Record<O, { size: number; }>

Definition of the transform feedback output buffers. Maps varying names to their expected component size (e.g., 3 for vec3).

Returns

TransformFeedbackPass<O, U>

Released under the MIT License.