Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Bug: Flexible and transparent draw order issues.

Frans Charming
You only need one Frans
Join date: 28 Jan 2005
Posts: 1,847
05-07-2006 06:08
When you have have a transparent flex prim before a nonflex transparent prim, the nonflex prim is drawn before the flex prim.

flex on


flex off


version 1.9.1(21)
_____________________
Frans Charming
You only need one Frans
Join date: 28 Jan 2005
Posts: 1,847
05-07-2006 06:51
seems to have to do with the angle that you look at it

<object classid=\"\"\"\"\"clsid<img\"\"\"\" src="%20images/smilies/biggrin.gif=" alt="" title="Big Grin" class="inlineimg" border="0"> <embed name=\"\"\"\"\"flexbug01\"\"\"\"\" src="http://www.fransinnovations.com/pics/flexbug01.swf" quality="high" bgcolor="#FFFFFF" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" height="100" width="100">
</object>
_____________________
Hello Toonie
Registered User
Join date: 25 Jul 2005
Posts: 212
05-07-2006 07:08
Transparency-sorting in SL never was an exact science... and likely won't ever be. :/
Haravikk Mistral
Registered User
Join date: 8 Oct 2005
Posts: 2,482
05-07-2006 14:40
Yeah I suspect it may be a known alpha issue that's still around, I reported this but it seems to happen in 1.9.0 as well (obviously not for flex prims!). Changing the flex-prim state will likely cause SL to re-render the object, incurring the bug, or the box is shifting ever so slightly to an angle at which the error occurs.

Although I thought Open GL handled the rendering order of 3d objects, but I'm not that knowledgeable, hopefully it'll be fixed, I'm noticing it more and more lately :(
_____________________
Computer (Mac Pro):
2 x Quad Core 3.2ghz Xeon
10gb DDR2 800mhz FB-DIMMS
4 x 750gb, 32mb cache hard-drives (RAID-0/striped)
NVidia GeForce 8800GT (512mb)
Hello Toonie
Registered User
Join date: 25 Jul 2005
Posts: 212
05-08-2006 01:18
From: Haravikk Mistral
Although I thought Open GL handled the rendering order of 3d objects,
Traditional modern 3d hardware (whether used by OpenGL, D3D, or whatever) makes Z-ordering relative to opaque objects quite effortlessly correct to the application.

For transparent objects, the hardware suddenly offers very little help for this and it's generally up to the application. Apps that have to deal with this in real-time can do their own sloppy draw-ordering like SL does. Note that such a solution simply rearranging the draw-order of objects, faces, or even the tesselated triangles can never guarantee correctness for many surprisingly simple-seeming cases; the 'correct' solution for these cases involves face-splitting which is not currently a cheap enough technique to do on a large scale in real-time.