summaryrefslogtreecommitdiff
path: root/game
diff options
context:
space:
mode:
Diffstat (limited to 'game')
-rw-r--r--game/environment.cpp8
-rw-r--r--game/environment.h1
2 files changed, 8 insertions, 1 deletions
diff --git a/game/environment.cpp b/game/environment.cpp
index acb4f21..1ef6e22 100644
--- a/game/environment.cpp
+++ b/game/environment.cpp
@@ -11,13 +11,19 @@ Environment::tick(TickDuration)
worldTime += 50;
}
+Direction2D
+Environment::getSunPos() const
+{
+ return getSunPos({}, worldTime);
+}
+
void
Environment::render(const SceneRenderer & renderer, const SceneProvider & scene) const
{
constexpr RGB baseAmbient {0.1F}, baseDirectional {0.0F};
constexpr RGB relativeAmbient {0.3F, 0.3F, 0.4F}, relativeDirectional {0.6F, 0.6F, 0.5F};
- const LightDirection sunPos = getSunPos({}, worldTime);
+ const LightDirection sunPos = getSunPos();
const auto ambient = baseAmbient + relativeAmbient * sunPos.ambient();
const auto directional = baseDirectional + relativeDirectional * sunPos.directional();
diff --git a/game/environment.h b/game/environment.h
index a6f3036..6a2e1ad 100644
--- a/game/environment.h
+++ b/game/environment.h
@@ -11,6 +11,7 @@ public:
Environment();
void tick(TickDuration elapsed) override;
void render(const SceneRenderer &, const SceneProvider &) const;
+ Direction2D getSunPos() const;
static Direction2D getSunPos(const Direction2D position, const time_t time);
private: