Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package base;
- import org.lwjgl.input.Keyboard;
- import org.lwjgl.util.vector.Matrix4f;
- import org.lwjgl.util.vector.Vector3f;
- import base.*;
- public class Camera {
- Vector3f xAxis, yAxis, zAxis;
- float moveSpeed = 0.1f;
- boolean moveUp, moveDown, moveLeft, moveRight;
- public Camera(){
- Matrices.viewMatrix = new Matrix4f();
- Matrix4f.setIdentity(Matrices.viewMatrix);
- }
- public void cameraLogic(){
- //MOVE FORWARD
- if(Keyboard.isKeyDown(Keyboard.KEY_W))
- moveUp = true;
- else
- moveUp = false;
- //MOVE LEFT
- if(Keyboard.isKeyDown(Keyboard.KEY_A))
- moveLeft = true;
- else
- moveLeft = false;
- //MOVE BACK
- if(Keyboard.isKeyDown(Keyboard.KEY_S))
- moveDown = true;
- else
- moveDown = false;
- //MOVE RIGHT
- if(Keyboard.isKeyDown(Keyboard.KEY_D))
- moveRight = true;
- else
- moveRight = false;
- if(moveUp)
- Matrices.viewMatrix.translate(new Vector3f(0, 1.0f * moveSpeed, 0));
- if(moveLeft)
- Matrices.viewMatrix.translate(new Vector3f(-1.0f * moveSpeed, 0, 0));
- if(moveDown)
- Matrices.viewMatrix.translate(new Vector3f(0, -1.0f * moveSpeed, 0));
- if(moveRight)
- Matrices.viewMatrix.translate(new Vector3f(1.0f * moveSpeed, 0, 0));
- }
- public void translate(Vector3f amount){
- Matrix4f.translate(amount, Matrices.viewMatrix, Matrices.viewMatrix);
- }
- public void rotateX(float amount){
- Matrix4f.rotate(amount, new Vector3f(1, 0, 0), Matrices.viewMatrix, Matrices.viewMatrix);
- }
- public void rotateY(float amount){
- }
- public void rotateZ(float amount){
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement