Open paroj opened 6 years ago
PSOs still need caching: https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/vkCreatePipelineCache.html
also they are required for Metal (citing Matias):
D3D11 & GL drivers implement this for you internally, and usually they offload the cache to a secondary thread to hide the latency. They implement the caches inside DrawPrimitive calls. So Ogre that means the right place to place the PSO cache is in MetalRenderSystem::_render(const RenderOperation& op)
maybe resurrect this for D3D11: https://bitbucket.org/sinbad/ogre/pull-requests/701/direct3d11-caching-of-render-state-objects/diff
Pipeline state
references