The Arachnid II Game Engine is a free, open source, 3D game engine that I developed between 2012 and 2015. The engine is built with C++ and DirectX 11, and contains over 70,000 lines of code! Some features of this engine include deferred rendering, 3D audio rendering, shadow mapping, character animation, terrain rendering, HDR post-processing, binary space partitioning, level editing, and first-person player navigation.
The first public release of the Arachnid II Game Engine will be made available on this website in the near future! However, over the next few months a series of videos demonstrating the technical features and capabilities of the Arachnid II Game Engine will be posted. There's a lot to show, so stay tuned!
Character Animation: The Arachnid II Game Engine features a character animation system that uses the 2016 Autodesk FBX SDK to import meshes and animations stored in the .FBX, .3DS, .DAE, and .OBJ file formats. Arachnid II's shader management system automatically selects an appropriate shader for an imported model based on the textures and materials that are available. For example, if a model includes normal maps and and alpha maps, the engine will automatically select a shader that performs bump mapping and transparency in the pixel shader stage.
Cascaded Shadow Mapping: The Arachnid II Game Engine uses a cascaded shadow mapping technique to render dynamic shadows for directional lights. In this approach, the player's viewing volume is split into a set of non-overlapping sub-frusta. A separate shadow map is rendered for each frustum, and the resolution of each shadow map is decreased based on its distance from the camera.
Level Editing: The levels and environments in the Arachnid II Game Engine are designed with the open source Radiant Level Editor, which is the official level design tool for the id Tech family of game engines. Using this editor, a level designer is able to construct buildings, props, terrains, ladders, stairs, and "trigger volumes" for games using Arachnid II.
Binary Space Partitioning: The Arachnid II Game Engine uses a BSP-Tree to represent the static objects in an environment for efficient collision detection and rendering. The Arachnid II Game Engine currently supports BSP collision detection tests for rays, axis-aligned bounding boxes, spheres, and ellipsoids.
More details and videos of the Arachnid II Game Engine are coming soon!