Scope
TÖVE is a simplified vector graphics library for games aimed at realtime scaling and animation.
Even though TÖVE knows some tricks and even supports dithering, do not expect it to have the feature set or the rendering quality comparable of a full fledged print quality library such as Cairo or Skia.
Renderers
Here's what you can expect from TÖVE's different renderers:
texture | mesh1 | mesh2 | gpux | |
---|---|---|---|---|
Holes Support | ● | ● | ●4 | ● |
Non-Zero Fill Rule | ● | ● | ○ | ● |
Even-Odd Fill Rule | ● | ● | ○ | ● |
Clip Paths | ● | ● | ○ | ○ |
Solid Colors | ● | ● | ● | ● |
Linear Gradients | ● | ● | ● | ● |
Radial Gradients | ● | ● | ● | ● |
Thick Lines | ● | ● | ● | ● |
Non-Opaque Lines | ● | ● | ○ | ● |
Miter Joins | ● | ● | ● | ● |
Bevel Joins | ● | ● | ● | ● |
Round Joins | ● | ● | ○ | ●3 |
Line Dashes | ● | ● | ○ | ○ |
Line Caps | ● | ● | ○ | ○ |
Also note the number of OpenGL drawing calls/context switches:
texture | mesh | gpux |
---|---|---|
1 per Graphics |
1 per Graphics |
>= 1 per Path |
-
if used as static mesh, i.e. building it once and not animating its shape. ↩
-
if used as animated mesh, i.e. when calling
setUsage
on "points" with "dynamic" or "stream". ↩ -
for some shapes, by using the
fragment
option for line rendering. ↩ -
for some shapes, hole polygons must not intersect non-hole polygons. ↩