Joachim Bratteli wrote:

Oh my. I hope this doesn't mean that all my transparent shapes must
have one Shape3D for each transparent polygon. It would have been fine
if the sorting would have been based on polygons insted of shapes.
Please note that there is no correct solution for generic problem. Two
triangles can intersect - no way of arranging them will get you really
correct effect - you would need to split triangles into smaller polygons
and only then draw them in correct order.

You have to tell us what do you exactly want. What amount of error are
going to accept ? Will it be enough for objects to sort separate
triangles correctly, while intersecting _triangles_ are drawn randomly ?

If yes, then you probably will find immediate mode easier for last,
transparent step easier. Take all triangles from transparent objects and
view-depth sort them yourself. Of course, you can reuse java3d bounds -
if bounds of one object are clearly behind other, just draw it directly.
  In other case, take triangles which share appearance and draw them in
correct order, then switch appearance and continue. Of course, do not
draw one triangle per call - use dynamic geometry arrays for that (you
can reuse one array for all tricks in scene).

Splitting each triangle to separate Shape3D is extremly heavyweight.
Even dumbest hand-sorting of triangles is sure to generate faster results.

If you can manage all transparent objects to share appearance (for
example by merging textures and playing with texture coordinates etc),
then maybe using one global Shape3D for all transparent objects is also
an option. You will not get any object culling done for you, but even if
all triangles are send to GPU each frame, it should be quite fast.

Anyway, think how do you really would like to handle all corner cases
(result-wise, do not worry about technology at the moment) and then we
can try to help you to achieve that.

Artur

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to