[Bf-committers] OpenGL accelerated Nodes

GSR gsr.b3d at infernal-iceberg.com
Sat Sep 8 21:04:25 CEST 2007


Hi,
tbaldridge at gmail.com (2007-09-08 at 1152.44 -0500):
> That being said, the artifacts you mention because of non IEEE float
> compliance won't be an issues here. You really only run into issues
> when you start talking about the way a GPU rounds the data. So yeah,
> in ray tracing, 5.000000 and 5.000001 could be totally different if
> you're firing a ray across a room, but deciding if a pixel is 0.05 or
> 0.051 isn't even going to be noticeable to the human eye.

Famous last words. You are ignoring the avalanche effect.

if (mask <= 0.5) // Mask is computed by some algorithm in GPU
  result = BG; // For example blue
else
  result = FG; // And orange

The mask could be 0.5 or slightly above, so who cares? Welcome to
flicker land.

For quick previews, it can be ok. For final render, not at all if you
care about stable results (different machines, different card or
drivers versions...). That is why IEEE754 exists and why sticking to
something well known matters, like standards and pseudorandom
generators. In worst case, you will not be chasing mandelbugs and will
be able to get a lot of people with the same environment to test.

Every time someone mentions "small diffs are no problem" I remember
http://www.highend3d.com/list_servers/render_theory/archive/77.html
(look for "80").

GSR
 


More information about the Bf-committers mailing list