Chip Davis e2ba444aa6 Use deferred store actions instead of tracking multi-pass draws.
The current code does not handle multiple subpasses, nor does it handle
secondary command buffers. Handling subpasses was easy enough. The
problem came with secondary command buffers. Tracking them became
extremely complicated, particularly since pipelines may be set either
inside or outside a render pass, and further, a pipeline set in one
buffer might be used in another.

I then realized a simpler and more elegant solution: Metal's deferred
store actions feature. This allows you to defer setting the store action
for a render pass until encoding time. This is exactly what we need,
since we won't know what store action we actually want until we start
encoding draws. This solution should now work with multiple subpasses
and secondary command buffers, with much less code.
2020-08-31 21:09:11 -05:00
..
iOS
2017-11-17 11:14:29 -05:00
2017-11-17 11:14:29 -05:00
2020-06-09 14:47:11 -07:00