docs.rs failed to build contrast_renderer-0.1.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
contrast_renderer-0.1.3
Contrast Renderer
Contrast is a web-gpu based 2D renderer written in Rust. It renders planar vector graphics and can easily be integrated with other forward-rendering code. Filling uses implicit curves and is resolution-independent, while stroking uses parametric curves and is approximated via polygon tesselation. This way you can have logos, icons, text and other GUI elements
- as classic 2D menu overlay on top of the 3D scene.
- as HUD fixed relative to the camera movement but in the 3D scene.
- on abitrary planes in the 3D scene: Decals on any flat surface such as a wall or simply mid air.
To get started, checkout the showcase example.
Feature Roadmap
✓ Supported and implemented
◯ Rudimentary support
✗ Planned support, not implemented
- Rendering
- Anti Aliasing ◯
- MSAA ✓
- Custom (User Provided) Shaders ✓
- Blending ✓
- Instanced ✗
- Anti Aliasing ◯
- Filling
- Paths
- Polygons ✓
- Bezier Curves
- Integral (Normal)
- Quadratic ✓
- Cubic ✓
- Rational (Weighted)
- Quadratic ✓
- Cubic ✓
- Integral (Normal)
- Winding Fill Rules ✓
- Nestable Clipping ✓
- Paths
- Stroking
- Paths
- Polygons ✓
- Bezier Curves
- Approximation
- Uniformly Spaced Parameters ✓
- Uniform Tangent Angle ✓
- Uniform Arc Length ✗
- Integral (Normal)
- Quadratic ✓
- Cubic ✓
- Rational (Weighted)
- Quadratic ✓
- Cubic ✓
- Approximation
- Stroke Width ✓
- Stroke Offset ◯
- Closed / Open ✓
- Line Joins
- (Clipped) Miter ✓
- Bevel ✓
- Round ✓
- Line Caps (Square, Round, Out, In, Right, Left, Butt) ✓
- Dashing
- Phase Translation ✓
- Repeating Gap Intervals ✓
- Dynamically Adjustable (for Animations) ✓
- Paths
- Path Constructors
- Polygon ✓
- Bezier Curves
- Integral (Normal)
- Quadratic ✓
- Cubic ✓
- Rational (Weighted)
- Quadratic ✓
- Cubic ✓
- Integral (Normal)
- Arc ✓
- Rect ✓
- Rounded Rect ✓
- Ellipse ✓
- Circle ✓
- [Optional] Font (TTF)
- Glyph ✓
- Text ◯
Dependencies
Dev-Dependencies
- GLSL to SPIRV compiler: shaderc
Dependencies of the Library
- Graphics API: wgpu
- Geometric Algebra: geometric_algebra
- [Optional] Font Loader: ttf-parser