mirror of
https://github.com/patriciogonzalezvivo/thebookofshaders
synced 2024-11-03 23:15:23 +00:00
958 B
958 B
Mat3
3x3 floating point matrix
Declaration
mat3 aMat3 = mat3(1.0, 0.0, 0.0, // 1. column
0.0, 1.0, 0.0, // 2. column
0.0, 0.0, 1.0); // 3. column
mat3 bMat3 = mat3(1.0);
mat3 cMat3 = mat3(aVec3, bVec3, cVec3);
mat3 dMat3 = mat3(aVec4, aVec3, bVec4, aFloat);
Description
mat3
data type is compose for a 3x3 matrix of floating point. As you can see above, can be initialize in different ways:
-
Providing a value for each component column by column.
-
Providing one value that is used for the components on the main diagonal.
-
Providing a combination of vectors and scalars.
In the same way data can be accessed component-wise or column by column:
mat3 aMat3;
aMat3[2][2] = 1.0;
float aFloat = aMat3[2][2];
aMat3[0] = vec3(1.0);
vec3 aVec3 = aMat3[0];