Descriptores de copias

Los métodos ID3D12Device::CopyDescriptors e ID3D12Device::CopyDescriptorsSimple en la interfaz del dispositivo usan la CPU para copiar inmediatamente descriptores. Se pueden llamar subprocesos libres siempre que varios subprocesos en la CPU o GPU no realicen ninguna escritura potencialmente conflictivas.

Copiar descriptores inmediatamente (escala de tiempo de CPU)

El número de descriptores de origen (para copiar), especificado como un conjunto de intervalos de descriptores, debe ser igual al número de descriptores de destino (para copiar a), especificado como un conjunto independiente de intervalos de descriptores. De lo contrario, los intervalos de origen y destino no tienen que alinearse. Por ejemplo, un conjunto disperso de descriptores se podría copiar en un destino contiguo, viceversa, o en alguna combinación.

Varios montones de descriptores pueden participar en la operación de copia, tanto como origen y destino. El uso de identificadores de descriptores como parámetros significa que los métodos de copia no se preocupan por los montones en los que se encuentra ningún descriptor determinado, sino que solo son memoria.

Los tipos de montón descriptor que se copian de y en deben coincidir, por lo que los métodos toman un único tipo de montón de descriptores como entrada. El controlador debe conocer el tipo de montón de todos los descriptores de la operación de copia dada, por lo que sabe qué tamaño de los datos intervienen en la operación de copia. Es posible que el controlador también tenga que realizar un trabajo de copia personalizado si un tipo de montón de descriptor determinado lo garantiza: un detalle de implementación. Tenga en cuenta que los identificadores descriptores no identifican a qué tipo apuntan; por lo tanto, se requiere un parámetro adicional para la operación de copia.

Se proporciona una API alternativa a CopyDescriptors para el caso simple de copiar un único intervalo de descriptores de una ubicación a otra: CopyDescriptorsSimple.

Para estos métodos de copia de descriptores basados en dispositivos (escala de tiempo de CPU), los descriptores de origen deben proceder de un montón de descriptores visibles que no sean sombreador. Los descriptores de destino pueden estar en cualquier montón de descriptores que sea visible para la CPU (sombreador visible o no).

Descriptores de