[Closed] Translucent vs. Translucent clipping
a couple of weeks ago I posted a thread from my UE3 UDN account at work, on the topic of clipping of translucent objects vs. other translucent objects. sadly the response was "UE3 handles depth sorting on a per-object basis" which pretty much meant "can't fix it". the problem mainly affects the case of translucent objects moving inside a (translucent) plane that represents water. pretty simple and quite a common case to have in a game, so we (team of mostly programmers) were kinda disappointed due to the fact that such a modern and widely used engine didn't handle such a basic and important functionality better
today I tried to reproduce the issue on our lovely Rocket and to my surprise, a top-notch next-gen engine like UE4 still handles depth sorting of translucent objects the old way: the object that's closer to the camera gets rendered first as a whole. so if you have two translucent objects clipping into eachother and move the camera around them you see a hard switch in their rendering.
could this be improved?
The question has been closed Oct 15 '14 at 08:09 PM by Tim Hobson for the following reason:
Archived Post generating comments/questions
Order independent solution of translucency is a problem that has not yet been solved in an efficient way. There are a few potential solutions that either use randomness and introduce noise (stochastic translucency) or cost a lot of performance (per-pixel linked lists).
Early on in UE4's development we prototyped out some solutions. A variation on per-pixel linked lists was the best solution we had at the time and it cost about 6x more than per-object sorted translucency. So if enabled you'd have to reduce the number of pixels affected by translucency by a factor of 6 to fit in to the same budget. We decided the overhead was simply not worth it. We'd rather have a lot of FX and overdraw.
In addition to the performance concerns, UE4 is an engine meant to scale down to lower end PC and integrated graphics. Order independent translucency could only be supported on DX11 class hardware and even then only on platforms where you can afford the 6x penalty.
answered Mar 11 '14 at 05:11 AM
ue4-archive ♦♦ STAFF
Hi! I have a question on kind of the same topic.
I'm developing a strategy game with the camera set to top down with the possibility to tilt it a little each way. When using a translucent material for grass it looks great, however where i have overlapping grass-meshes they pop in and out depending on the camera position, I guess the engine computes which mesh is nearest to the center of the camera and displays it in that order. I've messed around with settings to try to see if anything affect this problem, and the only thing I found was to set the field of view to 5 which did lower the popping significantly, however that makes the game perceived as more or less 2d. It doesn't really matter which grass mesh is seen as long as the engine sticks to displaying the same all the time.
My question: Is it possible to make the depth test of the grass meshes to a second camera which is orthographic, while still seeing through the normal camera as a work around of this issue for my game?
answered Oct 14 '14 at 12:11 PM
Follow this question
Once you sign in you will be able to subscribe for any updates here