diff --git a/Source/Engine/Renderer/GlobalSignDistanceFieldPass.cpp b/Source/Engine/Renderer/GlobalSignDistanceFieldPass.cpp index e287ba6f0..71c73c7d1 100644 --- a/Source/Engine/Renderer/GlobalSignDistanceFieldPass.cpp +++ b/Source/Engine/Renderer/GlobalSignDistanceFieldPass.cpp @@ -460,12 +460,6 @@ bool GlobalSignDistanceFieldPass::Render(RenderContext& renderContext, GPUContex } } - // Send models data to the GPU - { - PROFILE_GPU_CPU("Update Models"); - _modelsBuffer->Flush(context); - } - // Perform batched chunks rasterization if (!anyDraw) { @@ -533,6 +527,13 @@ bool GlobalSignDistanceFieldPass::Render(RenderContext& renderContext, GPUContex } } + // Send models data to the GPU + if (chunks.Count() != 0) + { + PROFILE_GPU_CPU("Update Models"); + _modelsBuffer->Flush(context); + } + // Rasterize non-empty chunk (first layer so can override existing chunk data) for (const auto& e : chunks) {