Moteur de texte et de documents pour l’UI et la 3D dans Unity. Aucun fichier de police nécessaire. Des performances maximales. Les fonctions intégrées comprennent l’édition enrichie, les polices pixel, Font Memory Mapping et la virtualisation des documents. Styles et comportements se composent à partir de constructeurs réutilisables.
UI et 3D · Emoji natifs · Composition de styles · Rendu LightSide commun

Des studios de jeux nous font confiance
“UniText offre littéralement toutes les fonctionnalités de texte prêtes à l'emploi. Nous avons migré le projet en 2 jours et ajouté 11 langues sans intégrer la moindre police au projet.”
Chiffres publiés par Google Play et l'App Store, septembre 2026.
Arabe, hébreu, écritures indiennes, CJK et directions mixtes. Formes des caractères, retours à la ligne et sélection adaptés à la langue.

Un modèle de texte commun aux libellés, champs de saisie, éditeurs et documents. Les modificateurs, règles d’analyse et comportements de saisie personnalisés utilisent la même méthode de composition.
Les grands fichiers de police sont lus sur disque à la demande, sans copie complète dans la mémoire managée. Les polices inutilisées restent compressées.
Pixels nets, détection automatique de la grille, effets et animations alignés. Les polices pixel vectorielles et bitmap partagent le même système de styles.
Sélection, annulation et rétablissement, IME, presse-papiers enrichi, poignées tactiles, claviers natifs, validation, masques et mots de passe. Comportements de saisie et décorateurs de champs forment des configurations réutilisables.
Listes, ruby, formules, images et prefabs intégrés. Défilement virtualisé des grands documents.
L’animation des caractères et des plages, les effets d’apparition et les timelines de paramètres se combinent aux styles de texte. Les liens, spoilers et cibles personnalisées possèdent leurs propres états d’interaction.
Les modificateurs, règles d’analyse, comportements de saisie et décorateurs personnalisés utilisent le modèle de texte existant. Les extensions se combinent aux fonctions intégrées avec les mêmes outils d’édition.
Tout texte devient des lettres en volume, éclairées, avec profondeur, biseaux et un matériau par surface. Contours 3D, déformateurs, prefabs attachés aux lettres, colliders et export de mesh fonctionnent avec le même balisage et les mêmes animations.
Arabe, hébreu, écritures indiennes, CJK et directions mixtes. Formes des caractères, retours à la ligne et sélection adaptés à la langue.
Graisse, largeur et inclinaison restent modifiables et animables. Un fichier contient toute une gamme de styles.
100 instances UniText + 100 instances TextMeshPro animant Font Size simultanément. Elles sont superposées à la même position, donc les 200 ressemblent à un seul bloc.
Les caches communs évitent les calculs répétés. Les modifications locales actualisent le contenu concerné. Burst et le traitement parallèle prennent en charge les grandes charges.
Familles, drapeaux, teintes de peau et séquences composées issus des polices de l’appareil. Aucun pack de textures séparé.
Fonds, contours, ombres, lueurs, dégradés et textures se combinent en couches modifiables. Préréglages et balisage réutilisent les mêmes styles.

Rendu sans Canvas. Langues, emoji, styles, interactions et animations utilisent le même moteur que le texte UI.

Chinois, japonais et coréen sans fichiers de police intégrés.
Sélection automatique des polices système. Les fichiers personnalisés sont facultatifs sur ordinateur et mobile ; WebGL utilise les polices assignées.
La séparation des mots prend en charge le thaï, le lao, le khmer et le birman, qui s’écrivent sans espaces entre les mots.
UAX #9 · UAX #14 · UAX #24 · UAX #29
Benchmarks réels sur un build Android de production.
* 100 objets, 10 itérations, 3 warmup, ~2300 caractères par objet (latin + arabe + hébreu + mixte). UniText.UseParallel = false.
Ajout des glyphes à l'atlas de texture
La compression des polices garde votre jeu livré minuscule
Décompression sub-milliseconde à l'exécution — les joueurs ne le remarqueront pas.
Les produits LightSide réutilisent des systèmes communs à l’exécution et dans les éditeurs. Chaque produit ajoute ses propres comportements à cette base.
Exemples de systèmes Core : état et propriétés imbriquées, horloges et mouvement, routage du pointeur, géométrie, threads, pools, sérialisation, ressources, transferts GPU et contrôles d’éditeur. Des implémentations communes aux produits.
Les modificateurs UniText et les couches UniShapes partagent sélecteurs, réglages imbriqués, préréglages et éditeurs de propriétés.
Texte et formes utilisent les mêmes systèmes Core pour les couleurs, dégradés, textures et filtres.
Texte, formes et Lottie partagent shaders, matériaux et batching. MoveIt anime les propriétés des composants et des couches.
Texte UI et 3D sur ordinateur, mobile, WebGL, tvOS et visionOS.
Comparaison des fonctionnalités côte à côte
| Fonctionnalité | UniText | TextMesh Pro | UI Toolkit |
|---|---|---|---|
| Scripts & Internationalization | |||
| Bidirectional Text (UAX #9) | Requires plugin1 | Requires ATG2 | |
| Auto Text Direction | |||
| Arabic Script (joining) | Requires plugin1 | Requires ATG2 | |
| Arabic Kashida Justification | |||
| Hebrew Script | Requires plugin1 | Requires ATG2 | |
| Hindi / Devanagari (Indic) | Requires ATG2 | ||
| Complex OpenType Shaping (GSUB/GPOS) | HarfBuzz | Basic | Requires ATG2 |
| Language-Aware Shaping (locl, pan-CJK) | |||
| Thai / Lao Word Segmentation | Requires ATG2 | ||
| Korean Line Breaking | Requires ATG2 | ||
| Unicode Line Breaking (UAX #14) | Basic | Limited2 | |
| Unicode Version | 17.0 | 14.04 | 15.02 |
| Emoji | |||
| Emoji Sequences (ZWJ / skin tone / flags) | Limited3 | ||
| Emoji in RTL Text | Requires ATG2 | ||
| Fonts | |||
| Variable Fonts | |||
| Font Families (Bold / Italic / weight) | Limited | Limited | |
| Real OS Bold / Italic Cuts | Limited | Limited | |
| Small Caps (OpenType smcp) | Basic (faux) | Basic (faux) | |
| Automatic System-Font Fallback | Limited | ||
| Font Compression (build size) | Zstd | ||
| Font Memory Mapping | On-demand file cache10 | Not documented10 | Not documented10 |
| Pixel Fonts | Automatic grid + full styles11 | Raster setup11 | Raster setup11 |
| Automatic Pixel-Grid Detection | |||
| Pixel-Aligned Effects & Animation | Shared style system11 | Custom work | Custom work |
| Per-Glyph Metric Overrides | Limited (not under ATG) | ||
| Rendering | |||
| MSDF Rendering | |||
| GPU Glyph Rasterization | |||
| 3D World-Space Text | Shared world batching8 | MeshRenderer8 | World-space panel |
| Lit / Shaded 3D Text | Limited (shader swap) | ||
| Extruded 3D Text (solid meshes) | UniText 3D6 | ||
| Extrude / Bevel Effect6 | (configurable stack + bevel) | Basic (shader bevel) | |
| Gradients (linear / radial / angular) | Limited (linear) | Limited (vertical) | |
| Per-Range Custom Shaders | |||
| Multi-Core Processing | Limited (6.5+)5 | ||
| Layout | |||
| Justified Text | (script-aware, CSS Text 3) | Limited7 | Limited (inter-word, markup) |
| Line Height Control | Limited (markup only) | ||
| Paragraph Spacing | Limited (broken under ATG) | ||
| Text Indent | Limited (markup only) | ||
| Lists (ordered / nested) | |||
| Ruby / Furigana | |||
| Padding (box-model) | Limited (margin) | Limited (element box) | |
| Text-Box Trim (cap-height) | |||
| Font-Size-Adjust (x-height match) | |||
| Markup & Interaction | |||
| Configurable / Custom Tags | |||
| Markdown Syntax | |||
| Interactive Links / Hashtags | Limited (no events) | (experimental) | |
| Text Selection / Highlighting | Limited (input field) | Limited (TextField) | |
| World-Space Pointer Events | Limited (panel quad) | ||
| Styles & Ecosystem | |||
| Visual Modifier & Layer Constructors | Nested layers + presets | Material controls | USS + UI Builder |
| Shared Paints for Text & Shapes | Colors, gradients, textures, filters | Separate graphics | USS styling |
| Shared Rendering with Shapes & Lottie | Core shaders + batching8 | Separate integrations | Custom integration |
| Nested Property Animation | MoveIt + shared property system | Custom animation | USS transitions / code |
| Virtualized Rich Documents | Document viewport | Custom implementation | List virtualization |
| Support | |||
| Direct Developer Support | Discord9 | (Unity issue tracker / forums) | (Unity issue tracker / forums) |
UniText Folio ajoute la sélection, l'édition, l'IME, le presse-papiers, les comportements de saisie et les décorateurs — avec prise en charge native du BiDi et des clusters de graphèmes.
| Fonctionnalité | UniText | TMP InputField | UI Toolkit TextField |
|---|---|---|---|
| Components & Modes | |||
| Read-Only Selectable Text | Limited (full field chrome) | ||
| Editable Text without Field Chrome | Limited (cosmetic) | Limited | |
| World-Space (3D) Editing | Limited (World-Space Canvas only) | Limited (2D panel) | |
| Backend-Independent Input | Limited (breaks under Input System-only) | ||
| Selection & Caret | |||
| BiDi / RTL Caret & Selection | Requires plugin1 | Requires ATG2 | |
| Grapheme-Cluster Caret (emoji / ZWJ) | Limited (surrogate only) | Limited (codepoint only) | |
| Word / Line / Paragraph Selection | Limited (no triple-click) | ||
| Platform Key Bindings (macOS / Win / Linux) | Basic (Ctrl→Cmd only) | Limited | |
| Vertical Caret Column Memory | |||
| Editing | |||
| Undo / Redo | 3 | ||
| Word / Line Delete (Ctrl+Backspace) | |||
| Rich-Text WYSIWYG Editing | 4 | ||
| Programmatic Edit with Undo Policy | |||
| Input Sanitization (surrogates / paste cap) | Limited | Limited | |
| IME & Composition | |||
| IME Composition (CJK / dead keys) | Limited | ||
| Non-Destructive Composition + Clause Styling | Limited (single underline) | Limited (no clauses) | |
| Clipboard | |||
| Rich Multi-Format Clipboard (HTML / Markdown) | 5 | 5 | |
| Image / Media Paste | |||
| Input Behaviors, Filters & Validation | |||
| Built-in Input Filters (integer / email / …) | Basic (numeric only) | ||
| Live Input Mask (phone / card / date) | |||
| Validation Status & Message | |||
| Composable / Extensible Behavior Pipeline | |||
| Field Decorators | |||
| Floating Label (Material) | |||
| Character Counter | |||
| Supporting / Error Text | |||
| Custom / Extensible Decorators | |||
| Menus & Mobile | |||
| Context Menu (cut / copy / paste) | Limited (Editor-only)6 | ||
| Touch Selection Handles | |||
| Magnifier Loupe | |||
| Soft-Keyboard Configuration | Limited | Limited | |
| Keyboard Avoidance | |||
| Focus & Accessibility | |||
| Focus Guard (external toolbar) | Limited | ||
| Accessibility Semantics & Adapter Hooks | Limited (manual) | ||
| Pluggable / Non-Blinking Caret | Limited | Basic | |
| Extensibility | |||
| Skinnable Selection Highlight | Limited | Basic | |
| Rich Pointer-Event Model | Basic | Limited | |
Moteur de texte et de documents pour l’UI et la 3D dans Unity. Aucun fichier de police nécessaire. Des performances maximales. Les fonctions intégrées comprennent l’édition enrichie, les polices pixel, Font Memory Mapping et la virtualisation des documents. Styles et comportements se composent à partir de constructeurs réutilisables.