[Bf-blender-cvs] [474dcbcf126] master: Cycles: Remove limits on the Sky texture's sun rotation

Lukas Stockner noreply at git.blender.org
Mon Jul 13 03:15:37 CEST 2020


Commit: 474dcbcf126a308ea46543fcd914aa4bebf30a49
Author: Lukas Stockner
Date:   Mon Jul 13 01:39:11 2020 +0200
Branches: master
https://developer.blender.org/rB474dcbcf126a308ea46543fcd914aa4bebf30a49

Cycles: Remove limits on the Sky texture's sun rotation

For animation/driver purposes, being able to go outside of the 0-360
range makes things easier.

Differential Revision: https://developer.blender.org/D8091

===================================================================

M	intern/cycles/render/nodes.cpp
M	source/blender/makesrna/intern/rna_nodetree.c

===================================================================

diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index 1e09b71b340..e6c05b0b75e 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -761,6 +761,12 @@ static void sky_texture_precompute_nishita(SunSky *sunsky,
   float altitude_f = (float)altitude;
   SKY_nishita_skymodel_precompute_sun(
       sun_elevation, sun_size, altitude_f, air_density, dust_density, pixel_bottom, pixel_top);
+  /* limit sun rotation between 0 and 360 degrees */
+  sun_rotation = fmodf(sun_rotation, M_2PI_F);
+  if (sun_rotation < 0.0f) {
+    sun_rotation += M_2PI_F;
+  }
+  sun_rotation = M_2PI_F - sun_rotation;
   /* send data to svm_sky */
   sunsky->nishita_data[0] = pixel_bottom[0];
   sunsky->nishita_data[1] = pixel_bottom[1];
@@ -769,7 +775,7 @@ static void sky_texture_precompute_nishita(SunSky *sunsky,
   sunsky->nishita_data[4] = pixel_top[1];
   sunsky->nishita_data[5] = pixel_top[2];
   sunsky->nishita_data[6] = sun_elevation;
-  sunsky->nishita_data[7] = M_2PI_F - sun_rotation;
+  sunsky->nishita_data[7] = sun_rotation;
   sunsky->nishita_data[8] = sun_disc ? sun_size : 0.0f;
 }
 
diff --git a/source/blender/makesrna/intern/rna_nodetree.c b/source/blender/makesrna/intern/rna_nodetree.c
index 86a270ec09d..2440b16aeb8 100644
--- a/source/blender/makesrna/intern/rna_nodetree.c
+++ b/source/blender/makesrna/intern/rna_nodetree.c
@@ -4461,7 +4461,6 @@ static void def_sh_tex_sky(StructRNA *srna)
 
   prop = RNA_def_property(srna, "sun_rotation", PROP_FLOAT, PROP_ANGLE);
   RNA_def_property_ui_text(prop, "Sun Rotation", "Rotation of sun around zenith");
-  RNA_def_property_range(prop, 0.0f, 2.0f * M_PI);
   RNA_def_property_float_default(prop, 0.0f);
   RNA_def_property_update(prop, NC_NODE | NA_EDITED, "rna_Node_update");



More information about the Bf-blender-cvs mailing list