Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Matrix4f initRotation(float x, float y, float z) {
- Matrix4f mx = new Matrix4f();
- Matrix4f my = new Matrix4f();
- Matrix4f mz = new Matrix4f();
- x = (float) Math.toRadians(x);
- y = (float) Math.toRadians(x);
- z = (float) Math.toRadians(x);
- mx.m[0][0] = (float) Math.cos(z); mx.m[0][1] = (float) - Math.sin(z); mx.m[0][2] = 0; mx.m[0][3] = 0;
- mx.m[1][0] = (float) Math.sin(z); mx.m[1][1] = (float) + Math.cos(z); mx.m[1][2] = 0; mx.m[1][3] = 0;
- mx.m[2][0] = 0; mx.m[2][1] = 0; mx.m[2][2] = 1; mx.m[2][3] = 0;
- mx.m[3][0] = 0; mx.m[3][1] = 0; mx.m[3][2] = 0; mx.m[3][3] = 1;
- my.m[0][0] = 1; my.m[0][1] = 0; my.m[0][2] = 0; my.m[0][3] = 0;
- my.m[1][0] = 0; my.m[1][1] = (float) Math.cos(x); my.m[1][2] = (float) - Math.sin(x); my.m[1][3] = 0;
- my.m[2][0] = 0; my.m[2][1] = (float) Math.sin(x); my.m[2][2] = (float) + Math.cos(x); my.m[2][3] = 0;
- my.m[3][0] = 0; my.m[3][1] = 0; my.m[3][2] = 0; my.m[3][3] = 1;
- mz.m[0][0] = (float) Math.cos(y); mz.m[0][1] = 0; mz.m[0][2] = (float) - Math.sin(y); mz.m[0][3] = 0;
- mz.m[1][0] = 0; mz.m[1][1] = 1; mz.m[1][2] = 0; mz.m[1][3] = 0;
- mz.m[2][0] = (float) Math.sin(y); mz.m[2][1] = 0; mz.m[2][2] = (float) + Math.cos(y); mz.m[2][3] = 0;
- mz.m[3][0] = 0; mz.m[3][1] = 0; mz.m[3][2] = 0; mz.m[3][3] = 1;
- m = mz.mul(my.mul(mx)).getM();
- return this;
- }
Advertisement
Add Comment
Please, Sign In to add comment