aboutsummaryrefslogtreecommitdiffstats
path: root/src/main.cpp
diff options
context:
space:
mode:
authorladevieq <ladevie.quentin@gmail.com>2021-09-06 22:55:51 +0200
committerladevieq <ladevie.quentin@gmail.com>2021-09-06 22:55:51 +0200
commit3f6d9a3a75e2615866f8ed2cd0015fabea6490b7 (patch)
tree077e568cca0a8823f0b361f570a2d76b43011aac /src/main.cpp
parentbf512216323f3df55627421bb0187ed364d58340 (diff)
Load gltf materials + diffuse and specular brdf
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/main.cpp b/src/main.cpp
index c47aaeb..287b0eb 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -60,17 +60,23 @@ int main() {
auto aperture = 0.1;
auto focus_distance = 10;
auto cam = camera(position, target, v_fov, (float)width / (float)height, aperture, focus_distance);
- auto main_scene = scene(cam, width, height);
- auto can_render = true;
- vkrenderer renderer { wnd, sizeof(main_scene.meta), sizeof(main_scene.triangles[0]) * main_scene.triangles.size(), sizeof(main_scene.packed_nodes[0]) * main_scene.packed_nodes.size() };
+
+ vkrenderer renderer { wnd };
+ auto main_scene = scene(cam, width, height, renderer);
// vkrenderer renderer { wnd, sizeof(main_scene.meta), sizeof(main_scene.spheres[0]) * main_scene.spheres.size(), sizeof(main_scene.packed_nodes[0]) * main_scene.packed_nodes.size() };
+ renderer.create_scene_buffer(sizeof(main_scene.meta));
+ renderer.create_geometry_buffer(sizeof(main_scene.triangles[0]) * main_scene.triangles.size());
+ renderer.create_bvh_buffer(sizeof(main_scene.packed_nodes[0]) * main_scene.packed_nodes.size());
+
// Upload scene content
std::memcpy(renderer.scene_buffer_ptr(), &main_scene.meta, sizeof(main_scene.meta));
renderer.update_geometry_buffer(main_scene.triangles.data());
// renderer.update_geometry_buffer(main_scene.spheres.data());
renderer.update_bvh_buffer(main_scene.packed_nodes.data());
+ auto can_render = true;
+
ImGuiIO& io = ImGui::GetIO();
io.DisplaySize.x = (float)width;
io.DisplaySize.y = (float)height;