DarkRadiant: master 6d54a63f

Author Committer Branch Timestamp Parent
orbweaver orbweaver master 26.08.2020 20:23 master 919a4395
Changeset CamRenderer defers submitting renderables to shaders

In and of itself, this change does not provide any improved functionality, but
it will be necessary once the front-end renderer becomes responsible for
building the light lists rather than just forwarding them from lit objects. The
previous strategy of submitting renderables directly to shaders as they are
received will no longer work, because we might receive a light AFTER receiving
the illuminated object, and we need to know about all lights and objects in
order to calculate which lights intersect which objects.

The CamRenderer now builds up an internal map of shaders and their associated
renderables (with light lists), which are then submitted to the shader system
in an additional step after traversing the scene graph but before triggering
the back-end render.
mod - radiant/camera/CamWnd.cpp Diff File