b4209b138f6bda863009568bf8dc19eb5cf8361c
This means that rendering clay with AO only needs 1 geometry pass. Thus greatly improving performance of poly heavy scene. This also fix a self shadow issue in the AO, making low sample count way better. We also do not need to blit the depth anymore since we are doing a fullscreen shading pass. The constant cost of running the a deferred shading pass is negligeable. This include quite a bit of code cleanup inside clay_engine.c. The deferred pipeline is only enabled if at least one material needs it. Multisampling is not supported yet. Small hacks when doing deferred: - We invert the normal before encoding it for precision. - We put the facing direction into the sign of the mat_id. - We dither the normal to fight the low bitdepth artifacts of the normal buffer (which is 8bits per channel to reduce bandwidth usage).
Description
No description provided
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%