Skip to content

Documentation / device / ProgramBuilder

Class: ProgramBuilder ​

Defined in: libs/device/src/builder/programbuilder.ts:154

Constructors ​

Constructor ​

new ProgramBuilder(device): ProgramBuilder

Defined in: libs/device/src/builder/programbuilder.ts:1155

Creates a program builder for given device

Parameters ​

device ​

AbstractDevice

The device

Returns ​

ProgramBuilder

Properties ​

atomic_int ​

atomic_int: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (name): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:246

Atomic int type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

number

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

boolean

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


atomic_uint ​

atomic_uint: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (name): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:256

Atomic uint type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

number

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

boolean

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


float ​

float: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (name): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:266

float type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

number

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

boolean

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


half ​

half: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (rhs): PBShaderExp; (name): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:276

half (f16) type variable constructors, requires WebGPU shader-f16 feature

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

number

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

boolean

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


int ​

int: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:286

int type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | boolean | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


uint ​

uint: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:293

uint type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | boolean | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


bool ​

bool: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:300

boolean type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | boolean | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


vec2 ​

vec2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (x, y): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:307

vec2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


hvec2 ​

hvec2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (x, y): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:315

hvec2 (f16) type variable constructors, requires WebGPU shader-f16 feature

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


ivec2 ​

ivec2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (x, y): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:323

ivec2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


uvec2 ​

uvec2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (x, y): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:331

uvec2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


bvec2 ​

bvec2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (rhs): PBShaderExp; (x, y): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:339

bvec2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(rhs): PBShaderExp

Parameters ​
rhs ​

string | number | boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y): PBShaderExp

Parameters ​
x ​

number | boolean | PBShaderExp

y ​

number | boolean | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


vec3 ​

vec3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z): PBShaderExp; (x, yz): PBShaderExp; (xy, z): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:347

vec3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


hvec3 ​

hvec3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z): PBShaderExp; (x, yz): PBShaderExp; (xy, z): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:358

hvec3 (f16) type variable constructors, requires WebGPU shader-f16 feature

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


ivec3 ​

ivec3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z): PBShaderExp; (x, yz): PBShaderExp; (xy, z): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:369

ivec3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


uvec3 ​

uvec3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z): PBShaderExp; (x, yz): PBShaderExp; (xy, z): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:380

uvec3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


bvec3 ​

bvec3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z): PBShaderExp; (x, yz): PBShaderExp; (xy, z): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:391

bvec3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

y ​

boolean | PBShaderExp

z ​

boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

yz ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

boolean | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


vec4 ​

vec4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z, w): PBShaderExp; (x, y, zw): PBShaderExp; (x, yz, w): PBShaderExp; (x, yzw): PBShaderExp; (xy, z, w): PBShaderExp; (xy, zw): PBShaderExp; (xyz, w): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:402

vec4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, zw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yzw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yzw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z, w): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, zw): PBShaderExp

Parameters ​
xy ​

PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xyz, w): PBShaderExp

Parameters ​
xyz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


hvec4 ​

hvec4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z, w): PBShaderExp; (x, y, zw): PBShaderExp; (x, yz, w): PBShaderExp; (x, yzw): PBShaderExp; (xy, z, w): PBShaderExp; (xy, zw): PBShaderExp; (xyz, w): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:422

hvec4 (f16) type variable constructors, requires WebGPU shader-f16 feature

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, zw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yzw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yzw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z, w): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, zw): PBShaderExp

Parameters ​
xy ​

PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xyz, w): PBShaderExp

Parameters ​
xyz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


ivec4 ​

ivec4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z, w): PBShaderExp; (x, y, zw): PBShaderExp; (x, yz, w): PBShaderExp; (x, yzw): PBShaderExp; (xy, z, w): PBShaderExp; (xy, zw): PBShaderExp; (xyz, w): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:442

ivec4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, zw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yzw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yzw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z, w): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, zw): PBShaderExp

Parameters ​
xy ​

PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xyz, w): PBShaderExp

Parameters ​
xyz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


uvec4 ​

uvec4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z, w): PBShaderExp; (x, y, zw): PBShaderExp; (x, yz, w): PBShaderExp; (x, yzw): PBShaderExp; (xy, z, w): PBShaderExp; (xy, zw): PBShaderExp; (xyz, w): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:462

uvec4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, zw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

y ​

number | PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz, w): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yzw): PBShaderExp

Parameters ​
x ​

number | PBShaderExp

yzw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z, w): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

number | PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, zw): PBShaderExp

Parameters ​
xy ​

PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xyz, w): PBShaderExp

Parameters ​
xyz ​

PBShaderExp

w ​

number | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


bvec4 ​

bvec4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (x): PBShaderExp; (x, y, z, w): PBShaderExp; (x, y, zw): PBShaderExp; (x, yz, w): PBShaderExp; (x, yzw): PBShaderExp; (xy, z, w): PBShaderExp; (xy, zw): PBShaderExp; (xyz, w): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:482

bvec4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(x): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, z, w): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

y ​

boolean | PBShaderExp

z ​

boolean | PBShaderExp

w ​

boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, y, zw): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

y ​

boolean | PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yz, w): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

yz ​

PBShaderExp

w ​

boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(x, yzw): PBShaderExp

Parameters ​
x ​

boolean | PBShaderExp

yzw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, z, w): PBShaderExp

Parameters ​
xy ​

PBShaderExp

z ​

boolean | PBShaderExp

w ​

boolean | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xy, zw): PBShaderExp

Parameters ​
xy ​

PBShaderExp

zw ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(xyz, w): PBShaderExp

Parameters ​
xyz ​

PBShaderExp

w ​

boolean | PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat2 ​

mat2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m10, m11): PBShaderExp; (m0, m1): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:502

mat2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m10, m11): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat2x3 ​

mat2x3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m02, m10, m11, m12): PBShaderExp; (m0, m1): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:516

mat2x3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m02, m10, m11, m12): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m02 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m12 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat2x4 ​

mat2x4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m02, m03, m10, m11, m12, m13): PBShaderExp; (m0, m1): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:532

mat2x4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m02, m03, m10, m11, m12, m13): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m02 ​

number | PBShaderExp

m03 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m12 ​

number | PBShaderExp

m13 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat3 ​

mat3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m02, m10, m11, m12, m20, m21, m22): PBShaderExp; (m0, m1, m2): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:550

mat3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m02, m10, m11, m12, m20, m21, m22): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m02 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m12 ​

number | PBShaderExp

m20 ​

number | PBShaderExp

m21 ​

number | PBShaderExp

m22 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1, m2): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

m2 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat3x2 ​

mat3x2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m10, m11, m20, m21): PBShaderExp; (m0, m1, m2): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:569

mat3x2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m10, m11, m20, m21): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m20 ​

number | PBShaderExp

m21 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1, m2): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

m2 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat3x4 ​

mat3x4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23): PBShaderExp; (m0, m1, m2): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:585

mat3x4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m02 ​

number | PBShaderExp

m03 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m12 ​

number | PBShaderExp

m13 ​

number | PBShaderExp

m20 ​

number | PBShaderExp

m21 ​

number | PBShaderExp

m22 ​

number | PBShaderExp

m23 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1, m2): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

m2 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat4 ​

mat4: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23, m30, m31, m32, m33): PBShaderExp; (m0, m1, m2, m3): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:607

mat4 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m02, m03, m10, m11, m12, m13, m20, m21, m22, m23, m30, m31, m32, m33): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m02 ​

number | PBShaderExp

m03 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m12 ​

number | PBShaderExp

m13 ​

number | PBShaderExp

m20 ​

number | PBShaderExp

m21 ​

number | PBShaderExp

m22 ​

number | PBShaderExp

m23 ​

number | PBShaderExp

m30 ​

number | PBShaderExp

m31 ​

number | PBShaderExp

m32 ​

number | PBShaderExp

m33 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1, m2, m3): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

m2 ​

PBShaderExp

m3 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat4x2 ​

mat4x2: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m10, m11, m20, m21, m30, m31): PBShaderExp; (m0, m1, m2, m3): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:633

mat4x2 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m10, m11, m20, m21, m30, m31): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m20 ​

number | PBShaderExp

m21 ​

number | PBShaderExp

m30 ​

number | PBShaderExp

m31 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1, m2, m3): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

m2 ​

PBShaderExp

m3 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


mat4x3 ​

mat4x3: {[dim: number]: ShaderTypeFunc😭): PBShaderExp; (name): PBShaderExp; (m00, m01, m02, m10, m11, m12, m20, m21, m22, m30, m31, m32): PBShaderExp; (m0, m1, m2, m3): PBShaderExp; ptr: ShaderTypeFunc; }

Defined in: libs/device/src/builder/programbuilder.ts:651

mat4x3 type variable constructors

Index Signature ​

[dim: number]: ShaderTypeFunc

Call Signature ​

(): PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(name): PBShaderExp

Parameters ​
name ​

string

Returns ​

PBShaderExp

Call Signature ​

(m00, m01, m02, m10, m11, m12, m20, m21, m22, m30, m31, m32): PBShaderExp

Parameters ​
m00 ​

number | PBShaderExp

m01 ​

number | PBShaderExp

m02 ​

number | PBShaderExp

m10 ​

number | PBShaderExp

m11 ​

number | PBShaderExp

m12 ​

number | PBShaderExp

m20 ​

number | PBShaderExp

m21 ​

number | PBShaderExp

m22 ​

number | PBShaderExp

m30 ​

number | PBShaderExp

m31 ​

number | PBShaderExp

m32 ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

(m0, m1, m2, m3): PBShaderExp

Parameters ​
m0 ​

PBShaderExp

m1 ​

PBShaderExp

m2 ​

PBShaderExp

m3 ​

PBShaderExp

Returns ​

PBShaderExp

ptr ​

ptr: ShaderTypeFunc


texStorage1D ​

texStorage1D: StorageTextureConstructor

Defined in: libs/device/src/builder/programbuilder.ts:711

texStorage1D type variable constructors


texStorage2D ​

texStorage2D: StorageTextureConstructor

Defined in: libs/device/src/builder/programbuilder.ts:713

texStorage2D type variable constructors


texStorage2DArray ​

texStorage2DArray: StorageTextureConstructor

Defined in: libs/device/src/builder/programbuilder.ts:715

texStorage2DArray type variable constructors


texStorage3D ​

texStorage3D: StorageTextureConstructor

Defined in: libs/device/src/builder/programbuilder.ts:717

texStorage3D type variable constructors

Accessors ​

lastError ​

Get Signature ​

get lastError(): string

Defined in: libs/device/src/builder/programbuilder.ts:1184

Get last error

Returns ​

string


shaderKind ​

Get Signature ​

get shaderKind(): ShaderKind

Defined in: libs/device/src/builder/programbuilder.ts:1192

Current shader kind

Returns ​

ShaderKind


emulateDepthClamp ​

Get Signature ​

get emulateDepthClamp(): boolean

Defined in: libs/device/src/builder/programbuilder.ts:1228

Returns ​

boolean

Set Signature ​

set emulateDepthClamp(val): void

Defined in: libs/device/src/builder/programbuilder.ts:1231

Parameters ​
val ​

boolean

Returns ​

void

Methods ​

getDevice() ​

Call Signature ​

getDevice(): AbstractDevice

Defined in: libs/device/src/builder/programbuilder.ts:156

Get the device

Returns ​

AbstractDevice

Call Signature ​

getDevice(): AbstractDevice

Defined in: libs/device/src/builder/programbuilder.ts:1239

Get the device

Returns ​

AbstractDevice


getGlobalScope() ​

Call Signature ​

getGlobalScope(): PBGlobalScope

Defined in: libs/device/src/builder/programbuilder.ts:158

Gets the global scope

Returns ​

PBGlobalScope

Call Signature ​

getGlobalScope(): PBGlobalScope

Defined in: libs/device/src/builder/programbuilder.ts:1202

Gets the global scope

Returns ​

PBGlobalScope


getCurrentScope() ​

Call Signature ​

getCurrentScope<T>(): T

Defined in: libs/device/src/builder/programbuilder.ts:160

Gets the current scope

Type Parameters ​
T ​

T extends PBScope = PBScope

Returns ​

T

Call Signature ​

getCurrentScope<T>(): T

Defined in: libs/device/src/builder/programbuilder.ts:1277

Gets the current scope

Type Parameters ​
T ​

T extends PBScope = PBScope

Returns ​

T


queryGlobal() ​

Call Signature ​

queryGlobal(name): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:166

Query the global variable by the name

Parameters ​
name ​

string

Name of the variable

Returns ​

PBShaderExp

The variable or null if not exists

Call Signature ​

queryGlobal(name): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1265

Query the global variable by the name

Parameters ​
name ​

string

Name of the variable

Returns ​

PBShaderExp

The variable or null if not exists


$query() ​

$query(name): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:172

Query the global variable by the name

Parameters ​

name ​

string

Name of the variable

Returns ​

PBShaderExp

The variable or null if not exists


buildRender() ​

Call Signature ​

buildRender(options): readonly [string, string, BindGroupLayout[], number[], number]

Defined in: libs/device/src/builder/programbuilder.ts:178

Generates shader codes for a render program

Parameters ​
options ​

PBRenderOptions

The build options

Returns ​

readonly [string, string, BindGroupLayout[], number[], number]

a tuple made by vertex shader source, fragment shader source, bind group layouts and vertex attributes used, or null if build faild

Call Signature ​

buildRender(options): readonly [string, string, BindGroupLayout[], number[], number]

Defined in: libs/device/src/builder/programbuilder.ts:1293

Generates shader codes for a render program

Parameters ​
options ​

PBRenderOptions

The build options

Returns ​

readonly [string, string, BindGroupLayout[], number[], number]

a tuple made by vertex shader source, fragment shader source, bind group layouts and vertex attributes used, or null if build faild


buildCompute() ​

Call Signature ​

buildCompute(options): readonly [string, BindGroupLayout[]]

Defined in: libs/device/src/builder/programbuilder.ts:184

Generates shader code for a compute program

Parameters ​
options ​

PBComputeOptions

The build programs

Returns ​

readonly [string, BindGroupLayout[]]

a tuple made by compute shader source and bind group layouts, or null if build failed

Call Signature ​

buildCompute(options): readonly [string, BindGroupLayout[]]

Defined in: libs/device/src/builder/programbuilder.ts:1309

Generates shader code for a compute program

Parameters ​
options ​

PBComputeOptions

The build programs

Returns ​

readonly [string, BindGroupLayout[]]

a tuple made by compute shader source and bind group layouts, or null if build failed


buildRenderProgram() ​

Call Signature ​

buildRenderProgram(options): GPUProgram

Defined in: libs/device/src/builder/programbuilder.ts:190

Creates a shader program for render

Parameters ​
options ​

PBRenderOptions

The build options

Returns ​

GPUProgram

The created program or null if build failed

Call Signature ​

buildRenderProgram(options): GPUProgram<unknown>

Defined in: libs/device/src/builder/programbuilder.ts:1324

Creates a shader program for render

Parameters ​
options ​

PBRenderOptions

The build options

Returns ​

GPUProgram<unknown>

The created program or null if build failed


buildComputeProgram() ​

Call Signature ​

buildComputeProgram(options): GPUProgram

Defined in: libs/device/src/builder/programbuilder.ts:196

Creates a shader program for compute

Parameters ​
options ​

PBComputeOptions

The build options

Returns ​

GPUProgram

The created program or null if build failed

Call Signature ​

buildComputeProgram(options): GPUProgram<unknown>

Defined in: libs/device/src/builder/programbuilder.ts:1346

Creates a shader program for compute

Parameters ​
options ​

PBComputeOptions

The build options

Returns ​

GPUProgram<unknown>

The created program or null if build failed


struct() ​

Call Signature ​

struct(structName, instanceName): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:203

Creates a structure type variable

Parameters ​
structName ​

string

Name of the structure type

instanceName ​

string

Name of the variable

Returns ​

PBShaderExp

the created variable

Call Signature ​

struct(structName, instanceName): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1413

Creates a structure type variable

Parameters ​
structName ​

string

Name of the structure type

instanceName ​

string

Name of the variable

Returns ​

PBShaderExp

the created variable


defineStruct() ​

Call Signature ​

defineStruct(members, structName?): ShaderTypeFunc

Defined in: libs/device/src/builder/programbuilder.ts:210

Defines a structure type

Parameters ​
members ​

PBShaderExp[]

Members of the structure

structName? ​

string

Name of the type, if not given, the name will be automatically generated

Returns ​

ShaderTypeFunc

The structure type constructor

Call Signature ​

defineStruct(members, structName?): ShaderTypeFunc

Defined in: libs/device/src/builder/programbuilder.ts:1507

Defines a structure type

Parameters ​
members ​

PBShaderExp[]

Members of the structure

structName? ​

string

Name of the type

Returns ​

ShaderTypeFunc

The structure type constructor


defineStructByType() ​

Call Signature ​

defineStructByType(structType): ShaderTypeFunc

Defined in: libs/device/src/builder/programbuilder.ts:216

Defines a structure type

Parameters ​
structType ​

PBStructTypeInfo

The structure type info

Returns ​

ShaderTypeFunc

The structure type constructor

Call Signature ​

defineStructByType(structType): ShaderTypeFunc

Defined in: libs/device/src/builder/programbuilder.ts:1582

Defines a structure type

Parameters ​
structType ​

PBStructTypeInfo

The structure type info

Returns ​

ShaderTypeFunc

The structure type constructor


discard() ​

Call Signature ​

discard(): void

Defined in: libs/device/src/builder/programbuilder.ts:220

Creates a 'discard' statement

Returns ​

void

Call Signature ​

discard(): void

Defined in: libs/device/src/builder/programbuilder.ts:1892

Creates a 'discard' statement

Returns ​

void


func() ​

Call Signature ​

func(name, params, body?): void

Defined in: libs/device/src/builder/programbuilder.ts:227

Creates a function

Parameters ​
name ​

string

Name of the function

params ​

PBShaderExp[]

Parameters of the function

body? ​

(this) => void

The generator function

Returns ​

void

Call Signature ​

func(name, params, body?): void

Defined in: libs/device/src/builder/programbuilder.ts:1364

Creates a function

Parameters ​
name ​

string

Name of the function

params ​

PBShaderExp[]

Parameters of the function

body? ​

(this) => void

The generator function

Returns ​

void


main() ​

Call Signature ​

main(body?): void

Defined in: libs/device/src/builder/programbuilder.ts:232

Create the main entry function of the shader

Parameters ​
body? ​

(this) => void

The shader generator function

Returns ​

void

Call Signature ​

main(body?): void

Defined in: libs/device/src/builder/programbuilder.ts:1371

Create the main entry function of the shader

Parameters ​
body? ​

(this) => void

The shader generator function

Returns ​

void


addressOf() ​

Call Signature ​

addressOf(ref): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:238

Create an 'AddressOf' expression for WGSL

Parameters ​
ref ​

PBShaderExp

The reference variable

Returns ​

PBShaderExp

the 'AddressOf' expression

Call Signature ​

addressOf(ref): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1379

Create an 'AddressOf' expression for WGSL

Parameters ​
ref ​

PBShaderExp

The reference variable

Returns ​

PBShaderExp

the 'AddressOf' expression


referenceOf() ​

Call Signature ​

referenceOf(ptr): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:244

Creates a 'referenceOf' expression for WGSL

Parameters ​
ptr ​

PBShaderExp

The pointer variable

Returns ​

PBShaderExp

the 'referenceOf' expression

Call Signature ​

referenceOf(ptr): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1395

Creates a 'referenceOf' expression for WGSL

Parameters ​
ptr ​

PBShaderExp

The pointer variable

Returns ​

PBShaderExp

the 'referenceOf' expression


tex1D() ​

tex1D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:673

tex1D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


tex2D() ​

tex2D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:675

tex2D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


tex3D() ​

tex3D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:677

tex3D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


texCube() ​

texCube(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:679

texCube type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


texExternal() ​

texExternal(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:681

texExternal type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


tex2DShadow() ​

tex2DShadow(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:683

tex2DShadow type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


texCubeShadow() ​

texCubeShadow(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:685

texCubeShadow type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


tex2DArray() ​

tex2DArray(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:687

tex2DArray type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


tex2DArrayShadow() ​

tex2DArrayShadow(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:689

tex2DArrayShadow type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


itex1D() ​

itex1D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:691

itex1D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


itex2D() ​

itex2D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:693

itex2D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


itex3D() ​

itex3D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:695

itex3D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


itexCube() ​

itexCube(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:697

itexCube type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


itex2DArray() ​

itex2DArray(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:699

itex2DArray type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


utex1D() ​

utex1D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:701

utex1D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


utex2D() ​

utex2D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:703

utex2D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


utex3D() ​

utex3D(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:705

utex3D type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


utexCube() ​

utexCube(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:707

utexCube type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


utex2DArray() ​

utex2DArray(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:709

utex2DArray type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


sampler() ​

sampler(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:719

sampler type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


samplerComparison() ​

samplerComparison(rhs?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:721

samplerComparison type variable constructors

Parameters ​

rhs? ​

string

Returns ​

PBShaderExp


radians() ​

radians(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:723

Same as radians builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


degrees() ​

degrees(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:725

Same as degrees builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


sin() ​

sin(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:727

Same as sin builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


cos() ​

cos(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:729

Same as cos builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


tan() ​

tan(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:731

Same as tan builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


asin() ​

asin(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:733

Same as asin builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


acos() ​

acos(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:735

Same as acos builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


atan() ​

atan(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:737

Same as atan builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


atan2() ​

atan2(y, x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:739

Same as atan builtin function in GLSL and atan2 builtin function in WGSL

Parameters ​

y ​

number | PBShaderExp

x ​

number | PBShaderExp

Returns ​

PBShaderExp


sinh() ​

sinh(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:741

Same as sinh builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


cosh() ​

cosh(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:743

Same as cosh builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


tanh() ​

tanh(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:745

Same as tanh builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


asinh() ​

asinh(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:747

Same as asinh builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


acosh() ​

acosh(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:749

Same as acosh builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


atanh() ​

atanh(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:751

Same as atanh builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


pow() ​

pow(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:753

Same as pow builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


exp() ​

exp(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:755

Same as exp builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


exp2() ​

exp2(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:757

Same as exp2 builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


log() ​

log(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:759

Same as log builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


log2() ​

log2(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:761

Same as log2 builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


sqrt() ​

sqrt(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:763

Same as sqrt builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


inverseSqrt() ​

inverseSqrt(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:765

Same as inversesqrt builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


abs() ​

abs(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:767

Same as abs builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


sign() ​

sign(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:769

Same as sign builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


floor() ​

floor(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:771

Same as floor builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


ceil() ​

ceil(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:773

Same as ceil builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


fract() ​

fract(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:775

Same as fract builtin function in GLSL and WGSL

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


mod() ​

mod(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:777

Same as mod builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


fma() ​

fma(x, y, z): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:779

Same as fma builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp


round() ​

round(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:781

Same as round builtin function in WGSL, only valid for WebGPU device

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


trunc() ​

trunc(val): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:783

Same as trunc builtin function in WGSL, only valid for WebGPU device

Parameters ​

val ​

number | PBShaderExp

Returns ​

PBShaderExp


min() ​

min(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:785

Same as min builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


max() ​

max(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:787

Same as max builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


clamp() ​

clamp(x, y, z): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:789

Same as clamp builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp


saturate() ​

saturate(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:791

Clamp to [0, 1]

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


mix() ​

mix(x, y, z): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:793

Same as mix builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp


step() ​

step(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:795

Same as step builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


smoothStep() ​

smoothStep(x, y, z): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:797

Same as smoothstep builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp


isnan() ​

isnan(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:799

Same as isnan builtin function in GLSL, only valid for WebGL2 device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


isinf() ​

isinf(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:801

Same as isinf builtin function in GLSL, only valid for WebGL2 device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


add_2() ​

add_2(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:803

add two values

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


add() ​

add(x, y, ...rest): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:805

add a couple of values togeter

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

rest ​

...(number | PBShaderExp)[]

Returns ​

PBShaderExp


sub() ​

sub(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:807

subtract two values

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


mul_2() ​

mul_2(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:809

multiply two values

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


mul() ​

mul(x, y, ...rest): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:811

multiply a couple of values togeter

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

rest ​

...(number | PBShaderExp)[]

Returns ​

PBShaderExp


div() ​

div(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:813

divide the first number by the second number

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


length() ​

length(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:815

Same as length builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


distance() ​

distance(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:817

Same as distance builtin function in GLSL and WGSL

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


dot() ​

dot(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:819

Same as dot builtin function in GLSL and WGSL

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


cross() ​

cross(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:821

Same as cross builtin function in GLSL and WGSL

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


normalize() ​

normalize(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:823

Same as normalize builtin function in GLSL and WGSL.

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


faceForward() ​

faceForward(x, y, z): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:825

Same as faceForward builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

z ​

PBShaderExp

Returns ​

PBShaderExp


reflect() ​

reflect(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:827

Same as reflect builtin function in GLSL and WGSL

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


refract() ​

refract(x, y, z): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:829

Same as refract builtin function in GLSL and WGSL

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

z ​

number | PBShaderExp

Returns ​

PBShaderExp


frexp() ​

frexp(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:831

Same as frexp builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


outerProduct() ​

outerProduct(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:833

Same as outerProduct builtin function in GLSL, only valid for WebGL2 device

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


transpose() ​

transpose(mat): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:835

Same as transpose builtin function in GLSL and WGSL, only valid for WebGL2 and WebGPU device

Parameters ​

mat ​

PBShaderExp

Returns ​

PBShaderExp


determinant() ​

determinant(mat): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:837

Same as determinant builtin function in GLSL and WGSL, only valid for WebGL2 and WebGPU device

Parameters ​

mat ​

PBShaderExp

Returns ​

PBShaderExp


inverse() ​

inverse(mat): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:839

Same as inverse builtin function in GLSL, only valid for WebGL2 device

Parameters ​

mat ​

PBShaderExp

Returns ​

PBShaderExp


lessThan() ​

lessThan(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:841

return true if x is less than y, otherwise false

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


lessThanEqual() ​

lessThanEqual(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:843

return true if x is less than or equals y, otherwise false, per component

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


greaterThan() ​

greaterThan(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:845

return true if x is greater than y, otherwise false, per component

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


greaterThanEqual() ​

greaterThanEqual(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:847

return true if x is greater than or equals y, otherwise false, per component

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


compEqual() ​

compEqual(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:849

return true if x equals y, otherwise false, per component

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


compNotEqual() ​

compNotEqual(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:851

return true if x is not equal to y, otherwise false, per component

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


equal() ​

equal(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:853

return true if x equals y, otherwise false

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


notEqual() ​

notEqual(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:855

return true if x is not equal to y, otherwise false

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


and_2() ​

and_2(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:857

return x && y

Parameters ​

x ​

number | boolean | PBShaderExp

y ​

number | boolean | PBShaderExp

Returns ​

PBShaderExp


and() ​

and(x, y, ...rest): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:859

return x && y && ...

Parameters ​

x ​

number | boolean | PBShaderExp

y ​

number | boolean | PBShaderExp

rest ​

...(number | boolean | PBShaderExp)[]

Returns ​

PBShaderExp


compAnd() ​

compAnd(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:865

return x & y, per component

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


compXor() ​

compXor(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:867

return x ^ y, per component

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

Returns ​

PBShaderExp


or_2() ​

or_2(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:869

return x || y

Parameters ​

x ​

boolean | PBShaderExp

y ​

boolean | PBShaderExp

Returns ​

PBShaderExp


or() ​

or(x, y, ...rest): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:871

return x || y

Parameters ​

x ​

boolean | PBShaderExp

y ​

boolean | PBShaderExp

rest ​

...(boolean | PBShaderExp)[]

Returns ​

PBShaderExp


compOr() ​

compOr(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:873

return x || y, per component

Parameters ​

x ​

number | boolean | PBShaderExp

y ​

number | boolean | PBShaderExp

Returns ​

PBShaderExp


any() ​

any(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:875

check whether any element of a boolean vector is true

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


all() ​

all(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:877

check whether all elements of a boolean vector are true

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


not() ​

not(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:879

logically invert a boolean vector

Parameters ​

x ​

boolean | PBShaderExp

Returns ​

PBShaderExp


neg() ​

neg(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:881

return the negate of the given value

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


sal() ​

sal(a, b): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:883

shift arithmetic left, not valid for WebGL1 device

Parameters ​

a ​

number | PBShaderExp

b ​

number | PBShaderExp

Returns ​

PBShaderExp


sar() ​

sar(a, b): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:885

shift arithmetic right, not valid for WebGL1 device

Parameters ​

a ​

number | PBShaderExp

b ​

number | PBShaderExp

Returns ​

PBShaderExp


arrayLength() ​

arrayLength(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:887

Same as the arrayLength builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


select() ​

select(x, y, cond): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:889

Same as the select builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

y ​

number | PBShaderExp

cond ​

boolean | PBShaderExp

Returns ​

PBShaderExp


floatBitsToInt() ​

floatBitsToInt(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:891

Same as floatBitsToInt builtin function in GLSL, only valid for WebGL2 device and WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


floatBitsToUint() ​

floatBitsToUint(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:893

Same as floatBitsToUint builtin function in GLSL, only valid for WebGL2 device and WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


intBitsToFloat() ​

intBitsToFloat(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:895

Same as intBitsToFloat builtin function in GLSL, only valid for WebGL2 device and WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


uintBitsToFloat() ​

uintBitsToFloat(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:897

Same as uintBitsToFloat builtin function in GLSL, only valid for WebGL2 device and WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


pack4x8snorm() ​

pack4x8snorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:899

Same as pack4x8snorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


unpack4x8snorm() ​

unpack4x8snorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:901

Same as unpack4x8snorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


pack4x8unorm() ​

pack4x8unorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:903

Same as pack4x8unorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


unpack4x8unorm() ​

unpack4x8unorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:905

Same as unpack4x8unorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


pack2x16snorm() ​

pack2x16snorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:907

Same as pack2x16snom builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


unpack2x16snorm() ​

unpack2x16snorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:909

Same as unpack2x16snorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


pack2x16unorm() ​

pack2x16unorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:911

Same as pack2x16unorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


unpack2x16unorm() ​

unpack2x16unorm(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:913

Same as unpack2x16unorm builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


pack2x16float() ​

pack2x16float(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:915

Same as pack2x16float builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


unpack2x16float() ​

unpack2x16float(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:917

Same as unpack2x16float builtin function in WGSL, only valid for WebGPU device

Parameters ​

x ​

number | PBShaderExp

Returns ​

PBShaderExp


matrixCompMult() ​

matrixCompMult(x, y): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:919

Same as matrixCompMult builtin function in GLSL, only valid for WebGL/WebGL2 device

Parameters ​

x ​

PBShaderExp

y ​

PBShaderExp

Returns ​

PBShaderExp


dpdx() ​

dpdx(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:921

Same as dFdx builtin function in GLSL and dpdx builtin function in WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


dpdy() ​

dpdy(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:923

Same as dFdy builtin function in GLSL and dpdy builtin function in WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


fwidth() ​

fwidth(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:925

Same as fwidth builtin function in GLSL and WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


dpdxCoarse() ​

dpdxCoarse(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:927

Same as dFdx builtin function in GLSL and dpdxCoarse builtin function in WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


dpdxFine() ​

dpdxFine(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:929

Same as dFdx builtin function in GLSL and dpdxFine builtin function in WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


dpdyCoarse() ​

dpdyCoarse(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:931

Same as dFdy builtin function in GLSL and dpdyCoarse builtin function in WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


dpdyFine() ​

dpdyFine(x): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:933

Same as dFdy builtin function in GLSL and dpdyFine builtin function in WGSL

Parameters ​

x ​

PBShaderExp

Returns ​

PBShaderExp


textureDimensions() ​

textureDimensions(tex, level?): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:935

Same as textureSize builtin function in GLSL and textureDimensions builtin function in WGSL, only valid for WebGL2 device and WebGPU device

Parameters ​

tex ​

PBShaderExp

level? ​

number | PBShaderExp

Returns ​

PBShaderExp


textureGather() ​

Call Signature ​

textureGather(tex, sampler, coords): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:937

Same as textureGather builtin function in WGSL, only valid for WebGPU device

Parameters ​
tex ​

PBShaderExp

sampler ​

PBShaderExp

coords ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

textureGather(component, tex, sampler, coords): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:939

Same as textureGather builtin function in WGSL, only valid for WebGPU device

Parameters ​
component ​

number | PBShaderExp

tex ​

PBShaderExp

sampler ​

PBShaderExp

coords ​

PBShaderExp

Returns ​

PBShaderExp


textureArrayGather() ​

Call Signature ​

textureArrayGather(tex, sampler, coords, arrayIndex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:946

Same as textureGather builtin function in WGSL, only valid for WebGPU device

Parameters ​
tex ​

PBShaderExp

sampler ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

textureArrayGather(component, tex, sampler, coords, arrayIndex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:953

Same as textureGather builtin function in WGSL, only valid for WebGPU device

Parameters ​
component ​

number | PBShaderExp

tex ​

PBShaderExp

sampler ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

Returns ​

PBShaderExp


textureGatherCompare() ​

textureGatherCompare(tex, samplerCompare, coords, depthRef): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:961

Same as textureGatherCompare builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

samplerCompare ​

PBShaderExp

coords ​

PBShaderExp

depthRef ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArrayGatherCompare() ​

textureArrayGatherCompare(tex, samplerCompare, coords, arrayIndex, depthRef): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:968

Same as textureGatherCompare builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

samplerCompare ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

depthRef ​

number | PBShaderExp

Returns ​

PBShaderExp


textureLoad() ​

textureLoad(tex, coords, levelOrSampleIndex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:976

Same as texelFetch builtin function in GLSL and textureLoad builtin function in WGSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

number | PBShaderExp

levelOrSampleIndex ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArrayLoad() ​

textureArrayLoad(tex, coords, arrayIndex, level): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:982

Same as texelFetch builtin function in GLSL and textureLoad builtin function in WGSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

number | PBShaderExp

arrayIndex ​

number | PBShaderExp

level ​

number | PBShaderExp

Returns ​

PBShaderExp


textureStore() ​

textureStore(tex, coords, value): void

Defined in: libs/device/src/builder/programbuilder.ts:989

Same as textureStore builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

number | PBShaderExp

value ​

PBShaderExp

Returns ​

void


textureArrayStore() ​

textureArrayStore(tex, coords, arrayIndex, value): void

Defined in: libs/device/src/builder/programbuilder.ts:991

Same as textureStore builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

value ​

PBShaderExp

Returns ​

void


textureNumLayers() ​

textureNumLayers(tex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:998

Same as textureNumLayers builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

Returns ​

PBShaderExp


textureNumLevels() ​

textureNumLevels(tex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1000

Same as textureNumLevels builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

Returns ​

PBShaderExp


textureNumSamples() ​

textureNumSamples(tex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1002

Same as textureNumSamples builtin function in WGSL, only valid for WebGPU device

Parameters ​

tex ​

PBShaderExp

Returns ​

PBShaderExp


textureSample() ​

Call Signature ​

textureSample(tex, coords): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1004

Same as textureSample builtin function in WebGPU and texture/texture2D/textureCube builtin function in GLSL

Parameters ​
tex ​

PBShaderExp

coords ​

number | PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

textureSample(tex, sampler, coords): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1006

Same as textureSample builtin function in WebGPU with explicit sampler

Parameters ​
tex ​

PBShaderExp

sampler ​

PBShaderExp

coords ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArraySample() ​

textureArraySample(tex, coords, arrayIndex): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1008

Same as textureSample builtin function in WebGPU and texture builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

Returns ​

PBShaderExp


textureSampleBias() ​

textureSampleBias(tex, coords, bias): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1010

Same as textureSampleBias builtin function in WebGPU and texture/texture2D/textureCube builtin function in GLSL

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

bias ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArraySampleBias() ​

textureArraySampleBias(tex, coords, arrayIndex, bias): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1012

Same as textureSampleBias builtin function in WebGPU and texture builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

bias ​

number | PBShaderExp

Returns ​

PBShaderExp


textureSampleCompare() ​

textureSampleCompare(tex, coords, depthRef): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1019

Same as textureSampleCompare builtin function in WebGPU and texture builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

depthRef ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArraySampleCompare() ​

textureArraySampleCompare(tex, coords, arrayIndex, depthRef): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1021

Same as textureSampleCompare builtin function in WebGPU and texture builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

depthRef ​

number | PBShaderExp

Returns ​

PBShaderExp


textureSampleLevel() ​

Call Signature ​

textureSampleLevel(tex, coords): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1028

Same as textureSampleLevel builtin function in WebGPU and textureLod/texture2DLodExt/textureCubeLodExt builtin function in GLSL

Parameters ​
tex ​

PBShaderExp

coords ​

PBShaderExp

Returns ​

PBShaderExp

Call Signature ​

textureSampleLevel(tex, coords, level): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1030

Same as textureSampleLevel builtin function in WebGPU and textureLod/texture2DLodExt/textureCubeLodExt builtin function in GLSL

Parameters ​
tex ​

PBShaderExp

coords ​

PBShaderExp

level ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArraySampleLevel() ​

textureArraySampleLevel(tex, coords, arrayIndex, level): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1032

Same as textureSampleLevel builtin function in WebGPU and textureLod builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

level ​

number | PBShaderExp

Returns ​

PBShaderExp


textureSampleCompareLevel() ​

textureSampleCompareLevel(tex, coords, depthRef): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1039

Same as textureSampleCompareLevel builtin function in WebGPU and texture/textureLod builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

depthRef ​

number | PBShaderExp

Returns ​

PBShaderExp


textureArraySampleCompareLevel() ​

textureArraySampleCompareLevel(tex, coords, arrayIndex, depthRef): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1045

Same as textureSampleCompareLevel builtin function in WebGPU and texture builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

depthRef ​

number | PBShaderExp

Returns ​

PBShaderExp


textureSampleGrad() ​

textureSampleGrad(tex, coords, ddx, ddy): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1052

Same as textureSampleGrad builtin function in WebGPU and textureGrad/texture2DGradExt/textureCubeGradExt builtin function in GLSL

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

ddx ​

PBShaderExp

ddy ​

PBShaderExp

Returns ​

PBShaderExp


textureArraySampleGrad() ​

textureArraySampleGrad(tex, coords, arrayIndex, ddx, ddy): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1054

Same as textureSampleGrad builtin function in WebGPU and textureGrad builtin function in GLSL, only valid for WebGL2 and WebGPU device

Parameters ​

tex ​

PBShaderExp

coords ​

PBShaderExp

arrayIndex ​

number | PBShaderExp

ddx ​

PBShaderExp

ddy ​

PBShaderExp

Returns ​

PBShaderExp


storageBarrier() ​

storageBarrier(): void

Defined in: libs/device/src/builder/programbuilder.ts:1062

Same as storageBarrier builtin function in WebGPU, only valid for WebGPU device

Returns ​

void


workgroupBarrier() ​

workgroupBarrier(): void

Defined in: libs/device/src/builder/programbuilder.ts:1064

Same as workgroupBarrier builtin function in WebGPU, only valid for WebGPU device

Returns ​

void


atomicLoad() ​

atomicLoad(ptr): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1066

atomicLoad, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

Returns ​

PBShaderExp


atomicStore() ​

atomicStore(ptr, value): void

Defined in: libs/device/src/builder/programbuilder.ts:1068

atomicStore, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

void


atomicAdd() ​

atomicAdd(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1070

atomicAdd, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicSub() ​

atomicSub(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1072

atomicSub, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicMax() ​

atomicMax(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1074

atomicMax, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicMin() ​

atomicMin(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1076

atomicMin, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicAnd() ​

atomicAnd(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1078

atomicAnd, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicOr() ​

atomicOr(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1080

atomicOr, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicXor() ​

atomicXor(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1082

atomicXor, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


atomicExchange() ​

atomicExchange(ptr, value): PBShaderExp

Defined in: libs/device/src/builder/programbuilder.ts:1084

atomicExchange, only valid for WebGPU device

Parameters ​

ptr ​

PBShaderExp

value ​

number | PBShaderExp

Returns ​

PBShaderExp


getReflection() ​

getReflection(): PBReflection

Defined in: libs/device/src/builder/programbuilder.ts:1235

Get the shader code reflection interface

Returns ​

PBReflection


getCurrentFunctionScope() ​

getCurrentFunctionScope(): PBFunctionScope

Defined in: libs/device/src/builder/programbuilder.ts:1281

Gets the current function scope

Returns ​

PBFunctionScope

Released under the MIT License.