Jump to content
  • Advertisement
Sign in to follow this  
Mona2000

[D3D12] Copying descriptors

This topic is 1141 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

In the MSDN reference it says that you can copy descriptors on a command list, but the only copy commands that I can find are on the device interface.

Is that part wrong, or did I misunderstand something?

 

Descriptors can also record a descriptor copy call on a command list in the event that the application does not want the copy to occur immediately, but rather when the GPU is executing the command list. This can also be useful if an application chooses to put a descriptor heap in a non CPU-visible memory pool and therefore needs to do a GPU operation to manipulate its contents, or if an application simply wants the update to occur on the GPU time-line. Command list descriptor copies require the source of the copy to be in a non shader visible descriptor heap (from which the command list snapshots a copy the source descriptors into the command list at record time), and the destination must be a shader visible descriptor heap (which at command list execution gets written to by the GPU). The API reference for copying descriptors goes into more detail.

 

Share this post


Link to post
Share on other sites
Advertisement
Well, the good news is that I read that segment the same as you, that you can put a copy call into the command list.

The bad news that the functionality doesn't exist on the command list, only the device as you said.

Given that there doesn't appear to be an API function on the command list to do this (checked via VAX in an example project), I'm going to guess that the docs are wrong/out of date.
(A theory further backed up by a line in the set resource heap docs which say you can only use it on direct command lists which is contradicted by an indirect draw example which uses it on a compute only queue ;))

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!