About
Unity is my personal game engine project. So far it has been used mainly as a portfolio piece for game programming interviews.
It is an attempt to bring together the wide and bizarre range of programming areas that I have interest in.
Screenshots
Features
Debugging
-
Built in version tracking
-
Custom assert system
-
Loging systems
-
Deprecation manager
-
Inline profiler
-
Console based customizable parameter and function control system.
-
Customizable debug output window system
-
Screenshot output
Utilities
-
Well defined base types
-
Excellent timer library
-
Fully abstracted renderer (currently only OpenGL implementation)
-
Abstracted input system
-
Abstracted file system (BigEndian, LittleEndian)
-
CSV file support
-
String tools and text support
-
Per pixel transparency GUI system
-
Minimal physics library
Maths
-
Full vector, quaternion, matrix libaries
-
Geometry library (2D, 3D, & 4D)
-
Built in statistcs library
-
Very well flushed out random number generators (portions, gaussian, perlin, etc.)
-
Colorspace conversions (RGB, HSL)
Characters and Models
-
Built in geometric primitives (sphere, platonic solids, teapot, rabbit, stanford test models)
-
Extensive mesh connectivity and manipulation support
-
Quake3 character support
-
Quake3 level support (with lightmaps)
Rendering and FX
-
Stenciled reflections and shadows
-
Frustum, PVS, and BSP Rendering support
-
Lightmap support
-
Full featured, truly advanced particle effects system
-
Real time false video and old film effects
-
Procedural, Render, and Video textures
Miscelanious
-
Audio support (via FMod)
-
Webcam support (direct to a texture)
-
Subgame system (currently only Chess and Joust)