Babysitter unity-addressables
Unity Addressables asset management skill for remote catalogs, content updates, asset bundles, and memory-efficient asset loading.
install
source · Clone the upstream repo
git clone https://github.com/a5c-ai/babysitter
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/a5c-ai/babysitter "$T" && mkdir -p ~/.claude/skills && cp -r "$T/library/specializations/game-development/skills/unity-addressables" ~/.claude/skills/a5c-ai-babysitter-unity-addressables && rm -rf "$T"
manifest:
library/specializations/game-development/skills/unity-addressables/SKILL.mdsource content
Unity Addressables Skill
Addressable asset management system for Unity projects.
Overview
This skill provides capabilities for implementing Unity's Addressables system for efficient asset management, remote content delivery, and memory optimization.
Capabilities
Asset Organization
- Configure addressable groups
- Set up asset labels and addresses
- Manage group schemas and settings
- Organize assets by load behavior
Remote Content
- Configure remote catalog hosting
- Set up content update workflows
- Manage asset bundle hosting
- Implement CDN integration
Loading Strategies
- Implement async asset loading
- Handle loading dependencies
- Manage memory with release patterns
- Configure preloading strategies
Build Pipeline
- Configure build scripts
- Set up content builds
- Generate catalogs and bundles
- Manage build caching
Prerequisites
- Unity 2021.3+
- Addressables package installed
- Remote hosting setup (optional)
Usage Patterns
Loading Assets
// Load by address var handle = Addressables.LoadAssetAsync<GameObject>("Prefabs/Player"); handle.Completed += (op) => { GameObject player = op.Result; Instantiate(player); }; // Load by label var allEnemies = await Addressables.LoadAssetsAsync<GameObject>( "enemies", (enemy) => { /* callback per asset */ } );
Memory Management
// Release when done Addressables.Release(handle); // Instance management var instance = await Addressables.InstantiateAsync("Prefabs/Bullet"); // Later... Addressables.ReleaseInstance(instance);
Best Practices
- Group assets by loading context
- Use labels for cross-cutting concerns
- Release assets when not needed
- Test with remote bundles early
- Monitor memory with Profiler