with one click
unity-racing-ui
Unity Racing UI — HUD, Menus, and Race Management
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Unity Racing UI — HUD, Menus, and Race Management
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
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-racing-ui |
| description | Unity Racing UI — HUD, Menus, and Race Management |
Use this skill when building racing game UI systems including in-race HUD, menu flow, minimap, split-screen viewports, leaderboards, ghost data display, race start sequences, and accessibility features.
Position critical telemetry where the eye naturally rests:
| Element | Position | Update Rate | Canvas |
|---|---|---|---|
| Speedometer (needle) | Bottom-center | Every frame | Dynamic-fast |
| RPM bar | Bottom-center, above speed | Every frame | Dynamic-fast |
| Gear indicator | Bottom-center, inset | On change | Dynamic-fast |
| Lap timer | Top-center | Every frame | Dynamic-fast |
| Sector delta (+/-) | Top-center, below timer | On sector crossing | Dynamic-slow |
| Lap counter | Top-right | On lap crossing | Dynamic-slow |
| Position indicator | Top-right, below lap | On position change | Dynamic-slow |
| Minimap | Bottom-left or top-left | Every 2-3 frames | Dynamic-slow |
| Race notifications | Center, fade-in/out | On event | Dynamic-slow |
Use the right UI system for each context:
| Context | System | Rationale |
|---|---|---|
| Main menu, settings, vehicle select | UI Toolkit | Complex layouts, USS styling, scrollable lists, data binding |
| In-race HUD | uGUI Canvas | Per-frame updates, render texture minimap, world-space markers |
| Pause overlay | UI Toolkit | Modal dialog over HUD, does not need per-frame updates |
| Results screen | UI Toolkit | Table layout, scrolling, styled text |
UI Toolkit lacks efficient per-frame element updates and render texture integration needed for racing HUD. uGUI Canvas with CanvasRenderer is purpose-built for real-time telemetry display.
Menu systems with complex layouts, data binding, and styling are verbose and fragile in uGUI. UI Toolkit's USS + UXML provides CSS-like layout that scales better for menu hierarchies.
cullingMask to only render terrain, track, and vehicle layers.RenderTexture (sufficient resolution for a minimap).RawImage UI element in the HUD.Camera.targetTexture and disable the camera, then call Camera.Render() manually on a timer.Image icons positioned via world-to-minimap coordinate mapping.// 2-player horizontal split
camera1.rect = new Rect(0f, 0.5f, 1f, 0.5f); // Top half
camera2.rect = new Rect(0f, 0f, 1f, 0.5f); // Bottom half
// 2-player vertical split
camera1.rect = new Rect(0f, 0f, 0.5f, 1f); // Left half
camera2.rect = new Rect(0.5f, 0f, 0.5f, 1f); // Right half
Screen Space - Camera mode, assigned to their camera.Screen Space - Overlay canvases span the full screen and cannot be split. Always use Screen Space - Camera for split-screen HUD.{trackId, entries: [{name, time, date, ghostFile}]}.Application.persistentDataPath/leaderboards/.SteamUserStats.UploadLeaderboardScore.TextMeshProUGUI with cached format strings (no string.Format per frame)Screen Space - Camera, not Screen Space - Overlay| Skill | When to Use |
|---|---|
unity-ui-toolkit | UI Toolkit fundamentals, USS styling, UXML layout, data binding |
unity-ui-design | General UI/UX design patterns and principles |
unity-input-system | Input System setup, rebinding, action maps |