A functional mathematics library for WebGL.
Install with npm or yarn
npm install webgl-math
// or
yarn add webgl-math
then
const GLMath = require('webgl-math')
// or
import GLMath from 'webgl-math'
Here's a simple example to create Model, View and Projection Matrices.
For more, see the docs
import { Vector, Matrix, Transform, Camera } from 'webgl-math';
const scaleMatrix = Transform.scale(
Matrix.idendity(4),
Float32Array.of(2, 2, 1) // Scale Vector
);
const translateMatrix = Transform.translate(
Matrix.idendity(4),
Float32Array.of(4, 0, 0) // Position Vector
);
// Creating 4x4 Model Matrix except rotation
const modelMatrix = Matrix.multiply(
translateMatrix,
scaleMatrix
);
// Creating Perspective Projection Matrix with fovy and aspect ratio
const projectionMatrix = Camera.perspective(Math.PI / 4, 1, 0.1, 100);
// Creating View Matrix
const viewMatrix = Camera.lookAt(
Float32Array.of(0, 0, 10), // Eye Position
Float32Array.of(0, 0, -1), // Target
Float32Array.of(0, 1, 0) // Up Vector
);
Licensed under the MIT license.