aboutsummaryrefslogtreecommitdiff
path: root/src/rendering/black_hole_renderer.h
diff options
context:
space:
mode:
authorhachem <im@hachem.wtf>2026-08-23 22:39:47 +0200
committerhachem <im@hachem.wtf>2026-08-23 22:39:47 +0200
commit90ff03c2fdffc09ddb26bdc7e32c3968a6d274fb (patch)
tree2fdb1b6f54c4e380af43c75f1051935587a87faa /src/rendering/black_hole_renderer.h
parent5ea6c14c0e14bacee766ce1280ab2c71564e05ec (diff)
[feat]: wire in scene into the simulation engine
Diffstat (limited to 'src/rendering/black_hole_renderer.h')
-rw-r--r--src/rendering/black_hole_renderer.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/rendering/black_hole_renderer.h b/src/rendering/black_hole_renderer.h
index 63c5aa2..2ae03dd 100644
--- a/src/rendering/black_hole_renderer.h
+++ b/src/rendering/black_hole_renderer.h
@@ -1,8 +1,9 @@
#pragma once
#include "rhi.h"
-#include "scene/scene_types.h" // BlackHoleParams
+#include "scene/scene_types.h" // BlackHoleParams, SceneObject
#include <glm/glm.hpp>
+#include <vector>
namespace Donut
{
@@ -29,9 +30,12 @@ namespace Donut
auto init(RHI::Device& device) -> bool;
// Off-screen geodesic pass (opens/closes its own render pass). Call before
- // the swapchain pass; `cubemap` is the shared HDRI environment.
+ // the swapchain pass; `cubemap` is the shared HDRI environment. `objects`
+ // are the Scene's spheres — ray-traced as lensed spheres around the hole
+ // (1 scene unit = 1 Schwarzschild radius). Grid units == r_s.
auto render_geodesic(RHI::CommandList& cmd, const GeodesicView& view,
- const BlackHoleParams& params, RHI::Texture* cubemap) -> void;
+ const BlackHoleParams& params,
+ const std::vector<SceneObject>& objects, RHI::Texture* cubemap) -> void;
// Upscales the geodesic target onto the swapchain (call inside the open
// swapchain render pass, before ImGui).