Saxum/game/camera.hh

35 lines
979 B
C++
Raw Normal View History

2014-11-13 16:17:46 +00:00
#ifndef CAMERA_HH_INCLUDED
#define CAMERA_HH_INCLUDED
#include <ACGL/Math/Math.hh>
class Camera {
public:
Camera(glm::vec2 rotation, float distance);
2014-11-13 16:17:46 +00:00
Camera();
~Camera();
float getDistance();
void setDistance(float distance);
2014-11-15 13:26:17 +00:00
void updateDistance(float distance); //adds to current distance
glm::vec2 getRotation();
void setRotation(glm::vec2 rotation);
void updateRotation(glm::vec2 rotation); //adds to current rotation
2014-11-17 12:29:41 +00:00
glm::vec3 getVector();
void setPosition(glm::vec3 pos);
glm::vec3 getPosition();
void setDirection(glm::vec3 dir);
glm::vec3 getDirection();
bool getIsPhysicsCamera();
void setIsPhysicsCamera(bool val);
2014-11-13 16:17:46 +00:00
private:
2014-11-17 12:29:41 +00:00
void updatePosition();
2014-11-13 16:17:46 +00:00
float distance;
glm::vec2 rotation;
2014-11-17 12:29:41 +00:00
glm::vec3 vector;
glm::vec3 position;
glm::vec3 direction;
bool usePhysicsCamera;
2014-11-13 16:17:46 +00:00
};
#endif