context: I'm building a game engine in Zig called Mach engine; this video goes over my plans for tackling vector graphics in the engine (for text rendering, GUI, 2D characters, etc.)
Modern vector graphics are surprisingly complex, so while none of the ideas here are necessarily groundbreaking, the approach I'm taking here of a simpler ground-up 'what does my GPU know how to do? -> build on top of that' is fairly interesting I believe.
This was also the first full-length talk I've ever given, so go easy on me :) Happy to answer questions.
Slides are here[0] in case you prefer to just flip through them.
A very interesting concept. I really like the idea of a "triangles as control" for GPU rendered curves. I think having multiple primitives is less pure but very practical. Too bad you don't get the continuous curve for free like you do in a Bezier curve, but it seems like something good tooling could really help with.
One thing that came to mind: It's pretty easy to encode or include addition points within the vertices of a triangle. So as long as the constraint that the whole section of the curve is contained within the triangle, it might be worth thinking about adding additional control points related to the triangle-control/Gkurve-primitive
2 comments
[ 4.3 ms ] story [ 17.7 ms ] threadModern vector graphics are surprisingly complex, so while none of the ideas here are necessarily groundbreaking, the approach I'm taking here of a simpler ground-up 'what does my GPU know how to do? -> build on top of that' is fairly interesting I believe.
This was also the first full-length talk I've ever given, so go easy on me :) Happy to answer questions.
Slides are here[0] in case you prefer to just flip through them.
[0] https://docs.google.com/presentation/d/1IY-05VHPuUfS3e22D-Bo...
One thing that came to mind: It's pretty easy to encode or include addition points within the vertices of a triangle. So as long as the constraint that the whole section of the curve is contained within the triangle, it might be worth thinking about adding additional control points related to the triangle-control/Gkurve-primitive