diff options
author | Mathieu Menuet <bliblubli> | 2017-11-26 17:50:36 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2017-11-26 17:53:00 +0300 |
commit | 83e80db56ec90c2059d51768f0a90d2d21aa32b1 (patch) | |
tree | 233450524a903123c26a34bbbe835a7315fba942 /intern/cycles/kernel | |
parent | 311da4cd16c2a51c8a00cf67f96d7591c5bb1dfa (diff) |
Fix T53349: AO bounces not working correct with OpenCL.
Diffstat (limited to 'intern/cycles/kernel')
-rw-r--r-- | intern/cycles/kernel/kernel_path.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/intern/cycles/kernel/kernel_path.h b/intern/cycles/kernel/kernel_path.h index 791c25c6553..c2421c1ec18 100644 --- a/intern/cycles/kernel/kernel_path.h +++ b/intern/cycles/kernel/kernel_path.h @@ -59,6 +59,11 @@ ccl_device_forceinline bool kernel_path_scene_intersect( { uint visibility = path_state_ray_visibility(kg, state); + if(path_state_ao_bounce(kg, state)) { + visibility = PATH_RAY_SHADOW; + ray->t = kernel_data.background.ao_distance; + } + #ifdef __HAIR__ float difl = 0.0f, extmax = 0.0f; uint lcg_state = 0; @@ -74,11 +79,6 @@ ccl_device_forceinline bool kernel_path_scene_intersect( lcg_state = lcg_state_init_addrspace(state, 0x51633e2d); } - if(path_state_ao_bounce(kg, state)) { - visibility = PATH_RAY_SHADOW; - ray->t = kernel_data.background.ao_distance; - } - bool hit = scene_intersect(kg, *ray, visibility, isect, &lcg_state, difl, extmax); #else bool hit = scene_intersect(kg, *ray, visibility, isect, NULL, 0.0f, 0.0f); |