aboutsummaryrefslogtreecommitdiff
path: root/src/vulkan_utils.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vulkan_utils.hpp')
-rw-r--r--src/vulkan_utils.hpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/vulkan_utils.hpp b/src/vulkan_utils.hpp
index c822caa..54c82c5 100644
--- a/src/vulkan_utils.hpp
+++ b/src/vulkan_utils.hpp
@@ -39,7 +39,7 @@ struct Vertex {
};
}
- static constexpr std::array<VkVertexInputAttributeDescription, 2> get_attr_descs() {
+ static constexpr std::array<VkVertexInputAttributeDescription, 3> get_attr_descs() {
return {
VkVertexInputAttributeDescription {
.location = 0,
@@ -53,19 +53,23 @@ struct Vertex {
.format = VK_FORMAT_R32G32B32_SFLOAT,
.offset = offsetof(Vertex, normal),
},
+ VkVertexInputAttributeDescription {
+ .location = 2,
+ .binding = 0,
+ .format = VK_FORMAT_R32G32_SFLOAT,
+ .offset = offsetof(Vertex, uv),
+ },
};
}
engine::math::Vector3 pos;
engine::math::Vector3 normal;
+ engine::math::Vector2 uv;
};
// TODO: move to a better place. Also, see TODOs for struct Vertex
struct UniformBufferObject {
- alignas(16) engine::math::Matrix4 model, view, proj;
- // TODO: should me Matrix3, but it isn't implemented yet
- alignas(16) engine::math::Matrix4 camera_rot;
- alignas(16) engine::math::Vector3 camera_loc;
+ alignas(16) engine::math::Matrix4 model, view, proj, inv_view;
};
}