mirror of
https://github.com/blender/blender
synced 2026-09-29 04:37:17 +03:00
Fix some Cycles random walk SSS precision issues with small radius
This commit is contained in:
parent
b1fcc8e6ba
commit
aed9b6faee
1 changed files with 7 additions and 0 deletions
|
|
@ -605,6 +605,13 @@ ccl_device_noinline
|
|||
if (hit) {
|
||||
t = ray->t;
|
||||
}
|
||||
else if (bounce == 0) {
|
||||
/* Restore original position if nothing was hit after the first bounce.
|
||||
* Otherwise if the ray_offset() to avoid self-intersection is relatively
|
||||
* large compared to the scattering radius, we go never backup high enough
|
||||
* to exit the surface. */
|
||||
ray->P = sd->P;
|
||||
}
|
||||
|
||||
/* Advance to new scatter location. */
|
||||
ray->P += t * ray->D;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue