Collision Detection
The collision detection system is needed to prevent players from walking through walls and other game entities. It is also used to detect when a game object (i.e. a gun bullet) hits another (i.e. terrorist). Collision detection is closely linked to the graphics and physics engines.
Mathematics Knowledge
Linear Algebra: Vectors, matrices
Programming Knowledge
As with most of game programming, strong algorithm design and logic skills needed here.
Artificial Intelligence
Artificial intelligence attempts to give life to computer-controlled entities. By defining behavior and motivation of each of these entities, they will react accordingly to player’s actions. AI is an important and largely untapped area of game programming.