diff options
| author | Dan Goodliffe <dan.goodliffe@octal.co.uk> | 2026-02-23 17:35:48 +0000 |
|---|---|---|
| committer | Dan Goodliffe <dan.goodliffe@octal.co.uk> | 2026-02-23 17:35:48 +0000 |
| commit | 89b8ffa013c10db57be14fbdd59757c08c243e18 (patch) | |
| tree | e753cc920e37e72bec6a7ae391edcf25940f2db3 /test/test-geoData.cpp | |
| parent | Simplified Frustum (diff) | |
| download | ilt-89b8ffa013c10db57be14fbdd59757c08c243e18.tar.bz2 ilt-89b8ffa013c10db57be14fbdd59757c08c243e18.tar.xz ilt-89b8ffa013c10db57be14fbdd59757c08c243e18.zip | |
Tidy the preFrame logic into a single function in SceneRenderer
Clients now just call that one helper and SceneProvider passes in all
the renderables.
Diffstat (limited to 'test/test-geoData.cpp')
| -rw-r--r-- | test/test-geoData.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/test/test-geoData.cpp b/test/test-geoData.cpp index b3a6ad4..80d3a08 100644 --- a/test/test-geoData.cpp +++ b/test/test-geoData.cpp @@ -256,14 +256,20 @@ BOOST_DATA_TEST_CASE(Deform, loadFixtureJson<DeformTerrainData>("geoData/deform/ TestRenderOutput tro {{640, 480}}; struct TestTerrain : public SceneProvider { - explicit TestTerrain(GeoData geoData) : terrain(std::move(geoData)) { } + explicit TestTerrain(GeoData geoData) : terrain(std::make_shared<Terrain>(std::move(geoData))) { } - const Terrain terrain; + std::shared_ptr<Terrain> terrain; + + void + forEachRenderable(const RenderableProcessor & func) const override + { + func(terrain.get()); + } void content(const SceneShader & shader, const Frustum & frustum) const override { - terrain.render(shader, frustum); + terrain->render(shader, frustum); } void @@ -281,7 +287,7 @@ BOOST_DATA_TEST_CASE(Deform, loadFixtureJson<DeformTerrainData>("geoData/deform/ void shadows(const ShadowMapper & shadowMapper, const Frustum & frustum) const override { - terrain.shadows(shadowMapper, frustum); + terrain->shadows(shadowMapper, frustum); } }; |
