So even though it works as a realtime GI method, it's quite constrained to some of type of games due to its visual lag (at least there is no distracting noise and you don't need to denoise either!).
tl;dr: this is a perfect fit for static lighting, especially for non RTX cards.
(Realtime) Global Illumination using Raybundles.
Raybundles are quite cool as they don't need a raytracing-capable hardware as they just raster the same scene.
While the original purpose of my implementation is static lighting it can work in realtime (~+2ms)
The reason why I've gone with this method was that I needed nice static lighting with no seams for my game.
Since it's so fast I don't need to bake it into the "maps" files, it can just be computed on the fly.
It works fine on low-end cards such as a GTX 1050ti or a 980M.
@FR3NKD Yes kinda, I had it applied in the video with the same method I did for LightmapGI.
It will be in the prototype branch too, but for the real PR it's not gonna be in (unless my PR for specular occlusion is merged)
Volumetric Lightmap (aka like VoxelGI but with the same static lighting from LightmapGI)
There are no dynamic shadows nor SSAO in the video
#GodotEngine
@solitary_ps@Atirut_W I'm finishing up my prototype so that I can clearly point what is possible or not in the proposal and making sure that it fit properly in the engine (as there are multiple ways to implement and use it...).
It's gonna take a bit longer as I'm currently busy on another project
@solitary_ps@JuanManuelCos16 Though I would like to do insets (so it will work like ReflectionProbe) so you can have a big VolumetricGI node for the global ambiance and smaller nodes as insets (if you need to have detailed volumetric lighting for specific areas...)
@solitary_ps@JuanManuelCos16 Depending on the scene, it can be larger or smaller (quite rare though).
Nature areas such as forests are a good fit for it as it can be much smaller in size than LightmapGI.
Buildings and stuff that require details would be better with LightmapGI for the size.
@justinb75631302 Though there are issues as it's a prototype made in 2 days:
- No denoising yet
- It's limited to being attached to a lightmap (future: I would make it work like a ReflectionProbe node, so that you can place them everywhere and do insets)
- And other stuff I forgot
@justinb75631302 - I don't notice any performance impact compared to probes (in my case it can boost performance as I can disable dynamic shadows)
- I haven't found any weird cases for now (I would have expected some light leaking but it seems invisible...)
- I hope but it will be in a far future
@JuanManuelCos16 Yep, it does work well for trees at it removes most of the traditional lightmap texture problems!
(The left one uses lightmap while the right one uses volumetric)
@JuanManuelCos16 Exactly, all the lighting data is projected onto each face of each voxel at baking time, that get then sampled on each pixel at runtime.
Oh, and it can also be used for static scene! (thought it wasn't its intended usecase)
The left image is LightmapGI and the other one is the Volumetric Lightmap