summaryrefslogtreecommitdiff
path: root/game/terrain.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'game/terrain.cpp')
-rw-r--r--game/terrain.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/game/terrain.cpp b/game/terrain.cpp
index e9e9463..d3c1d1a 100644
--- a/game/terrain.cpp
+++ b/game/terrain.cpp
@@ -128,12 +128,14 @@ Terrain::render(const SceneShader & shader, const Frustum & frustum) const
}
void
-Terrain::shadows(const ShadowMapper & shadowMapper, const Frustum &) const
+Terrain::shadows(const ShadowMapper & shadowMapper, const Frustum & frustum) const
{
shadowMapper.landmess.use();
for (const auto & [surface, sab] : meshes) {
- glBindVertexArray(sab.vertexArray);
- glDrawElements(GL_TRIANGLES, sab.count, GL_UNSIGNED_INT, nullptr);
+ if (frustum.shadedBy(sab.aabb)) {
+ glBindVertexArray(sab.vertexArray);
+ glDrawElements(GL_TRIANGLES, sab.count, GL_UNSIGNED_INT, nullptr);
+ }
}
glBindVertexArray(0);
}