Closed cbrownenv closed 13 years ago
Can I ask what the possible use would be? The depth buffer takes care of correct sorting. There's several reasons why z-sorting is not feasible when working with gpu (apart from the amount of polys being pushed to gpu causing z-sorting to simply way too slow), such as the need to draw everything with the same material in one go.
What I'm asking for is "Render Layers". Essentially, the ability to group 3d objects into different render layers with each render layer's z-buffer independent of the others. This would allow effects that would be particularly useful when designing 3d interfaces.
For example, imagine having an interface where a carousel-type layout of interactive objects surround one interactive object in the center, and they rotate around that object in the center when dragged with the mouse -- let's say a carousel of spheres with another sphere in the center. And let's say this carousel of spheres is being used as a 3d interface where each sphere is a button. And then maybe the sphere in the middle is an "orb" which shows different content when the different sphere buttons are clicked.
In this case, you may want the "orb" to come to the foreground in front of the carousel of spheres when it displays content, but still want the orb to rotate on center and the carousel to rotate on center behind it. This is a design trick we used a lot when creating 3d interfaces at Viewpoint Corporation which is why we integrated Render Layers into the Viewpoint Media Player. Trust me, it's not as much of an edge-case as it sounds. It gets used for many other things than just the example I gave here. We also used it a lot when we did our automobile product tours for Toyota, Scion, Honda, etc.
Unless anyone in the team wants to object, I'm closing this and tagging it as "deferred" so we can have a new look at this for a future release.
Feature request for arbitrary z-sorting like we once had in Away 3 as outlined by Rob Bateman here:
http://www.mail-archive.com/away3d-dev@googlegroups.com/msg02900.html