12 KiB
12 KiB
Unity Editor Toolkit - Command Reference
Unity Editor를 제어할 수 있는 500+ 명령어 로드맵입니다.
Current Status: Phase 2 - 42 commands implemented
Quick Reference
# Basic usage
cd <unity-project-root> && node .unity-websocket/uw <command> [options]
# Show all available commands
cd <unity-project-root> && node .unity-websocket/uw --help
# Show help for specific command
cd <unity-project-root> && node .unity-websocket/uw <command> --help
📖 Documentation by Category
✅ Implemented (Phase 1+)
| Category | Commands | Documentation |
|---|---|---|
| Connection & Status | 1 command | COMMANDS_CONNECTION_STATUS.md |
| GameObject & Hierarchy | 8 commands | COMMANDS_GAMEOBJECT_HIERARCHY.md |
| Transform | 4 commands | COMMANDS_TRANSFORM.md |
| Component | 10 commands | COMMANDS_COMPONENT.md |
| Scene Management | 7 commands | COMMANDS_SCENE.md |
| Asset Database & Editor | 3 commands | COMMANDS_EDITOR.md |
| Console & Logging | 2 commands | COMMANDS_CONSOLE.md |
| EditorPrefs Management | 6 commands | COMMANDS_PREFS.md |
| Wait Commands | 4 commands | COMMANDS_WAIT.md |
| Chain Commands | 2 commands | COMMANDS_CHAIN.md |
| Menu Execution | 2 commands | COMMANDS_MENU.md |
| Asset Management (ScriptableObject) | 9 commands | COMMANDS_ASSET.md |
| Prefab | 12 commands | COMMANDS_PREFAB.md |
🔄 Coming Soon (Phase 2+)
| Category | Status |
|---|---|
| Material & Rendering | 🔄 25+ commands planned |
| Animation | 🔄 20+ commands planned |
| Physics | 🔄 20+ commands planned |
| Lighting | 🔄 15+ commands planned |
| Camera | 🔄 15+ commands planned |
| Audio | 🔄 15+ commands planned |
| Navigation & AI | 🔄 15+ commands planned |
| Particle System | 🔄 15+ commands planned |
| Timeline | 🔄 10+ commands planned |
| Build & Player | 🔄 15+ commands planned |
| Project Settings | 🔄 20+ commands planned |
| Package Manager | 🔄 10+ commands planned |
| Version Control | 🔄 10+ commands planned |
| Profiler & Performance | 🔄 15+ commands planned |
| Test Runner | 🔄 10+ commands planned |
| Input System | 🔄 10+ commands planned |
| UI Toolkit | 🔄 10+ commands planned |
| Editor Window & UI | 🔄 10+ commands planned |
| Utility Commands | 🔄 20+ commands planned |
Quick Command Examples
Connection & Status
cd <unity-project-root> && node .unity-websocket/uw status [--port <port>] [--json]
GameObject & Hierarchy
# Find GameObject by name or path
cd <unity-project-root> && node .unity-websocket/uw go find <name> [--json]
# Create GameObject
cd <unity-project-root> && node .unity-websocket/uw go create <name> [--parent <parent>] [--json]
# Destroy GameObject
cd <unity-project-root> && node .unity-websocket/uw go destroy <name> [--json]
# Set active state
cd <unity-project-root> && node .unity-websocket/uw go set-active <name> <true|false> [--json]
# Set/remove parent
cd <unity-project-root> && node .unity-websocket/uw go set-parent <name> [parent] [--json]
# Get parent info
cd <unity-project-root> && node .unity-websocket/uw go get-parent <name> [--json]
# Get children
cd <unity-project-root> && node .unity-websocket/uw go get-children <name> [--recursive] [--json]
# View hierarchy tree
cd <unity-project-root> && node .unity-websocket/uw hierarchy [--root-only] [--include-inactive] [--json]
Transform
# Get transform information
cd <unity-project-root> && node .unity-websocket/uw tf get <name> [--json]
# Set position (x,y,z)
cd <unity-project-root> && node .unity-websocket/uw tf set-position <name> <x,y,z> [--json]
# Set rotation (Euler angles in degrees)
cd <unity-project-root> && node .unity-websocket/uw tf set-rotation <name> <x,y,z> [--json]
# Set scale
cd <unity-project-root> && node .unity-websocket/uw tf set-scale <name> <x,y,z> [--json]
Component Management
# List components on GameObject
cd <unity-project-root> && node .unity-websocket/uw comp list <gameobject> [--include-disabled] [--json]
# Add component to GameObject
cd <unity-project-root> && node .unity-websocket/uw comp add <gameobject> <component-type> [--json]
# Remove component from GameObject
cd <unity-project-root> && node .unity-websocket/uw comp remove <gameobject> <component-type> [--json]
# Enable/Disable component
cd <unity-project-root> && node .unity-websocket/uw comp enable <gameobject> <component-type> [--json]
cd <unity-project-root> && node .unity-websocket/uw comp disable <gameobject> <component-type> [--json]
# Get component properties
cd <unity-project-root> && node .unity-websocket/uw comp get <gameobject> <component-type> [property] [--json]
# Set component property
cd <unity-project-root> && node .unity-websocket/uw comp set <gameobject> <component-type> <property> <value> [--json]
# Inspect component (show all properties)
cd <unity-project-root> && node .unity-websocket/uw comp inspect <gameobject> <component-type> [--json]
# Move component order
cd <unity-project-root> && node .unity-websocket/uw comp move-up <gameobject> <component-type> [--json]
cd <unity-project-root> && node .unity-websocket/uw comp move-down <gameobject> <component-type> [--json]
# Copy component between GameObjects
cd <unity-project-root> && node .unity-websocket/uw comp copy <source> <component-type> <target> [--json]
Scene Management
# Get current scene info
cd <unity-project-root> && node .unity-websocket/uw scene current [--json]
# List all loaded scenes
cd <unity-project-root> && node .unity-websocket/uw scene list [--json]
# Load scene
cd <unity-project-root> && node .unity-websocket/uw scene load <name> [--additive] [--json]
# Create new scene
cd <unity-project-root> && node .unity-websocket/uw scene new [--empty] [--additive] [--json]
# Save scene
cd <unity-project-root> && node .unity-websocket/uw scene save [path] [--scene <name>] [--json]
# Unload scene
cd <unity-project-root> && node .unity-websocket/uw scene unload <name> [--remove] [--json]
# Set active scene (multi-scene editing)
cd <unity-project-root> && node .unity-websocket/uw scene set-active <name> [--json]
Asset Database & Editor
# Refresh AssetDatabase
cd <unity-project-root> && node .unity-websocket/uw editor refresh [--json]
# Recompile scripts
cd <unity-project-root> && node .unity-websocket/uw editor recompile [--json]
# Reimport assets
cd <unity-project-root> && node .unity-websocket/uw editor reimport <path> [--json]
Console & Logging
# Get console logs
cd <unity-project-root> && node .unity-websocket/uw console logs [--count <n>] [--errors-only] [--warnings] [--json]
# Clear console
cd <unity-project-root> && node .unity-websocket/uw console clear [--json]
EditorPrefs Management
# Get EditorPrefs value
cd <unity-project-root> && node .unity-websocket/uw prefs get <key> [-t <type>] [-d <default>] [--json]
# Set EditorPrefs value
cd <unity-project-root> && node .unity-websocket/uw prefs set <key> <value> [-t <type>] [--json]
# Delete EditorPrefs key
cd <unity-project-root> && node .unity-websocket/uw prefs delete <key> [--json]
# Check if key exists
cd <unity-project-root> && node .unity-websocket/uw prefs has <key> [--json]
# Delete all EditorPrefs keys
cd <unity-project-root> && node .unity-websocket/uw prefs delete-all [--json]
# List all EditorPrefs keys
cd <unity-project-root> && node .unity-websocket/uw prefs list [--json]
Wait Commands
# Wait for compilation to complete
cd <unity-project-root> && node .unity-websocket/uw wait compile [--timeout <ms>] [--json]
# Wait for play mode changes
cd <unity-project-root> && node .unity-websocket/uw wait playmode <enter|exit|pause> [--timeout <ms>] [--json]
# Sleep for duration
cd <unity-project-root> && node .unity-websocket/uw wait sleep <seconds> [--timeout <ms>] [--json]
# Wait for scene to finish loading (play mode only)
cd <unity-project-root> && node .unity-websocket/uw wait scene [--timeout <ms>] [--json]
Chain Commands
# Execute commands from JSON file
cd <unity-project-root> && node .unity-websocket/uw chain execute <file> [--continue-on-error] [--timeout <ms>] [--json]
# Execute commands inline
cd <unity-project-root> && node .unity-websocket/uw chain exec <commands...> [--continue-on-error] [--timeout <ms>] [--json]
# Example: inline commands with parameters
cd <unity-project-root> && node .unity-websocket/uw chain exec \
"GameObject.Create:name=Player" \
"GameObject.SetActive:instanceId=123,active=true" \
--continue-on-error
Prefab Management
# Instantiate prefab
cd <unity-project-root> && node .unity-websocket/uw prefab instantiate <path> [--name <name>] [--position <x,y,z>] [--json]
# Create prefab from scene object
cd <unity-project-root> && node .unity-websocket/uw prefab create <gameobject> <path> [--overwrite] [--json]
# Unpack prefab instance
cd <unity-project-root> && node .unity-websocket/uw prefab unpack <gameobject> [--completely] [--json]
# Apply/Revert prefab overrides
cd <unity-project-root> && node .unity-websocket/uw prefab apply <gameobject> [--json]
cd <unity-project-root> && node .unity-websocket/uw prefab revert <gameobject> [--json]
# Create prefab variant
cd <unity-project-root> && node .unity-websocket/uw prefab variant <sourcePath> <variantPath> [--json]
# Get prefab overrides
cd <unity-project-root> && node .unity-websocket/uw prefab overrides <gameobject> [--json]
# Get source prefab info
cd <unity-project-root> && node .unity-websocket/uw prefab source <gameobject> [--json]
# Check if prefab instance
cd <unity-project-root> && node .unity-websocket/uw prefab is-instance <gameobject> [--json]
# Open/Close prefab edit mode
cd <unity-project-root> && node .unity-websocket/uw prefab open <path> [--json]
cd <unity-project-root> && node .unity-websocket/uw prefab close [--json]
# List prefabs in folder
cd <unity-project-root> && node .unity-websocket/uw prefab list [--path <path>] [--json]
Development Roadmap
Phase 1 (Current) - Core Foundation ✅
- 30 commands across 8 categories
- GameObject manipulation, Transform control, Scene management
- Console logging, Editor utilities, EditorPrefs
- Wait conditions, Command chaining
Phase 2 - Component & Material System 🔄
- ~140+ commands
- Component management (Add, Remove, Configure)
- Material system (Colors, Textures, Shaders)
- Prefab system (Instantiate, Create, Override)
- Asset Database (Search, Import, Dependencies)
Phase 3 - Animation & Physics 🔄
- ~170+ commands
- Animation system (Animator, Curves, Events)
- Physics system (Rigidbody, Collider, Raycast)
- Lighting system (Lights, Lightmaps, Probes)
- Camera system (FOV, Viewport, Screenshots)
Phase 4 - Advanced Features 🔄
- ~100+ commands
- Audio system (AudioSource, Mixer, 3D Audio)
- Navigation & AI (NavMesh, Agents, Obstacles)
- Particle system (Emission, Modules, Simulation)
- Timeline (Playable Director, Tracks, Clips)
Phase 5 - Build & Tools 🔄
- ~100+ commands
- Build pipeline (Build, Player Settings, Platforms)
- Project Settings (Quality, Physics, Input, Graphics)
- Package Manager (Install, Update, Remove)
- Version Control (Git, Plastic SCM)
- Profiler & Performance (CPU, GPU, Memory)
- Test Runner (Unit Tests, Code Coverage)
- Input System (Actions, Bindings, Devices)
- UI Toolkit (Visual Elements, USS, UXML)
Total Roadmap: 500+ commands across 25 categories
For detailed command documentation with all options and examples, see the category-specific documentation files linked above.