Merge branch 'blender-v3.0-release'
This commit is contained in:
commit
48c2b4012f
|
@ -438,7 +438,7 @@ ccl_device_inline int bsdf_sample(KernelGlobals kg,
|
|||
if (label & LABEL_TRANSMIT) {
|
||||
float threshold_squared = kernel_data.background.transparent_roughness_squared_threshold;
|
||||
|
||||
if (threshold_squared >= 0.0f) {
|
||||
if (threshold_squared >= 0.0f && !(label & LABEL_DIFFUSE)) {
|
||||
if (bsdf_get_specular_roughness_squared(sc) <= threshold_squared) {
|
||||
label |= LABEL_TRANSMIT_TRANSPARENT;
|
||||
}
|
||||
|
|
|
@ -502,7 +502,7 @@ ccl_device_inline void kernel_accum_light(KernelGlobals kg,
|
|||
|
||||
/* Write shadow pass. */
|
||||
if (kernel_data.film.pass_shadow != PASS_UNUSED && (path_flag & PATH_RAY_SHADOW_FOR_LIGHT) &&
|
||||
(path_flag & PATH_RAY_CAMERA)) {
|
||||
(path_flag & PATH_RAY_TRANSPARENT_BACKGROUND)) {
|
||||
const float3 unshadowed_throughput = INTEGRATOR_STATE(
|
||||
state, shadow_path, unshadowed_throughput);
|
||||
const float3 shadowed_throughput = INTEGRATOR_STATE(state, shadow_path, throughput);
|
||||
|
|
|
@ -177,7 +177,7 @@ ccl_device_inline void kernel_write_data_passes(KernelGlobals kg,
|
|||
#ifdef __PASSES__
|
||||
const uint32_t path_flag = INTEGRATOR_STATE(state, path, flag);
|
||||
|
||||
if (!(path_flag & PATH_RAY_CAMERA)) {
|
||||
if (!(path_flag & PATH_RAY_TRANSPARENT_BACKGROUND)) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -122,7 +122,7 @@ ccl_device_inline void path_state_next(KernelGlobals kg, IntegratorState state,
|
|||
/* volume scatter */
|
||||
flag |= PATH_RAY_VOLUME_SCATTER;
|
||||
flag &= ~PATH_RAY_TRANSPARENT_BACKGROUND;
|
||||
if (bounce == 1) {
|
||||
if (!(flag & PATH_RAY_ANY_PASS)) {
|
||||
flag |= PATH_RAY_VOLUME_PASS;
|
||||
}
|
||||
|
||||
|
@ -184,7 +184,7 @@ ccl_device_inline void path_state_next(KernelGlobals kg, IntegratorState state,
|
|||
}
|
||||
|
||||
/* Render pass categories. */
|
||||
if (bounce == 1) {
|
||||
if (!(flag & PATH_RAY_ANY_PASS) && !(flag & PATH_RAY_TRANSPARENT_BACKGROUND)) {
|
||||
flag |= PATH_RAY_SURFACE_PASS;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -23,7 +23,8 @@ CCL_NAMESPACE_BEGIN
|
|||
ccl_device_inline bool svm_node_aov_check(const uint32_t path_flag,
|
||||
ccl_global float *render_buffer)
|
||||
{
|
||||
bool is_primary = (path_flag & PATH_RAY_CAMERA) && (!(path_flag & PATH_RAY_SINGLE_PASS_DONE));
|
||||
bool is_primary = (path_flag & PATH_RAY_TRANSPARENT_BACKGROUND) &&
|
||||
(!(path_flag & PATH_RAY_SINGLE_PASS_DONE));
|
||||
|
||||
return ((render_buffer != NULL) && is_primary);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue