From 1f1ed2bf60a228ff296b30a20b4f03eb2220e44a Mon Sep 17 00:00:00 2001 From: Wojciech Figat Date: Mon, 6 Jun 2022 10:28:58 +0200 Subject: [PATCH] Fix terrain draw modes to collect only current draw pass --- Source/Engine/Terrain/TerrainChunk.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Source/Engine/Terrain/TerrainChunk.cpp b/Source/Engine/Terrain/TerrainChunk.cpp index e2874ef98..562e4b6b3 100644 --- a/Source/Engine/Terrain/TerrainChunk.cpp +++ b/Source/Engine/Terrain/TerrainChunk.cpp @@ -121,7 +121,8 @@ void TerrainChunk::Draw(const RenderContext& renderContext) const //drawCall.TerrainData.HeightmapUVScaleBias.W += halfTexelOffset; // Submit draw call - renderContext.List->AddDrawCall(_patch->_terrain->DrawModes, flags, drawCall, true); + auto drawModes = (DrawPass)(_patch->_terrain->DrawModes & renderContext.View.Pass); + renderContext.List->AddDrawCall(drawModes, flags, drawCall, true); } void TerrainChunk::Draw(const RenderContext& renderContext, MaterialBase* material, int32 lodIndex) const @@ -175,7 +176,8 @@ void TerrainChunk::Draw(const RenderContext& renderContext, MaterialBase* materi //drawCall.TerrainData.HeightmapUVScaleBias.W += halfTexelOffset; // Submit draw call - renderContext.List->AddDrawCall(_patch->_terrain->DrawModes, flags, drawCall, true); + auto drawModes = (DrawPass)(_patch->_terrain->DrawModes & renderContext.View.Pass); + renderContext.List->AddDrawCall(drawModes, flags, drawCall, true); } bool TerrainChunk::Intersects(const Ray& ray, float& distance)