Files
commander-ai-lab/unity-client/README.md

70 lines
2.1 KiB
Markdown

# Commander AI Lab — Unity Client
Unity front-end for Commander AI Lab. Communicates with the FastAPI backend (`lab_api.py`) via REST API.
## Requirements
| Tool | Version |
|---|---|
| Unity | 2022 LTS (6000.0+) |
| Render Pipeline | Universal Render Pipeline (URP) |
| .NET | .NET Standard 2.1 |
| Backend | Commander AI Lab FastAPI (port 8080) |
## Setup
1. Open Unity Hub
2. Click **Add** → select this `unity-client/` folder
3. Open the project in Unity 2022 LTS
4. Install required packages via Package Manager (see `Packages/manifest.json`)
5. Start the FastAPI backend: `python lab_api.py`
6. Open the `MainMenu` scene and press Play
## Folder Structure
```
unity-client/
Assets/
Scenes/ — All Unity scenes
MainMenu.unity
Collection.unity
DeckBuilder.unity
DeckGenerator.unity
Simulator.unity
Coach.unity
Scanner.unity
Training.unity
Precon.unity
Scripts/
Models/ — C# POCOs matching FastAPI response shapes
Services/ — ApiClient.cs, CardImageCache.cs
UI/ — Scene-specific controllers
Animation/ — CardAnimator.cs, BattlefieldAnimator.cs
Prefabs/
CardPrefab.prefab
DeckSlotPrefab.prefab
ChatBubble.prefab
Materials/ — URP materials + Shader Graphs
Textures/ — UI sprites, card back
Fonts/
Packages/ — Unity package manifest
ProjectSettings/ — Build settings, input system config
```
## Build Targets
| Platform | Instructions |
|---|---|
| **Windows** | File → Build Settings → PC/Mac → Windows x86_64 |
| **WebGL** | File → Build Settings → WebGL (requires Brotli compression) |
| **Android** | File → Build Settings → Android (requires Android SDK) |
| **iOS** | File → Build Settings → iOS (requires Xcode on Mac) |
## API Configuration
The default backend URL is `http://localhost:8080`. Change it from the **Settings** panel in the MainMenu scene or pass it as a WebGL URL parameter: `?server=http://your-server:8080`
## GitHub Issues
See Epic [#45](https://github.com/KoalaTrapLord/commander-ai-lab/issues/45) for full task breakdown.