diff options
author | Tomasz Kramkowski <tk@the-tk.com> | 2018-05-03 13:49:44 +0100 |
---|---|---|
committer | Tomasz Kramkowski <tk@the-tk.com> | 2018-05-03 13:49:44 +0100 |
commit | a1e93038af0a739b9af57bd40ffbee6963dc3242 (patch) | |
tree | eebceb8f833c55fe8c9a1e15d4c26afd7defdfbc /camera.h | |
parent | 362f70b04da8f8e9c0c159527bce7da65591c260 (diff) | |
download | faqe-a1e93038af0a739b9af57bd40ffbee6963dc3242.tar.gz faqe-a1e93038af0a739b9af57bd40ffbee6963dc3242.tar.xz faqe-a1e93038af0a739b9af57bd40ffbee6963dc3242.zip |
Add a simple camera struct and camera controls
Diffstat (limited to 'camera.h')
-rw-r--r-- | camera.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/camera.h b/camera.h new file mode 100644 index 0000000..6d8bb94 --- /dev/null +++ b/camera.h @@ -0,0 +1,22 @@ +/* + * Copyright (C) 2018 Tomasz Kramkowski <tk@the-tk.com> + * SPDX-License-Identifier: MIT + */ +#ifndef CAMERA_H +#define CAMERA_H + +#include "linmath.h" + +#define CAM_UP ((vec3){ 0.0, 1.0, 0.0 }) + +struct camera { + vec3 pos; + float pitch; + float yaw; +}; + +void camera_clamp(struct camera *cam); +void camera_dir(vec3 out, struct camera *cam); +void camera_lookat(mat4x4 out, struct camera *cam); + +#endif // CAMERA_H |