Why not use integer coverage buffer instead of float? Is that not more commonly supported (e.g. on mobile)? E.g. R32UI seems like it's required in OpenGL ES 3.0 but R32F isn't.
-
-
-
Actually I guess it doesn’t, because I could do two passes, one for + and one for -, changing the blend equation in between.
2 replies 0 retweets 0 likes -
Assuming I clear to a neutral value, like 0x80000000 or whatever. I use R16F, by the way, not R32F. In practice this makes a big difference as R16F is supported on PowerVR while R32F isn’t. Really, though, this is minor as R16F is supported practically everywhere GL3 is.
2 replies 0 retweets 0 likes -
Replying to @pcwalton @nicalsilva
I guess a 16 bit integer would give you a larger range over 16F, allowing it to work with more edges per tile.
1 reply 0 retweets 0 likes -
or at least work without degrading the edge quality.. but perhaps that's actually what you want here.. for lots of edges, the range increases, but edges start looking quantized.
1 reply 0 retweets 0 likes -
Replying to @ssylvan @nicalsilva
R16I is an interesting idea. It would limit to winding number of 256 but NV_path_rendering shows that probably isn’t an issue in practice.
1 reply 0 retweets 0 likes -
Or, I guess, actually +/-127.
1 reply 0 retweets 0 likes -
I actually had a horrible idea about using RGBA8Unorm in this way: R=whole number + G=fraction + B=whole number - A=fraction - This would mean you can’t properly carry but maybe it doesn’t matter in practice? Seems sketchy though.
1 reply 0 retweets 1 like -
Replying to @pcwalton @nicalsilva
Yeah I think you'd need to do a "resolve" type thing where you take N 8bpp coverages and merge them in a FS and write out to 16bpp (two 8bpp channels). Maybe in most cases you only have a small number of edges per tile and you can merge all of them in one pass.
1 reply 0 retweets 0 likes
Hahah, I forgot that in standard GLES2 you can’t even render to RGBA8Unorm (only RGB 565)! Forget ever targeting plain GLES2.
-
-
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
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.