85 lines
3.2 KiB
Markdown
85 lines
3.2 KiB
Markdown
# Brainstorm: Unity Project Setup for Neighborhood Quarterback
|
|
|
|
**Date:** 2026-01-31
|
|
**Status:** Ready for planning
|
|
**Related:** soul.md (game design document)
|
|
|
|
## What We're Building
|
|
|
|
Minimal scaffolding for a Unity project that will become "Neighborhood Quarterback" - a 1v1 real-time capture-the-flag game. This phase establishes:
|
|
|
|
- Unity 6 LTS project with correct settings
|
|
- Build targets for Android, iOS, and Desktop
|
|
- Feature-based folder organization
|
|
- URP 2D rendering pipeline
|
|
- New Input System configured
|
|
|
|
**Explicitly out of scope:** Gameplay code, networking, UI systems, assets. Just the foundation.
|
|
|
|
## Why This Approach
|
|
|
|
### Unity 6 LTS over older versions
|
|
- Latest LTS with best cross-platform tooling
|
|
- Improved mobile build times and runtime performance
|
|
- Active support through 2028
|
|
|
|
### URP 2D over Built-in or 3D
|
|
- Soul doc describes "backyard baseball meets satellite-map clarity" - 2D aesthetic
|
|
- URP 2D provides good lighting options for "night time" mood
|
|
- Better mobile GPU performance than URP 3D
|
|
- 2D Renderer optimized for sprite-based games
|
|
|
|
### New Input System over Legacy
|
|
- Unified touch/mouse handling critical for mobile + desktop
|
|
- Action maps allow defining "select unit", "drag route" abstractly
|
|
- Better support for complex gestures needed for squad command
|
|
|
|
### Feature-based folders over type-based
|
|
- Game has distinct systems (FogOfWar, Jail, Units, MotionLights) per soul doc
|
|
- Keeps related code/prefabs/art together
|
|
- Scales better as features grow
|
|
|
|
## Key Decisions
|
|
|
|
| Decision | Choice | Rationale |
|
|
|----------|--------|-----------|
|
|
| Unity Version | 6 LTS (6000.0.x) | Latest stable, best mobile support |
|
|
| Render Pipeline | URP 2D | 2D game, mobile performance, lighting |
|
|
| Input System | New Input System | Cross-platform touch/mouse |
|
|
| Folder Structure | Feature-based | Matches game's system architecture |
|
|
| Build Targets | Android, iOS, Win/Mac/Linux | Per requirements |
|
|
| Android Config | IL2CPP, ARM64, API 24+ | Modern devices, performance |
|
|
| iOS Config | IL2CPP, ARM64, iOS 13+ | Modern devices, performance |
|
|
|
|
## Open Questions
|
|
|
|
1. **Netcode package?** - Soul doc mentions 1v1 multiplayer, but that's post-scaffolding. Decision deferred.
|
|
2. **Unity Gaming Services?** - Authentication, matchmaking, analytics. Deferred to gameplay phase.
|
|
3. **CI/CD pipeline?** - Out of scope for minimal setup. Add when needed.
|
|
|
|
## Folder Structure
|
|
|
|
```
|
|
neighborhood-quarterback/
|
|
├── Assets/
|
|
│ ├── Features/ # Feature modules (empty initially)
|
|
│ │ └── _Template/ # Copy this for new features
|
|
│ ├── Shared/ # Cross-feature resources
|
|
│ │ ├── Fonts/
|
|
│ │ └── UI/
|
|
│ ├── Settings/ # Project settings
|
|
│ │ ├── URP/ # Render pipeline assets
|
|
│ │ └── Input/ # Input action assets
|
|
│ └── Scenes/
|
|
│ └── Main.unity # Entry point
|
|
├── Packages/ # Unity package manifest
|
|
├── ProjectSettings/ # Unity project settings
|
|
└── docs/ # Design documents
|
|
├── soul.md
|
|
└── brainstorms/
|
|
```
|
|
|
|
## Next Steps
|
|
|
|
Run `/workflows:plan` to generate implementation steps for creating this Unity project scaffold.
|