That feeling when you eliminate hundreds of lines of code by expressing your graphics algorithm in terms of backface culling, offloading the work to hardware
-
-
-
Replying to @eddyb_r
Yeah. I realized a bunch of the complexity in Loop Blinn 2005 can be eliminated by using triangle winding order (should write this up!), and then found several other places it could apply in Pathfinder 2.
2 replies 0 retweets 7 likes -
Specifically, Loop-Blinn in the paper has this annoying thing where you have to encode whether a curve is concave or convex explicitly, but this is unnecessary: if your triangles go "endpoint0, control point, endpoint1" then winding order determines convexity.
1 reply 0 retweets 4 likes -
So, two passes: concave and convex?
1 reply 0 retweets 0 likes -
Replying to @Vector_GL @eddyb_r
Just one pass. Use gl_FrontFacing in the fragment shader :)
2 replies 0 retweets 0 likes -
Useful flag ;-) Do you dilate the triangles to achieve conservative rasterization?
1 reply 0 retweets 0 likes -
-
Are you using Delaunay triangulation? The miters on dilated skinny triangles can get very long.
1 reply 0 retweets 0 likes
No, it’s trapezoidation. I have a trick to avoid that problem that’s too involved to explain here :)
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.