mirror of
https://github.com/redstrate/Novus.git
synced 2025-04-25 13:17:46 +00:00
Implement more of g_CameraParameter
This commit is contained in:
parent
ec47e52f80
commit
eb9e5dc094
2 changed files with 14 additions and 14 deletions
|
@ -85,15 +85,15 @@ private:
|
|||
|
||||
// Structure definitions from https://github.com/Shaderlayan/Ouroboros
|
||||
struct CameraParameter {
|
||||
/* m[0] - m[2] */ glm::mat3x4 m_ViewMatrix; // TODO: does it need alignment?
|
||||
/* m[3] - m[5] */ glm::mat3x4 m_InverseViewMatrix;
|
||||
/* m[6] - m[9] */ glm::mat4 m_InverseViewProjectionMatrix;
|
||||
glm::mat4 m_InverseProjectionMatrix;
|
||||
glm::mat4 m_ProjectionMatrix;
|
||||
glm::mat3x4 m_ViewMatrix; // TODO: does it need alignment?
|
||||
glm::mat3x4 m_InverseViewMatrix;
|
||||
glm::mat4 m_ViewProjectionMatrix;
|
||||
/*glm::mat4 m_MainViewToProjectionMatrix;
|
||||
glm::mat4 m_InverseViewProjectionMatrix;
|
||||
glm::mat4 m_InverseProjectionMatrix;
|
||||
glm::mat4 m_ProjectionMatrix; // FIXME: ourburos is wrong, this is actually viewProjection
|
||||
glm::mat4 m_MainViewToProjectionMatrix;
|
||||
glm::vec3 m_EyePosition;
|
||||
glm::vec3 m_LookAtVector;*/
|
||||
glm::vec3 m_LookAtVector;
|
||||
};
|
||||
|
||||
UniformBuffer g_CameraParameter;
|
||||
|
|
|
@ -168,15 +168,15 @@ void RenderSystem::render(uint32_t imageIndex, VkCommandBuffer commandBuffer)
|
|||
glm::mat4 viewMatrix = m_renderer.view;
|
||||
glm::mat4 viewProjectionMatrix = projectionMatrix * viewMatrix;
|
||||
|
||||
cameraParameter.m_ViewMatrix = viewMatrix;
|
||||
cameraParameter.m_InverseViewMatrix = glm::inverse(viewMatrix);
|
||||
cameraParameter.m_ViewMatrix = glm::transpose(viewMatrix);
|
||||
cameraParameter.m_InverseViewMatrix = glm::transpose(glm::inverse(viewMatrix));
|
||||
cameraParameter.m_ViewProjectionMatrix = glm::transpose(viewProjectionMatrix);
|
||||
cameraParameter.m_InverseViewProjectionMatrix = glm::inverse(viewProjectionMatrix);
|
||||
cameraParameter.m_InverseProjectionMatrix = glm::inverse(projectionMatrix);
|
||||
cameraParameter.m_ProjectionMatrix = projectionMatrix;
|
||||
/*cameraParameter.m_MainViewToProjectionMatrix = glm::mat4(1.0f); // ???
|
||||
cameraParameter.m_InverseViewProjectionMatrix = glm::transpose(glm::inverse(viewProjectionMatrix));
|
||||
cameraParameter.m_InverseProjectionMatrix = glm::transpose(glm::inverse(projectionMatrix));
|
||||
cameraParameter.m_ProjectionMatrix = cameraParameter.m_ViewProjectionMatrix;
|
||||
cameraParameter.m_MainViewToProjectionMatrix = cameraParameter.m_InverseViewProjectionMatrix;
|
||||
cameraParameter.m_EyePosition = glm::vec3(5.0f); // placeholder
|
||||
cameraParameter.m_LookAtVector = glm::vec3(0.0f); // placeholder*/
|
||||
cameraParameter.m_LookAtVector = glm::vec3(0.0f); // placeholder
|
||||
|
||||
copyDataToUniform(g_CameraParameter, &cameraParameter, sizeof(CameraParameter));
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue