Please always send technical questions to the list rather
than just to me - I'm not wlays the best source of technical
If you look at the detail of TRANSPARENCY_SORT_GEOMETRY,
its as I described: it sorts Geometries relative to each
other, but does not sort triangles within Geometries. For
this to work with iso-surfaces, you'd need almost as many
Geometries as trianlges. A BIG efficiency hit.
On Thu, 21 Apr 2005, JR Schmidt wrote:
> > Iso-surface triangles (and triangles from other sources)
> > in VisAD get sewn together in long polytrianlge strips
> > which greatly increase efficiency, and these strips are
> > in general not compatable with sorting. As I recall, Java3D
> > does provide a way to segregate triangles into multiple
> > Geometries that it will then sort in depth order, but for
> > this to work with complex shapes like iso-surfaces you'd
> > have to segregate into a very large number of Geometries.
> > It is possible that you may find a way to do what you want,
> > but it will be a lot of work and probably result in slower
> > rendering and greater memory use.
> It seems as if Java3D does implement the required sorting of transparent
> items in version 1.3. For example, see:
> and look at the 'View' class.
> As you can see from that page, Java 3D v1.3 added the
> 'setTransparencySortingPolicy' method to this class, which seems to do
> exactly what would be required. I tried setting this to
> 'TRANSPARENCY_SORT_GEOMETRY' from with my VisAD app:
> DisplayRenderer dRenderer = display.getDisplayRenderer();
> View view = ((DisplayRendererJ3D) dRenderer).getView();
> View.TRANSPARENCY_SORT_GEOMETRY );
> but it didn't seem to help. Perhaps the problem, as you mentioned, is that
> VisAD has created long polytriangle strips. This would seem consistent with
> the 'banding' I am seeing in my image. Perhaps a each 'band' in my image is
> in fact a strip of polygons.