Skip to content

vecBase

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

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


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

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

[operatorMinus](lhs, rhs): vecBase

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

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorMinus]


[operatorPercent](lhs, rhs): vecBase

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

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorPercent]


[operatorPlus](lhs, rhs): vecBase

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

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorPlus]


[operatorSlash](lhs, rhs): vecBase

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

number | vecBase

number | vecBase

vecBase

vecInfixNotation.[operatorSlash]


[operatorStar](lhs, rhs): vecBase

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

number | matBase | vecBase

number | matBase | vecBase

vecBase

vecInfixNotation.[operatorStar]


add(other): vecBase

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

number | vecBase

vecBase

vecInfixNotation.add


div(other): vecBase

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

number | vecBase

vecBase

vecInfixNotation.div


mod(other): vecBase

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

number | vecBase

vecBase

vecInfixNotation.mod


mul(other): vecBase

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

number | matBase | vecBase

vecBase

vecInfixNotation.mul


sub(other): vecBase

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

number | vecBase

vecBase

vecInfixNotation.sub