ワンクリックで
unity-ui-toolkit
Unity UI Toolkit
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Unity UI Toolkit
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Unity ScriptableObject Architecture
Unity Shaders
Unity State Machines
Registers new C# files in resources/manifests/<system>.json (files array + tests.editmode/playmode list) and validates with just validate-registry. Use when creating any new script, adding a new game system, or fixing 'orphan file' CI failures. Trigger phrases: 'add to manifest', 'register file', 'new system', 'validate registry'. Key capabilities: exact JSON manifest format, ACTIVE/DEPRECATED/EXPERIMENTAL status, dependency declarations, test class name mapping for pre-push gating via resolve_module_tests.py. Do NOT use for modifying physics logic or editing game scripts unrelated to registration.
Unity Terrain & Track Creation for RC Racing
Unity Testing, Debugging & QA
| name | unity-ui-toolkit |
| description | Unity UI Toolkit |
Use this skill when building UI with Unity's UI Toolkit system, including UXML structure, USS styling, C# bindings, custom inspectors, or runtime game UI panels.
| Use Case | Recommended System |
|---|---|
| Menus, settings, HUD overlays | UI Toolkit — cleaner styling, better tooling |
| World-space UI (health bars above enemies) | UGUI — native 3D canvas support |
| Complex runtime animations on UI | UGUI — more mature DOTween/animation integration |
| Editor custom inspectors and windows | UI Toolkit — this is the primary target |
| Data-heavy lists (inventory, leaderboards) | UI Toolkit — virtualized ListView |
Attach to a GameObject to display UI Toolkit content at runtime:
Create via Assets > Create > UI Toolkit > Panel Settings Asset:
Multiple UIDocuments can share one PanelSettings (same render panel) or use separate ones (independent panels).
public class ThemeManager : MonoBehaviour
{
[SerializeField] private PanelSettings panelSettings;
[SerializeField] private ThemeStyleSheet lightTheme;
[SerializeField] private ThemeStyleSheet darkTheme;
public void SetDarkMode(bool dark)
{
panelSettings.themeStyleSheet = dark ? darkTheme : lightTheme;
}
}
Alternatively, swap USS variables at runtime:
// Override a custom property on the root
var root = uiDocument.rootVisualElement;
root.style.SetCustomProperty("--bg-primary", new StyleColor(Color.black));
// Experimental animation API
element.experimental.animation
.Start(new StyleValues { opacity = 0, top = -50 },
new StyleValues { opacity = 1, top = 0 },
300)
.Ease(Easing.OutCubic)
.OnCompleted(() => Debug.Log("Animation done"));
Open via Window > UI Toolkit > Debugger:
This is the most powerful tool for debugging layout issues. Use it before guessing at USS changes.