Кадровые буферы в графическом процессоре на основе плиток существуют в двух местах - версия, хранящаяся в основной памяти (которая является постоянной), и рабочая копия в буфере плиток графического процессора (которая существует только на время затенения фрагмента этой плитки). Содержимое буфера фрагментов записывается обратно в буфер в основной памяти в конце затенения для каждого фрагмента.
Цель затенения на основе плиток состоит в том, чтобы сохранить как можно большую часть состояния в этом буфере плиток и избежать записи его обратно в основную память, если она не нужна. Это важно, потому что доступ к оперативной памяти DRAM феноменально требует много энергии. Инвалидация в конце каждого прохода рендеринга говорит графическому стеку, что эти буферы не нужно сохранять, поэтому можно избежать обратной записи из буфера тайлов в основную память.
Я написал дольше Если вам нужна более подробная информация об этом здесь:
https://developer.arm.com/solutions/graphics/developer-guides/understanding-render-passes/single-view
Для графических процессоров, не основанных на тайлах, основной вариант использования, кажется, использует его как более низкий стоимость версии clear
в начале прохода рендеринга, если вы на самом деле не заботитесь о начальном цвете. Скорее всего, использование его в конце прохода рендеринга мало что даст (но это также не должно повредить).