_____ ____ ____ _ _
|___ /| _ \ / ___|| |__ ___ ___ | |_ ___ _ __
|_ \| | | | \___ \| '_ \ / _ \ / _ \| __/ _ \ '__|
___) | |_| | ___) | | | | (_) | (_) | || __/ |
|____/|____/ |____/|_| |_|\___/ \___/ \__\___|_|
Fly. Fight. Survive.
A 3D space shooter game built with Unity. Pilot your ship through an asteroid field, destroy enemies, and collect pickups for score.
3D Shooter is a Unity game where you control a spaceship in an asteroid-filled environment. Features include:
- Full 6DOF flight controls (pitch, yaw, roll)
- Raycast-based laser weapons
- Enemy AI with pathfinding and obstacle avoidance
- Procedurally generated asteroid field (1000 asteroids)
- Health/shield system with regeneration
- Score tracking with high score persistence
| Requirement | Version |
|---|---|
| Unity Editor | 2021.3 LTS or later |
-
Clone the repository:
git clone https://github.com/DarrenBenson/3D-Shooter.git
-
Open in Unity Hub:
- Click "Open" and select the cloned folder
- Unity will import assets automatically
-
Open the main scene:
- Navigate to
Assets/Scenes/Game.unity - Press Play
- Navigate to
| Action | Input |
|---|---|
| Thrust forward/back | W / S |
| Yaw left/right | A / D |
| Pitch up/down | Arrow Up / Down |
| Roll | Q / E |
| Fire lasers | Left Mouse |
| Boost | Spacebar |
| Mechanic | Details |
|---|---|
| Player health | 10 HP, regenerates 1 HP every 2 seconds |
| Enemy spawn | Every 5 seconds |
| Pickup score | 100 points |
| Enemy kill | 50 points |
| Laser cooldown | 2 seconds |
Assets/
Scripts/ # Game logic (19 C# scripts)
Scenes/ # Game.unity (main), Test.unity
Prefabs/ # Reusable game objects
Materials/ # Laser and trail effects
Asset Store/ # Third-party assets
The game uses an event-driven architecture via GameEventManager.cs:
OnStartGame- Initialises all systemsOnPlayerDestroyed- Triggers game overOnUpdateHealthBar- Shield updatesOnIncrementScore- Score additionsOnRespawnPickup- Pickup respawn
Systems subscribe to events rather than holding direct references, enabling loose coupling.
- SpaceshipCollectionPack - Ship models
- Gems Ultimate Pack - Pickup visuals (AurynSky)
- LowPolyRockPack - Asteroid models (BrokenVector)
- Cartoon FX - Particle effects (JMO Assets)
MIT Licence - see LICENSE for details.