Global Illumination alternatives

In case you guys want to try out this early version. This is like step 1 out of 10 toward getting it usable, but the scariest part is working (efficient indirect shadowing).

Change 2390645 by on 2014/12/16 19:59:21
Distance Field Global Illumination first working version
* Requires a Movable Skylight + ‘r.DistanceFieldGI 1’ + ‘r.GenerateMeshDistanceFields’ project setting enabled
* Provides a single bounce of Diffuse GI with bounce distance limited by OcclusionMaxDistance (default 6m)
* Virtual Point Lights are placed from the directional light by ray tracing the scene’s distance fields, normal comes from SDF gradient
* Currently only placing 128*128 VPLs up to 40m from camera
* VPLs light irradiance cache samples using hemispherical disk light model, indirect shadowing is provided by the same cone traces used for Distance Field AO
* Irradiance is computed only at irradiance cache points ( every 8 pixels) and interpolated to the rest of the pixels
* Hardcoded half grey material color for now, and poor performance due to brute force VPL lighting