Hi guys 
A little updates:
-
Adding QIBL influence volumes, so now transition between different lights are nice and smooth.
Currently i didnt add additional actors for placing influence volumes in more easy way, but it wouldnt be hard at all.
But the overall light system still need some blueprints support for making tasks of QIBL, importance volumes and lights placements easy and pleasure to work with. And that part would be more hard to figured out.
Anyway, im mostly 100% sure what without a lot of C++ system wouldnt be really friendly. Say “friendly” i mean what you will not be able make something like placing light here, and here and get instant results.
You will need manually place influence volumes, pick with eyedropper some lights and change shaders, but all that work will be not hard, just a bit boring. Well… still a thousand times faster and fun rather what making UV for lightmaps, baking, and all what stuff. And more importantly - lighting are dynamic
-
I change basic shader a little, change some values. It was really easy and simple work, but results was surprisingly good in terms of performance, and i also find some of my stupid errors
. Good news those errors was resolved by click the right check box and like so.
Solution of “importance sampling” was stupid, so here i need more work to find a proper solution.
Anyway, result of shader optimisation are really-really good than in the previous version.
Previous version: approx. 7.3ms, 1 full dynamic QIBL (captured inside editor)
Current version: approx. 6.3ms, 2 (yes, two of them) full dynamic QIBL (captured inside editor)
Current version: approx. 4.4ms, 2 full dynamic QIBL (captured in packed project). Its means about ~237 FPS on my GTX1060 3Gb.
Next plans:
Found solution for importance sampling (kind of…).
Test some really bad lighting scenarious which are not easy to work with with a system like IBL because of possible light bleeding, and light which are should affect scene only with indirect, but not direct light (imagine some light travelling trougth corridor 90deg corner turn, or some obstacles and so on).
Make some stress test with a bunch of QIBLs in dynamic mode.
