# UniText 2.0 : Améliorations clés en rendu et gestion des polices pour Unity
UniText 2.0 est une refonte complète du moteur de texte pour Unity. Le journal des modifications couvre presque tous les composants, en conservant les forces de la version 1.0 tout en ajoutant de nouvelles fonctionnalités. L'accent a été mis sur la simplification du travail avec les styles, les polices et les normes Unicode modernes. La version open-source 1.0 reste disponible, tandis que la 2.0 est commerciale via le site officiel ou l'Asset Store.
La version 2.0 cible les développeurs intermédiaires/seniors, offrant des outils pour optimiser les builds et le rendu sans compromettre les performances. Le support de Burst apporte un gain sur les plateformes natives, bien qu'il soit limité par les capacités actuelles de Unity 6.4 sur WebGL.
Technologies de rendu et de mise en forme
Le moteur utilise HarfBuzz pour la mise en forme du texte — un outil standard pour les scripts complexes. Le rendu est implémenté via SDF et MSDF, assurant une netteté à diverses échelles sans artefacts. L'intégration avec Burst compile les chemins critiques en code natif, minimisant la surcharge.
Prise en charge complète des langues RTL (arabe, hébreu) et du texte BiDi conforme aux spécifications Unicode, avec un taux de réussite des tests de 100 %. Cela élimine le besoin de solutions personnalisées pour les contenus mixtes LTR/RTL.
Un atlas de polices dynamique unique remplace les multiples atlas de TMP. La compression automatique réduit la taille des polices dans les builds de 2 à 3 fois. Les outils permettent de sous-ensembliser les glyphes, en excluant les caractères inutilisés.
Prise en charge avancée des polices et de l'analyse
La prise en charge des Font Family et des Variable Fonts a été ajoutée. Les Variable Fonts permettent une variation dynamique du poids, de la largeur et d'autres paramètres sans fichiers multiples, résolvant les problèmes avec les assets des designers.
L'analyse prend en charge Markdown, BBCode ou des analyseurs personnalisés. Les emojis incluent les séquences ZWJ, les modificateurs de tons de peau et les emojis système natifs — sans les intégrer dans le build.
Le système de modificateurs visuels évite les dépendances aux matériaux, permettant le batching avec différents effets. Il s'étend via des modules personnalisés, des presets et des tags pour les styles de fragments. L'Inspector est simplifié pour une configuration rapide.
Fonctionnalités clés en liste :
- HarfBuzz + SDF/MSDF + Burst pour le rendu.
- RTL/BiDi avec conformité complète à Unicode.
- Atlas dynamique avec compression 2-3x.
- Font Family, Variable Fonts, emojis (ZWJ, tons de peau, système).
- Modificateurs sans matériaux, presets et tags personnalisés.
- Analyse Markdown/BBCode.
Texte dans l'espace 3D et performances
Nouvelle fonctionnalité : texte en World Space en dehors de Canvas avec batching automatique. Idéal pour l'AR/VR et l'UI 3D, où Canvas limite la flexibilité.
Les benchmarks confirment les gains de performance, surtout dans les scénarios avec de grands volumes de texte. Sur Desktop et WebGL (Unity 6.3+), les builds tournent sans heurts, bien que WebGL n'exploite pas pleinement Burst.
Les tests révèlent des bugs mineurs, mais les critiques sont corrigés rapidement. L'utilisation en production nécessite une validation supplémentaire dans des boucles réelles.
Ce qui compte
- Le passage à un atlas unique et à la compression réduit drastiquement la taille des builds.
- La prise en charge complète BiDi/RTL sans réinventer la roue simplifie la localisation.
- Les modificateurs et tags permettent un stylage granulaire du texte sans perte de batching.
- Les Variable Fonts et emojis système minimisent les assets.
- Le texte World Space étend l'utilisation au-delà de l'UI Canvas.
Le moteur se positionne comme une alternative à TMP pour les projets à forte demande textuelle. Les perspectives dépendent de l'évolution de UI Toolkit, mais la pile actuelle semble solide pour la production.
— Editorial Team
Aucun commentaire pour le moment.