Aether3D Game Engine
Aether3D is a cross-platform open source 3D game engine programmed in C++ by
Timo Wirén. Its license is zlib License. The engine currently works on Windows, GNU/Linux, OS X and iOS (devices using OpenGL ES 2.0).
- The engine is a DLL that can be dynamically loaded by your application offering clean separation of engine and application code.
- Renderers: OpenGL 3.2 Core Profile, OpenGL ES 2.0.
- Shadow Mapping.
- Texture Atlas support.
- C++11 features that work on Visual Studio 2012, Clang and GCC.
- Batching of 2D geometry.
- Energy-conserving Blinn-Phong.
- Linear space lighting.
- Shaders support normal map, specular map and cube environment map.
- Point, Directional and Spot lights.
- Shader combinations kept simple by using #defines.
- View Frustum Culling.
- Anisotropic texture filtering.
- Audio support for .ogg and .wav.
- Supports compressed DXT and PVR textures.
- Free-look quaternion camera.
- Custom model format, but converters for Wavefront .obj and COLLADA .dae are included.
Development snapshot source code (2012-07-20).
- Compilers: GCC, Visual C++ 2012, Xcode LLVM (Clang).
- Operating systems: Ubuntu 11.10 64-bit, Windows 7 64-bit, OS X Lion.
- Graphics chips: ATI Mobility Radeon HD 5470, NVIDIA GeForce 320M.
The following articles/blogs have been of great help/motivation when I have been coding this engine.
Learning Modern 3D Graphics Programming Through OpenGL
The Danger Zone
Diary of a Graphics Programmer