blob: f6a69052f3c48508c6f57b0ac9145671e79ebbf5 (
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
32
33
34
35
36
37
38
39
|
#ifndef FREE_CAM_ENGINE_H
#define FREE_CAM_ENGINE_H
#ifdef __cplusplus
extern "C" {
#endif
#include <libultraship.h>
#include "camera.h"
// Yaw/pitch rotation sensitivity
#define MOUSE_SENSITIVITY_X 0.006f
#define MOUSE_SENSITIVITY_Y 0.006f
typedef struct {
Vec3f velocity;
Vec3f forwardVector;
} FreeCam;
extern FreeCam freeCam;
extern f32 gDampValue;
//void update_camera(Camera *camera, f32 deltaTime);
void freecam_pan_camera(Camera *camera, f32 moveSpeed);
void freecam_calculate_forward_vector_allow_rotation(Camera* camera, Vec3f forwardVector);
void freecam_calculate_forward_vector(Camera* camera, Vec3f forwardVector);
void freecam_move_camera_forward(Camera* camera, f32 distance, Vec3f forwardVector);
void freecam_target_player(Camera *camera, u32 playerIndex);
void freecam_update(Camera* camera, Vec3f forwardVector);
void freecam_move_camera_up(Camera* camera, f32);
void freecam_move_camera_down(Camera* camera, f32);
extern f32 gDampValue;
#ifdef __cplusplus
}
#endif
#endif // FREE_CAM_ENGINE_H
|