I spent a lot of time researching order independent transparency stuff for Pathfinder and WebRender. There’s a lot of interesting research in that area…
-
-
For example, building up per-pixel linked lists and sorting them into Z-order apparently works reasonably well on many GPUs, which is really surprising to me.
2 replies 1 retweet 5 likes -
Replying to @pcwalton @tabatkins
I found some interesting proof of concept examples for the various OIT methods (e.g. depth peeling, weighted blending). This repo, for example: https://github.com/candycat1992/OIT_Lab … Dithered alphas also sound promising (and relatively VR friendly, I understand). =
1 reply 0 retweets 4 likes -
Dithered/stippled alpha is very common in deferred renderers these days. Unreal does that, for example, as does whatever renderer Nintendo used for Mario Odyssey. Unreal does a level of postprocessing to try to hide the stippling although that leads to some interesting artifacts.
1 reply 0 retweets 1 like -
I love the idea, and dig the aesthetic in games. I found a few promising shaders, e.g.: https://gist.github.com/clydeshaffer/e538c19175afa4419bfbbb9bbe1b7fd3 … My only hesitation is the look. I'm doing mockups of interfaces, and need traditional transparency aesthetic. Most dithering examples I've seen are too obviously grainy
1 reply 0 retweets 1 like -
For interfaces can you just depth sort beforehand? I guess I don’t know what kind of interfaces you’re thinking of :) There may be some smarter OIT thing you can do if you can “mostly” depth sort beforehand and fix up later.
1 reply 0 retweets 1 like -
Manual pre-defining depths per element won't scale, unfortunately. I'm a little obsessed with making the layout system as data driven as possible, so in theory I can, for example, spawn 20 windows from a JSON config file, with animations, alphas, etc, and have it all just work
1 reply 0 retweets 0 likes -
Replying to @joshcarpenter @pcwalton and
If nothing else
@pcwalton this has given me renewed appreciation for browser layout engines and the magic of CSS animation and transparency1 reply 0 retweets 3 likes -
FYI browsers do this by depth sorting on CPU, splitting polygons if necessary. I can point you to the WebRender code if you’re interested (it’s probably the cleanest implementation, though it’s still nasty)
2 replies 0 retweets 3 likes -
That's good of you. I doubt I'd be able to make sense of it though, heh. For now I'm going to start with something crude, aping traditional design apps by setting render order according to hierarchy position. So higher in hierarchy = higher in transparency stack.
1 reply 0 retweets 1 like
Cool, would be interested to see what you come up with :)
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.