mat3
Function
Builds a mat3x3, 3 columns of 3 components in column-major order, from 3 vec3 columns, from 9 components column by column, from a larger matrix by truncation, or with no arguments for the zero matrix (§40).
The signature and the sentence under each name are the compiler's own text at commit 26de7be8.
Syntax
declare function mat3(): mat3x3declare function mat3(c0: vec3, c1: vec3, c2: vec3): mat3x3declare function mat3(e0: number, e1: number, e2: number, e3: number, e4: number, e5: number, e6: number, e7: number, e8: number): mat3x3declare function mat3(m: mat3x3): mat3x3declare function mat3(m: mat3x4): mat3x3declare function mat3(m: mat4x3): mat3x3declare function mat3(m: mat4x4): mat3x3A number in a parameter or a return position is the scalar slot. The ambient file declares a GPU scalar as a branded number whose brand is optional, so a literal and any branded scalar both fill it.
type f32 = number & { readonly [f32Tag]?: true }
A declaration you write still needs a width, and a bare number on a field or a parameter is refused; the TypeScript constructs page carries that row with the compiler's own message.
Parameters
Return value
Description
It is square, so determinant applies and transpose maps it to itself.