From 625b78bba16dcbbe97fa84bbf8f2273472d79ade Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Thu, 6 Mar 2025 00:25:22 +0000 Subject: Pass frustum into render functions Support for culling objects outside the view frustum --- test/test-render.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'test/test-render.cpp') diff --git a/test/test-render.cpp b/test/test-render.cpp index 3c453bd..080e635 100644 --- a/test/test-render.cpp +++ b/test/test-render.cpp @@ -68,14 +68,14 @@ public: } void - content(const SceneShader & shader) const override + content(const SceneShader & shader, const Frustum & frustum) const override { - terrain->render(shader); - water.render(shader); - rail.render(shader); - std::ranges::for_each(gameState->assets, [&shader](const auto & asset) { + terrain->render(shader, frustum); + water.render(shader, frustum); + rail.render(shader, frustum); + std::ranges::for_each(gameState->assets, [&shader, &frustum](const auto & asset) { if (const auto renderable = std::dynamic_pointer_cast(asset.second)) { - renderable->render(shader); + renderable->render(shader, frustum); } }); } @@ -171,10 +171,10 @@ BOOST_AUTO_TEST_CASE(terrain) Water water {terrain}; void - content(const SceneShader & shader) const override + content(const SceneShader & shader, const Frustum & frustum) const override { - terrain->render(shader); - water.render(shader); + terrain->render(shader, frustum); + water.render(shader, frustum); } void @@ -219,9 +219,9 @@ BOOST_AUTO_TEST_CASE(railnet) } void - content(const SceneShader & shader) const override + content(const SceneShader & shader, const Frustum & frustum) const override { - net.render(shader); + net.render(shader, frustum); } void -- cgit v1.2.3