Transluceny issue

Hi there.

I have an issue regarding a translucent material applied to a curved plane:

http://abload.de/thumb/correct_obrg6.jpg http://abload.de/thumb/wrong_m9rcv.jpg

As you can see, looking from one side gives the proper translucency, but looking from the other side makes the entire plane translucent. I have no clue what the issue is here, tried all the switches within the shader already.

Here is an additional screen with the tangents etc.:

http://abload.de/thumb/model_r9j42.jpg

This is a fundamental problem with translucency on today’s GPU’s. The shaded result depends on the order that the triangles are rendered in, and it’s only practical to sort translucency per-object, not per-triangle. This is why features like Order Independent Transparency are such a big deal but are currently not fast enough for use in games.

If you want that to sort correctly you will have to break it up into multiple components, as sorting is done based on the center of the bounds of each component.

Thats odd. Quick research on OIT gives me a lot of solutions and possibilities (A-Buffer, AMD apparently put that specific feature even in one of their tech demos back in 2010 oder 2009 even)… kind of confuses me that there is no other solution as to break up the model?!

Thanks though!

There are several OIT methods, however they are not suitable for realtime use in games. It’s much easier to show a technique in an isolated tech demo where you can use up 100% of the GPU time on a small part of the scene like transparency. In a real engine, transparency is just 10-20% of the frame, so super slow methods like Linked List OIT are not viable.