diff options
author | Brecht Van Lommel <brecht@blender.org> | 2022-09-22 21:03:24 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2022-09-27 16:56:28 +0300 |
commit | 6d19da0b2d468f099e0c1f56392ab8a1750d114f (patch) | |
tree | 7309b5ef31d5e42dca4e26e13b74bd6f223cba41 /intern/cycles/kernel/closure/bsdf_transparent.h | |
parent | bd249eb4f37e65b2f4b3deef775bb136a2c234d1 (diff) |
Cycles: BSDF eval refactor to remove separate reflection/refraction methods
Simplifies code overall to do it inside the eval function, most of the BSDFs
already compute the dot product.
The refactoring in bsdf_principled_hair_eval() was needed to avoid a HIP
compiler bug. Cause is unclear, just changing the implementation enough
is meant to sidestep it.
Ref T92571, D15286
Diffstat (limited to 'intern/cycles/kernel/closure/bsdf_transparent.h')
-rw-r--r-- | intern/cycles/kernel/closure/bsdf_transparent.h | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/intern/cycles/kernel/closure/bsdf_transparent.h b/intern/cycles/kernel/closure/bsdf_transparent.h index c2aee1e1633..9306e82b579 100644 --- a/intern/cycles/kernel/closure/bsdf_transparent.h +++ b/intern/cycles/kernel/closure/bsdf_transparent.h @@ -59,19 +59,10 @@ ccl_device void bsdf_transparent_setup(ccl_private ShaderData *sd, } } -ccl_device Spectrum bsdf_transparent_eval_reflect(ccl_private const ShaderClosure *sc, - const float3 I, - const float3 omega_in, - ccl_private float *pdf) -{ - *pdf = 0.0f; - return zero_spectrum(); -} - -ccl_device Spectrum bsdf_transparent_eval_transmit(ccl_private const ShaderClosure *sc, - const float3 I, - const float3 omega_in, - ccl_private float *pdf) +ccl_device Spectrum bsdf_transparent_eval(ccl_private const ShaderClosure *sc, + const float3 I, + const float3 omega_in, + ccl_private float *pdf) { *pdf = 0.0f; return zero_spectrum(); |