Enjin Teks Pertama & Satu-satunya
untuk Unity

Setiap bahasa. Setiap emoji. Setiap gaya. Gred pengeluaran, boleh diperluas, berprestasi tinggi, dibina di atas standard industri.

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

150+
Bahasa disokong
100%
Pematuhan Unicode
UI + 3D
Pemaparan teks
Sokongan emoji
Masalahnya

1.8 Bilion Pengguna Ditinggalkan

Jika permainan anda mempunyai pemain berbahasa Arab, Ibrani, Hindi, Thai, atau Bengali — TextMeshPro menunjukkan teks rosak kepada mereka. Ini bukan kes terpinggir — mereka adalah suku daripada populasi dunia.

Jika permainan anda mempunyai pemain berbahasa Arab, Ibrani, Hindi, Thai, atau Bengali — TextMeshPro menunjukkan teks rosak kepada mereka. Ini bukan kes terpinggir — mereka adalah suku daripada populasi dunia.
1.8B+
Pengguna yang bahasanya tidak dapat dipaparkan dengan betul oleh TextMeshPro
العربية400M
हिन्दी600M
বাংলা230M
עברית9M
ไทย60M
தமிழ்80M
Ciri-ciri

Semua Yang Anda Perlukan

Dibina di atas teknologi yang sama digunakan oleh Chrome, Firefox, Adobe, dan Android.

Setiap Sistem Penulisan

Setiap skrip di Bumi — diuji dan lulus. 891,757 ujian pematuhan Unicode rasmi, sifar kegagalan. Dari Arab hingga Tibet.

Variable Fonts

Satu fail fon, variasi tanpa had. Animasikan berat, lebar, condong dengan lancar — secara masa nyata. Satu fon menggantikan seluruh keluarga fon anda.

100 instance UniText + 100 instance TextMeshPro menganimasikan Font Size secara serentak. Mereka disusun pada kedudukan yang sama, jadi kesemua 200 kelihatan seperti satu blok tunggal.

Pemprosesan Berbilang Teras

Susun atur teks berjalan merentasi semua teras CPU. 100, 500, 1000 objek teks — prestasi meningkat secara linear.

Emoji Berwarna Penuh

Keluarga 👨‍👩‍👧‍👦, bendera 🇬🇪, ton kulit 👋🏻👋🏿 — semuanya betul. Menggunakan fon peranti: sifar kesan pada saiz binaan, sentiasa terkini.

Outline & Shadow

Kesan teks kaya melalui tag ringkas. Warna, ketebalan, anjakan dan kelembutan boleh disuaikan — semuanya dipercepat GPU.

Teks 3D Dunia

Teks 3D Dunia

Teks dalam ruang 3D melalui MeshRenderer — tiada Canvas diperlukan. Pariti ciri penuh: setiap bahasa, setiap emoji, setiap kesan — dalam ruang dunia.

CJK tanpa fail fon

Tiada penyelesaian teks Unity lain berbuat begini.

CJK tanpa fail fon

Bahasa Cina, Jepun dan Korea diambil terus daripada sistem — tiada fon dalam build, tiada atlas prabakar. Memory-mapped: hanya glif yang digunakan masuk ke RAM.

Pemisahan Perkataan Pintar

Thai, Lao, dan skrip Asia Tenggara lain tidak menggunakan ruang antara perkataan. UniText tahu di mana hendak memecah baris — dengan betul, setiap kali.

Pematuhan

100% Pematuhan Unicode

Setiap ujian Unicode rasmi. Lulus. Tiada pengecualian, tiada asterisk.

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
Standard Unicode terkini (2024) — sentiasa dikemas kini
Prestasi

Perbandingan Penanda Aras

Penanda aras sebenar pada binaan pengeluaran Android.

Perbandingan Kelajuan

Penciptaan Objek
UniText
166ms×4.9 lebih pantas
TMP
572ms
UI Toolkit
809ms
Pembinaan Semula Penuh
UniText
136ms×5.4 lebih pantas
TMP
398ms
UI Toolkit
731ms
Susun Atur
UniText
71ms×20.7 lebih pantas
TMP
1468ms
UI Toolkit
241ms
Pembinaan Semula Mesh
UniText
60ms×7.1 lebih pantas
TMP
424ms
UI Toolkit
143ms

Memori & GC

Kitaran GC (penciptaan)
3
UniText
147
TMP
0
UI Toolkit
Peruntukan Memori (penciptaan)
292 MB
UniText
2249 MB
TMP
×8 lebih banyak
400 MB
UI Toolkit
×1.4 lebih banyak
Peruntukan Masa Jalan (setiap operasi)
90 KB
UniText
13.8 MB
TMP
×153 lebih banyak
39.6 MB
UI Toolkit
×440 lebih banyak

* 100 objek, 10 lelaran, 3 pemanasan, ~2300 aksara setiap objek (Latin + Arab + Ibrani + Bercampur). UniText.UseParallel = false.

Pemaparan Glyph

Menambah glyph ke atlas tekstur

UniText FreeType
4.7–15.2×
lebih pantas
Unity FontEngine

Binaan dan Bundle Lebih Kecil

Pemampatan fon mengekalkan permainan yang dihantar anda kekal kecil

12 MB
Fon asal
4.4 MB
Dalam binaan anda

Penyahmampatan sub-milisaat pada masa jalan — pemain tidak akan perasan.

Skala

Direka pada skala yang berbeza

Pangkalan kod bercerita sendiri — UniText adalah enjin teks yang lengkap, bukan sekadar komponen.

765
UniText · Fail sumber
151,759 Baris kod
116
TMP · Fail sumber
41,892 Baris kod
6.6× lebih · Fail sumber3.6× lebih · Baris kod

Jauh lebih banyak enjin — dan masih lebih pantas dan lebih ringan daripada TMP.

Merentas Platform

Semua Platform Disokong

Pustaka asli HarfBuzz dan FreeType dikompilasi untuk setiap platform dan seni bina utama.

Windows
x86x64ARM64
macOS
x64Apple Silicon
Linux
x64
Android
ARMv7ARM64x86x64
iOS
ARM64
WebGL
2.0
Unity 2022.3 LTS+
Perbandingan

UniText vs TMP vs UI Toolkit

Perbandingan ciri secara bersebelahan

CiriUniTextTextMesh 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

Teks Interaktif & Boleh Disunting

UniText Folio menambah pemilihan, pengeditan, IME, papan klip, gelagat input dan penghias — dengan sokongan BiDi asli dan grapheme-cluster.

CiriUniTextTMP 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.

Bersedia untuk menyokong semua bahasa?

Berhenti bergelut dengan Arab yang rosak, emoji yang hilang, dan pepijat RTL. UniText mengendalikan semuanya.

Ada Soalan?: [email protected]