Mold is a real-time vector graphics library focusing on customizability and performance.
Discord | Twitter | Bluesky | Email | Official Thread
When I started making games years ago I really just wanted to make games with simple 2D/3D geometry without opening image editing or modeling software. Mold is the solution I've made to make my game, and maybe you'd like it as well :)
Note that Mold has native uGUI support with dedicated components. Check the UI showcase sample scene in package for example.
Features
- Abundance of 2D/3D geometry primitives. If it's not in here, just tell me the name I'll add it in!
- Capable of creating rounded 3D geometry, and can cheaply create different dimensions of primitives by vertex shader deformation.
- A monolithic MoldPrimitive that can draw any shape you wanted, and will be batched into the efficient renderer in runtime.
- Polygon with arbitrary vertices color interpolation, using MoldPolygon, with GPU backend available for cheap animating.
- MoldPolyline and MoldCurve, with GPU backend available for cheap animating and dashed visual support.
- A nice code centric API to create geometry so you don't need to leave your IDE to make asset, and no GameObject overhead is needed so it can run blazingly fast.
- Utilizes low level RenderMeshPrimitives for efficient rendering.
- Abundance of color blending mode for all 2D/3D geometry primitives, and supports Oklab colorspace blending.
- Optional order-independent transparency for overlapping transparent shapes, with multiple backends available.
- Automatic LOD dithering cross fade available for 3D primitives, also with CPU/GPU backend to choose from.
- Designed around retained mode, but immediate mode API is also available with editor preview support.
- Performant by default with Burst, optional Job support, GPU culling, and a lot of knobs to twist to suit your need.
- Custom shaders (with example shader), depth and stencil controls, and plenty of performance settings to suit your project.
- Built-in procedural paint/pencil stroke visuals.
- Dedicated uGUI implementation for 2D primitives.
- Full C# source available.
- Built-in shader stripping helper if you need to strip out unused shaders.