ID3D11DeviceContext1::UpdateSubresource1 metode (d3d11_1.h)

CPU menyalin data dari memori ke sub sumber daya yang dibuat dalam memori yang tidak dapat dipetakan.

Sintaks

void UpdateSubresource1(
  [in]           ID3D11Resource  *pDstResource,
  [in]           UINT            DstSubresource,
  [in, optional] const D3D11_BOX *pDstBox,
  [in]           const void      *pSrcData,
  [in]           UINT            SrcRowPitch,
  [in]           UINT            SrcDepthPitch,
  [in]           UINT            CopyFlags
);

Parameter

[in] pDstResource

Jenis: ID3D11Resource*

Penunjuk ke sumber daya tujuan.

[in] DstSubresource

Jenis: UINT

Indeks berbasis nol yang mengidentifikasi sub sumber daya tujuan. Lihat D3D11CalcSubresource untuk detail selengkapnya.

[in, optional] pDstBox

Jenis: const D3D11_BOX*

Penunjuk ke kotak yang menentukan bagian sub sumber daya tujuan untuk menyalin data sumber daya. Koordinat berada dalam byte untuk buffer dan dalam texel untuk tekstur. Jika NULL, UpdateSubresource1 menulis data ke subsumber daya tujuan tanpa offset. Dimensi sumber harus sesuai dengan tujuan.

Kotak kosong menghasilkan no-op. Kotak kosong jika nilai atas lebih besar dari atau sama dengan nilai bawah, atau nilai kiri lebih besar dari atau sama dengan nilai kanan, atau nilai depan lebih besar dari atau sama dengan nilai belakang. Saat kotak kosong, UpdateSubresource1 tidak melakukan operasi pembaruan.

[in] pSrcData

Jenis: const void*

Penunjuk ke data sumber dalam memori.

[in] SrcRowPitch

Jenis: UINT

Ukuran satu baris data sumber.

[in] SrcDepthPitch

Jenis: UINT

Ukuran satu ilis kedalaman data sumber.

[in] CopyFlags

Jenis: UINT

Nilai D3D11_COPY_FLAGS-ketik yang menentukan cara melakukan operasi pembaruan. Jika Anda menentukan nol untuk tidak ada opsi pembaruan, UpdateSubresource1 bersifat seperti ID3D11DeviceContext::UpdateSubresource. Untuk driver tampilan yang ada yang tidak dapat memproses bendera ini, runtime tidak menggunakannya.

Mengembalikan nilai

Tidak ada

Keterangan

Jika Anda memanggil UpdateSubresource1 untuk memperbarui buffer konstanta, melewati wilayah mana pun, dan driver belum diterapkan ke Windows 8, runtime akan menghilangkan panggilan (kecuali tingkat fitur 9.1, 9.2, dan 9.3 di mana runtime meniru dukungan). Runtime juga menghilangkan panggilan jika Anda memperbarui buffer konstan dengan wilayah parsial yang tingkatnya tidak selaras dengan granularitas 16 byte (16 byte menjadi konstanta penuh). Saat runtime menghentikan panggilan, runtime tidak memanggil antarmuka driver perangkat (DDI) yang sesuai.

Saat Anda merekam panggilan ke UpdateSubresource dengan pDstBox offset dalam daftar perintah perangkat lunak, offset di pDstBox salah diterapkan ke pSrcData saat Anda memutar kembali daftar perintah. New-for-Windows 8 UpdateSubresource1 memperbaiki masalah ini. Dalam panggilan ke UpdateSubresource1, pDstBox tidak memengaruhi pSrcData.

Untuk informasi tentang berbagai jenis sumber daya dan cara kerja UpdateSubresource1 dengan setiap jenis sumber daya, lihat Pengenalan Sumber Daya di Direct3D 11.

CatatanHanya berlaku untuk tingkat fitur 9_x perangkat keras Jika Anda menggunakan UpdateSubresource1 atau ID3D11DeviceContext1::CopySubresourceRegion1 untuk menyalin dari sumber daya penahapan ke sumber daya default, Anda dapat merusak konten tujuan. Ini terjadi jika Anda meneruskan kotak sumber NULL dan jika sumber daya sumber memiliki dimensi yang berbeda dari sumber daya tujuan atau jika Anda menggunakan offset tujuan, (x, y, dan z). Dalam situasi ini, selalu berikan kotak sumber yang merupakan ukuran penuh sumber daya sumber.
 

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8 dan Pembaruan Platform untuk Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2012 dan Platform Update untuk Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header d3d11_1.h
Pustaka D3D11.lib

Lihat juga

ID3D11DeviceContext1