
Role:
Technical Director
Gameplay | AI Programmer
Enemy Behavior Designer
Project Type:
Academic Project
Date:
Aug 2023 - Dec 2024
Skills:
AI Programming | Systems Design
Unreal Engine Proficiency
Leadership | Collaboration
Team Size:
21
Project Description:
Remanence is an immersive first-person souls like developped using Unreal Engine 5.2. In this exciting project, I serve as the Technical Director, Enemy Behaviour Designer and Programmer.
Contributions:
Led the design and implementation of enemy behaviors in Unreal Engine 5.
Prototyped and finalized 4 bosses and 5+ units, handling bug fixes, iteration, and feature development.
Utilized UE5's AI system and EQS with Blueprints and C++ to craft dynamic enemy behaviors.
Served as Technical Director, coordinating between the technical team and other disciplines.
Iterated on menu and game UI using Unreal UMG, enhancing functionality and polish.
Utilized UE5's Trace and Profiler tools, along with commands like
stat gpu
andstat game
, to identify performance bottlenecks and implement optimization solutions.Worked closely with environment and lighting artists to ensure proper mobility settings for actors and lights, and determined which objects could have shadows disabled to improve performance.
Collaborated with sound designers to develop a state machine for controlling Wwise music states, ensuring seamless music transitions and preventing duplicate event triggers.
Implemented character sound effects using custom AnimNotifies, adding depth to gameplay feedback.
Challenges:
Technical Director Role:
As the technical director, I had to juggle nonstop work while learning how to collaborate with other disciplines and understand their workflows.
Enemy Behavior Programming:
Balancing difficulty and fairness in enemy design was tough. I built behaviors around the player’s abilities, aiming to create AI that actively challenged the player.
Challenge vs. Fun:
Finding the right balance when crafting behaviors was tricky—like deciding how much information the enemy should have about the player’s state. For instance, should an enemy exploit the player being out of stamina?
Learning Unreal Engine:
At the same time, I was diving into Unreal Engine, picking up new tools and workflows, which added to the challenge of managing all aspects of the project.
Performance:
As the project scope expanded, performance issues became increasingly significant. I spent much of my time running the Unreal Profiler and utilizing various stat commands to identify areas requiring optimization.
Accomplishments and Lessons Learned:
Working with game designers, artists, and sound designers, I prioritized understanding their workflows and roles by asking questions and communicating often.
This approach helped me learn the full pipeline of creating game-ready characters, including proxies, retopology, rigging, weight painting, UV unwrapping, and texturing.
Similarly, I gained insights from game and sound designers, enabling me to develop a system for properly scoping and creating multiple enemies in Remanence.
This knowledge informed my decisions as a tech lead and designer, particularly in enemy design and scoping.