Loading
Bug 1676559 - Pt 8 - Move render target pool from renderer to frame building. r=nical,jnicol
This is an incremental but important step to implementing render tasks as a proper graph. By moving the render target management to the frame building step, we know the texture_id of all sub-passes before the batching is done for any passes that use these as inputs. This means that we can directly reference the texture_id during batch, rather that the old `RenderTaskCache` and `PrevPassAlpha` / `PrevPassColor` enum fields (although removal of all these will be done in the next patch). Another advantage of this is that we have much better knowledge of which targets are required for rendering a given frame, so these can be allocated up front at the start of a frame. This may be a better allocation pattern for some drivers. We also have better knowledge available on when a texture can be invalidated, and the render target pool management is simpler since it is the same as the way other texture cache textures are handled. Differential Revision: https://phabricator.services.mozilla.com/D98547