O Primeiro & Único
Motor de Texto para Unity

Todos os idiomas. Todos os emoji. Todos os estilos. Nível produção, extensível, alta performance, construído sobre padrões da indústria.

Unicode 17.0 · HarfBuzz · SDF/MSDF · Variable Fonts · Zero GC

150+
Idiomas suportados
100%
Conformidade Unicode
UI + 3D
Renderização de texto
Suporte a emoji
O Problema

1,8 Bilhão de Usuários Esquecidos

Se o seu jogo tem jogadores que falam árabe, hebraico, hindi, tailandês ou bengali — TextMeshPro está mostrando texto quebrado para eles. Esses não são casos raros — são um quarto da população mundial.

Se o seu jogo tem jogadores que falam árabe, hebraico, hindi, tailandês ou bengali — TextMeshPro está mostrando texto quebrado para eles. Esses não são casos raros — são um quarto da população mundial.
1.8B+
Usuários cujos idiomas o TextMeshPro não consegue exibir corretamente
العربية400M
हिन्दी600M
বাংলা230M
עברית9M
ไทย60M
தமிழ்80M
Recursos

Tudo o Que Você Precisa

Construído sobre as mesmas tecnologias usadas por Chrome, Firefox, Adobe e Android.

Todos os Sistemas de Escrita

Todos os scripts do mundo — testados e aprovados. 891.757 testes oficiais de conformidade Unicode, zero falhas. Do árabe ao tibetano.

Variable Fonts

Um arquivo de fonte, variações infinitas. Anime suavemente peso, largura, inclinação — em tempo real. Uma fonte substitui toda a sua família tipográfica.

100 instâncias do UniText + 100 do TextMeshPro animando o Font Size simultaneamente. Estão empilhadas na mesma posição, então as 200 parecem um único bloco.

Processamento Multi-Core

O layout de texto roda em todos os núcleos da CPU. 100, 500, 1000 objetos de texto — o desempenho escala linearmente.

Emoji Colorido

Famílias 👨‍👩‍👧‍👦, bandeiras 🇬🇪, tons de pele 👋🏻👋🏿 — tudo correto. Usa fontes do dispositivo: zero impacto no tamanho do build, sempre atualizado.

Contorno & Sombra

Efeitos de rich text via tags simples. Cor, espessura, deslocamento e suavidade personalizáveis — tudo acelerado por GPU.

Texto 3D no Mundo

Texto 3D no Mundo

Texto no espaço 3D via MeshRenderer — sem necessidade de Canvas. Paridade total de recursos: todos os idiomas, todos os emoji, todos os efeitos — no espaço mundo.

CJK sem ficheiros de tipos de letra

Nenhuma outra solução de texto para Unity faz isto.

CJK sem ficheiros de tipos de letra

Chinês, japonês e coreano vêm diretamente do sistema — sem tipos de letra na build, sem atlas pré-gerado. Memory-mapped: só os glifos usados chegam à RAM.

Quebra de Palavras Inteligente

Tailandês, laosiano e outros scripts do sudeste asiático não usam espaços entre palavras. UniText sabe onde quebrar as linhas — corretamente, sempre.

Conformidade

100% de Conformidade Unicode

Todos os testes oficiais do Unicode. Aprovados. Sem exceções, sem asteriscos.

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
Último padrão Unicode (2024) — sempre atualizado
Desempenho

Comparação de Benchmarks

Benchmarks reais em build de produção Android.

Comparação de Velocidade

Criação de Objetos
UniText
166ms×4.9 mais rápido
TMP
572ms
UI Toolkit
809ms
Reconstrução Completa
UniText
136ms×5.4 mais rápido
TMP
398ms
UI Toolkit
731ms
Layout
UniText
71ms×20.7 mais rápido
TMP
1468ms
UI Toolkit
241ms
Reconstrução de Mesh
UniText
60ms×7.1 mais rápido
TMP
424ms
UI Toolkit
143ms

Memória e GC

Ciclos de GC (criação)
3
UniText
147
TMP
0
UI Toolkit
Alocação de Memória (criação)
292 MB
UniText
2249 MB
TMP
×8 mais
400 MB
UI Toolkit
×1.4 mais
Alocações em Runtime (por operação)
90 KB
UniText
13.8 MB
TMP
×153 mais
39.6 MB
UI Toolkit
×440 mais

* 100 objetos, 10 iterações, 3 warmup, ~2300 caracteres por objeto (Latim + Árabe + Hebraico + Misto). UniText.UseParallel = false.

Renderização de Glifos

Adicionando glifos ao atlas de textura

UniText FreeType
4.7–15.2×
mais rápido
Unity FontEngine

Builds e Bundles Menores

A compressão de fontes mantém o seu jogo distribuído pequeno

12 MB
Fonte original
4.4 MB
No seu build

Descompressão sub-milissegundo em runtime — os jogadores não vão notar.

Escala

Concebido a uma escala diferente

O código-fonte conta a história — UniText é um motor de texto completo, não um componente.

765
UniText · Ficheiros de código-fonte
151.759 Linhas de código
116
TMP · Ficheiros de código-fonte
41.892 Linhas de código
6.6× mais · Ficheiros de código-fonte3.6× mais · Linhas de código

Muito mais motor — e ainda assim mais rápido e leve do que o TMP.

Multiplataforma

Todas as Plataformas Suportadas

Bibliotecas nativas HarfBuzz e FreeType compiladas para todas as principais plataformas e arquiteturas.

Windows
x86x64ARM64
macOS
x64Apple Silicon
Linux
x64
Android
ARMv7ARM64x86x64
iOS
ARM64
WebGL
2.0
Unity 2022.3 LTS+
Comparação

UniText vs TMP vs UI Toolkit

Comparação de recursos lado a lado

RecursoUniTextTextMesh 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
Per-Glyph Metric Overrides
Limited (not under ATG)
Rendering
MSDF Rendering
GPU Glyph Rasterization
3D World-Space Text
(batched, ~1 draw call)8
(no batching, draw calls per object)8
(2D panel)
Lit / Shaded 3D Text
Limited (shader swap)
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)
Support & Maintenance
Direct Developer Support
Fast, dedicated9
(Unity issue tracker / forums)
(Unity issue tracker / forums)
  1. 1.TMP has no native BiDi/Arabic/Hebrew. The usual plugin (RTL Text Mesh Pro) is a workaround, not real RTL: no proper Unicode Bidirectional Algorithm (UAX #9) — a heuristic glyph "fixer" whose own docs note mixed English/RTL multiline text breaks — and Arabic-script shaping via a fixed presentation-form table only (no OpenType shaping, no other complex scripts).
  2. 2.UI Toolkit: requires the Advanced Text Generator (HarfBuzz/ICU) — opt-in in Unity 6.4, default from 6.5. Without ATG there is no shaping/BiDi/ICU.
  3. 3.TMP does not compose ZWJ/skin-tone/flag sequences at all; UI Toolkit attempts them but Unity itself flags emoji with flags and skin tones as "problematic".
  4. 4.TMP has no bundled UCD table: emoji data tracks Unicode 14.0, character properties come from the .NET runtime.
  5. 5.UI Toolkit text-generation parallelization ships in Unity 6.5.
  6. 6.No engine builds true extruded 3D geometry. UniText stacks offset quad copies (2.5D, z=0) with a near→far gradient and a bevel mode; TMP uses a faux bevel via normal-map shading.
  7. 7.TMP fixed-ratio distribution (wordWrappingRatios 0.4) forces ~40% of the slack into inter-letter spacing on every script (not script-aware), hardcodes last-line alignment (no text-align-last), and tolerates 5% box overflow.
  8. 8.UniText merges all UniTextWorld components sharing a material and sorting into one mesh → typically a single draw call per group (extra meshes only past the ~64k-vertex limit). World-space TextMeshPro renders each object as its own MeshRenderer with no cross-object batching, so draw calls grow linearly with the number of text objects.
  9. 9.UniText direct developer support: responses within 10 minutes, bug fixes from 1 hour to 1 day, feature implementation from 3 hours to 3 days. TMP and UI Toolkit only have Unity’s official issue tracker and community forums, with no guaranteed response or fix times.
UniText Folio

Texto Interativo e Editável

UniText Folio adiciona seleção, edição, IME, área de transferência, comportamentos de entrada e decoradores — com suporte nativo a BiDi e a clusters de grafemas.

RecursoUniTextTMP 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
Editing Accessibility (screen-reader)
Limited (manual)
Pluggable / Non-Blinking Caret
Limited
Basic
Extensibility
Skinnable Selection Highlight
Limited
Basic
Rich Pointer-Event Model
Basic
Limited
  1. 1.TMP has no native BiDi/Arabic. RTL editing needs a third-party plugin (RTL Text Mesh Pro) — a heuristic glyph "fixer", not real RTL: no proper Unicode Bidirectional Algorithm (UAX #9), only fixed Arabic-script presentation forms (no OpenType shaping), with known mixed-direction multiline issues.
  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.

Pronto para suportar todos os idiomas?

Pare de lutar com árabe quebrado, emoji ausente e bugs de RTL. UniText cuida de tudo.