Galaxy Grit
Solo Project — Unity — Sci-Fi Shooter
Role:
Solo Developer / Gameplay Programmer - Focusing on player mechanics, Shooting, Enemy AI, Waypoints for AI, Blockout
Tools:
Unity
C#
ProBuilder
Terrain Tools
NavMesh
Unity Input System
URP
What I did:
Built a first-person shooter prototype from blockout to playable, prototyping third-person first before switching to first-person for a tighter shooter feel
Implemented enemy AI navigation with NavMesh and waypoints: patrol, then chase on sight/range
Built hitscan raycast shooting, and reused raycasts for grounded checks, tuning for uneven-terrain edge cases
Set up Mixamo-driven Blend Tree animations for AI states (idle/walk/run/attack)
Migrated input handling to Unity's newer Input System using action maps
What I learned:
Blockout first makes iteration easier: ProBuilder helped me validate the space and mechanics early, before polishing.
AI relies on clean navigation setup: learning NavMesh + waypoint logic helped me create more believable enemy movement in 3D.
Raycasts are useful beyond shooting: I used raycasts for grounded checks too, and learned how uneven terrain can cause edge cases that need tuning.
Building this project improved my confidence with Unity’s 3D pipeline and gave me a stronger base for future 3D shooter and AI work.
What’s in the game
Overview
Galaxy Grit is a solo Unity project where I moved from 2D into a full 3D space and built a first-person shooter prototype. I explored the core systems needed for a playable FPS—environment creation, AI movement, raycast shooting, and responsive controls—iterating on perspective by testing third-person first and switching to first-person for tighter shooter feel.
A solo first-person 3D shooter built in Unity, focused on blockout, AI navigation, raycast gunplay, and modern input.
First-person controller chosen after testing third-person, to better suit the shooter gameplay and feel.
Enemy AI navigation using NavMesh + waypoints: enemies patrol between points, then chase the player when in range and line of sight.
Shooter mechanic using raycasting (hitscan): shooting projects a ray from the centre of the screen and registers hits via colliders.
3D environment built using Unity Terrain Tools, shaping the play space with raised/lowered terrain and surrounding mountain ranges.
Level blockout using ProBuilder, letting me test layout and verticality before committing to asset placement.
Animation setup for AI using Mixamo animations and a Blend Tree (idle/walk/run + punch when close).
Player Input System using Unity’s newer input workflow (action maps + action references).
Visual upgrade work using URP and correct material/texture setup when importing 3D assets.

