# UniText 2.0: klíčové vylepšení v renderingu a zpracování písem pro Unity
UniText 2.0 představuje kompletní přepracování enginu pro práci s textem v Unity. Changelog pokrývá prakticky všechny komponenty, zachovává výhody verze 1.0 a přidává nové funkce. Zaměření se posunulo na zjednodušení práce se styly, písmy a moderními standardy Unicode. Open-source verze 1.0 zůstává dostupná, zatímco 2.0 je komerční přes oficiální web nebo Asset Store.
Verze 2.0 je zaměřena na středně pokročilé a senior developery, nabízí nástroje pro optimalizaci buildů a renderingu bez kompromisů v výkonu. Podpora Burst zajišťuje zrychlení na nativních platformách, i když na WebGL je omezena současnými možnostmi Unity 6.4.
Technologie renderingu a shapingu
Engin využívá HarfBuzz pro shaping textu – standardní nástroj pro složité skripty. Rendering je realizován přes SDF a MSDF, což zajišťuje ostrost v různých měřítkách bez artefaktů. Integrace s Burst kompiluje kritické cesty do nativního kódu a minimalizuje overhead.
Plná podpora RTL jazyků (arabština, hebrejština) a BiDi textu odpovídá specifikacím Unicode včetně 100% úspěšnosti testů. To eliminuje potřebu vlastních řešení pro smíšený LTR/RTL obsah.
Jednotný dynamický atlas písem nahrazuje vícenásobné atlasy z TMP. Automatická komprese snižuje objem písem v buildu 2–3krát. Nástroje umožňují vybírat podmnožiny glyfů a vylučovat nepotřebné znaky.
Rozšířená podpora písem a parsingu
Zavedena podpora Font Family a Variable Fonts. Variable Fonts umožňují dynamicky měnit tloušťku, šířku a další parametry bez více souborů, což řeší problémy s artefakty od designerů.
Parsing podporuje Markdown, BBCode nebo vlastní parsery. Emodži zahrnují ZWJ kombinace, modyfikátory tónu pleti a nativní systémové emodži – bez vestavování do buildu.
Systém vizuálních modifikátorů eliminuje závislost na materiálech a zajišťuje batching s různými efekty. Lze ho rozšiřovat vlastními moduly, presetami a tagy pro fragmentové styly. Inspector je zjednodušen pro rychlé nastavení.
Klíčové funkce na seznamu:
- HarfBuzz + SDF/MSDF + Burst pro rendering.
- RTL/BiDi s plnou Unicode kompatibilitou.
- Dynamický atlas s kompresí x2-3.
- Font Family, Variable Fonts, emodži (ZWJ, skin tone, systémové).
- Modifikátory bez materiálů, vlastní presety a tagy.
- Markdown/BBCode parsing.
Text v 3D prostoru a výkon
Nová funkce – text pro World Space mimo Canvas s automatickým batchingem. To je relevantní pro AR/VR a 3D UI, kde Canvas omezuje flexibilitu.
Benchmarky potvrzují nárůst výkonu, zejména ve scénářích s velkým objemem textu. Na Desktopu a WebGL (Unity 6.3+) build probíhá bez problémů, i když WebGL plně nevyužívá Burst.
Testování odhaluje drobné chyby, ale kritické jsou opravovány rychle. Pro produkci je nutná další validace v reálných smyčkách.
Co je důležité
- Přechod na jednotný atlas a kompresi radikálně snižuje velikost buildu.
- Plná BiDi/RTL podpora bez vlastních řešení zjednodušuje lokalizaci.
- Modifikátory a tagy umožňují granulární stylizaci textu bez ztráty batchingu.
- Variable Fonts a systémové emodži minimalizují assety.
- World Space text rozšiřuje použití za hranice UI Canvas.
Engin se positionuje jako alternativa k TMP pro projekty s vysokými požadavky na text. Perspektivy závisí na vývoji UI Toolkit, ale současný stack vypadá solidně pro Prod.
— Editorial Team
Zatím žádné komentáře.