Skip to content

vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:182

A type which every numeric vector is assignable to. In most cases the union v2f | v3f | v4f | v2h | v3h | v4h | v2i | v3i | v4i | v2u | v3u | v4u is preferred, but when an implementation uses overloaded operators and is generic on the type, this makes the type checking much more laid back.

export function quinticInterpolation(t: d.v2f): d.v2f;
export function quinticInterpolation(t: d.v3f): d.v3f;
export function quinticInterpolation(t: d.vecBase): d.vecBase {
'use gpu';
return t * t * t * (t * (t * 6 - 15) + 10);
}
  • vecInfixNotation<vecBase>

readonly [$internal]: true

Defined in: packages/typegpu/src/data/wgslTypes.ts:183


readonly kind: "vec2f" | "vec2h" | "vec2i" | "vec2u" | "vec3f" | "vec3h" | "vec3i" | "vec3u" | "vec4f" | "vec4h" | "vec4i" | "vec4u"

Defined in: packages/typegpu/src/data/wgslTypes.ts:184

[operatorMinus](lhs, rhs): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:67

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorMinus]


[operatorPercent](lhs, rhs): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:70

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorPercent]


[operatorPlus](lhs, rhs): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:66

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorPlus]


[operatorSlash](lhs, rhs): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:69

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorSlash]


[operatorStar](lhs, rhs): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:68

number | matBase | vecBase

number | matBase | vecBase

vecBase

vecInfixNotation.[operatorStar]


add(other): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:60

number | vecBase

vecBase

vecInfixNotation.add


div(other): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:63

number | vecBase

vecBase

vecInfixNotation.div


mod(other): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:64

number | vecBase

vecBase

vecInfixNotation.mod


mul(other): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:62

number | matBase | vecBase

vecBase

vecInfixNotation.mul


sub(other): vecBase

Defined in: packages/typegpu/src/data/wgslTypes.ts:61

number | vecBase

vecBase

vecInfixNotation.sub