#ifndef __G_CAMERA_H__
#define __G_CAMERA_H__

#include <gear/base.h>

typedef struct g_camera {
    vec3 position;
    vec3 rotation;
    float fov;
    float near;
    float far;
} g_camera;

// src/camera/create.c
g_camera* g_camera_create(vec3 position, vec3 rotation, float fov);

// src/camera/calculations.c
mat4 g_camera_matrix(g_camera* camera);

// src/camera/destroy.c
void g_camera_destroy(g_camera* camera);

#endif
