Commit: 5a74fe63d0a3f86e61c162ee9a33040aa63f0020
Author: Thomas Dinges
Date:   Thu Aug 14 16:09:40 2014 +0200
Branches: master
https://developer.blender.org/rB5a74fe63d0a3f86e61c162ee9a33040aa63f0020

Cycles: Avoid intermediate function when we sample all lamps.

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

M       intern/cycles/kernel/kernel_light.h
M       intern/cycles/kernel/kernel_path_surface.h
M       intern/cycles/kernel/kernel_path_volume.h

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

diff --git a/intern/cycles/kernel/kernel_light.h 
b/intern/cycles/kernel/kernel_light.h
index 3832631..bf314f4 100644
--- a/intern/cycles/kernel/kernel_light.h
+++ b/intern/cycles/kernel/kernel_light.h
@@ -546,11 +546,6 @@ ccl_device int light_select_num_samples(KernelGlobals *kg, 
int index)
        return __float_as_int(data3.x);
 }
 
-ccl_device void light_select(KernelGlobals *kg, int index, float randu, float 
randv, float3 P, LightSample *ls)
-{
-       lamp_light_sample(kg, index, randu, randv, P, ls);
-}
-
 ccl_device int lamp_light_eval_sample(KernelGlobals *kg, float randt)
 {
        /* sample index */
diff --git a/intern/cycles/kernel/kernel_path_surface.h 
b/intern/cycles/kernel/kernel_path_surface.h
index 81526b0..9553c2d 100644
--- a/intern/cycles/kernel/kernel_path_surface.h
+++ b/intern/cycles/kernel/kernel_path_surface.h
@@ -50,7 +50,7 @@ ccl_device void 
kernel_branched_path_surface_connect_light(KernelGlobals *kg, RN
                                path_branched_rng_2D(kg, &lamp_rng, state, j, 
num_samples, PRNG_LIGHT_U, &light_u, &light_v);
 
                                LightSample ls;
-                               light_select(kg, i, light_u, light_v, sd->P, 
&ls);
+                               lamp_light_sample(kg, i, light_u, light_v, 
sd->P, &ls);
 
                                if(direct_emission(kg, sd, &ls, &light_ray, 
&L_light, &is_lamp, state->bounce, state->transparent_bounce)) {
                                        /* trace shadow ray */
diff --git a/intern/cycles/kernel/kernel_path_volume.h 
b/intern/cycles/kernel/kernel_path_volume.h
index ea90a49..5e47a3e 100644
--- a/intern/cycles/kernel/kernel_path_volume.h
+++ b/intern/cycles/kernel/kernel_path_volume.h
@@ -134,7 +134,7 @@ ccl_device void 
kernel_branched_path_volume_connect_light(KernelGlobals *kg, RNG
                                path_branched_rng_2D(kg, &lamp_rng, state, j, 
num_samples, PRNG_LIGHT_U, &light_u, &light_v);
 
                                LightSample ls;
-                               light_select(kg, i, light_u, light_v, ray->P, 
&ls);             
+                               lamp_light_sample(kg, i, light_u, light_v, 
ray->P, &ls);                
 
                                float3 tp = throughput;
 
@@ -149,7 +149,7 @@ ccl_device void 
kernel_branched_path_volume_connect_light(KernelGlobals *kg, RNG
                                        continue;
 
                                /* todo: split up light_sample so we don't have 
to call it again with new position */
-                               light_select(kg, i, light_u, light_v, sd->P, 
&ls);
+                               lamp_light_sample(kg, i, light_u, light_v, 
sd->P, &ls);
 
                                if(ls.pdf == 0.0f)
                                        continue;

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to