Initial commit - Unity game project
This commit is contained in:
105
SETUP_GUIDE.md
Normal file
105
SETUP_GUIDE.md
Normal file
@@ -0,0 +1,105 @@
|
||||
# LiDAR FPS Game - Setup Guide
|
||||
|
||||
## Project Structure Created:
|
||||
- **Assets/Scripts/** - Your C# scripts (including FirstPersonController.cs)
|
||||
- **Assets/Models/LidarScans/** - Where you'll import your GLB files
|
||||
- **Assets/Prefabs/** - For reusable game objects
|
||||
- **Assets/Scenes/** - Your game levels
|
||||
|
||||
## Step 1: Import Your GLB Files
|
||||
|
||||
1. Open Unity and your OGG project
|
||||
2. Copy some GLB files from `K:\OGG\lidar\` to `K:\OGG\OGG\Assets\Models\LidarScans\`
|
||||
- Start with one or two to test (e.g., "my bedroom.glb" or "studio old.glb")
|
||||
3. Unity will automatically import them
|
||||
|
||||
## Step 2: Install glTFast Package (for better GLB support)
|
||||
|
||||
1. In Unity, go to **Window → Package Manager**
|
||||
2. Click the **"+"** button in top-left
|
||||
3. Select **"Add package by name"**
|
||||
4. Enter: `com.atteneder.gltfast`
|
||||
5. Click **Add**
|
||||
|
||||
## Step 3: Create Your Player
|
||||
|
||||
1. In the Hierarchy, **Right-click → Create Empty**
|
||||
2. Rename it to "Player"
|
||||
3. With Player selected, click **Add Component**
|
||||
4. Search for and add: **Character Controller**
|
||||
5. Add Component again, search for: **First Person Controller** (our script)
|
||||
|
||||
## Step 4: Set Up the Camera
|
||||
|
||||
1. In Hierarchy, **Right-click on Player → Camera**
|
||||
2. Position the camera:
|
||||
- Set Position Y to about 1.6 (eye height)
|
||||
- Reset X and Z to 0
|
||||
3. The FirstPersonController script should automatically find this camera
|
||||
|
||||
## Step 5: Import a LiDAR Scan into Your Scene
|
||||
|
||||
1. From Project window, navigate to **Assets/Models/LidarScans/**
|
||||
2. Drag one of your GLB files into the Scene (Hierarchy)
|
||||
3. Select the imported model in Hierarchy
|
||||
4. In Inspector, click **Add Component → Mesh Collider**
|
||||
- This allows the player to walk on it
|
||||
5. You might need to adjust the scale:
|
||||
- Try Scale: X=1, Y=1, Z=1 first
|
||||
- If too big/small, adjust all values equally
|
||||
|
||||
## Step 6: Position Your Player
|
||||
|
||||
1. Select the Player in Hierarchy
|
||||
2. In the Inspector, set Transform Position:
|
||||
- Move the player above your scan (Y=2 or Y=3)
|
||||
- Adjust X and Z to be inside the scan area
|
||||
3. Make sure Character Controller settings are reasonable:
|
||||
- Radius: 0.5
|
||||
- Height: 2
|
||||
- Center: Y=1
|
||||
|
||||
## Step 7: Test Your Game!
|
||||
|
||||
1. Click the **Play** button at the top
|
||||
2. **Controls:**
|
||||
- **WASD** or **Arrow Keys** - Move
|
||||
- **Mouse** - Look around
|
||||
- **Left Shift** - Run
|
||||
- **Space** - Jump
|
||||
- **Escape** - Unlock cursor
|
||||
|
||||
## Troubleshooting:
|
||||
|
||||
### Player falls through the floor:
|
||||
- Make sure your LiDAR model has a **Mesh Collider** component
|
||||
- Check that the Mesh Collider is enabled (checkbox ticked)
|
||||
|
||||
### Can't see anything:
|
||||
- The camera might be inside geometry - move the Player position up (increase Y value)
|
||||
- Check that the Camera is a child of Player and positioned at Y=1.6
|
||||
|
||||
### Movement feels weird:
|
||||
- Adjust the Character Controller's Radius and Height
|
||||
- Try different Walk/Run speeds in the FirstPersonController settings
|
||||
|
||||
### GLB files won't import:
|
||||
- Install the glTFast package (see Step 2)
|
||||
- Alternatively, you can convert GLB to OBJ using Blender if needed
|
||||
|
||||
## Next Steps:
|
||||
|
||||
Once you have basic movement working, we can add:
|
||||
- Crosshair UI
|
||||
- Health system
|
||||
- Shooting mechanics
|
||||
- Enemies/targets
|
||||
- Multiple level loading
|
||||
- Lighting improvements for your LiDAR scans
|
||||
|
||||
## Tips for LiDAR Scans:
|
||||
|
||||
- Your scans might be very detailed - this can slow down the game
|
||||
- You may need to optimize them later (reduce polygon count)
|
||||
- Start with smaller scans (single rooms) before loading larger areas
|
||||
- You can have multiple scans in one scene to create larger levels
|
||||
Reference in New Issue
Block a user