Subasignación en los búferes
Los búferes tienen todas las características necesarias en D3D12 para que las aplicaciones transfieran una gran variedad de datos transitorios de la CPU a la GPU. En esta sección se tratan cuatro escenarios comunes para el uso y la administración de recursos y búferes.
De forma similar a D3D11, las aplicaciones de D3D12 todavía necesitan declarar el uso de memoria al asignar búferes en D3D12 en comparación con los recursos dinámicos y de ensayo en D3D11, pero en D3D12, los desarrolladores tienen más flexibilidad y un control más estricto sobre el uso de memoria. Los búferes, a través de la subacación, tienen todas las características necesarias para la administración de memoria de bajo nivel.
En esta sección
Tema | Descripción |
---|---|
Carga de diferentes tipos de recursos |
Muestra cómo usar un búfer para cargar datos de búfer de constantes y datos de búfer de vértices en la GPU y cómo subasignar y colocar correctamente los datos dentro de los búferes. El uso de un único búfer aumenta la flexibilidad de uso de memoria y proporciona a las aplicaciones un control más estricto del uso de memoria. También muestra las diferencias entre los modelos D3D11 y D3D12 para cargar diferentes tipos de recursos. |
Carga de datos de textura a través de búferes |
La carga de datos de textura 2D o 3D es similar a la carga de datos 1D, salvo que las aplicaciones necesitan prestar más atención a la alineación de datos relacionada con el tono de fila. Los búferes se pueden usar ortogonalmente y simultáneamente desde varias partes de la canalización de gráficos, y son muy flexibles. |
Lectura de datos a través de un búfer |
La lectura de datos desde la GPU, como capturar una captura de pantalla, implica el uso del montón de lectura diferida. |
Administración de recursos basada en límites |
Muestra cómo administrar el período de vida de los datos de recursos mediante el seguimiento del progreso de la GPU a través de barreras. La memoria se puede volver a usar eficazmente con barreras que administran cuidadosamente la disponibilidad del espacio libre en la memoria, como en una implementación de búfer en anillo para un montón de carga. |