Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/kernel/kernel_path_state.h
| Show First 20 Lines • Show All 173 Lines • ▼ Show 20 Lines | |||||
| #ifdef __SHADOW_TRICKS__ | #ifdef __SHADOW_TRICKS__ | ||||
| /* Exception for shadow catcher not working correctly with RR. */ | /* Exception for shadow catcher not working correctly with RR. */ | ||||
| else if((state->flag & PATH_RAY_SHADOW_CATCHER) && (state->transparent_bounce <= 8)) { | else if((state->flag & PATH_RAY_SHADOW_CATCHER) && (state->transparent_bounce <= 8)) { | ||||
| return 1.0f; | return 1.0f; | ||||
| } | } | ||||
| #endif | #endif | ||||
| } | } | ||||
| else { | else { | ||||
| /* Test max bounces for various ray types. */ | /* Test max bounces for various ray types. | ||||
| The check for max_volume_bounce doesn't happen here but inside volume_shader_sample(). | |||||
| See T53914. | |||||
| */ | |||||
| if((state->bounce >= kernel_data.integrator.max_bounce) || | if((state->bounce >= kernel_data.integrator.max_bounce) || | ||||
| (state->diffuse_bounce >= kernel_data.integrator.max_diffuse_bounce) || | (state->diffuse_bounce >= kernel_data.integrator.max_diffuse_bounce) || | ||||
| (state->glossy_bounce >= kernel_data.integrator.max_glossy_bounce) || | (state->glossy_bounce >= kernel_data.integrator.max_glossy_bounce) || | ||||
| #ifdef __VOLUME__ | |||||
| (state->volume_bounce >= kernel_data.integrator.max_volume_bounce) || | |||||
| #endif | |||||
| (state->transmission_bounce >= kernel_data.integrator.max_transmission_bounce)) | (state->transmission_bounce >= kernel_data.integrator.max_transmission_bounce)) | ||||
| { | { | ||||
| return 0.0f; | return 0.0f; | ||||
| } | } | ||||
| /* Do at least one bounce without RR. */ | /* Do at least one bounce without RR. */ | ||||
| else if(state->bounce <= 1) { | else if(state->bounce <= 1) { | ||||
| return 1.0f; | return 1.0f; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 50 Lines • Show Last 20 Lines | |||||