🎮 The Game Dev Iceberg: Turning Simple Gameplay into a Technical Reality
Don't let a clean, simple prototype fool you, under the hood of every game lies a massive web of integrated systems and invisible troubleshooting. I just wrapped up this Unity 3D prototype, and while it looks straightforward, the engineering journey behind it was a masterclass in debugging and system architecture.
Here is a breakdown of what went into bringing this project together:
🏃♂️ 1. Rigging & Animation Pipeline Fixes
Working with Mixamo assets often means wrestling with import quirks. I ran into a massive issue where animations outside of the idle state completely ignored the ground plane, causing the character to float despite the collider being grounded.
The Fix: Solved the transform offset mismatch programmatically (using a precise -1 offset calibration) to keep the character flush with the ground, eliminating jitter and smoothing out the transition states in the Animator Controller.
🧠 2. Adaptive AI Pathfinding & Pacing
Instead of a simple "see player, run to player" script, I implemented dynamic pacing for the Zombie AI.
If the player is far away, the zombie runs to close the gap.
Once the zombie gets within a close radius, it drops to a menacing walk, tightening the tension before executing an attack state on collision.
🎯 3. Gameplay Mechanics & Raycasting
The loop is simple but relies on solid foundational logic. Collecting 5 coins shifts the player's state and unlocks a firearm. From there, I implemented a custom Raycasting system to handle real-time hit detection, perfectly syncing the shot with the zombie's physics-based death animation.
🎧 4. Immersive 3D Spatial Audio
To build actual tension, audio can't just be flat. I integrated spatial 3D audio tied directly to the zombie's transform. If the threat is on your left, it pans strictly to the left channel of your headphones, shifting dynamically as you move to give the player full situational awareness.
🎮 5. Input Systems & Camera Control
Built a custom 3rd person camera follow script to keep tracking smooth and dynamic. Additionally, I built in cross-platform controller support fully tested and mapped on an Xbox 360 controller, and structurally ready for PlayStation input mapping as well.
From level design and world building to multisystem integration, this project reminded me that game development is rarely about writing brand new code from scratch, it's about the grit it takes to make completely different systems talk to each other without breaking.
On to the next challenge! 🚀
If you are looking to bring your own game ideas to life, need custom mechanics developed, or want to optimize your existing C# / Unity systems, I'm here to help.