unity

Develops Unity 6 games with C# scripting, URP rendering, physics, and CI builds.

22|Updated Sep 10, 2026
One-click install
npx skills add https://github.com/Lynricsy/HyperSkills --skill unity-lynricsy
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: unity
Source: https://github.com/Lynricsy/HyperSkills/tree/main/skills/unity
Command: npx skills add https://github.com/Lynricsy/HyperSkills --skill unity-lynricsy

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Unity projects fail silently in ways that cost days of debugging: serialized fields that never store values, collision callbacks that never fire, CI builds that report success while shipping nothing, and per-frame allocations that cause GC hitches. This Skill encodes the engine's actual rules — verified against Unity 6.3 LTS through 6.6 — so code is written and reviewed correctly the first time. ## Core Features & Use Cases - Serialization and lifecycle correctness: Covers Unity's field-only serializer, [SerializeField] and [SerializeReference] rules, MonoBehaviour callback order, coroutines versus Awaitable, and version-gated API changes like the Find* obsoletions. - Rendering, performance, and memory workflows: Diagnoses SRP Batcher and GPU Resident Drawer eligibility, MaterialPropertyBlock pitfalls, texture import settings, Addressables lifetime, and Profiler-driven GC and frame-time optimization. - Build and CI automation: Scripts batch-mode player builds that fail loudly via BuildReport exit codes, handles IL2CPP stripping with link.xml, licensing on headless runners, and the Unity Test Framework command line. - Use Case: A CI job goes green while the player build fails. The Skill identifies that BuildPipeline.BuildPlayer returns a BuildReport instead of throwing, that -quit masks the failure, and that the build script must live under an Editor folder — then produces the corrected script and shell wrapper. ## Quick Start Ask the agent to review your Unity component or build script, stating your Unity version, for example: review this MonoBehaviour for serialization and per-frame allocation problems on Unity 6000.3.

Frequently Asked Questions about unity

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix a Unity CI build that reports success when the build fails?

BuildPipeline.BuildPlayer returns a BuildReport and never throws, so the script must inspect summary.result and call EditorApplication.Exit with a non-zero code itself. Also stream the log with -logFile - and avoid relying on -quit, which exits 0 and hides errors.

Why is my Unity serialized field empty in the Inspector?

Unity serializes fields, never properties, and silently skips static, readonly, jagged arrays, and nested containers. A plain class needs [System.Serializable], interface or polymorphic fields need [SerializeReference], and Dictionary serialization behind [SerializeField] only works from Unity 6.6.

Should I use uGUI or UI Toolkit for Unity runtime UI?

Unity recommends uGUI for runtime UI and UI Toolkit for Editor UI, unchanged from Unity 6.3 through 6.6. Choose UI Toolkit at runtime when you have many screens, resolutions, or shader-driven UI; stay on uGUI for in-scene authoring and Inspector-serialized events.

Why does my Unity collision or trigger callback never fire?

Collision messages require at least one dynamic non-kinematic Rigidbody collider in the pair; static-static, static-kinematic, and kinematic-kinematic pairs send nothing. Trigger messages need one side to be a dynamic or kinematic trigger, so the matrix, not the code, is usually the cause.

Does Unity 6 still support FindObjectsOfType?

FindObjectsOfType and FindObjectOfType are obsolete across all Unity 6 versions; use FindObjectsByType and FindAnyObjectByType. From Unity 6.4 the FindObjectsSortMode overloads and FindFirstObjectByType are also obsolete, so 6.3-era code gains warnings on upgrade.

When should a Unity project adopt DOTS and ECS?

DOTS pays off only for mass simulation with thousands of similar entities updated per frame. Most projects should stay on GameObjects, optionally moving one hot subsystem to ECS or just using Burst-compiled jobs, since wholesale conversion of a working game rarely pays back.