Nineg Engine

Nineg Engine


The Nineg Engine is a larger project of mine being developed for several years now. It is a generic game engine which I plan to use in my future game projects. The engine is aimed at rendering large outdoor scenes with many objects and many visible lights in it. The target platform for the engine is a Windows PC with long term plans to support Mac and Linux. The engine's rendering component is graphics API independent but implemented in Direct3D 9 only for the moment. Plans are for Direct3D 11 and OpenGL. The engine is multithreaded, modular and easily extensible via plugins. The engine is designed to to support next-gen looking rendering techniques (whatever that may mean :)

The engine is not currently available for download, trial or licensing because it is still under heavy development. I plan to release it freely for educational purposes when it is a bit more mature and I also consider licensing for commercial use.


The engine main features are:

  • Modern HDR deferred rendering pipeline with configurable post processing filter stack. Shader model 2.0/3.0 based per-pixel lighting.
  • Powerful material system. You don't write shader code directly (although that is possible too), but rather edit a material graph like in Unreal Engine. Support for animated materials.
  • Fully dynamic lighting with dynamic shadows. All common and some uncommon light types. Lights use the same powerful material system.
  • Flexible and extensible scene graph with quadtree and octree space partitioning.
  • Vast heightmap terrains with smooth LOD transitions.
  • Automatic resource management. The engine loads and unloads models, textures, shaders and other resources as needed.
  • 3D sound system, sound positioning and enviromental sound effects.
  • Extensible in-engine GUI library. All common controls, fully skinable.
  • Comprehensive 3D and 2D math library. Collision detection using basic primitives (box, sphere, triangle). Ray intersection testing.
  • Skeletal keyframe animations.
  • Abstract input system. Support for keyboard, mouse and joystic.
  • Other features:
    • Written in C++, compiles natively for both 32- and 64-bit platforms.
    • Unicode support throughout the engine API and GUI.
    • Multithreading and background task processing.
    • Built in XML parser.
    • Built in HTTP client.
    • Virtual file system.
    • System level library with tons of utilities. Also serves as platform abstraction layer.
More features to come:
  • Interactive realistic physical simulation.
  • Video streaming to texture from various sources (video files, web, camera).
  • Client/server networking architecture.
  • Planned Direct3D 11 and OpenGL support.
  • Planned Linux and Mac support.


Click on images to enlarge.

Older screenshots from the old forward renderer: