PLANTS VS ZOMBIES (3D)
About


Plants vs Zombies 3D is a reimagined take on the beloved tower defense classic, built entirely in Unity with modern gameplay mechanics and a fresh visual perspective. Developed as a solo project, this 3D adaptation brings the iconic strategy gameplay into a fully interactive environment, where players defend their home using a lineup of powerful, animated plants against waves of quirky, increasingly challenging zombies.
This project showcases my skills in gameplay programming, AI behavior design, Unity animation systems, and performance-optimized object pooling. Inspired by the original PVZ, this version delivers a familiar yet refreshing experience for fans and newcomers alike.
Project Info
Role: Programmer
Team Size: 2
Development Time: 3 weeks
Tools : Unity, C#, Blender


My Roles
Programmer - As the only programmer in the team I was tasked with coming up with the state machine behaviors for the zombies, the behaviors of the plants and the overall game play mechanics and environemnt of the game
Grid Setup
I created a grid system using rows and columns where each cell represents a plant slot. A GridManager handles cell data, placement validation, and occupancy checks to ensure smooth and accurate plant deployment during gameplay.
Plant Behaviours
Each plant has a unique behavior defined by a scriptable object. These behaviors include actions like shooting, generating sun, or blocking zombies. A base script triggers these actions at set intervals, using data from the assigned scriptable object to control cooldowns, damage, and special effects.
Zombie Behavior
Each zombie uses a state machine to manage its behavior, with states like Walking, Attacking, and Dead. Transitions occur based on conditions—if a plant is detected, the zombie enters Attacking; if its health drops to zero, it switches to Dead. This modular setup keeps the AI clean, scalable, and easy to extend.
About





