|
![](/i/fill.gif) |
Am 31.07.2011 15:25, schrieb Le_Forgeron:
> Looks like some code is using a global resource, unprotected (like a
> random generator ?)
Possibly the radiosity sample cache; for pretrace efficiency, this is
shared among all threads, with the effect that a sample at a certain
point may or may not be taken depending on whether another thread has
already taken samples nearby or not.
You may try using +HR (or "High_Reproducibility=on"); this will
essentially prevent re-use of radiosity samples taken for a different
render block in the same pretrace pass (with certain well-controlled
exceptions), so that the radiosity pretrace always produces the very
same set of samples regardless of thread scheduling and number of render
threads. It is slower though.
At present this option affects only radiosity sampling; however, the
idea is for the option to eliminate any non-determinisms in render
artifacts (there still are some, but I never found the time to hunt them
down yet) by throwing a moderate deal of extra computing effort at them
if they can't be avoided otherwise.
Post a reply to this message
|
![](/i/fill.gif) |