Combat Pool

Created using C#/.NET/XNA, Blender and GIMP for my final-year-project at university, and the subject of my dissertation.

The engine centres on a navmesh for AI navigation, collision (players "crawl" on its surface) and lookup of falloff (light, physics attractors, sounds).

Falloff (of lights, sounds, physics attractors, sounds) runs through a unified system; light/sound/etc. entities are proxied through falloff objects which allow any entity to take any shape.

Static lighting was baked in Blender. After some fine-tuning, 60FPS was achieved on first-generation Windows Phones, with only occasional drops to 40.

Unfortunately, the game design was not up-to-par; it is a vehicular combat game based on pool, where teams use dual miniguns to try to push one another down pockets. The sudden loss of control when you are under fire is very disorienting and can cause motion sickness.


Turn left
Turn right
Right Control/Ctrl
Fire miniguns



Playable demo
Requires the .NET Runtime v4.0. The XNA runtime is included.
Source 1 2 3
Source code and assets. Was built at the time using the Windows Phone 7 SDK, but may be buildable using other versions of Visual Studio 2010..
Discusses the development process, its inspiration, and evaluation.