29 lines
617 B
Text
29 lines
617 B
Text
|
|
module;
|
||
|
|
|
||
|
|
#include <cstdint>
|
||
|
|
#define GLM_FORCE_RADIANS
|
||
|
|
#define GLM_FORCE_DEPTH_ZERO_TO_ONE
|
||
|
|
#define GLM_ENABLE_EXPERIMENTAL
|
||
|
|
#include <glm/glm.hpp>
|
||
|
|
#include <glm/gtc/matrix_transform.hpp>
|
||
|
|
#include <glm/gtc/matrix_inverse.hpp>
|
||
|
|
#include <glm/gtc/type_ptr.hpp>
|
||
|
|
#include "VulkanBuffer.h"
|
||
|
|
#include "camera.hpp"
|
||
|
|
|
||
|
|
export module Crafter.Graphics:Camera;
|
||
|
|
|
||
|
|
namespace Crafter {
|
||
|
|
struct CameraBufferData {
|
||
|
|
glm::mat4 projection;
|
||
|
|
glm::mat4 model;
|
||
|
|
glm::mat4 view;
|
||
|
|
};
|
||
|
|
export class Camera {
|
||
|
|
public:
|
||
|
|
vks::Buffer buffer;
|
||
|
|
Camera();
|
||
|
|
private:
|
||
|
|
CameraBufferData data;
|
||
|
|
};
|
||
|
|
}
|