Post

Epilogue

3D Stealth Game with Custom Game Engine [DigiPen]

Project Description

3D first-person game that allows the player to play as a Thief, with abilities such as Time Manipulation.
The game is built using a custom made real-time 3D engine.
Takeoff Engine is written using C++, with gameplay scripts written in C#.

Roles and Responsibilities

Tech Lead | Engine Programmer | Game Programmer

  • Setup project structure, documentation, code architecture and feature requirements for Engine, with focus on proper organization of the codebase and files
  • Implemented the Entity-Component System (ECS) from scratch, dictating the architecture of how components are added/removed/used by game objects and how they should be written.
  • Implemented C# game scripting into C++ game engine using Mono, with hot reload for faster development iteration.
  • Implemented timing system with fixed delta time for physics system use
  • Implemented prefab system, similar to Unity
  • Implemented in-game UI system
  • Implemented scene management (loading/unloading of levels)
  • Implemented serialization using YAML and RTTI (real time type introspection)
  • Implemented integration of Game Editor’s Inspector window with Engine to allow it to display an object’s properties with RTTI
  • Assisted in creating Game Editor by authoring the base architecture to work with the Game Engine
  • Assisted with various Game Editor features and bug fixes
  • Assisted with various bugs such as a crash in the Physics system due to a multi threaded issue
  • Assisted with the animation system
  • Assisted in creating misc gameplay scripts like camera panning for cutscenes, puzzles and doors etc.

Project Details

Project Duration: 8 months
Tools/Platform: Custom Engine (Takeoff Engine), C++, C#
Team size: 11

Game Features

  • Custom 3D engine built from scratch in C++
  • Integrated C# scripting with mono
  • Custom written ECS
  • Implemented graphics with Vulkan
  • Full game editor created with Dear IMGUI
  • Prefabs, scene management, serialization, RTTI
  • Integrated 3D rigidbody physics with Jolt physics library
  • Time slow mechanic
  • Guard AI patrol behaviour
  • Animated sequences of cameras
  • Interactable objects in environment
  • 3D Spatial audio

Showcase

Gameplay Demo

Engine Demo

Download

Download link

Instructions:

  1. Download and unzip the file
  2. Double click on the executable file to run the game
This post is licensed under CC BY 4.0 by the author.