METODE ID3D11Device::CreateTexture2D (d3d11.h)

Buat array tekstur 2D.

Sintaks

HRESULT CreateTexture2D(
  [in]            const D3D11_TEXTURE2D_DESC   *pDesc,
  [in, optional]  const D3D11_SUBRESOURCE_DATA *pInitialData,
  [out, optional] ID3D11Texture2D              **ppTexture2D
);

Parameter

[in] pDesc

Jenis: const D3D11_TEXTURE2D_DESC*

Penunjuk ke struktur D3D11_TEXTURE2D_DESC yang menjelaskan sumber daya tekstur 2D. Untuk membuat sumber daya tanpa jenis yang dapat ditafsirkan saat runtime ke dalam format yang berbeda dan kompatibel, tentukan format tanpa jenis dalam deskripsi tekstur. Untuk menghasilkan tingkat mipmap secara otomatis, atur jumlah tingkat mipmap ke 0.

[in, optional] pInitialData

Jenis: const D3D11_SUBRESOURCE_DATA*

Penunjuk ke array struktur D3D11_SUBRESOURCE_DATA yang menjelaskan sub-sumber daya untuk sumber daya tekstur 2D. Aplikasi tidak dapat menentukan NULL untuk pInitialData saat membuat sumber daya IMMUTABLE (lihat D3D11_USAGE). Jika sumber daya multisampled, pInitialData harus NULL karena sumber daya multisampel tidak dapat diinisialisasi dengan data saat dibuat.

Jika Anda tidak meneruskan apa pun ke pInitialData, konten awal memori untuk sumber daya tidak terdefinisi. Dalam hal ini, Anda perlu menulis konten sumber daya dengan cara lain sebelum sumber daya dibaca.

Anda dapat menentukan ukuran array ini dari nilai di anggota MipLevels dan ArraySize dari struktur D3D11_TEXTURE2D_DESC tempat pDesc menunjuk dengan menggunakan perhitungan berikut:

MipLevels * ArraySize

Untuk informasi selengkapnya tentang ukuran array ini, lihat Keterangan.

[out, optional] ppTexture2D

Jenis: ID3D11Texture2D**

Penunjuk ke buffer yang menerima penunjuk ke antarmuka ID3D11Texture2D untuk tekstur yang dibuat. Atur parameter ini ke NULL untuk memvalidasi parameter input lainnya (metode akan mengembalikan S_FALSE jika parameter input lainnya lolos validasi).

Nilai kembali

Jenis: HRESULT

Jika metode berhasil, kode pengembalian S_OK. Lihat Kode Pengembalian Direct3D 11 untuk kode kesalahan yang gagal.

Keterangan

CreateTexture2D membuat sumber daya tekstur 2D, yang dapat berisi sejumlah subsumber daya 2D. Jumlah tekstur ditentukan dalam deskripsi tekstur. Semua tekstur dalam sumber daya harus memiliki format, ukuran, dan jumlah tingkat mipmap yang sama.

Semua sumber daya terdiri dari satu atau beberapa subsumber daya. Untuk memuat data ke dalam tekstur, aplikasi dapat menyediakan data pada awalnya sebagai array struktur D3D11_SUBRESOURCE_DATA yang ditunjukkan oleh pInitialData, atau dapat menggunakan salah satu fungsi tekstur D3DX seperti D3DX11CreateTextureFromFile.

Untuk tekstur 32 x 32 dengan rantai mipmap penuh, array pInitialData memiliki 6 elemen berikut:

  • pInitialData[0] = 32x32
  • pInitialData[1] = 16x16
  • pInitialData[2] = 8x8
  • pInitialData[3] = 4x4
  • pInitialData[4] = 2x2
  • pInitialData[5] = 1x1

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header d3d11.h
Pustaka D3D11.lib

Lihat juga

ID3D11Device