
VRAGE
VRAGE™ is an in-house game engine developed by Keen Software House.
VRAGE stands for “volumetric rage” and/or “voxel rage”.
VRAGE 1.0 was built and tailored specifically for Miner Wars 2081 and its core feature is the destructible voxel terrain and open-world environment. Full source code available: https://github.com/KeenSoftwareHouse/Miner-Wars-2081
VRAGE 2.0 is in development and its core feature is volumetricity of the environment. Volumetric objects are structures composed from block-like modules interlocked in a grid. Volumetric objects behave like real physical objects with mass, inertia and velocity. Individual modules have real volume and storage capacity and can be assembled, disassembled, deformed and destroyed. Due to Medieval Engineers development, VRAGE received a fresh upgrade: structural integrity and DirectX 11 rendering. With the addition of planets to Space Engineers, the engine went through a major upgrade to support large scale volumetric entities.
The VRAGE 2.0 engine is designed to support extremely large and fully dynamic and destructible environments, including planets with up to 120 km in diameter and a surface area of 45 238,93421 km2, large space ships and any other creations built by the players. VRAGE empowers our community to build everything they want in space and on planets!
Full source code access for more and better modified content: https://github.com/KeenSoftwareHouse/SpaceEngineers
Space Engineers is the first title fully utilizing VRAGE 2.0 and Medieval Engineers is the second.
Key features
Real Physics
- Planets, moons, asteroids (see more info – http://blog.marekrosa.org/2015/11/planets-because-you-wanted-them_12.html)
- All objects have volume – volumetric objects and voxel terrain
- Static and dynamic objects
- Destructible, deformable and persistent environment
- Super-large worlds – game area spans to 6.6 astronomical units. More info: http://blog.marekrosa.org/2014/12/space-engineers-super-large-worlds_17.html
- Havok Physics and Havok Destruction
Volumetric Objects
- Modular block-like structures interlocked in a grid
- Block sizes: 0.25m,0.5m and 2.5m
- Example usage: space ships, space stations, asteroid stations, castles, fortifications, wooden catapults and more
Voxel Terrain
- Free-form volumetric surface
- Multi-material, mineable and fully destructible
- Multiple levels of LOD transition*
- Procedurally generated in real-time. More info: http://blog.marekrosa.org/2014/12/space-engineers-super-large-worlds_17.html
- Example usage: asteroids in Space Engineers, landscape in Medieval Engineers
Rendering Engine
- Deferred shading
- Dynamic and deformable geometry
- Real-time dynamic global illumination
- Procedurally generated grass
- Physically based rendering
- HDR lighting with soft-shadows
- Directional, point and spot light sources
- GPU Particle effects with particle editor
- Post-processing effects – ToneMapping, Eye adaptation, Bloom, HBAO, FXAA (anti-aliasing), Vignetting, Chromatic aberration
Multiplayer
- Support for both dedicated servers and in-game server
- Streaming technology to replicate parts of the world on client
- Position synchronisation with physics prediction
Character animation system with inverse kinematics and ragdoll
64-bit version – increases the memory limits to tens of gigabytes
Performance Profiler – real-time statistics: rendering, physics, game-play, networking
3D Sound Engine – XAudio2
Music Engine – emotional themes controlled by situation context
Camera – first-person and third-person
GUI – graphical user interface
Input – keyboard and XBOX controller (not supported at this moment: joystick)
Multi-core CPU support
SteamWorks integration
DirectX 9, DirectX 11, C# / .NET
Windows XP, Vista, 7, 8, 10
Libraries used: Havok, SharpDX, Steam