Cradle Engine


Cradle Engine 2 (Dec 2014 -     )

Author : Metin Arıca
Language : C++
Graphic API : OpenGL
Shader : GLSL

After 4 years of break, I decided to remake my engine as a spare time project.  I will add next-gen features also reimplement all the features of previous version.

Work in Progress
-     Vulkan
-     Cascaded Voxel-Based Ray-Tracing with Spherical Harmonics

New Features
-     VXGI (Voxel-Based Diffuse & Specular Reflection)
-     Physically-Based Shading
-     MultiDrawIndirect (with Static/Dynamic/Skeletal mesh support)
-     Bindless Textures
-     Automated Batching
-     Deferred Rendering (with normal/diffuse/specular/transparent materials)
-     Screen Space Reflection with Raymarching (distance cull & screen bounds fadeout)
-     Screen Space Motion Blur (with per pixel motion vectors)
-     LightIndexed Light Culling (Cradle Engine exclusive method) [video]
-     Depth of Field (automated focusing with camera lens settings)
-     Volumetric Fog
-     Temporal Anti-Aliasing
-     Anti-Aliasing Filters (FXAA/DLAA/NFAA)
-     Deferred Decals
-     Instanced Stereo Rendering [video]
-     HDR Rendering
-     Custom Tonemapper (modified curve based on Reinhard)
-     Occlusion Culling (rasterization based / updating command buffers in GPU)
-     Screen Space Ambient Occlusion
-     Skymap Generator (single pass - compute based)
-     Signed Distance Field Generator
-     Shader System (hot-reloading & include mechanism for GLSL)
-     Color Grading
-     Dual Paraboloid Environment Mapping (for SSR non-hit pixels)
-     Quad-Based Light Culling (vertex shader only)
-     Skeletal Bone Animation (vertex shader, 4 bones, compact bone matrix, precalculated bindpose)
-     GPU Particles (with Screen Depth / Scene Voxel collision)
-     Deferred Shadowmap
-     GPU Cloth Simulation (with Screen Depth / Scene Voxel collision)
-     Material Manager (with Maps and Lit, Unlit, 2-Sided, Self-Illuminated, Cutout settings)

3DSMax - Cradle Mesh Exporter (.cmesh/.cskel/.canim/.csdf/.cmorph/.xml files)
. Multi-Material support
. Skeletal Bone Animation support (with fps, range & bone count option)
. Per vertex weighted TBN
. Per vertex ambient occlusion
. Signed Distance Field calculation
. Morph target support

Unity - Cradle Mesh Exporter (.cmeshv2)


Unity Editor Cradle Scene Exporter (.xml)

. Supports Renderer, SkinnedMeshRenderer, Material, Light, Camera & AudioSource



Cascaded Voxel-Based Ray-Tracing with Spherical Harmonics
Motion Blur
Light Shafts
Depth of Field
Volumetric Light with Bloom
VXGI
Skin
VXGI - Reflection Debug View
Occlusion Culling
Instanced Stereo Rendering
LightIndexed Deferred Rendering
GPU Cloth Test
Volumetric light with dithered raymarching
GPU Particles with scene depth collision
Quad-Based Light Culling demonstration 256 dynamic point lights
Screen Space Reflection - Proof of Concept
Screen Space Reflection - Efficiency overview

Cradle Engine (2009-2011)

Cradle Engine is render based game engine. It's my spare time hobby project. I decided to implement my M.S. thesis with my engine. Result of thesis work, exclusive GI technique called Bilinear Interpolated Reflective Shadow Maps (BIRSM) included to Cradle Engine.

Features
-     Indirect Lighting (Reflective Shadow Maps & "Cradle Engine Exclusive BIRSM")
-     Reverse Reprojection Cache optimization (Caching GI Buffer)
-     Shadow Mapping (CSM with 2-Cascades & rand. rot. kernel pcf smoothing)
-     PostProcess effects (Bloom, Color Tone, SSAO, Depth of Field, Motion Blur, etc..)
-     Water rendering (with realtime generated Reflection & Refraction textures)
-     Backface, Frustum, Occlusion & EarlyZ culling
-     Stencil Shadows (Z-Fail method with silhouette calculation)
-     Vertex animation with vertex displacement
-     Physx support
-     FMod sound support
-     Log Manager, Config Manager, Scene Importer (.ces file)

3DSMax Editor Scene Exporter (.ces file)
. Model
. Material (Ambient, Diffuse, Normal maps)
. Light (SunLight, PointLight types)
. Camera
. Animated Model

Demonstration of Cradle Engine Exclusive BIRSM Technique

Bilinear Interpolated Reflective Shadow Maps (BIRSM)

Reflective Shadow Maps (RSM)

Screen Space Ambient Occlusion (SSAO)

Depth of Field (DoF)

Water with Reflection & Refraction

Multiple Post Effects

Motion Blur

Occlusion Culling

Reverse Reprojection Cache (RRC) Hit & Miss Cache / GI Cache Mask

Seperated Shadow Maps


Cradle Engine Applications :

A* Path Finding

Turn-Based War Simulation

Connect 4 with Multi-Level AI



No comments:

Post a Comment