Author Archives: Allen Chou

About Allen Chou

Physics / Graphics / Procedural Animation / Visuals

Game Physics: Broadphase – Overview

This post is part of my Game Physics Series. As mentioned in this introductory post, a broadphase is the algorithm of choice to efficiently decide whether it is possible for two colliders to collide, without using the actual collision detection … Continue reading

Posted in Gamedev, Physics | 6 Comments

Game Physics: Motion Dynamics Implementations

This post is part of my Game Physics Series. This post presents possible implementations of motion dynamics for a physics engine. For fundamentals of motion dynamics, please refer to this post. Rigid Body Interface Below is what a typical rigid … Continue reading

Posted in Gamedev, Physics | 15 Comments

Game Physics: Motion Dynamics Fundamentals

This post is part of my Game Physics Series. Before delving deep into the programming aspect of physics engines,  I would like to first go over the fundamentals of motion dynamics. Unless specified otherwise, all discussion is in 3D. Also, … Continue reading

Posted in Gamedev, Physics | 2 Comments

Game Physics: Introduction & Acknowledgements

This post is part of my Game Physics Series. I shifted from being the graphics programmer to being the physics programmer for my DigiPen game team half a year ago as we started developing our junior project. Knowledge on game … Continue reading

Posted in Gamedev, Physics | 7 Comments

Intrusively Linked Lists with Safe Link Destruction

This post is part of my Game Programming Series. My current game project at DigiPen greatly benefits from “smart” intrusively linked lists that support multiple links per object and automatic link removal from lists upon destruction. My implementation was inspired … Continue reading

Posted in C/C++, Gamedev | 5 Comments

Game Math: “Cross Product” of 2D Vectors

This post is part of my Game Math Series. Cross Product in…2D? So, the cross product of two 3D vectors is a 3D vector, which is in the direciton of the axis of rotation for rotating the first vector to … Continue reading

Posted in Gamedev, Math | 9 Comments

Bending Solid Geometry in Planetary Annihilation

This post is part of My Career Series. Two months ago, I started my internship at Uber Entertainment to work on Planetary Annihilation, which is currently in closed Alpha (you can still purchase Early Alpha Access into the game through … Continue reading

Posted in Gamedev, Math, Programming | 20 Comments

Memory Management part 3 of 3: STL-Compatible Allocators

This post is part of my Memory Management Series. In part 1 and part 2 of this series, I showed how to implement a fix-sized memory allocator and a C-style interface. Part 3 will demonstrate how to make an allocator … Continue reading

Posted in C/C++, Gamedev | 1 Comment

Memory Management part 2 of 3: C-Style Interface

This post is part of my Memory Management Series. In part 1 of this series I showed how to implement a memory allocator that allocates fix-sized pages and blocks. Part 2 is going to cover how to implement a C-style … Continue reading

Posted in C/C++, Gamedev | Leave a comment

Memory Management part 1 of 3: The Allocator

This post is part of my Memory Management Series. Why Bother Building Your Own Memory Management System? Memory management is crucial for game development. It is even more important for console game development, since consoles have hard memory limits. Many … Continue reading

Posted in C/C++, Gamedev | 5 Comments