Paul James Mannering Portfolio
GamesProgramming3D ModellingMultimediaAbout

Project Realism Engine

November 2004 - February 2007


.

  • The Project Realism Engine (PREngine) was my first game engine

  • It was developed while I was at university, as a side project for the first 2 years. In the final year it was used in its first game, called Boy Racer

  • Written in C++ and DirectX 9.0c, using Microsoft Visual Studio.NET 2005, and FX composer 1.8 for HLSL shader development

  • It went through many revisions and started out as just a learning experience with DirectX, but evolved to contain:

    • A physics engine (using Newton Game Dynamics)
    • Lua scripting support
    • XML parser
    • 3D surround sound
    • Complex scene graph (which arranges scenes by material, instance, or distance from camera, for max rendering speed on DirectX 9 hardware)
    • Resource manager (loads .x meshes, .dds textures, .wav sounds, and .fx HLSL effects)
    • Keyboard, mouse, windows controller, and Xbox 360 controller support
    • User interface (UI) system
    • Video player (using DirectShow)
    • Full HLSL shader support (that automatically scales for a range of graphics cards; from shader model 1.1 to 2.0b)

Car Paint

Car Paint Closeup

Parrallax Box

Parrallax Stone

Parrallax Stone Specular

Physics Experiment

Reflection Specular

Physics Demo

Effects Demo

August 2007

.
  • Displays 3 boxes with the following shaders on:

    • (Left) Texture Mapping
    • (Middle) Bump mapping with specular highlights
    • (Right) Parallax mapping with specular highlights
  • All shaders scale from pixel shader version 1 through to 2b (Set shader quality in settings box)
  • Shaders written in HLSL, using FX Composer 1.8
Physics Demo

Physics Demo

July 2007

.
  • Uses Newton Game Dynamics for the Physics

  • Uses the PREngine to load and draw the scene

  • Shows a sphere being projected into a tower of blocks. The physics simulation can be paused and restarted at any time

© Copyright Paul James Mannering, 2004-2016