working crafter math

This commit is contained in:
Jorijn van der Graaf 2025-05-05 05:14:47 +02:00
commit 809617e6c4
4 changed files with 21 additions and 20 deletions

View file

@ -2,16 +2,10 @@
#include <exception>
#include <thread>
#include <vulkan/vulkan.h>
#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>
import Crafter.Graphics;
import Crafter.Asset;
import Crafter.Event;
import Crafter.Math;
using namespace Crafter;
typedef VulkanShader<"MeshShaderXYZUV.spirv", "main", VK_SHADER_STAGE_MESH_BIT_EXT, 3, {{{VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, 0}, {VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 1}, {VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 2}}}> MeshVulkanShader;
@ -29,14 +23,14 @@ int main() {
Asset asset;
asset.LoadFull("cannon.cras");
Camera camera;
Camera camera(1.57079633, 16 / 9, 0.01, 512);
camera.Update();
Mesh<VertexUV>* mesh = Mesh<VertexUV>::FromAssetUV(asset.entries[0].data.data());
DescriptorSet descriptors;
Pipeline::GetDescriptorSet(descriptors);
MeshShader<VertexUV> meshShader(mesh, &camera);
meshShader.WriteDescriptors(descriptors);
meshShader.transform = glm::mat4(1.0f);
meshShader.Update();
Asset asset2;