From dcf8b41c5c59d45c30dcc085dbfd814fdbc8875f Mon Sep 17 00:00:00 2001 From: SuperCoder7979 Date: Fri, 28 Feb 2020 06:56:45 -0500 Subject: [PATCH] pool the vectors --- .../com/github/hydos/ginger/engine/math/Maths.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/github/hydos/ginger/engine/math/Maths.java b/src/main/java/com/github/hydos/ginger/engine/math/Maths.java index 99bcb4e..51ed1ef 100644 --- a/src/main/java/com/github/hydos/ginger/engine/math/Maths.java +++ b/src/main/java/com/github/hydos/ginger/engine/math/Maths.java @@ -37,14 +37,18 @@ public class Maths return matrix; } + private static final Vector3f XVEC = new Vector3f(1, 0, 0); + private static final Vector3f YVEC = new Vector3f(0, 1, 0); + private static final Vector3f ZVEC = new Vector3f(0, 0, 1); + public static Matrix4f createTransformationMatrix(Vector3f translation, float rx, float ry, float rz, Vector3f scale) { Matrix4f matrix = new Matrix4f(); matrix.setIdentity(); Matrix4f.translate(translation, matrix, matrix); - Matrix4f.rotate((float) Math.toRadians(rx), new Vector3f(1, 0, 0), matrix, matrix); - Matrix4f.rotate((float) Math.toRadians(ry), new Vector3f(0, 1, 0), matrix, matrix); - Matrix4f.rotate((float) Math.toRadians(rz), new Vector3f(0, 0, 1), matrix, matrix); + Matrix4f.rotate((float) Math.toRadians(rx), XVEC, matrix, matrix); + Matrix4f.rotate((float) Math.toRadians(ry), YVEC, matrix, matrix); + Matrix4f.rotate((float) Math.toRadians(rz), ZVEC, matrix, matrix); Matrix4f.scale(scale, matrix, matrix); return matrix; }