D3DXCreateCubeTextureFromFileEx-Funktion
Erstellt eine Cubetextur aus einer Datei. Dies ist eine erweiterte Funktion als D3DXCreateCubeTextureFromFile.
Syntax
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]
-
Typ: LPDIRECT3DDEVICE9
Zeiger auf eine IDirect3DDevice9-Schnittstelle , die das Gerät darstellt, das der Cubetextur zugeordnet werden soll.
-
pSrcFile [in]
-
Typ: LPCTSTR
Zeiger auf eine Zeichenfolge, die den Dateinamen angibt. Wenn die Compilereinstellungen Unicode erfordern, wird der Datentyp LPCTSTR in LPCWSTR aufgelöst. Andernfalls wird der Zeichenfolgendatentyp in LPCSTR aufgelöst. Siehe Hinweise.
-
Größe [in]
-
Typ: UINT
Breite und Höhe der Würfeltextur in Pixel. Wenn die Würfeltextur beispielsweise ein Würfel mit 8 x 8 Pixeln ist, sollte der Wert für diesen Parameter 8 sein. Wenn dieser Wert 0 oder D3DX_DEFAULT ist, werden die Dimensionen aus der Datei übernommen.
-
MipLevels [in]
-
Typ: UINT
Anzahl der angeforderten Mip-Ebenen. Wenn dieser Wert null oder D3DX_DEFAULT ist, wird eine vollständige Mipmap-Kette erstellt.
-
Verwendung [in]
-
Typ: DWORD
0 oder D3DUSAGE_RENDERTARGET oder D3DUSAGE_DYNAMIC. Das Festlegen dieses Flags auf D3DUSAGE_RENDERTARGET gibt an, dass die Oberfläche als Renderziel verwendet werden soll. Die Ressource kann dann an den pNewRenderTarget-Parameter der SetRenderTarget-Methode übergeben werden. Wenn D3DUSAGE_RENDERTARGET angegeben ist, sollte die Anwendung überprüfen, ob das Gerät diesen Vorgang unterstützt, indem CheckDeviceFormat aufgerufen wird. D3DUSAGE_DYNAMIC gibt an, dass die Oberfläche dynamisch behandelt werden soll. Weitere Informationen zur Verwendung dynamischer Texturen finden Sie unter Verwenden dynamischer Texturen.
-
Format [in]
-
Typ: D3DFORMAT
Member des aufgezählten D3DFORMAT-Typs , der das angeforderte Pixelformat für die Cubetextur beschreibt. Die zurückgegebene Cubetextur hat möglicherweise ein anderes Format als das durch Format angegebene. Anwendungen sollten das Format der zurückgegebenen Cubetextur überprüfen. Wenn D3DFMT_UNKNOWN, wird das Format aus der Datei übernommen. Wenn D3DFMT_FROM_FILE, wird das Format genau wie in der Datei verwendet, und der Aufruf schlägt fehl, wenn dies die Gerätefunktionen verletzt.
-
Pool [in]
-
Typ: D3DPOOL
Member des aufgezählten D3DPOOL-Typs , der die Speicherklasse beschreibt, in der die Cubetextur platziert werden soll.
-
Filtern [in]
-
Typ: DWORD
Eine Kombination aus einer oder mehreren D3DX_FILTER Konstanten, die steuern, wie das Bild gefiltert wird. Die Angabe D3DX_DEFAULT für diesen Parameter entspricht der Angabe D3DX_FILTER_TRIANGLE | D3DX_FILTER_DITHER.
-
MipFilter [in]
-
Typ: DWORD
Eine Kombination aus einer oder mehreren D3DX_FILTER Konstanten, die steuern, wie das Bild gefiltert wird. Das Angeben D3DX_DEFAULT für diesen Parameter entspricht der Angabe D3DX_FILTER_BOX. Verwenden Sie außerdem die Bits 27-31, um die Anzahl der Mip-Ebenen anzugeben, die übersprungen werden sollen (vom Anfang der Mipmap-Kette), wenn eine DDS-Textur in den Arbeitsspeicher geladen wird. Dadurch können Sie bis zu 32 Ebenen überspringen.
-
ColorKey [in]
-
Typ: D3DCOLOR
D3DCOLOR-Wert , der durch transparentes Schwarz ersetzt werden soll, oder 0, um den Farbschlüssel zu deaktivieren. Dies ist immer eine 32-Bit-ARGB-Farbe, unabhängig vom Quellbildformat. Alpha ist signifikant und sollte normalerweise für undurchsichtige Farbtasten auf FF festgelegt werden. Daher wäre der Wert für undurchsichtiges Schwarz gleich 0xFF000000.
-
pSrcInfo [out]
-
Typ: D3DXIMAGE_INFO*
Zeiger auf eine D3DXIMAGE_INFO Struktur, die mit einer Beschreibung der Daten in der Quellbilddatei oder NULL gefüllt werden soll.
-
pPalette [out]
-
Typ: PALETTEENTRY*
Zeiger auf eine PALETTEENTRY-Struktur , die eine zu füllende Palette mit 256 Farben darstellt, oder NULL.
-
ppCubeTexture [out]
-
Typ: LPDIRECT3DCUBETEXTURE9*
Adresse eines Zeigers auf eine IDirect3DCubeTexture9-Schnittstelle , die das erstellte Cubetexturobjekt darstellt.
Rückgabewert
Typ: HRESULT
Wenn die Funktion erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Funktion fehlschlägt, kann der Rückgabewert wie folgt aussehen: D3DERR_INVALIDCALL, D3DERR_NOTAVAILABLE, D3DERR_OUTOFVIDEOMEMORY, D3DXERR_INVALIDDATA, E_OUTOFMEMORY.
Bemerkungen
Die Compilereinstellung bestimmt auch die Funktionsversion. Wenn Unicode definiert ist, wird der Funktionsaufruf in D3DXCreateCubeTextureFromFileExW aufgelöst. Andernfalls wird der Funktionsaufruf in D3DXCreateCubeTextureFromFileExA aufgelöst, da ANSI-Zeichenfolgen verwendet werden.
Diese Funktion unterstützt die folgenden Dateiformate: .bmp, DDS, DIB, HDR, .jpg, PFM, .png, PPM und TGA. Siehe D3DXIMAGE_FILEFORMAT.
Würfeltexturen unterscheiden sich von anderen Oberflächen darin, dass es sich um Oberflächensammlungen handelt. Um SetRenderTarget mit einer Würfeltextur aufzurufen, müssen Sie mithilfe von GetCubeMapSurface ein einzelnes Gesicht auswählen und die resultierende Oberfläche an SetRenderTarget übergeben.
D3DXCreateCubeTextureFromFileEx verwendet das DDS-Dateiformat (DirectDraw Surface). Mit dem DirectX-Textur-Editor (Dxtex.exe) können Sie eine Cubezuordnung aus anderen Dateiformaten generieren und im DDS-Dateiformat speichern. Sie können Dxtex.exe abrufen und über das DirectX SDK erfahren. Informationen zum DirectX SDK finden Sie unter Wo befindet sich das DirectX SDK?.
Verwenden Sie beim Überspringen von Mipmap-Ebenen beim Laden einer DDS-Datei das makro D3DX_SKIP_DDS_MIP_LEVELS, um den MipFilter-Wert zu generieren. Dieses Makro verwendet die Anzahl der zu überspringenden Ebenen und den Filtertyp und gibt den Filterwert zurück, der dann an den MipFilter-Parameter übergeben wird.
Anforderungen
Anforderung | Wert |
---|---|
Header |
|
Bibliothek |
|
Weitere Informationen