You're right, OSG has no built-in capacity to sort a list of Polygons within
a single Geometry/Drawable based on distance. This is primarily because
there are better solutions available.
 
Putting each Polygon in its own Drawable is a possible solution but would be
wasteful of memory if vertices are shared.
 
Probably the most efficient solution would be to render back faces first,
then front faces. You could do that with a single custom Drawable, or you
could have two references to the same Drawable each with different
StateSets: one configured to render back, the other front faces, and in
separate RenderBins for ordering.
 
Paul Martz
Skew Matrix Software LLC
http://www.skew-matrix.com <http://www.skew-matrix.com/> 
303 859 9466
 



 
Hello to everyone,
I am currently working with OSG on a scientific visualization program, I
need to display some transparent concave shapes (some isosurfaces),
unfortunately I could achieve only partially correct results since I can
sort transparent objects but they still appear as if they were "teared".
Apparently OSG is able to sort transparent "whole" objects based on their
distance from the camera but cannot sort their polygons. A possible solution
would be to create a drawable for each polygon and let OSG sort the polygons
as if they were objects but probably that's going to be a very slow (and
ugly) procedure. Another alternative would be to "manually" sort the
polygons of my mesh before every frame which sounds very similar to an hack.


The same problem can be seen also by simply visualizing a transparent sphere
(disabling back face culling): from some points of view the sphere appears
as if it was teared with a sharp saw-tooth-kind pattern, enabling backface
culling the problem apparently disappears (since is a convex shape). 

Isn't there an efficient "out of the box" feature/node in OSG that sorts the
polygon of one or more objects based on their distance from the camera?
Cheers,
Mike



_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to