Babysitter unity-vfx-graph
Unity Visual Effect Graph skill for GPU particle systems, procedural effects, and high-performance visual effects.
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-vfx-graph" ~/.claude/skills/a5c-ai-babysitter-unity-vfx-graph && rm -rf "$T"
manifest:
library/specializations/game-development/skills/unity-vfx-graph/SKILL.mdsource content
Unity VFX Graph Skill
Visual Effect Graph development for GPU-accelerated particle systems in Unity.
Overview
This skill provides capabilities for creating high-performance visual effects using Unity's Visual Effect Graph, leveraging GPU compute for millions of particles.
Capabilities
Particle Systems
- Create GPU particle systems
- Configure spawn, initialize, update, output contexts
- Handle particle attributes
- Implement particle collision
Procedural Effects
- Use noise and turbulence
- Implement SDF-based effects
- Create mesh sampling effects
- Build camera-based interactions
Visual Authoring
- Design effects in VFX Graph editor
- Create subgraphs for reuse
- Implement property sheets
- Build event-driven effects
Integration
- Connect to C# scripts
- Handle events and parameters
- Integrate with Timeline
- Manage performance budgets
Prerequisites
- Unity 2021.3+ with VFX Graph package
- SRP (URP or HDRP) project
- Compute shader capable hardware
Usage Patterns
Spawning Particles from Code
public class VFXController : MonoBehaviour { [SerializeField] private VisualEffect vfx; void Start() { // Set properties vfx.SetFloat("SpawnRate", 100f); vfx.SetVector3("EmitterPosition", transform.position); } public void TriggerBurst() { // Send event vfx.SendEvent("OnBurst"); } }
Property Binding
// Expose VFX properties via C# bindings vfx.SetInt("ParticleCount", 1000); vfx.SetGradient("ColorOverLife", gradient); vfx.SetTexture("ParticleTexture", texture);
Best Practices
- Use subgraphs for reusable components
- Profile GPU performance
- Set particle count limits
- Use LOD for distant effects
- Optimize texture sampling