This enum describes what should be done on the render target when the GPU is done rendering into it.
When the GPU is done rendering into a render target, this setting specifies the action that should be performed on the rendering results. Tile-based GPUs may get performance advantage if the store action is DontCare. For example, this setting can be useful if the depth buffer contents are not needed after rendering the frame.
Please note that not all platforms have load/store actions, so this setting might be ignored at runtime. Generally mobile-oriented graphics APIs (OpenGL ES, Metal) take advantage of these settings.
Store | The RenderBuffer contents need to be stored to RAM. If the surface has MSAA enabled, this stores the non-resolved surface. |
Resolve | Resolve the (MSAA'd) surface. Currently only used with the RenderPass API. |
StoreAndResolve | Resolve the (MSAA'd) surface, but also store the multisampled version. Currently only used with the RenderPass API. |
DontCare | The contents of the RenderBuffer are not needed and can be discarded. Tile-based GPUs will skip writing out the surface contents altogether, providing performance boost. |