Bagaimana area sumber daya streaming diurutkan

Saat Anda membuat sumber daya streaming, dimensi, ukuran elemen format, dan jumlah mipmap dan/atau irisan array (jika berlaku) menentukan jumlah petak peta yang diperlukan untuk mendukung seluruh area permukaan. Tata letak piksel/byte dalam petak ditentukan oleh implementasi. Jumlah piksel yang pas dalam petak peta, tergantung pada ukuran elemen format, tetap dan identik apakah Anda menggunakan gerimis standar atau tidak.

Jumlah petak peta yang akan digunakan oleh ukuran permukaan tertentu dan lebar elemen format ditentukan dengan baik dan dapat diprediksi berdasarkan tabel di bagian berikut. Untuk sumber daya yang berisi mipmap atau kasus di mana dimensi permukaan tidak mengisi petak peta, ada beberapa batasan; lihat Pengemasan Mipmap.

Sumber daya streaming yang berbeda dapat menunjuk ke memori yang identik dengan format yang berbeda selama aplikasi tidak bergantung pada hasil penulisan ke memori dengan satu format dan membaca dengan format lain. Tetapi aplikasi dapat mengandalkan hasil penulisan ke memori dengan satu format dan membaca dengan format lain jika formatnya dalam keluarga format yang sama (yaitu, mereka memiliki format induk tanpa jenis yang sama). Misalnya, DXGI_FORMAT_R8G8B8A8_UNORM dan DXGI_FORMAT_R8G8B8A8_UINT kompatibel satu sama lain tetapi tidak dengan DXGI_FORMAT_R16G16_UNORM.

Pengecualian adalah di mana data pendarahan dari satu format alias ke format lain didefinisikan dengan baik: jika petak peta benar-benar berisi 0 untuk semua bitnya, petak peta tersebut dapat digunakan dengan format apa pun yang menginterpretasikan konten memori tersebut sebagai 0 (terlepas dari tata letak memori). Jadi, petak peta dapat dibersihkan untuk 0x00 dengan format DXGI_FORMAT_R8_UNORM lalu digunakan dengan format seperti DXGI_FORMAT_R32G32_FLOAT dan akan muncul konten masih (0,0f,0,0f).

Tata letak data dalam petak peta tidak bergantung pada di mana petak peta dipetakan dalam sumber daya secara keseluruhan. Jadi, misalnya, petak peta dapat digunakan kembali di lokasi permukaan yang berbeda sekaligus dengan perilaku yang konsisten di semua lokasi.

Di bagian ini

Topik Deskripsi

Texture2D dan Texture2DArray subresource tiling

Tabel ini menunjukkan bagaimana subsumber daya Texture2D dan Texture2DArray diurutkan.

Ubin subresource Texture3D

Tabel ini memperlihatkan bagaimana subsumber daya Texture3D dipilah.

Pemeringkatan buffer

Sumber daya Buffer dibagi menjadi petak peta 64KB, dengan beberapa ruang kosong di petak peta terakhir jika ukurannya bukan kelipatan 64KB.

Pengemasan Mipmap

Beberapa jumlah mips (per irisan array) dapat dikemas ke dalam beberapa jumlah petak peta, tergantung pada dimensi, format, jumlah mipmap, dan irisan array sumber daya streaming.

 

Membuat sumber daya streaming