[Radiance-general] Mesh Rendering Performance
Marcus Jacobs
marcdevon at hotmail.com
Fri Feb 24 22:18:58 CET 2006
Dear Group
I have been using obj2mesh to convert my 3D scene to the Radiance triangular
mesh (rtm) format for the last 6-8 months. Although I do prefer using this
method to convert my scenes, a recent test confirmed that the performance
suffers greatly when using a mesh when compared to using a scene consisting
of polygonal objects (i.e. void polygon triangle1 ......) . Case in point,
one rendering took 8.7 for the scene consisting of a mesh primitive and 3.7
hours to render for the scene consisting of triangular polygon primitives.
This is with the -n option set to 6, which should yield the best performance
(actually, its about the same whether I leave -n to the default or if I use
a lower value). A slight performance decrease (5%-10%) would be acceptable
but 135% is extreme. On top of that, I have some modified source code for
o_face that can yield a 10%-20%+ performance increase without any additional
memory cost (It's just an implementation of Moller-Trumbore ray/triangle
intersection). What is surprising to me is that I would normally assume that
the mesh primitive would be more efficient due to its caching of the
ray/edge comparisons during ray tracing but this does not seem to be the
case. Out of curiosity, has anyone here experienced the same? Does anyone
here know if Radiance sees the rtm file as one huge mesh or as several
smaller meshes? If this is the case, does anyone know if breaking each scene
object as a separate mesh primitive would improve performance?
Thanks
Marcus
More information about the Radiance-general
mailing list