Shapes


Shapes is a real-time vector graphics library with

by Freya Holmér


★★★★★ star rating
Price History +

Shapes is a real-time vector graphics library with high-quality line drawing and infinite resolution shapes, rendered with advanced anti-aliasing techniques

WebsiteDocsChangelogFeedback CenterForum ThreadTwitter

After Shader Forge, I wanted to make something different. It has bothered me for a long time that for some reason, html5 canvas is better at drawing primitives than Unity. I really wanted something to help us make those crisp lines, discs, polylines and, well, Shapes! So, here we are~

If you share your work on Twitter, don't hesitate to tag me or use #madewithshapes
I'd love to see your work! ♥

Features
• High quality line drawing with arbitrary thickness with advanced anti-aliasing
• Thickness units can be specified meters, pixels or noots
2D Shapes such as Polyline, Disc, Arc, Pie, Rectangle, and more
3D Shapes such as Sphere, Torus, Cuboid, Cone, 3D line, and more
• Easy-to-use component-based shapes with tweakable parameters
• Source code included for maximum flexibility
Immediate-mode API for code-based drawing, with scene view gizmo support
• Heavily GPU based. Tweaking parameters is practically free
• GPU instancing support
Built-in (BIRP),URP, & HDRP support
• Single-pass instanced VR rendering support

Limitations
• All shapes are unlit
• No SVG support, Shapes is not designed to be an SVG asset importer/exporter
• No ECS support yet, because it seems to change every week
• No UI support in overlay mode, though you can use camera-based or world-space UI to work around it
• Applying custom shaders is currently difficult unless you know how to code shaders, since every shape has a very specialized shader