JmCk 2023-08-04 08:46 采纳率: 25%
浏览 14
已结题

Direct12 资源状态转换问题

设置如下屏障进行资源状态转换时,出现一下错误,为什么会出现这个错误,如何解决?

D3D12_RESOURCE_TRANSITION_BARRIER dingdianpingzhaungshuxing3 = {};
    dingdianpingzhaungshuxing3.pResource = dingDianHuanChongQu1.Get();
    dingdianpingzhaungshuxing3.Subresource = D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES;
    dingdianpingzhaungshuxing3.StateBefore = D3D12_RESOURCE_STATE_UNORDERED_ACCESS;
    dingdianpingzhaungshuxing3.StateAfter = D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER;

    D3D12_RESOURCE_BARRIER dingdianpingzhang3 = {};
    dingdianpingzhang3.Type = D3D12_RESOURCE_BARRIER_TYPE_TRANSITION;
    dingdianpingzhang3.Flags = D3D12_RESOURCE_BARRIER_FLAG_NONE;
    dingdianpingzhang3.Transition = dingdianpingzhaungshuxing3;

    mingLingLieBiaoJiSuan->ResourceBarrier(1, &dingdianpingzhang3);


D3D12 ERROR: ID3D12CommandList::ResourceBarrier: Resource(0x0E146FB8:'Unnamed ID3D12Resource Object') (subresource : 0) was bound as DATA_STATIC on this command list before this ResourceBarrier call to transition from state (0x8: D3D12_RESOURCE_STATE_UNORDERED_ACCESS) to (0x1: D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER), which indicates a change to its data (or possibly resource metadata). But it is invalid to change it until this command list has finished executing for the last time. [ EXECUTION ERROR #1002: DATA_STATIC_DESCRIPTOR_INVALID_DATA_CHANGE]

  • 写回答

3条回答 默认 最新

  • P2441M 2023-08-04 09:48
    关注

    根签名里的 descriptor range 有没有设置 DATA_STATIC 的标签?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 8月4日
  • 已采纳回答 8月4日
  • 创建了问题 8月4日