PC and console game development principles. Engine selection, platform features, optimization strategies.
PC/Console Game Development
Engine selection and platform-specific principles.
1. Engine Selection
Decision Tree
What are you building?
│
├── 2D Game
│ ├── Open source important? → Godot
│ └── Large team/assets? → Unity
│
├── 3D Game
│ ├── AAA visual quality? → Unreal
│ ├── Cross-platform priority? → Unity
│ └── Indie/open source? → Godot 4
│
└── Specific Needs
├── DOTS performance? → Unity
├── Nanite/Lumen? → Unreal
└── Lightweight? → Godot
Comparison
| Factor | Unity 6 | Godot 4 | Unreal 5 |
|---|
| 2D | Good | Excellent | Limited |
| 3D | Good | Good | Excellent |
| Learning | Medium | Easy | Hard |
| License | Tiered subscription/eligibility; verify current Unity terms | MIT engine; console middleware may cost extra | Royalties or seat terms depend on use; verify current EULA |
| Team | Any | Solo-Medium | Medium-Large |
Steam Integration
| Feature | Purpose |
|---|
| Achievements | Player goals |
| Cloud Saves | Cross-device progress |
| Leaderboards | Competition |
| Workshop | User mods |
| Rich Presence | Show in-game status |
Console Requirements
| Platform | Certification |
|---|
| PlayStation | TRC compliance |
| Xbox | XR compliance |
| Nintendo | Lotcheck |
3. Controller Support
Map ACTIONS, not buttons:
- "confirm" → A (Xbox), Cross (PS), B (Nintendo)
- "cancel" → B (Xbox), Circle (PS), A (Nintendo)
Haptic Feedback
| Intensity | Use |
|---|
| Light | UI feedback |
| Medium | Impacts |
| Heavy | Major events |
Profiling First
| Engine | Tool |
|---|
| Unity | Profiler Window |
| Godot | Debugger → Profiler |
| Unreal | Unreal Insights |
Common Bottlenecks
| Bottleneck | Solution |
|---|
| Draw calls | Batching, atlases |
| GC spikes | Object pooling |
| Physics | Simpler colliders |
| Shaders | LOD shaders |
5. Engine-Specific Principles
Unity 6
- DOTS for performance-critical systems
- Burst compiler for hot paths
- Addressables for asset streaming
Godot 4
- GDScript for rapid iteration
- C# for complex logic
- Signals for decoupling
Unreal 5
- Blueprint for designers
- C++ for performance
- Nanite for high-poly environments
- Lumen for dynamic lighting
6. Anti-Patterns
| ❌ Don't | ✅ Do |
|---|
| Choose engine by hype | Choose by project needs |
| Ignore platform guidelines | Study certification requirements |
| Hardcode input buttons | Abstract to actions |
| Skip profiling | Profile early and often |
Remember: Engine is a tool. Master the principles, then adapt to any engine.
When to Use
Use when choosing a PC or console engine, integrating platform features, mapping controller actions, or profiling target hardware.
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Verification
Treat tables as design starting points, not guarantees. Prototype the selected mechanic, test accessibility and recovery paths, and measure frame timing, memory and behavior on target hardware before claiming completion. Store submission and licensing requirements must be checked against current official platform documentation.