Release date:2005-03-31
Available on:WIN PC


I wrote EngineX during my second year, it was my first attempt at creating a 3d Game Engine, using DirectX 8 for Windows.

The engine contains a node-tree class which can load any .x format mesh and convert it to a BSP (style) node-Tree. This allows for perfect collision detection and terrain following. The game also features view frustum occlusion, a technique used to create a plane-based viewing "cone" around the camera which can be used to detect whether a vertex, point, bounding box or bounding sphere is within the view of the camera; if not the object is not rendered.

EngineX also contains support of a "paint" and "ink" cel-shading asm shader which can be applied to any game object. The ink shader draws an ink outline around the model and the paint can be used to fill the object with a two-stepped paint style to create the now popular cel-shading technique. Another application of assembly level shader is the full water simulation included in EngineX. The water in EngineX reacts to player movement splashing, and creating ripples like real water.

More common engine elements included in EngineX are support of Skinned and animated .x format meshes, a unified DirectInput wrapper class, the ability to click on objects in world space (using picking) and many other standard engine features.

Key Features:

  • Game Engine Derived from a combination of MazeX and Jim Adams "Programming Role Playing Games in DirectX" book.
  • Node-Tree based BSP collision with Terrain following.
  • View Frustum Occlusion.
  • Animated & Skinned mesh support.
  • collision detection.
  • Vertex and Pixel shader support.
  • 3D Sound.
  • 2d and point sprites with billboarding.
  • Cell Shading.
  • Shader based water simulation.
  • AVI / MPEG full-screen movie playback