summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbruvzg <7645683+bruvzg@users.noreply.github.com>2021-11-24 11:29:27 +0200
committerbruvzg <7645683+bruvzg@users.noreply.github.com>2021-11-25 12:43:45 +0200
commitb7e6e50dd239ffc9f8c440bd5fe9b43c8dd550d5 (patch)
treed626203766bdab3cdbcf2de9cd27762355feb441
parent4261fb324424765c8aab3885c58511cdc130240a (diff)
[macOS / iOS] Use non atomic operation to store facing bits on MoltenVK.
-rw-r--r--servers/rendering/renderer_rd/shaders/scene_forward_clustered.glsl4
1 files changed, 4 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/shaders/scene_forward_clustered.glsl b/servers/rendering/renderer_rd/shaders/scene_forward_clustered.glsl
index 8e33610ae2..e4628b2d5a 100644
--- a/servers/rendering/renderer_rd/shaders/scene_forward_clustered.glsl
+++ b/servers/rendering/renderer_rd/shaders/scene_forward_clustered.glsl
@@ -1757,7 +1757,11 @@ void main() {
}
}
+#ifdef MOLTENVK_USED
+ imageStore(geom_facing_grid, grid_pos, uvec4(imageLoad(geom_facing_grid, grid_pos).r | facing_bits)); //store facing bits
+#else
imageAtomicOr(geom_facing_grid, grid_pos, facing_bits); //store facing bits
+#endif
if (length(emission) > 0.001) {
float lumas[6];