diff options
Diffstat (limited to 'ui')
-rw-r--r-- | ui/editNetwork.cpp | 8 | ||||
-rw-r--r-- | ui/editNetwork.h | 4 | ||||
-rw-r--r-- | ui/gameMainSelector.cpp | 6 | ||||
-rw-r--r-- | ui/gameMainSelector.h | 4 | ||||
-rw-r--r-- | ui/gameMainWindow.cpp | 8 | ||||
-rw-r--r-- | ui/gameMainWindow.h | 2 | ||||
-rw-r--r-- | ui/worldOverlay.h | 3 |
7 files changed, 18 insertions, 17 deletions
diff --git a/ui/editNetwork.cpp b/ui/editNetwork.cpp index c4c0297..2887491 100644 --- a/ui/editNetwork.cpp +++ b/ui/editNetwork.cpp @@ -48,19 +48,19 @@ EditNetwork::handleInput(const SDL_Event & e, const UIComponent::Position & pare } void -EditNetwork::render(const SceneShader & shader) const +EditNetwork::render(const SceneShader & shader, const Frustum & frustum) const { if (builder) { blue.bind(); shader.absolute.use(); - builder->render(shader); + builder->render(shader, frustum); } } void -EditNetwork::Builder::render(const SceneShader & shader) const +EditNetwork::Builder::render(const SceneShader & shader, const Frustum & frustum) const { - candidateLinks.apply<const Renderable>(&Renderable::render, shader); + candidateLinks.apply<const Renderable>(&Renderable::render, shader, frustum); } void diff --git a/ui/editNetwork.h b/ui/editNetwork.h index 2ae467d..ae887bd 100644 --- a/ui/editNetwork.h +++ b/ui/editNetwork.h @@ -18,7 +18,7 @@ public: bool click(const SDL_MouseButtonEvent & e, const Ray<GlobalPosition3D> &) override; bool move(const SDL_MouseMotionEvent & e, const Ray<GlobalPosition3D> &) override; bool handleInput(const SDL_Event & e, const UIComponent::Position &) override; - void render(const SceneShader &) const override; + void render(const SceneShader &, const Frustum &) const override; void render(const UIShader & shader, const UIComponent::Position & pos) const override; using NetworkClickPos = std::variant<GlobalPosition3D, Node::Ptr>; @@ -26,7 +26,7 @@ public: class Builder { public: virtual ~Builder() = default; - virtual void render(const SceneShader & shader) const; + virtual void render(const SceneShader & shader, const Frustum &) const; virtual std::string hint() const = 0; virtual void click(Network *, const GeoData *, const SDL_MouseButtonEvent &, const Ray<GlobalPosition3D> &) = 0; virtual void move(Network *, const GeoData *, const SDL_MouseMotionEvent &, const Ray<GlobalPosition3D> &) = 0; diff --git a/ui/gameMainSelector.cpp b/ui/gameMainSelector.cpp index a817f69..23ae8c0 100644 --- a/ui/gameMainSelector.cpp +++ b/ui/gameMainSelector.cpp @@ -33,10 +33,10 @@ GameMainSelector::render(const UIShader & shader, const Position & parentPos) co } void -GameMainSelector::render(const SceneShader & shader) const +GameMainSelector::render(const SceneShader & shader, const Frustum & frustum) const { if (target) { - target->render(shader); + target->render(shader, frustum); } } @@ -115,6 +115,6 @@ GameMainSelector::Component::render(const UIShader &, const UIComponent::Positio } void -GameMainSelector::Component::render(const SceneShader &) const +GameMainSelector::Component::render(const SceneShader &, const Frustum &) const { } diff --git a/ui/gameMainSelector.h b/ui/gameMainSelector.h index ccf0fa0..e715823 100644 --- a/ui/gameMainSelector.h +++ b/ui/gameMainSelector.h @@ -24,13 +24,13 @@ public: virtual bool move(const SDL_MouseMotionEvent &, const Ray<GlobalPosition3D> &); virtual bool handleInput(const SDL_Event &, const Position & pos); virtual void render(const UIShader & shader, const Position & pos) const; - virtual void render(const SceneShader &) const; + virtual void render(const SceneShader &, const Frustum &) const; }; GameMainSelector(const Camera * c, ScreenAbsCoord size); void render(const UIShader & shader, const Position & pos) const override; - void render(const SceneShader & shader) const override; + void render(const SceneShader & shader, const Frustum &) const override; bool handleInput(const SDL_Event & e, const Position &) override; diff --git a/ui/gameMainWindow.cpp b/ui/gameMainWindow.cpp index c53300b..3403afa 100644 --- a/ui/gameMainWindow.cpp +++ b/ui/gameMainWindow.cpp @@ -54,15 +54,15 @@ GameMainWindow::render() const } void -GameMainWindow::content(const SceneShader & shader) const +GameMainWindow::content(const SceneShader & shader, const Frustum & frustum) const { for (const auto & [id, asset] : gameState->assets) { if (const auto r = std::dynamic_pointer_cast<const Renderable>(asset)) { - r->render(shader); + r->render(shader, frustum); } } - gameState->world.apply<Renderable>(&Renderable::render, shader); - uiComponents.apply<WorldOverlay>(&WorldOverlay::render, shader); + gameState->world.apply<Renderable>(&Renderable::render, shader, frustum); + uiComponents.apply<WorldOverlay>(&WorldOverlay::render, shader, frustum); } void diff --git a/ui/gameMainWindow.h b/ui/gameMainWindow.h index fcbd135..112d23b 100644 --- a/ui/gameMainWindow.h +++ b/ui/gameMainWindow.h @@ -17,7 +17,7 @@ public: void render() const override; private: - void content(const SceneShader &) const override; + void content(const SceneShader &, const Frustum &) const override; void environment(const SceneShader &, const SceneRenderer &) const override; void lights(const SceneShader &) const override; void shadows(const ShadowMapper &) const override; diff --git a/ui/worldOverlay.h b/ui/worldOverlay.h index 18fab3f..a0f3b65 100644 --- a/ui/worldOverlay.h +++ b/ui/worldOverlay.h @@ -1,9 +1,10 @@ #pragma once class SceneShader; +class Frustum; class WorldOverlay { public: virtual ~WorldOverlay() = default; - virtual void render(const SceneShader &) const = 0; + virtual void render(const SceneShader &, const Frustum &) const = 0; }; |