Am 15.04.2018 um 04:48 schrieb Sven Littkowski:
> Based on that experience, it would be my suggestion to add some message
> stream feature to POV-Ray that allows better progress control on photon
> mapping, or even error checking.
How often would you expect feedback? Every 100 photon rays? Every 10?
And what if even that would leave you with 1 minute of no apparent
response? Would you expect even more frequent updates? Each bounce of
the ray, maybe?
No matter how frequent photon progress (or any other progress for that
matter) is reported, there will always be the possibility for
pathological cases where that reporting frequency would not be enough
for a satisfactory user experience.
The way it's currently done is already a trade-off: Getting one report
per second seems like a reasonable frequency; but testing for elapsed
wall-clock time in itself is comparatively time-consuming (after all,
you have to ask the operating system, which means context switching,
which means looooong delays compared to POV-Ray's normal job of
crunching numbers), and we don't want to bog down fast renders with
asking "are we there yet?" after every ray fired.
Counting the rays fired is far easier though, as we don't need the OS
for that. So we count to 1000, and only then do we again ask "are we
there yet?". (*)
As for error checking, what would constitute an error in that context?
We can't anticipate /everything/ that might bog down photon shooting,
and even then it would generally be difficult to draw lines to call it
an error rather than an unfortunate side effect of the quality level
desired by the user.
(* As for some more constructive feedback to your post, I guess it
shouldn't be too much effort to make the "are we there yet" interval
adaptive and essentially use the time measured to make an educated guess
how many rays to count before asking again.)
Post a reply to this message