所有语言。
任意风格。

面向 Unity UI 与 3D 的文本和文档引擎。无需字体文件。顶级性能。内置功能包括富文本编辑、像素字体、Font Memory Mapping 和文档虚拟化。可复用的构建器组合样式与行为。

UI 与 3D · 原生表情 · 样式构建器 · 共享 LightSide 渲染

全部
支持的语言
100%
Unicode 合规性
UI + 3D
文本渲染
✓
表情符号支持
生产环境

由 UniText 打造

Ryah's Rhythm: Relaxing Games
Matchala Games
1M+
下载量
4.7 ★
Google Play
48.2K 条评价
4.9 ★
App Store
1.1K 条评价

“UniText 开箱即用,文本需要的功能它全都有,一个不落。我们用 2 天就完成了项目迁移,新增了 11 种语言,全程连一个字体都没往项目里加。”

Matchala Games

以上为 Google Play 和 App Store 公布的商店数据,2026 年 9 月。

所有语言

所有语言。

阿拉伯语、希伯来语、印度文字、中日韩文字以及混合书写方向。正确的字形、换行与选择。

阿拉伯语、希伯来语、印度文字、中日韩文字以及混合书写方向。正确的字形、换行与选择。
العربيةArabic
हिन्दीHindi
বাংলাBengali
עבריתHebrew
ไทยThai
தமிழ்Tamil
功能

UniText 功能

标签、输入框、编辑器和文档共用同一文本模型。自定义修改器、解析规则和输入行为也采用同一种组合方式。

Font Memory Mapping

大型字体文件按需从磁盘读取,无需在托管内存中保留完整副本。未使用的字体保持压缩状态。

真正的像素字体

清晰像素、自动网格检测,以及对齐网格的效果和动画。矢量像素字体和纯位图字体共用样式系统。

文本编辑与输入

选择、撤销与重做、IME、富文本剪贴板、触摸控制点、原生键盘、验证、输入掩码与密码。输入行为和字段装饰器组成可复用配置。

富文本文档

列表、注音、公式、行内图像和预制体。大型文档的虚拟化滚动。

动画与交互

字符与范围动画、显示效果、参数时间轴可与文本样式组合。链接、隐藏内容和自定义交互元素各自具有独立的交互状态。

扩展与构建器

自定义修改器、解析规则、输入行为和装饰器使用现有文本模型。扩展可与内置功能组合,并复用相同的编辑器工具。

所有语言

阿拉伯语、希伯来语、印度文字、中日韩文字以及混合书写方向。正确的字形、换行与选择。

可变字体

字重、宽度和倾斜均可编辑和动画化。一个文件涵盖完整样式范围。

100 个 UniText + 100 个 TextMeshPro 实例同时进行 Font Size 动画。它们叠放在同一位置,因此 200 个看起来就像一整块。

顶级性能

共享缓存避免重复处理。局部修改仅更新相关内容。Burst 与并行处理分担大量工作。

原生表情

使用设备字体呈现家庭、旗帜、肤色及组合表情。无需独立纹理包。

任意样式构建器

填充、描边、阴影、发光、渐变和纹理组合成可编辑图层。预设与标记复用同一样式。

3D 文本

3D 文本

无需 Canvas。语言、表情、样式、交互与动画和 UI 文本共用引擎。

无需字体文件

无需捆绑字体文件即可显示中文、日文和韩文。

无需字体文件

自动选择系统字体。桌面和移动端可按需使用自定义字体;WebGL 使用指定字体。

自然换行

支持泰语、老挝语、高棉语和缅甸语等不以空格分隔单词的语言。

合规性

符合 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
性能

基准测试对比

Android 生产构建上的真实基准测试。

速度对比

对象创建
UniText
166ms×4.9 更快
TMP
572ms
UI Toolkit
809ms
完整重建
UniText
136ms×5.4 更快
TMP
398ms
UI Toolkit
731ms
布局
UniText
71ms×20.7 更快
TMP
1468ms
UI Toolkit
241ms
网格重建
UniText
60ms×7.1 更快
TMP
424ms
UI Toolkit
143ms

内存与 GC

GC 周期(创建)
3
UniText
147
TMP
0
UI Toolkit
内存分配(创建)
292 MB
UniText
2249 MB
TMP
×8 倍
400 MB
UI Toolkit
×1.4 倍
运行时分配(每次操作)
90 KB
UniText
13.8 MB
TMP
×153 倍
39.6 MB
UI Toolkit
×440 倍

* 100 个对象,10 次迭代,3 次预热,每个对象约 2300 个字符(拉丁文 + 阿拉伯文 + 希伯来文 + 混合)。UniText.UseParallel = false。

字形渲染

向纹理图集添加字形

UniText FreeType
4.7–15.2×
更快
Unity FontEngine

更小的构建与资源包

字体压缩让您发布的游戏体积保持精简

12 MB
原始字体
→
4.4 MB
构建中

运行时亚毫秒级解压——玩家不会察觉。

LightSide

贯穿 LightSide 的共享系统

LightSide 产品在运行时和编辑器中复用公共系统。每个产品都在同一基础上加入自身的行为。

LightSide Core

Core 共享系统示例:状态与嵌套属性访问、时钟与运动、指针路由、几何处理、工作线程、对象池、序列化、资源管理、GPU 传输与编辑器控件。各产品共用同一套实现。

统一构建方式

UniText 修改器与 UniShapes 图层共享选择器、嵌套设置、预设及属性编辑器。

共用颜色与渐变

文本与图形使用相同的 Core 颜色、渐变、纹理和滤镜系统。

合并为一个 Draw Call

文本、图形和 Lottie 共享着色器、材质与批处理。MoveIt 为组件和图层属性提供动画。

跨平台

支持所有平台

支持桌面、移动端、WebGL、tvOS 和 visionOS 的 UI 与 3D 文本。

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

UniText vs TMP vs UI Toolkit

并列功能对比

功能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)
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 extrusion is a layered visual effect with offset quads and bevel shading. It does not create a solid 3D text mesh.
  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, bug reports, help and discussion.
  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

交互式可编辑文本

UniText Folio 新增选区、编辑、IME、剪贴板、输入行为和装饰器——并原生支持 BiDi 和字素簇。

功能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

面向 Unity UI 与 3D 的文本和文档引擎。无需字体文件。顶级性能。内置功能包括富文本编辑、像素字体、Font Memory Mapping 和文档虚拟化。可复用的构建器组合样式与行为。

支持与讨论: [email protected]