Switch to right handed coordinate system
This commit is contained in:
@@ -80,7 +80,7 @@ namespace openVulkanoCpp
|
||||
|
||||
void UpdateViewProjectionMatrix()
|
||||
{ // In vulkan the screen space is defined as y=0=top and y=1=bottom and thus the coordinate have to be flipped
|
||||
viewProjection = projection * Math::Matrix4f(1,0,0,0,0,-1,0,0,0,0,-1,0,0,0,0,1) * view;
|
||||
viewProjection = projection * Math::Matrix4f(1,0,0,0,0,-1,0,0,0,0,1,0,0,0,0,1) * view;
|
||||
}
|
||||
|
||||
void UpdateWorldMatrix(const Math::Matrix4f& parentWorldMat) override
|
||||
@@ -179,7 +179,7 @@ namespace openVulkanoCpp
|
||||
|
||||
void UpdateProjectionMatrix() override
|
||||
{
|
||||
projection = Math::Utils::perspectiveLH_ZO(fov, aspect, nearPlane, farPlane);
|
||||
projection = Math::Utils::perspectiveRH_ZO(fov, aspect, nearPlane, farPlane);
|
||||
UpdateViewProjectionMatrix();
|
||||
}
|
||||
};
|
||||
@@ -190,7 +190,7 @@ namespace openVulkanoCpp
|
||||
void UpdateProjectionMatrix() override
|
||||
{
|
||||
const float widthHalf = width * 0.5f, heightHalf = height * 0.5f;
|
||||
projection = Math::Utils::orthoLH_ZO(-widthHalf, widthHalf, -heightHalf, heightHalf, nearPlane, farPlane);
|
||||
projection = Math::Utils::orthoRH_ZO(-widthHalf, widthHalf, -heightHalf, heightHalf, nearPlane, farPlane);
|
||||
UpdateViewProjectionMatrix();
|
||||
}
|
||||
};
|
||||
|
||||
@@ -106,34 +106,34 @@ namespace openVulkanoCpp::Scene
|
||||
x *= 0.5f; y *= 0.5f; z *= 0.5f;
|
||||
uint32_t i = 0;
|
||||
// front face vertex data
|
||||
vertices[i++].Set(-x, +y, -z, +0, +0, -1, +0, +0);
|
||||
vertices[i++].Set(-x, -y, -z, +0, +0, -1, +0, +1);
|
||||
vertices[i++].Set(+x, -y, -z, +0, +0, -1, +1, +1);
|
||||
vertices[i++].Set(+x, +y, -z, +0, +0, -1, +1, +0);
|
||||
// back face vertex data
|
||||
vertices[i++].Set(-x, +y, +z, +0, +0, +1, +1, +0);
|
||||
vertices[i++].Set(+x, +y, +z, +0, +0, +1, +0, +0);
|
||||
vertices[i++].Set(+x, -y, +z, +0, +0, +1, +0, +1);
|
||||
vertices[i++].Set(+x, +y, +z, +0, +0, +1, +0, +0);
|
||||
vertices[i++].Set(-x, +y, +z, +0, +0, +1, +1, +0);
|
||||
vertices[i++].Set(-x, -y, +z, +0, +0, +1, +1, +1);
|
||||
// back face vertex data
|
||||
vertices[i++].Set(+x, -y, -z, +0, +0, -1, +1, +1);
|
||||
vertices[i++].Set(-x, -y, -z, +0, +0, -1, +0, +1);
|
||||
vertices[i++].Set(-x, +y, -z, +0, +0, -1, +0, +0);
|
||||
vertices[i++].Set(+x, +y, -z, +0, +0, -1, +1, +0);
|
||||
// top face vertex data
|
||||
vertices[i++].Set(-x, -y, -z, +0, +1, +0, +0, +0);
|
||||
vertices[i++].Set(-x, -y, +z, +0, +1, +0, +0, +1);
|
||||
vertices[i++].Set(+x, -y, +z, +0, +1, +0, +1, +1);
|
||||
vertices[i++].Set(+x, -y, -z, +0, +1, +0, +1, +0);
|
||||
// bottom face vertex data
|
||||
vertices[i++].Set(-x, +y, -z, +0, -1, +0, +1, +0);
|
||||
vertices[i++].Set(+x, +y, -z, +0, -1, +0, +0, +0);
|
||||
vertices[i++].Set(+x, +y, +z, +0, -1, +0, +0, +1);
|
||||
vertices[i++].Set(+x, +y, -z, +0, -1, +0, +0, +0);
|
||||
vertices[i++].Set(-x, +y, -z, +0, -1, +0, +1, +0);
|
||||
vertices[i++].Set(-x, +y, +z, +0, -1, +0, +1, +1);
|
||||
// bottom face vertex data
|
||||
vertices[i++].Set(+x, -y, +z, +0, +1, +0, +1, +1);
|
||||
vertices[i++].Set(-x, -y, +z, +0, +1, +0, +0, +1);
|
||||
vertices[i++].Set(-x, -y, -z, +0, +1, +0, +0, +0);
|
||||
vertices[i++].Set(+x, -y, -z, +0, +1, +0, +1, +0);
|
||||
// Fill in the left face vertex data
|
||||
vertices[i++].Set(-x, +y, +z, -1, +0, +0, +0, +0);
|
||||
vertices[i++].Set(-x, -y, +z, -1, +0, +0, +0, +1);
|
||||
vertices[i++].Set(-x, -y, -z, -1, +0, +0, +1, +1);
|
||||
vertices[i++].Set(-x, -y, +z, -1, +0, +0, +0, +1);
|
||||
vertices[i++].Set(-x, +y, +z, -1, +0, +0, +0, +0);
|
||||
vertices[i++].Set(-x, +y, -z, -1, +0, +0, +1, +0);
|
||||
// Fill in the right face vertex data
|
||||
vertices[i++].Set(+x, +y, -z, +1, +0, +0, +0, +0);
|
||||
vertices[i++].Set(+x, -y, -z, +1, +0, +0, +0, +1);
|
||||
vertices[i++].Set(+x, -y, +z, +1, +0, +0, +1, +1);
|
||||
vertices[i++].Set(+x, -y, -z, +1, +0, +0, +0, +1);
|
||||
vertices[i++].Set(+x, +y, -z, +1, +0, +0, +0, +0);
|
||||
vertices[i].Set(+x, +y, +z, +1, +0, +0, +1, +0);
|
||||
|
||||
for(i = 0; i < vertexCount; i++)
|
||||
|
||||
Reference in New Issue
Block a user