We be kinda rendering

This commit is contained in:
2026-01-05 06:20:49 +01:00
parent 1168f9e5d1
commit c83c423b42
48 changed files with 2789 additions and 382 deletions

View File

@@ -6,6 +6,9 @@
#include "spdlog/spdlog.h"
App::App(): renderer{meshCache} {
}
void App::init(const AppParams& params) {
m_params = params;
@@ -30,11 +33,22 @@ void App::init(const AppParams& params) {
}
gfxDevice.init(window, params.appName, false);
renderer.init(gfxDevice, params.renderSize);
//Read whole file
auto file = AssetFS::GetInstance().ReadBytes("engine://assetfstest.txt");
std::string fileStr(file.begin(), file.end());
spdlog::info("Read from assetfstest.txt: {}", fileStr);
testMesh.name = "Test Mesh";
testMesh.vertices = vertices;
testMesh.indices = indices;
testMeshID = meshCache.addMesh(gfxDevice, testMesh);
spdlog::info("TestMesh uploaded with id: {}", testMeshID);
float aspectRatio = static_cast<float>(params.renderSize.x) / static_cast<float>(params.renderSize.y);
camera.setAspectRatio(aspectRatio);
}
void App::run() {
@@ -97,8 +111,16 @@ void App::run() {
}
if (!gfxDevice.needsSwapchainRecreate()) {
renderer.beginDrawing(gfxDevice);
renderer.drawMesh(testMeshID, glm::mat4(1.f), 0);
renderer.endDrawing();
auto cmd = gfxDevice.beginFrame();
gfxDevice.endFrame(cmd, VImage{}, {});
renderer.draw(cmd, gfxDevice, camera, GameRenderer::SceneData{
camera, glm::vec3(0.1f), 0.5f, glm::vec3(0.5f), 0.01f
});
gfxDevice.endFrame(cmd, GPUImage{}, {});
}
if (frameLimit) {
// Delay to not overload the CPU