Today we are revisiting WickedEngine, an incredibly capable open source C++ based game engine we first visited way back in 2019. Wicked Engine is the technology powering the recently released GameGuru MAX game engine which we recently covered in this video. Since we initially WickedEngine a ton of new features have been added. Features of Wicked Engine include:
- DirectX 12 & Vulkan renderers
- Networking (UDP)
- 3D mesh rendering & Skeletal animation
- Physically based rendering
- Multiple mapping types (Normal mapping, Displacement mapping, Parallax occlusion mapping, Real time planar reflections, Cube map reflections)
- Refractions (screen space, blurred)
- Interactive Water
- Special Effects (Bloom, Motion Blur, Lens Flares, Light Shafts, Bokeh, etc)
- Multithreaded rendering
- Tessellation (silhouette smoothing, displacement mapping)
- CPU, GPU and Hair particle systems (grass/vegetation)
- Instanced rendering
- MSAA (Forward rendering only)
- FXAA
- TAA (Temporal Antialiasing)
- Supersampling
- Lighting (Directional lights + cascaded shadow maps, Spotlights + shadow maps, Point lights + shadow cubemaps, Soft shadows (PCF))
- BULLET Physics: rigid body, soft body
- 3D Audio (Xaudio2)
- Input: keyboard, mouse, controller (rawinput, xinput), touch
- Controller feedback (vibration, LED)
- Screen Space Ambient Occlusion (SSAO, HBAO, MSAO)
- Stochastic Screen Space Reflections
- Lua Scripting
- Dynamic environment mapping
- Impostor system
- Tiled forward (Forward+) rendering (+2.5D culling)
- Occlusion culling with gpu queries
- Texture atlas packing
- Tiled decals
- Frame Profiler
- Voxel Global Illumination
- Reversed Z-buffer
- Force Fields GPU simulation
- Particle – Depth Buffer collisions
- Ocean simulation (FFT)
- Translucent colored shadows
- Refraction caustics
- Local parallax-corrected environment maps
- Volumetric light scattering
- Smooth Particle Hydrodynamics (SPH) Fluid Simulation
- Ray tracing, path tracing (on GPU)
- Entity-Component System (Data oriented design)
- Lightmap baking (with GPU path tracing)
- Job system
- Inverse Kinematics
- Springs
- Terrain Rendering (material blending)
- Variable Rate Shading
- Real time ray tracing: ambient occlusion, shadows, reflections (DXR and Vulkan raytracing)
- Screen Space Contact Shadows
- Stochastic alphatest transparency
- Surfel GI
- HDR display output
- Dynamic Diffuse Global Illumination (DDGI)
- Procedural terrain generator
Wicked Engine is open source under the MIT license with the source code hosted on GitHub.
Key Links
Wicked Engine GitHub Repository
You can learn more about the C++ powered open source WickedEngine and see it in action in the video below.