Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorMathieu Menuet <bliblubli>2017-11-26 17:50:36 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2017-11-26 17:53:00 +0300
commit83e80db56ec90c2059d51768f0a90d2d21aa32b1 (patch)
tree233450524a903123c26a34bbbe835a7315fba942 /intern
parent311da4cd16c2a51c8a00cf67f96d7591c5bb1dfa (diff)
Fix T53349: AO bounces not working correct with OpenCL.
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/kernel/kernel_path.h10
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);