dep: glm -> directxmath.

This commit is contained in:
Anish Bhobe 2025-06-14 01:36:52 +02:00
parent d09f725803
commit 694147ce4d
4 changed files with 23 additions and 22 deletions

View File

@ -1,9 +1,9 @@
// Blaze.cpp : This file contains the 'main' function. Program execution begins and ends there. // Blaze.cpp : This file contains the 'main' function. Program execution begins and ends there.
// //
#include <array> #include <array>
#include <cassert> #include <cassert>
#include <limits>
#include <span> #include <span>
#include <volk.h> #include <volk.h>
@ -13,8 +13,6 @@
#include <SDL3/SDL_filesystem.h> #include <SDL3/SDL_filesystem.h>
#include <SDL3/SDL_main.h> #include <SDL3/SDL_main.h>
#include <SDL3/SDL_vulkan.h> #include <SDL3/SDL_vulkan.h>
#include <glm/ext/matrix_transform.hpp>
#include <memory>
#include "AppState.h" #include "AppState.h"
#include "Frame.h" #include "Frame.h"
@ -72,10 +70,9 @@ SDL_AppResult SDL_AppIterate( void* appstate )
SDL_SetWindowTitle( appState.window, appState.sprintfBuffer ); SDL_SetWindowTitle( appState.window, appState.sprintfBuffer );
} }
misc.cameraData.modelMatrix = glm::rotate( misc.cameraData.modelMatrix = DirectX::XMMatrixMultiply(
misc.cameraData.modelMatrix, misc.cameraData.modelMatrix,
glm::radians( 60.0f ) * static_cast<float>( deltaTime ), DirectX::XMMatrixRotationY( DirectX::XMConvertToRadians( 60.0f ) * static_cast<float>( deltaTime ) ) );
glm::vec3{ 0.0f, 1.0f, 0.0f } );
memcpy( misc.cameraUniformBufferPtr, &misc.cameraData, sizeof misc.cameraData ); memcpy( misc.cameraUniformBufferPtr, &misc.cameraData, sizeof misc.cameraData );
uint32_t currentImageIndex; uint32_t currentImageIndex;

View File

@ -1,13 +1,12 @@
#include "MiscData.h" #include "MiscData.h"
#include <SDL3/SDL_log.h>
#include <array> #include <array>
#include <SDL3/SDL_log.h>
#include "MacroUtils.h" #include "MacroUtils.h"
#include "RenderDevice.h" #include "RenderDevice.h"
#include <glm/gtc/matrix_transform.hpp>
void MiscData::init( RenderDevice const& renderDevice ) void MiscData::init( RenderDevice const& renderDevice )
{ {
VkDevice const device = renderDevice.device; VkDevice const device = renderDevice.device;
@ -332,13 +331,15 @@ void MiscData::init( RenderDevice const& renderDevice )
// Camera // Camera
{ {
cameraPosition = glm::vec3{ 0.0f, 0.0f, -5.0f }; cameraPosition = DirectX::XMVectorSet( 0.0f, 0.0f, -5.0f, 1.0f );
cameraTarget = glm::vec3{ 0.0f, 0.0f, 0.0f }; cameraTarget = DirectX::XMVectorSet( 0.0f, 0.0f, 0.0f, 1.0f );
cameraData.modelMatrix = glm::mat4{ 1.0f }; cameraUp = DirectX::XMVectorSet( 0.0f, 1.0f, 0.0f, 1.0f );
cameraData.viewMatrix = glm::lookAt( cameraPosition, cameraTarget, glm::vec3{ 0.0f, 1.0f, 0.0f } ); cameraData.modelMatrix = DirectX::XMMatrixIdentity();
cameraData.projectionMatrix = glm::perspective( glm::radians( 70.0f ), 16.0f / 9.0f, 0.1f, 1000.0f ); cameraData.viewMatrix = DirectX::XMMatrixLookAtLH( cameraPosition, cameraTarget, cameraUp );
cameraData.projectionMatrix =
DirectX::XMMatrixPerspectiveFovLH( DirectX::XMConvertToRadians( 70.0f ), 16.0f / 9.0f, 0.1f, 1000.0f );
cameraUniformBufferSize = sizeof( CameraData ); cameraUniformBufferSize = sizeof( CameraData );
VkBufferCreateInfo const bufferCreateInfo = { VkBufferCreateInfo const bufferCreateInfo = {
.sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, .sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO,

View File

@ -5,7 +5,7 @@
#include <vma/vk_mem_alloc.h> #include <vma/vk_mem_alloc.h>
#include <glm/glm.hpp> #include <DirectXMath.h>
struct RenderDevice; struct RenderDevice;
@ -19,9 +19,9 @@ struct MiscData
{ {
struct CameraData struct CameraData
{ {
glm::mat4x4 modelMatrix; DirectX::XMMATRIX modelMatrix;
glm::mat4x4 viewMatrix; DirectX::XMMATRIX viewMatrix;
glm::mat4x4 projectionMatrix; DirectX::XMMATRIX projectionMatrix;
}; };
uint64_t previousCounter; uint64_t previousCounter;
@ -35,8 +35,11 @@ struct MiscData
size_t vertexBufferSize; size_t vertexBufferSize;
std::array<Vertex, 4> vertices; std::array<Vertex, 4> vertices;
glm::vec3 cameraPosition; uint64_t _padding; // TODO: Optimize out?
glm::vec3 cameraTarget;
DirectX::XMVECTOR cameraPosition;
DirectX::XMVECTOR cameraTarget;
DirectX::XMVECTOR cameraUp;
CameraData cameraData; CameraData cameraData;
VkBuffer cameraUniformBuffer; VkBuffer cameraUniformBuffer;
VmaAllocation cameraUniformBufferAllocation; VmaAllocation cameraUniformBufferAllocation;

View File

@ -3,7 +3,7 @@
"volk", "volk",
"shader-slang", "shader-slang",
"vulkan-memory-allocator", "vulkan-memory-allocator",
"glm", "directxmath",
{ {
"name": "sdl3", "name": "sdl3",
"features": [ "vulkan" ] "features": [ "vulkan" ]