Setiap bahasa. Setiap emoji. Setiap gaya. Production-grade, dapat diperluas, performa tinggi, dibangun di atas standar industri.
Unicode 17.0 · HarfBuzz · SDF/MSDF · Variable Fonts · Zero GC
Jika game Anda memiliki pemain berbahasa Arab, Ibrani, Hindi, Thai, atau Bengali — TextMeshPro menampilkan teks yang rusak kepada mereka. Ini bukan kasus langka — mereka adalah seperempat populasi dunia.

Dibangun di atas teknologi yang sama yang digunakan oleh Chrome, Firefox, Adobe, dan Android.
Setiap aksara di dunia — diuji dan lulus. 891.757 tes kepatuhan Unicode resmi, tanpa kegagalan. Dari Arab hingga Tibet.
Satu file font, variasi tak terbatas. Animasikan weight, width, slant dengan mulus — secara real time. Satu font menggantikan seluruh keluarga font Anda.
100 instance UniText + 100 instance TextMeshPro menganimasikan Font Size secara bersamaan. Mereka ditumpuk di posisi yang sama, jadi semua 200 terlihat seperti satu blok.
Layout teks berjalan di semua inti CPU. 100, 500, 1000 objek teks — performa meningkat secara linear.
Keluarga 👨👩👧👦, bendera 🇬🇪, warna kulit 👋🏻👋🏿 — semuanya benar. Menggunakan font perangkat: tanpa dampak pada ukuran build, selalu terkini.
Efek teks kaya via tag sederhana. Warna, ketebalan, offset, dan kelembutan yang dapat disesuaikan — semuanya GPU-accelerated.

Teks di ruang 3D via MeshRenderer — tanpa Canvas. Paritas fitur penuh: setiap bahasa, setiap emoji, setiap efek — di world space.

Tidak ada solusi teks Unity lain yang begini.
Mandarin, Jepang, dan Korea diambil langsung dari sistem — tanpa font di build, tanpa atlas yang dipanggang. Memory-mapped: hanya glif yang dipakai yang masuk ke RAM.
Thai, Lao, dan aksara Asia Tenggara lainnya tidak menggunakan spasi antar kata. UniText tahu di mana harus memutus baris — dengan benar, setiap saat.
Setiap tes Unicode resmi. Lulus. Tanpa pengecualian, tanpa tanda bintang.
Benchmark nyata pada build produksi Android.
* 100 objek, 10 iterasi, 3 warmup, ~2300 karakter per objek (Latin + Arab + Ibrani + Campuran). UniText.UseParallel = false.
Menambahkan glyph ke texture atlas
Kompresi font menjaga game yang Anda rilis tetap kecil
Dekompresi sub-milidetik saat runtime — pemain tidak akan menyadarinya.
Kodebase bercerita sendiri — UniText adalah mesin teks lengkap, bukan sekadar komponen.
Jauh lebih bertenaga — dan tetap lebih cepat serta lebih ringan dari TMP.
Library native HarfBuzz dan FreeType dikompilasi untuk setiap platform dan arsitektur utama.
Perbandingan fitur secara berdampingan
| Fitur | 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 | ||
| 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) |
UniText Folio menambahkan seleksi, pengeditan, IME, clipboard, perilaku input, dan dekorator — dengan dukungan BiDi dan grapheme-cluster native.
| Fitur | 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 | ||
| Editing Accessibility (screen-reader) | Limited (manual) | ||
| Pluggable / Non-Blinking Caret | Limited | Basic | |
| Extensibility | |||
| Skinnable Selection Highlight | Limited | Basic | |
| Rich Pointer-Event Model | Basic | Limited | |
Berhenti berjuang dengan Arab yang rusak, emoji yang hilang, dan bug RTL. UniText menangani semuanya.