summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authortylermurphy534 <tylermurphy534@gmail.com>2022-09-25 12:07:49 -0400
committertylermurphy534 <tylermurphy534@gmail.com>2022-09-25 12:07:49 -0400
commit7c1dfec94391ec283e41b6b942d08dbc6bb69a3a (patch)
treec97c50778aabe4ec40a0e543bf464278e434a939 /src
parentremove Xe From engine class names (diff)
downloadminecraftvulkan-7c1dfec94391ec283e41b6b942d08dbc6bb69a3a.tar.gz
minecraftvulkan-7c1dfec94391ec283e41b6b942d08dbc6bb69a3a.tar.bz2
minecraftvulkan-7c1dfec94391ec283e41b6b942d08dbc6bb69a3a.zip
vertex data no longer hard coded
Diffstat (limited to 'src')
-rwxr-xr-xsrc/first_app.cpp4
-rw-r--r--src/simple_renderer.cpp5
-rw-r--r--src/simple_renderer.hpp7
3 files changed, 14 insertions, 2 deletions
diff --git a/src/first_app.cpp b/src/first_app.cpp
index 5b2d23d..3de0a0b 100755
--- a/src/first_app.cpp
+++ b/src/first_app.cpp
@@ -27,8 +27,8 @@ FirstApp::~FirstApp() {}
void FirstApp::run() {
- std::shared_ptr<xe::Image> image = xeEngine.loadImage("res/image/texture.png");
- std::shared_ptr<xe::Image> image2 = xeEngine.loadImage("res/image/ltt.");
+ std::shared_ptr<xe::Image> image = xeEngine.loadImageFromFile("res/image/texture.png");
+ std::shared_ptr<xe::Image> image2 = xeEngine.loadImageFromFile("res/image/scaly.png");
SimpleRenderer renderer{xeEngine, image.get()};
diff --git a/src/simple_renderer.cpp b/src/simple_renderer.cpp
index 43c933d..82acb46 100644
--- a/src/simple_renderer.cpp
+++ b/src/simple_renderer.cpp
@@ -7,6 +7,11 @@ namespace app {
SimpleRenderer::SimpleRenderer(xe::Engine &xeEngine, xe::Image *xeImage) {
xeRenderSystem = xe::RenderSystem::Builder(xeEngine, "res/shaders/simple_shader.vert.spv", "res/shaders/simple_shader.frag.spv")
+ .addVertexBinding(0, 3, 0)
+ .addVertexBinding(1, 3, 12)
+ .addVertexBinding(2, 3, 24)
+ .addVertexBinding(3, 2, 36)
+ .setVertexSize(sizeof(Vertex))
.addPushConstant(sizeof(PushConstant))
.addUniformBinding(0, sizeof(UniformBuffer))
.addTextureBinding(1, xeImage)
diff --git a/src/simple_renderer.hpp b/src/simple_renderer.hpp
index 59c1e60..e0e9a93 100644
--- a/src/simple_renderer.hpp
+++ b/src/simple_renderer.hpp
@@ -15,6 +15,13 @@ struct PushConstant {
alignas(16) glm::mat4 normalMatrix{1.f};
};
+struct Vertex {
+ glm::vec3 position;
+ glm::vec3 color;
+ glm::vec3 normal;
+ glm::vec2 uv;
+};
+
class SimpleRenderer {
public: