@@ -452,26 +452,52 @@ HRESULT Model::UploadGpuResources(ID3D12Device* device, ID3D12CommandQueue* cmdQ
452452 for (uint32_t j = 0 ; j < m.Vertices .size (); ++j)
453453 {
454454 cmdList->CopyResource (m.VertexResources [j].Get (), vertexUploads[j].Get ());
455- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.VertexResources [j].Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE ));
455+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.VertexResources [j].Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
456+ cmdList->ResourceBarrier (1 , &barrier);
457+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.VertexResources[j].Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE));
456458 }
457459
458460 cmdList->CopyResource (m.IndexResource .Get (), indexUpload.Get ());
459- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.IndexResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE ));
461+ {
462+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.IndexResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
463+ cmdList->ResourceBarrier (1 , &barrier);
464+ }
465+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.IndexResource.Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE));
460466
461467 cmdList->CopyResource (m.MeshletResource .Get (), meshletUpload.Get ());
462- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.MeshletResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE ));
468+ {
469+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.MeshletResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
470+ cmdList->ResourceBarrier (1 , &barrier);
471+ }
472+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.MeshletResource.Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE));
463473
464474 cmdList->CopyResource (m.CullDataResource .Get (), cullDataUpload.Get ());
465- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.CullDataResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE ));
475+ {
476+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.CullDataResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
477+ cmdList->ResourceBarrier (1 , &barrier);
478+ }
479+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.CullDataResource.Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE));
466480
467481 cmdList->CopyResource (m.UniqueVertexIndexResource .Get (), uniqueVertexIndexUpload.Get ());
468- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.UniqueVertexIndexResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE ));
482+ {
483+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.UniqueVertexIndexResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
484+ cmdList->ResourceBarrier (1 , &barrier);
485+ }
486+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.UniqueVertexIndexResource.Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE));
469487
470488 cmdList->CopyResource (m.PrimitiveIndexResource .Get (), primitiveIndexUpload.Get ());
471- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.PrimitiveIndexResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE ));
489+ {
490+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.PrimitiveIndexResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
491+ cmdList->ResourceBarrier (1 , &barrier);
492+ }
493+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.PrimitiveIndexResource.Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE));
472494
473495 cmdList->CopyResource (m.MeshInfoResource .Get (), meshInfoUpload.Get ());
474- cmdList->ResourceBarrier (1 , &CD3DX12_RESOURCE_BARRIER::Transition (m.MeshInfoResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER ));
496+ {
497+ const auto barrier = CD3DX12_RESOURCE_BARRIER::Transition (m.MeshInfoResource .Get (), D3D12_RESOURCE_STATE_COPY_DEST , D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE );
498+ cmdList->ResourceBarrier (1 , &barrier);
499+ }
500+ // cmdList->ResourceBarrier(1, &CD3DX12_RESOURCE_BARRIER::Transition(m.MeshInfoResource.Get(), D3D12_RESOURCE_STATE_COPY_DEST, D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER));
475501
476502 ThrowIfFailed (cmdList->Close ());
477503
0 commit comments