Toutes les langues.
Tous les styles.

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

Bande démo
Toutes
Langues prises en charge
100%
Conformité Unicode
UI + 3D
Rendu de texte
✓
Prise en charge des emoji

Des studios de jeux nous font confiance

En production

Créé avec UniText

Ryah's Rhythm: Relaxing Games
Matchala Games
1M+
téléchargements
4.7 ★
Google Play
48.2K avis
4.9 ★
App Store
1.1K avis

“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.”

Matchala Games

Chiffres publiés par Google Play et l'App Store, septembre 2026.

Toutes les langues

Toutes les langues.

Arabe, hébreu, écritures indiennes, CJK et directions mixtes. Formes des caractères, retours à la ligne et sélection adaptés à la langue.

Arabe, hébreu, écritures indiennes, CJK et directions mixtes. Formes des caractères, retours à la ligne et sélection adaptés à la langue.
العربيةArabic
हिन्दीHindi
বাংলাBengali
עבריתHebrew
ไทยThai
தமிழ்Tamil
Fonctionnalités

Fonctionnalités UniText

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.

Font Memory Mapping

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.

De vraies polices pixel

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.

Édition et saisie

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.

Documents enrichis

Listes, ruby, formules, images et prefabs intégrés. Défilement virtualisé des grands documents.

Animation et interaction

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.

Extensions et composition

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.

Texte 3D extrudé

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.

Toutes les langues

Arabe, hébreu, écritures indiennes, CJK et directions mixtes. Formes des caractères, retours à la ligne et sélection adaptés à la langue.

Polices variables

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.

Des performances maximales

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.

Emoji natifs

Familles, drapeaux, teintes de peau et séquences composées issus des polices de l’appareil. Aucun pack de textures séparé.

Un constructeur pour chaque style

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.

Texte en 3D

Texte en 3D

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

Aucun fichier de police nécessaire

Chinois, japonais et coréen sans fichiers de police intégrés.

Aucun fichier de police nécessaire

Sélection automatique des polices système. Les fichiers personnalisés sont facultatifs sur ordinateur et mobile ; WebGL utilise les polices assignées.

Des coupures adaptées à la langue

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.

Conformité

Conformité Unicode

UAX #9 · UAX #14 · UAX #24 · UAX #29

UAX #9
BiDi Algorithm
861,948
100% PASS
UAX #14
Line Breaking
19,338
100% PASS
UAX #24
Script Detection
9,705
100% PASS
UAX #29
Grapheme Clusters
766
100% PASS
Unicode 17.0.0
Unicode 17.0
Performance

Comparaison des benchmarks

Benchmarks réels sur un build Android de production.

Comparaison de vitesse

Création d'objets
UniText
166ms×4.9 plus rapide
TMP
572ms
UI Toolkit
809ms
Reconstruction complète
UniText
136ms×5.4 plus rapide
TMP
398ms
UI Toolkit
731ms
Mise en page
UniText
71ms×20.7 plus rapide
TMP
1468ms
UI Toolkit
241ms
Reconstruction du mesh
UniText
60ms×7.1 plus rapide
TMP
424ms
UI Toolkit
143ms

Mémoire & GC

Cycles GC (création)
3
UniText
147
TMP
0
UI Toolkit
Allocation mémoire (création)
292 MB
UniText
2249 MB
TMP
×8 de plus
400 MB
UI Toolkit
×1.4 de plus
Allocations à l'exécution (par opération)
90 KB
UniText
13.8 MB
TMP
×153 de plus
39.6 MB
UI Toolkit
×440 de plus

* 100 objets, 10 itérations, 3 warmup, ~2300 caractères par objet (latin + arabe + hébreu + mixte). UniText.UseParallel = false.

Rendu des glyphes

Ajout des glyphes à l'atlas de texture

UniText FreeType
4.7–15.2×
plus rapide
Unity FontEngine

Builds et bundles plus légers

La compression des polices garde votre jeu livré minuscule

12 MB
Police originale
→
4.4 MB
Dans votre build

Décompression sub-milliseconde à l'exécution — les joueurs ne le remarqueront pas.

LightSide

Des systèmes communs à tout LightSide

Les produits LightSide réutilisent des systèmes communs à l’exécution et dans les éditeurs. Chaque produit ajoute ses propres comportements à cette base.

LightSide Core

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.

Une même logique de composition

Les modificateurs UniText et les couches UniShapes partagent sélecteurs, réglages imbriqués, préréglages et éditeurs de propriétés.

Couleurs et dégradés communs

Texte et formes utilisent les mêmes systèmes Core pour les couleurs, dégradés, textures et filtres.

Ensemble dans un seul Draw Call

Texte, formes et Lottie partagent shaders, matériaux et batching. MoveIt anime les propriétés des composants et des couches.

Multiplateforme

Toutes les plateformes prises en charge

Texte UI et 3D sur ordinateur, mobile, WebGL, tvOS et visionOS.

Windows
x64ARM64
UWP
x64ARM64
macOS
x64Apple Silicon
Linux
x64ARM64
Android
ARMv7ARM64x86x64
iOS
ARM64
tvOS
ARM64
visionOS
ARM64
WebGL
2.0
Unity 2022.3 LTS+
Comparaison

UniText vs TMP vs UI Toolkit

Comparaison des fonctionnalités côte à côte

FonctionnalitéUniTextTextMesh ProUI 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)
  1. 1.TMP requires an external implementation for Unicode bidirectional processing and complex-script shaping. A right-to-left flag alone does not provide those algorithms.
  2. 2.UI Toolkit complex scripts use Advanced Text Generator. Unity 6.4 requires it to be enabled; behavior depends on the Unity version and generator selected.
  3. 3.Emoji sequence support depends on the text engine and the selected emoji font. TMP sprite substitution does not provide general Unicode sequence shaping.
  4. 4.TMP emoji data and runtime character-property tables are separate; its displayed version is not a claim of complete Unicode conformance.
  5. 5.UI Toolkit text-generation parallelization is available in Unity 6.5.
  6. 6.UniText 3D extrudes glyphs into closed, lit solids with bevels that cast shadows. The extrude effect of Canvas and world text is a layered visual effect with offset quads and bevel shading.
  7. 7.TMP justification distributes spacing using its word/character ratio. UniText also supports script-aware distribution and configurable final-line alignment.
  8. 8.Core batches compatible text, shapes and Lottie. Materials, textures, masks, sorting and geometry capacity can split draw calls. TMP world text uses MeshRenderer and remains subject to Unity renderer batching rules.
  9. 9.Discord is the main LightSide channel for questions, help and discussion. Bug reports and feature requests go to the public issue tracker.
  10. 10.UniText maps file-backed fonts and player font payloads without retaining a full managed copy. WebGL and embedded Editor assets use in-memory data. TMP and TextCore documentation do not specify an equivalent package-managed mapped-payload cache; their internal native storage is not classified here.
  11. 11.UniText detects or accepts a native pixel grid, samples one texel per font pixel and snaps effects and animation to that grid. Integer font-size multiples are pixel-exact. TMP and TextCore document raster font modes that require font-asset configuration; they are not marked as lacking pixel-font rendering.
UniText Folio

Texte interactif et éditable

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éUniTextTMP InputFieldUI 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
  1. 1.TMP editing requires an external implementation for Unicode bidirectional processing and complex-script shaping.
  2. 2.UI Toolkit RTL/complex-script editing requires the Advanced Text Generator (opt-in in Unity 6.4, default from 6.5).
  3. 3.UI Toolkit’s runtime TextField has no undo/redo (the handler’s UndoRedoPerformed is an unimplemented TODO); editor IMGUI fields are a separate path.
  4. 4.TMP’s "Allow Rich Text Editing" edits the raw markup string (tags preserved) — there is no command to toggle bold/italic/color over a selection.
  5. 5.Both TMP and UI Toolkit copy/paste plain text only via Unity’s systemCopyBuffer — no HTML/Markdown/RTF or images.
  6. 6.UI Toolkit’s cut/copy/paste context menu is wired only in the Editor (EditorContextualMenuManager); a built player has no built-in text context menu.

UniText

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.

Assistance et discussions: [email protected]