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

☰
Group Project 6
During this project my group made our custom C++ DX11 Game Engine, which both came with pros and cons.

My Contributions
  • Collision System
  • Debug Drawer
  • Navmesh Implementation
  • Animation Manager
  • PBR
  • And more!


Project Specifications
Team Size: 18
Reference: Diablo 3
Duration: 9 weeks
Speed: 50%
Animation Manager
To make it easier for my group to add animations, I created a stack-based animation system. Animations are pushed onto the stack and popped based on set conditions.

For example, an idle animation is pushed first and set to stay indefinitely. When the player starts walking, a walking animation is pushed on top, overriding the idle animation. Once movement stops, the walking animation is popped, revealing the idle animation again.

This system ensures smooth transitions and makes managing animations simple and flexible.

The feedback I got for this was amazing!
Collision System
We needed a way to check if objects, like bullet projectiles were hitting the target and the player were within specific regions in the game. I implemented Oriented Bounding Box (OBB) collisions. This allowed for more accurate collision detection, especially with rotated objects, compared to simple axis-aligned bounding boxes.

I used matrix transformations to perform OBB vs. OBB and OBB vs. sphere checks, incorporating the separating axis theorem (SAT) for precise results. This system proved crucial for handling interactions in the game, ensuring efficient and accurate detection for bullets and event triggers.
PBR
I wanted to deepen my knowledge of light physics and how it interacts with materials. This showcase is one of the earlier iterations of development, demonstrating key aspects of Physically Based Rendering (PBR), such as Fresnel reflections, and roughness-based light scattering. Even at this stage, the foundation for realistic lighting was already taking shape.
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