Revision: 52443
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52443
Author:   blendix
Date:     2012-11-21 13:22:24 +0000 (Wed, 21 Nov 2012)
Log Message:
-----------
Fix #33257: cycles camera clipping did not work through transparent objects.

Modified Paths:
--------------
    trunk/blender/intern/cycles/kernel/kernel_path.h

Modified: trunk/blender/intern/cycles/kernel/kernel_path.h
===================================================================
--- trunk/blender/intern/cycles/kernel/kernel_path.h    2012-11-21 13:13:50 UTC 
(rev 52442)
+++ trunk/blender/intern/cycles/kernel/kernel_path.h    2012-11-21 13:22:24 UTC 
(rev 52443)
@@ -424,7 +424,12 @@
                /* setup ray */
                ray.P = ray_offset(sd.P, (label & LABEL_TRANSMIT)? -sd.Ng: 
sd.Ng);
                ray.D = bsdf_omega_in;
-               ray.t = FLT_MAX;
+
+               if(state.bounce == 0)
+                       ray.t -= sd.ray_length; /* clipping works through 
transparent */
+               else
+                       ray.t = FLT_MAX;
+
 #ifdef __RAY_DIFFERENTIALS__
                ray.dP = sd.dP;
                ray.dD = bsdf_domega_in;
@@ -887,6 +892,7 @@
 
                path_state_next(kg, &state, LABEL_TRANSPARENT);
                ray.P = ray_offset(sd.P, -sd.Ng);
+               ray.t -= sd.ray_length; /* clipping works through transparent */
        }
 
        float3 L_sum = path_radiance_sum(kg, &L);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to