blob: b90d36147761fd63d32f470f724b41c59dbcd088 (
plain)
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
|
#pragma once
#include "xe_game_object.hpp"
#include "xe_window.hpp"
#include <GLFW/glfw3.h>
namespace xe {
class KeyboardMovementController {
public:
struct KeyMappings {
int moveLeft = GLFW_KEY_A;
int moveRight = GLFW_KEY_D;
int moveForward = GLFW_KEY_W;
int moveBackward = GLFW_KEY_S;
int moveUp = GLFW_KEY_E;
int moveDown = GLFW_KEY_Q;
int lookLeft = GLFW_KEY_LEFT;
int lookRight = GLFW_KEY_RIGHT;
int lookUp = GLFW_KEY_UP;
int lookDown = GLFW_KEY_DOWN;
};
void moveInPlaneXZ(GLFWwindow* window, float dt, XeGameObject& gameObject);
KeyMappings keys{};
float moveSpeed{3.f};
float lookSpeed{1.5f};
};
}
|