-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCamera.h
More file actions
35 lines (30 loc) · 779 Bytes
/
Camera.h
File metadata and controls
35 lines (30 loc) · 779 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#pragma once
#include "objects.h"
class GameEngine; // Forward declaration of GameEngine class.
class Weapon; // Forward declaration of Weapon class.
class Camera :
public Object
{
public:
Camera(GameEngine* engine);
~Camera(void);
const char* getType();
void setSubject(GLfloat x, GLfloat y, GLfloat z);
void adjustPitch(GLfloat angle);
void adjustYaw(GLfloat angle);
void resetPitch();
void resetYaw();
void moveForward();
void moveBackward();
void strafeLeft(GLfloat step);
void strafeRight(GLfloat step);
void adjustBob(bool forward);
GLfloat getBob() { return m_bobValue; }
void reposition();
Vector3 getSubject();
Vector3 getSubjectRelative();
private:
Vector3* m_subject;
bool m_bobUp;
GLfloat m_bobValue;
};