ID3D12Device::CreateHeap method (d3d12.h)
Membuat timbunan yang dapat digunakan dengan sumber daya yang ditempatkan dan sumber daya yang dipesan.
Sintaks
HRESULT CreateHeap(
[in] const D3D12_HEAP_DESC *pDesc,
[in] REFIID riid,
[out, optional] void **ppvHeap
);
Parameter
[in] pDesc
Jenis: const D3D12_HEAP_DESC*
Penunjuk ke struktur D3D12_HEAP_DESC konstanta yang menjelaskan timbunan.
[in] riid
Jenis: REFIID
Referensi ke pengidentifikasi unik global (GUID) antarmuka heap untuk kembali dalam ppvHeap.
Meskipun riidResource paling umum adalah GUIDID3D12Heap, ini mungkin GUID dari antarmuka apa pun. Jika objek sumber daya tidak mendukung antarmuka untuk GUID ini, pembuatan gagal dengan E_NOINTERFACE.
[out, optional] ppvHeap
Jenis: batal**
Penunjuk opsional ke blok memori yang menerima penunjuk antarmuka yang diminta ke objek heap yang dibuat.
ppvHeap dapat berupa nullptr
, untuk mengaktifkan pengujian kemampuan. Ketika ppvHeap adalah nullptr
, tidak ada objek yang dibuat, dan S_FALSE dikembalikan ketika pDesc valid.
Menampilkan nilai
Jenis: HRESULT
Jika fungsi berhasil, fungsi akan mengembalikan S_OK. Jika tidak, kode kesalahanHRESULT akan dikembalikan.
Mengembalikan nilai | Deskripsi |
---|---|
E_OUTOFMEMORY | Memori tidak cukup untuk membuat heap. |
Lihat Kode pengembalian Direct3D 12 untuk kemungkinan nilai pengembalian lainnya.
Keterangan
CreateHeap membuat tumpukan yang dapat digunakan dengan sumber daya yang ditempatkan dan sumber daya yang dipesan.
Sebelum merilis referensi akhir pada heap, aplikasi Anda harus memastikan bahwa GPU tidak akan lagi membaca atau menulis ke tumpukan ini.
Objek sumber daya yang ditempatkan menyimpan referensi pada tumpukan tempat objek tersebut dibuat; tetapi sumber daya yang dipesan tidak memegang referensi untuk setiap pemetaan yang dibuat ke tumpukan.
Persyaratan
Target Platform | Windows |
Header | d3d12.h |
Pustaka | D3D12.lib |
DLL | D3D12.dll |