Meshtext
Meshtext is a font triangulation tool for 3D scenes.
0.1
of this crate focuses on correctness and less on speed.
The idea is to have a feature complete Proof-of-Concept first and then start optimizing.
Features
- Generates indexed or non-indexed meshes
- Automatically caches glyphs (also supports preloading)
- Flat 2D text (in 3D space) or 3D text
- Supports custom transformation of text sections
Limitations
- Linebreaks and wrapping must be handled manually
- Does not support bevels, because there is only one depth segment
- There is no support for subscripts and superscripts
TODO
- Add a 2D mesh generator where each vertex is composed of two coordinates
- Implement an optimizer that removes redundant vertices and triangles
- Add proper benchmarks
- Optimize for speed
- Evaluate
no-std
support
Attribution
- Depends heavily on
cdt
for triangulation. - Uses
ttf-parser
for font loading. - Uses
glam
for performing basic linear algebra.
License
All code in this repository is dual-licensed under either:
- MIT License (LICENSE-MIT or http://opensource.org/licenses/MIT)
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.