Fungsi D3DXCreateCubeTextureFromFileEx
Membuat tekstur kubus dari file. Ini adalah fungsi yang lebih canggih daripada D3DXCreateCubeTextureFromFile.
Sintaks
HRESULT D3DXCreateCubeTextureFromFileEx(
_In_ LPDIRECT3DDEVICE9 pDevice,
_In_ LPCTSTR pSrcFile,
_In_ UINT Size,
_In_ UINT MipLevels,
_In_ DWORD Usage,
_In_ D3DFORMAT Format,
_In_ D3DPOOL Pool,
_In_ DWORD Filter,
_In_ DWORD MipFilter,
_In_ D3DCOLOR ColorKey,
_Out_ D3DXIMAGE_INFO *pSrcInfo,
_Out_ PALETTEENTRY *pPalette,
_Out_ LPDIRECT3DCUBETEXTURE9 *ppCubeTexture
);
Parameter
-
pDevice [in]
-
Jenis: LPDIRECT3DDEVICE9
Penunjuk ke antarmuka IDirect3DDevice9 , mewakili perangkat yang akan dikaitkan dengan tekstur kubus.
-
pSrcFile [in]
-
Jenis: LPCTSTR
Penunjuk ke string yang menentukan nama file. Jika pengaturan pengkompilasi memerlukan Unicode, jenis data LPCTSTR diselesaikan ke LPCWSTR. Jika tidak, jenis data string diselesaikan ke LPCSTR. Lihat Keterangan.
-
Ukuran [in]
-
Jenis: UINT
Lebar dan tinggi tekstur kubus, dalam piksel. Misalnya, jika tekstur kubus adalah kubus 8 piksel dengan 8 piksel, nilai untuk parameter ini harus 8. Jika nilai ini adalah 0 atau D3DX_DEFAULT, dimensi diambil dari file.
-
MipLevels [in]
-
Jenis: UINT
Jumlah tingkat mip yang diminta. Jika nilai ini nol atau D3DX_DEFAULT, rantai mipmap lengkap akan dibuat.
-
Penggunaan [in]
-
Jenis: DWORD
0 atau D3DUSAGE_RENDERTARGET, atau D3DUSAGE_DYNAMIC. Mengatur bendera ini ke D3DUSAGE_RENDERTARGET menunjukkan bahwa permukaan akan digunakan sebagai target render. Sumber daya kemudian dapat diteruskan ke parameter pNewRenderTarget dari metode SetRenderTarget . Jika D3DUSAGE_RENDERTARGET ditentukan, aplikasi harus memeriksa apakah perangkat mendukung operasi ini dengan memanggil CheckDeviceFormat. D3DUSAGE_DYNAMIC menunjukkan bahwa permukaan harus ditangani secara dinamis. Untuk informasi selengkapnya tentang menggunakan tekstur dinamis, lihat Menggunakan Tekstur Dinamis.
-
Format [in]
-
Jenis: D3DFORMAT
Anggota jenis enumerasi D3DFORMAT , yang menjelaskan format piksel yang diminta untuk tekstur kubus. Tekstur kubus yang dikembalikan mungkin memiliki format yang berbeda dari yang ditentukan oleh Format. Aplikasi harus memeriksa format tekstur kubus yang dikembalikan. Jika D3DFMT_UNKNOWN, format diambil dari file . Jika D3DFMT_FROM_FILE, format diambil persis seperti dalam file, dan panggilan akan gagal jika ini melanggar kemampuan perangkat.
-
Pool [in]
-
Jenis: D3DPOOL
Anggota jenis enumerasi D3DPOOL , yang menjelaskan kelas memori tempat tekstur kubus harus ditempatkan.
-
Filter [in]
-
Jenis: DWORD
Kombinasi satu atau beberapa konstanta D3DX_FILTER , mengontrol bagaimana gambar difilter. Menentukan D3DX_DEFAULT untuk parameter ini setara dengan menentukan D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER.
-
MipFilter [in]
-
Jenis: DWORD
Kombinasi satu atau beberapa konstanta D3DX_FILTER mengontrol bagaimana gambar difilter. Menentukan D3DX_DEFAULT untuk parameter ini setara dengan menentukan D3DX_FILTER_BOX. Selain itu, gunakan bit 27-31 untuk menentukan jumlah tingkat mip yang akan dilewati (dari bagian atas rantai mipmap) ketika tekstur .dds dimuat ke dalam memori; ini memungkinkan Anda untuk melewati hingga 32 level.
-
ColorKey [in]
-
Jenis: D3DCOLOR
Nilai D3DCOLOR untuk diganti dengan hitam transparan, atau 0 untuk menonaktifkan colorkey. Ini selalu merupakan warna ARGB 32-bit, terlepas dari format gambar sumber. Alpha signifikan, dan biasanya harus diatur ke FF untuk kunci warna buram. Dengan demikian, untuk hitam buram, nilainya akan sama dengan 0xFF000000.
-
pSrcInfo [out]
-
Jenis: D3DXIMAGE_INFO*
Penunjuk ke struktur D3DXIMAGE_INFO untuk diisi dengan deskripsi data dalam file gambar sumber, atau NULL.
-
pPalette [out]
-
Jenis: PALETTEENTRY*
Penunjuk ke struktur PALETTEENTRY , mewakili palet 256 warna untuk diisi, atau NULL.
-
ppCubeTexture [out]
-
Jenis: LPDIRECT3DCUBETEXTURE9*
Alamat penunjuk ke antarmuka IDirect3DCubeTexture9 , mewakili objek tekstur kubus yang dibuat.
Menampilkan nilai
Jenis: HRESULT
Jika fungsi berhasil, nilai yang dikembalikan adalah D3D_OK. Jika fungsi gagal, nilai yang dikembalikan dapat berupa salah satu hal berikut: D3DERR_INVALIDCALL, D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.
Keterangan
Pengaturan pengkompilasi juga menentukan versi fungsi. Jika Unicode ditentukan, panggilan fungsi menyelesaikan ke D3DXCreateCubeTextureFromFileExW. Jika tidak, panggilan fungsi menyelesaikan ke D3DXCreateCubeTextureFromFileExA karena string ANSI sedang digunakan.
Fungsi ini mendukung format file berikut: .bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm, dan .tga. Lihat D3DXIMAGE_FILEFORMAT.
Tekstur kubus berbeda dari permukaan lain karena mereka adalah koleksi permukaan. Untuk memanggil SetRenderTarget dengan tekstur kubus, Anda harus memilih wajah individual menggunakan GetCubeMapSurface dan meneruskan permukaan yang dihasilkan ke SetRenderTarget.
D3DXCreateCubeTextureFromFileEx menggunakan format file permukaan DirectDraw (DDS). Editor Tekstur DirectX (Dxtex.exe) memungkinkan Anda membuat peta kubus dari format file lain dan menyimpannya dalam format file DDS. Anda bisa mendapatkan Dxtex.exe dan mempelajarinya dari DirectX SDK. Untuk informasi tentang DirectX SDK, lihat Di mana DirectX SDK?.
Saat melompati tingkat mipmap saat memuat file .dds, gunakan makro D3DX_SKIP_DDS_MIP_LEVELS untuk menghasilkan nilai MipFilter. Makro ini mengambil jumlah tingkat untuk dilewati dan jenis filter dan mengembalikan nilai filter, yang kemudian akan diteruskan ke parameter MipFilter.
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|
Pustaka |
|
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk