Skip to content

add centralized lighting uniforms and benchmark

Ken Martin requested to merge ken-martin/vtk:cache_lighting_uniforms into master

profiling has shown that a lot of time is spent in the mapper setting the lighting uniforms when there are a large number of mappers. In a more traidiotnal program this is handled by a UBO or similar set once per program. This topic addds in capability to the shader program to store an mtime associated with a group of uniforms. It also makes use of that capability by having the renderer generate shader code for the lights, and update the unifoms when requested and needed. The result is a significant reduction in the time spect updating the lights when faced with many mappers.

This topic also includes a new benchmark to test the performance of many actors.

This topic also includes a performance fix to short circuit the mtime check for RenderPasses in the mapper. The most common case is none and yet that case was taking significant time.

Merge request reports