Alien Nemesis

C++
OpenGL
SDL2
Mono
ImGUI
GLSL
GLFW
JSON
Alien Nemesis

As an Engine Programmer for Alien Nemesis, I developed and optimized core systems for TheOneEngine, the custom C++ engine powering the game. My responsibilities included creating a versatile camera system with multiple behaviors, a robust resource manager for efficient asset handling, and implementing UI elements and gameplay features. These contributions were crucial to the game's performance, stability, and overall player experience.

My Contributions

Light Pass & Deferred Shading

Engineered and implemented a high-performance deferred shading pipeline. This advanced rendering technique decouples lighting from geometry, enabling the scene to support thousands of dynamic lights simultaneously with minimal performance degradation, which was critical for the game's complex and action-heavy environments.

Dynamic Shadow Mapping

Developed and integrated a dynamic shadow mapping system specifically for spotlights. This involved creating and managing shadow maps in real-time, allowing for realistic, moving shadows that added significant depth and immersion to the game world without compromising frame rates.

Scripting Engine Architecture

Played a key role in architecting the scripting engine, designing the structural link between game scripts and the core C++ engine (TheOneEngine). This involved creating a clean and efficient API that empowered designers to implement gameplay logic and behaviors with high-level scripts while maintaining engine performance.

Scene Manager

Designed and implemented the core Scene Manager module, a critical component responsible for orchestrating scene data across all engine states. This system managed loading, saving, and transitioning between scenes, ensuring a seamless experience in the game editor and during active gameplay.

Bug-fixing and Problem Solving

Acted as a key technical support resource for the team, proactively identifying and resolving critical issues within both the engine and gameplay code. This collaborative effort was essential for maintaining project stability and ensuring a smooth development cycle.

Voice Acting

Contributed creatively to the project by performing and recording the voice lines for the main character, Isaac, adding a unique and personal touch to the game's narrative experience.

Prefab System Architecture

Architected and initiated the development of a robust prefab system, a foundational engine feature for streamlining content creation. This involved designing the data structure for serializing and deserializing GameObject hierarchies, their components, and properties, enabling developers to create and reuse complex object templates, significantly accelerating the level design workflow.

Custom Serialization

Designed and implemented a flexible, JSON-based serialization system for scenes, GameObjects, and their components. This system was crucial for saving and loading game states, enabling features like the prefab system and ensuring data persistence across the engine.