Jelajahi Sumber

Add clamp to custom light function example (#3752)

Without this clamp, negative lighting will be applied to the back side of the object.
bmolyneaux 5 tahun lalu
induk
melakukan
f48162e9cc
1 mengubah file dengan 1 tambahan dan 1 penghapusan
  1. 1 1
      tutorials/shading/shading_reference/spatial_shader.rst

+ 1 - 1
tutorials/shading/shading_reference/spatial_shader.rst

@@ -293,7 +293,7 @@ Below is an example of a custom light function using a Lambertian lighting model
 .. code-block:: glsl
 
     void light() {
-        DIFFUSE_LIGHT += dot(NORMAL, LIGHT) * ATTENUATION * ALBEDO;
+        DIFFUSE_LIGHT += clamp(dot(NORMAL, LIGHT), 0.0, 1.0) * ATTENUATION * ALBEDO;
     }
 
 If you want the lights to add together, add the light contribution to ``DIFFUSE_LIGHT`` using ``+=``, rather than overwriting it.