diff options
author | tylermurphy534 <tylermurphy534@gmail.com> | 2022-09-20 22:02:58 -0400 |
---|---|---|
committer | tylermurphy534 <tylermurphy534@gmail.com> | 2022-09-20 22:02:58 -0400 |
commit | 249f6c9fa384e9e3265cafb1357e502ea7db72f7 (patch) | |
tree | 0c80d9a375453e9178dd5d45807302b00f57bd59 /src/simple_renderer.cpp | |
parent | destroy pipline layout (diff) | |
download | minecraftvulkan-249f6c9fa384e9e3265cafb1357e502ea7db72f7.tar.gz minecraftvulkan-249f6c9fa384e9e3265cafb1357e502ea7db72f7.tar.bz2 minecraftvulkan-249f6c9fa384e9e3265cafb1357e502ea7db72f7.zip |
texture loading
Diffstat (limited to 'src/simple_renderer.cpp')
-rw-r--r-- | src/simple_renderer.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/simple_renderer.cpp b/src/simple_renderer.cpp index b4c115a..548b77d 100644 --- a/src/simple_renderer.cpp +++ b/src/simple_renderer.cpp @@ -2,20 +2,23 @@ namespace app { -SimpleRenderer::SimpleRenderer(xe::XeEngine &xeEngine) - : xeRenderSystem{xeEngine, "res/shaders/simple_shader.vert.spv", "res/shaders/simple_shader.frag.spv", sizeof(PushConstant), sizeof(UniformBuffer)} {}; +SimpleRenderer::SimpleRenderer(xe::XeEngine &xeEngine, xe::XeImage *xeImage) + : xeRenderSystem{xeEngine, "res/shaders/simple_shader.vert.spv", "res/shaders/simple_shader.frag.spv", sizeof(PushConstant), sizeof(UniformBuffer), xeImage} {}; -void SimpleRenderer::render(std::vector<xe::XeGameObject> &gameObjects, xe::XeCamera &xeCamera) { +void SimpleRenderer::render(std::vector<xe::XeGameObject> &gameObjects, xe::XeCamera &xeCamera, xe::XeImage *xeImage) { + + xeRenderSystem.start(); UniformBuffer ubo{}; ubo.projectionView = xeCamera.getProjection() * xeCamera.getView(); - xeRenderSystem.loadUniformObject(&ubo, sizeof(ubo)); + xeRenderSystem.loadUniformObject(&ubo); + xeRenderSystem.loadTexture(xeImage); for(auto &obj : gameObjects) { PushConstant pc{}; pc.modelMatrix = obj.transform.mat4(); pc.normalMatrix = obj.transform.normalMatrix(); - xeRenderSystem.loadPushConstant(&pc, sizeof(pc)); + xeRenderSystem.loadPushConstant(&pc); xeRenderSystem.render(obj); } |