UNPKG

@phaserjs/phaser

Version:
8 lines (7 loc) 477 B
import { Matrix4 } from "./Matrix4"; export function Mat4RotateZ(matrix, angle, out = new Matrix4()) { const s = Math.sin(angle); const c = Math.cos(angle); const [a00, a01, a02, a03, a10, a11, a12, a13, a20, a21, a22, a23, a30, a31, a32, a33] = matrix.data; return out.set(a00 * c + a10 * s, a01 * c + a11 * s, a02 * c + a12 * s, a03 * c + a13 * s, a10 * c - a00 * s, a11 * c - a01 * s, a12 * c - a02 * s, a13 * c - a03 * s, a20, a21, a22, a23, a30, a31, a32, a33); }