# Optimize Text Mesh Pro

Optimizes TextMeshPro rendering, memory, and font setup, including font asset stacks...

- Repository: https://github.com/Unity-Technologies/skills (1197 stars)
- Category: Engineering
- License: see repository
- Last updated: 2026-10-30
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add Unity-Technologies/skills --skill optimize-text-mesh-pro -g -a claude-code -y`
Codex: `npx skills add Unity-Technologies/skills --skill optimize-text-mesh-pro -g -a codex -y`
Cursor: `npx skills add Unity-Technologies/skills --skill optimize-text-mesh-pro -g -a cursor -y`
Gemini CLI: `npx skills add Unity-Technologies/skills --skill optimize-text-mesh-pro -g -a gemini-cli -y`

## Description

Optimizes TextMeshPro rendering, memory, and font setup, including font asset stacks, fallback atlases, SDF quality, and worldspace text. Use when the user asks about TMP fonts, CJK or multilingual text, or text performance.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Optimize TextMeshPro

## Triage, identify the symptom first

Before providing tips, identify which category the user's issue falls into. If the user has not described a specific symptom, ask: "Are you seeing a **memory/atlas bloat**, **visual quality**, **CPU/performance**, **build size**, or **localization/alignment** issue with TextMeshPro?"

| Symptom | Go To |
|---|---|
| Memory Profiler shows large or multiple TMP atlases | [Font Stack & Dynamic Fallbacks](#font-stack--dynamic-fallbacks), [Memory Profiler: Include Font Data](#memory-profiler-include-font-data) |
| Inconsistent glyph weight, fuzzy edges, visual quality | [Padding & Sampling Ratios](#padding--sampling-ratios), [Font Asset Scale](#font-asset-scale), [Atlas Render Mode: SDF16](#atlas-render-mode-sdf16) |
| CPU spikes during text updates or Canvas rebuilds | [AutoSize](#autosize), [Worldspace vs Canvas Text](#worldspace-vs-canvas-text) |
| Build size too large from shipped font files | [Dynamic OS Atlas Population](#dynamic-os-atlas-population-tmp-320-pre3) |
| Mixed Latin + CJK alignment looks off | [Font Normalization](#font-normalization) |
| Need multiple font styles (italic, outline, glow) | [Material Presets](#material-presets) |

---

## Core Rules

The rest: https://github.com/Unity-Technologies/skills/blob/HEAD/skills/optimize-text-mesh-pro/SKILL.md
