TEXDraw is an extension asset designed primarily for creating mathematical expression inside Unity. TEXDraw render expressions using mesh and dynamic fonts, so it can be changed dynamically in gameplay. It uses LaTeX as the standard syntax to define symbols or specific styles.
This asset contains 16 fonts + one packed sprite, all cumulates into +900 math symbols ready to be used in any kind of project, ranging from greek letters until geometrical symbols. These fonts and symbol packs are lightweight, yet optional, and can be removed later in the build if necessary.
TEXDraw can be displayed in Unity UI rendering or 3D mesh by simply attaching TEXDraw component in scene. It also has built-in integrations with TextMeshPro SDF Rendering. Besides that, the asset source is fully open without embedding any compiled libraries into your project.
TEXDraw syntax is rich of features. With custom LaTeX interpreter, it can draw various math scripts, integrals, roots, fraction, matrix, table, etc., plus many glyph features including custom fonts, size, color, styles, alignments, word wrap, kerning, paragraph spacing, line spacing, lean indent, body margin, and much more.
TEXDraw is not just about displaying LaTeX. There's also additional components like TEXLink for clickable sections of text and TEXInput for WYSIWYG runtime editor. Current TEXDraw version aims to be mostly-compatible with other TeX softwares like MathJax or TexStudio so if you have use them before, you can get familiar with TEXDraw syntax very quickly.
TEXDraw is mobile-friendly. It does not require any custom shaders. It also does nothing when nothing is changed. In performance side; it is light and has its own pooling system to generate (nearly) zero GC allocation each time the text regenerate. TEXDraw has its own performance benchmark scene, and shows that it is only up to 40% slower than standard UI Text.
Besides it great functionality in the game, it also offers a fully customized and functional editor, from project-wide preference, editor highlights, font manager, material managements, benchmark tool, menu items, and many one. One of the best part of using this asset is how it imports a new font, by just inserting any font or sprite, then let the package do the rest of importing process.
More features are described in documentations that linked above. If you're encountering problems, have a look to common troubleshooting section in manual. Bugs and feature requests can be informed and requested using forum or email. If you have purchased this asset you can request for Git Access to get bleeding (in development) version of this asset.
Disclosure: This post may contain affiliate links, which means we may receive a commission
if you click a link and purchase something that we have recommended
While clicking these links won’t cost you any money, they will help me fund my development projects while recommending great assets!