summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexis Breust <alexis.breust@gmail.com>2024-09-04 10:54:08 +0200
committerAlexis Breust <alexis.breust@gmail.com>2024-09-04 10:54:08 +0200
commit44e526d3d5390368497b7c9948f6ca3f2daa1a3c (patch)
treecedf59525768207286fc35a27d3c3e75116fa124
parent5ca419e32c58e671284b3b7f91257179657d9114 (diff)
downloadredot-engine-44e526d3d5390368497b7c9948f6ca3f2daa1a3c.tar.gz
Sky: No more auto-selecting REALTIME mode if radiance is not 256
-rw-r--r--drivers/gles3/rasterizer_scene_gles3.cpp2
-rw-r--r--servers/rendering/renderer_rd/environment/sky.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gles3/rasterizer_scene_gles3.cpp b/drivers/gles3/rasterizer_scene_gles3.cpp
index 3ed8042f3f..8b6d3e3268 100644
--- a/drivers/gles3/rasterizer_scene_gles3.cpp
+++ b/drivers/gles3/rasterizer_scene_gles3.cpp
@@ -912,7 +912,7 @@ void RasterizerSceneGLES3::_update_sky_radiance(RID p_env, const Projection &p_p
RS::SkyMode sky_mode = sky->mode;
if (sky_mode == RS::SKY_MODE_AUTOMATIC) {
- if (shader_data->uses_time || shader_data->uses_position) {
+ if ((shader_data->uses_time || shader_data->uses_position) && sky->radiance_size == 256) {
update_single_frame = true;
sky_mode = RS::SKY_MODE_REALTIME;
} else if (shader_data->uses_light || shader_data->ubo_size > 0) {
diff --git a/servers/rendering/renderer_rd/environment/sky.cpp b/servers/rendering/renderer_rd/environment/sky.cpp
index b5d31f5414..83866435db 100644
--- a/servers/rendering/renderer_rd/environment/sky.cpp
+++ b/servers/rendering/renderer_rd/environment/sky.cpp
@@ -1251,7 +1251,7 @@ void SkyRD::update_radiance_buffers(Ref<RenderSceneBuffersRD> p_render_buffers,
RS::SkyMode sky_mode = sky->mode;
if (sky_mode == RS::SKY_MODE_AUTOMATIC) {
- if (shader_data->uses_time || shader_data->uses_position) {
+ if ((shader_data->uses_time || shader_data->uses_position) && sky->radiance_size == 256) {
update_single_frame = true;
sky_mode = RS::SKY_MODE_REALTIME;
} else if (shader_data->uses_light || shader_data->ubo_size > 0) {