Christopher Vedlund Game Programmer Home FABRIK Group Projects Hobby Projects About Me

☰
Group Project 3
This project quickly became one of my favorites, especially because it marked the transition from working in Unity to The Game Assembly’s custom C++ engine, TGE. Unlike commercial engines, TGE came with very limited built-in systems, which meant we had to build many features from the ground up—including collisions, physics,

Working in this kind of low-level environment was challenging, but also incredibly rewarding. It forced me to deeply understand how game systems function under the hood and pushed me to solve problems I would normally rely on an engine to handle for me. That hands-on experience gave me a much stronger grasp of both C++ and engine architecture, and it made every solution feel truly earned.

My Contributions
  • Collision System
  • Force Engine
  • Player Movement
  • Player State Stack
  • And more!


Project Specifications
Team Size: 14
Reference: Katana Zero & Metroid Dread
Duration: 11 weeks
Speed: 50%
Collision System
My goal was to implement a system that would be easy to use for my team members. I could reach that goal thanks to ES which was the name our component system was given.

Im not sure what to write since ive forgotten most of the system
Force Engine
I wanted to make character controller that feels good and natural, so I wanted to make a physics based character controller. But since the engine dont have a physics engine implemented I had to take actions into my own hands and implement an engine which only applies force to objects, therefore the name Force Engine.

This force engine would also make it easier to separate colliders from eachother by simple applying a force.
Player Movement
I want to create a movement system where the player accelerates smoothly in the direction of input while maintaining a maximum speed. The movement should feel responsive, but also natural, with a slight inertia effect when changing directions. Additionally, if no input is given, the player should gradually slow down instead of stopping abruptly. This will make movement feel fluid and more dynamic.
I am part of The Game Assembly’s internship program. As per the agreement between the Game Industry and The Game Assembly, neither student nor company may be in contact with one another regarding internships before April 23rd. Any internship offers can be made on May 5th, at the earliest.
Location Stockholm, Sweden Järfälla 177 47
Contact vedlundchristopher@gmail.com (+46) 768-68 61 70
Links