Lines Matching refs:stateCache
639 const array_view<RenderNodeGraphNodeStore*>& renderNodeGraphNodeStores, StateCache& stateCache)
650 stateCache.usesSwapchainImage = false; // reset
658 if (stateCache.multiRenderPassStore.supportOpen &&
659 (stateCache.multiRenderPassStore.renderPasses.size() == 0)) {
663 stateCache.multiRenderPassStore.supportOpen = ref.renderCommandList->HasMultiRenderCommandListSubpasses();
666 ProcessRenderNodeCommands(cmdListRef, nodeIdx, ref, stateCache);
669 if (stateCache.usesSwapchainImage) {
686 const uint32_t& nodeIdx, RenderNodeContextData& ref, StateCache& stateCache)
700 RenderCommand(nodeIdx, listIdx, ref, *static_cast<RenderCommandBarrierPoint*>(cmdRef.rc), stateCache);
705 nodeIdx, listIdx, ref, *static_cast<RenderCommandBeginRenderPass*>(cmdRef.rc), stateCache);
709 RenderCommand(nodeIdx, listIdx, ref, *static_cast<RenderCommandEndRenderPass*>(cmdRef.rc), stateCache);
825 RenderNodeContextData& nodeData, RenderCommandBeginRenderPass& rc, StateCache& stateCache)
828 BeginRenderPassParameters params { rc, stateCache, { RenderCommandType::BEGIN_RENDER_PASS, &rc } };
832 const bool hasRenderPassDependency = stateCache.multiRenderPassStore.supportOpen;
850 subpassResourceStatesRef, finalImageLayouts, stateCache);
854 subpassResourceStatesRef, finalImageLayouts, stateCache);
858 subpassResourceStatesRef, finalImageLayouts, stateCache);
863 subpassResourceStatesRef, finalImageLayouts, stateCache);
867 rc.renderPassDesc, subpassResourceStatesRef, finalImageLayouts, stateCache);
873 rc.renderPassDesc, subpassResourceStatesRef, finalImageLayouts, stateCache);
884 UpdateMultiRenderCommandListRenderPasses(stateCache.multiRenderPassStore);
898 params.stateCache.multiRenderPassStore.renderPasses.push_back(¶ms.rc);
901 params.stateCache.multiRenderPassStore.renderPasses[0] };
913 params.stateCache.multiRenderPassStore.firstRenderPassBarrierList = nodeData.renderBarrierList.get();
914 params.stateCache.multiRenderPassStore.firstBarrierPointIndex =
970 if (params.stateCache.checkForBackbufferDependency && RenderHandleUtil::IsSwapchain(handle)) {
971 params.stateCache.usesSwapchainImage = true;
978 array_view<ImageLayout> finalImageLayouts, StateCache& stateCache)
1011 const RenderNodeContextData& nodeData, RenderCommandEndRenderPass& rc, StateCache& stateCache)
1013 const bool hasRenderPassDependency = stateCache.multiRenderPassStore.supportOpen;
1015 const bool finalSubpass = (rc.subpassCount == (uint32_t)stateCache.multiRenderPassStore.renderPasses.size());
1022 stateCache.multiRenderPassStore.renderPasses.clear();
1023 stateCache.multiRenderPassStore.firstRenderPassBarrierList = nullptr;
1024 stateCache.multiRenderPassStore.firstBarrierPointIndex = ~0u;
1025 stateCache.multiRenderPassStore.supportOpen = false;
1033 RenderNodeContextData& nodeData, RenderCommandBarrierPoint& rc, StateCache& stateCache)
1045 nodeData.renderCommandList->GetGpuQueue(), { RenderCommandType::BARRIER_POINT, &rc }, stateCache };
1090 const bool renderPassHasDependancy = stateCache.multiRenderPassStore.supportOpen;
1091 if (renderPassHasDependancy && stateCache.multiRenderPassStore.firstRenderPassBarrierList) {
1092 PLUGIN_ASSERT(!stateCache.multiRenderPassStore.renderPasses.empty());
1093 stateCache.multiRenderPassStore.firstRenderPassBarrierList->AddBarriersToBarrierPoint(