@@ -313,9 +313,9 @@ void GraphicsApiVk::Init(GraphicsApiOptions* options)
313
313
vmaCreateBuffer (m_vmaAllocator, &vertBufferCreateInfo, &allocCreateInfo, &m_vkVertBuffer, &m_vmaAllocation, VK_NULL_HANDLE);
314
314
m_vkMemory = m_vmaAllocation->GetMemory ();
315
315
float verts[3 * 3 ] = {
316
- -0 .75f , 0 .75f , 0 .5f ,
317
- 0 .75f , 0 .75f , 0 .5f ,
318
- 0 .f , -0 .75f , 0 .5f };
316
+ -0 .75f , 0 .75f , .5f ,
317
+ 0 .75f , 0 .75f , .5f ,
318
+ 0 .f , -0 .75f , .5f };
319
319
void * data;
320
320
vkMapMemory (m_vkDevice, m_vkMemory, 0 , sizeof (float ) * 3 * 3 , 0 , &data);
321
321
memcpy (data, verts, sizeof (float ) * 3 * 3 );
@@ -408,11 +408,12 @@ void GraphicsApiVk::ClearFrameBuffer(float r, float g, float b)
408
408
409
409
void GraphicsApiVk::UpdateUniforms (const SceneGraph& scene)
410
410
{
411
- lepus::math::Matrix4x4 proj = lepus::math::Matrix4x4::Identity (), view = lepus::math::Matrix4x4::Identity (), model = lepus::math::Matrix4x4::Identity ();
411
+ lepus::math::Matrix4x4 model = lepus::math::Matrix4x4::Identity ();
412
+ auto camera = scene.Camera ();
412
413
413
414
vkCmdBindPipeline (m_CommandBuffer, VK_PIPELINE_BIND_POINT_GRAPHICS, m_vkGraphicsPipeline);
414
- vkCmdPushConstants (m_CommandBuffer, m_vkGraphicsPipelineLayout, VK_SHADER_STAGE_ALL, 0 , sizeof (float ) * 4 * 4 , proj .data ());
415
- vkCmdPushConstants (m_CommandBuffer, m_vkGraphicsPipelineLayout, VK_SHADER_STAGE_ALL, sizeof (float ) * 4 * 4 , sizeof (float ) * 4 * 4 , view .data ());
415
+ vkCmdPushConstants (m_CommandBuffer, m_vkGraphicsPipelineLayout, VK_SHADER_STAGE_ALL, 0 , sizeof (float ) * 4 * 4 , camera-> BuildPerspectiveMatrix () .data ());
416
+ vkCmdPushConstants (m_CommandBuffer, m_vkGraphicsPipelineLayout, VK_SHADER_STAGE_ALL, sizeof (float ) * 4 * 4 , sizeof (float ) * 4 * 4 , camera-> BuildViewMatrix () .data ());
416
417
vkCmdPushConstants (m_CommandBuffer, m_vkGraphicsPipelineLayout, VK_SHADER_STAGE_ALL, 2 * (sizeof (float ) * 4 * 4 ), sizeof (float ) * 4 * 4 , model.data ());
417
418
size_t offsets = 0 ;
418
419
vkCmdBindVertexBuffers (m_CommandBuffer, 0 , 1 , &m_vkVertBuffer, &offsets);
0 commit comments