d3dx9: Add missing pixel formats.
[wine/multimedia.git] / include / d3dx9tex.h
blob7cfd896b101f680827d72d3744855fa2df01b23b
1 /*
2 * Copyright (C) 2008 Tony Wasserka
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #include <d3dx9.h>
21 #ifndef __WINE_D3DX9TEX_H
22 #define __WINE_D3DX9TEX_H
24 /**********************************************
25 ***************** Definitions ****************
26 **********************************************/
27 #define D3DX_FILTER_NONE 0x00000001
28 #define D3DX_FILTER_POINT 0x00000002
29 #define D3DX_FILTER_LINEAR 0x00000003
30 #define D3DX_FILTER_TRIANGLE 0x00000004
31 #define D3DX_FILTER_BOX 0x00000005
32 #define D3DX_FILTER_MIRROR_U 0x00010000
33 #define D3DX_FILTER_MIRROR_V 0x00020000
34 #define D3DX_FILTER_MIRROR_W 0x00040000
35 #define D3DX_FILTER_MIRROR 0x00070000
36 #define D3DX_FILTER_DITHER 0x00080000
37 #define D3DX_FILTER_DITHER_DIFFUSION 0x00100000
38 #define D3DX_FILTER_SRGB_IN 0x00200000
39 #define D3DX_FILTER_SRGB_OUT 0x00400000
40 #define D3DX_FILTER_SRGB 0x00600000
42 #define D3DX_NORMALMAP_MIRROR_U 0x00010000
43 #define D3DX_NORMALMAP_MIRROR_V 0x00020000
44 #define D3DX_NORMALMAP_MIRROR 0x00030000
45 #define D3DX_NORMALMAP_INVERTSIGN 0x00080000
46 #define D3DX_NORMALMAP_COMPUTE_OCCLUSION 0x00100000
48 #define D3DX_CHANNEL_RED 0x00000001
49 #define D3DX_CHANNEL_BLUE 0x00000002
50 #define D3DX_CHANNEL_GREEN 0x00000004
51 #define D3DX_CHANNEL_ALPHA 0x00000008
52 #define D3DX_CHANNEL_LUMINANCE 0x00000010
54 /**********************************************
55 ****************** Typedefs ******************
56 **********************************************/
57 typedef enum _D3DXIMAGE_FILEFORMAT
59 D3DXIFF_BMP,
60 D3DXIFF_JPG,
61 D3DXIFF_TGA,
62 D3DXIFF_PNG,
63 D3DXIFF_DDS,
64 D3DXIFF_PPM,
65 D3DXIFF_DIB,
66 D3DXIFF_HDR,
67 D3DXIFF_PFM,
68 D3DXIFF_FORCE_DWORD = 0x7fffffff
69 } D3DXIMAGE_FILEFORMAT;
71 typedef struct _D3DXIMAGE_INFO
73 UINT Width;
74 UINT Height;
75 UINT Depth;
76 UINT MipLevels;
77 D3DFORMAT Format;
78 D3DRESOURCETYPE ResourceType;
79 D3DXIMAGE_FILEFORMAT ImageFileFormat;
80 } D3DXIMAGE_INFO;
82 /**********************************************
83 ****************** Functions *****************
84 **********************************************/
85 /* Typedefs for callback functions */
86 typedef VOID (WINAPI *LPD3DXFILL2D)(D3DXVECTOR4 *out, CONST D3DXVECTOR2 *texcoord, CONST D3DXVECTOR2 *texelsize, LPVOID data);
87 typedef VOID (WINAPI *LPD3DXFILL3D)(D3DXVECTOR4 *out, CONST D3DXVECTOR3 *texcoord, CONST D3DXVECTOR3 *texelsize, LPVOID data);
89 #ifdef __cplusplus
90 extern "C" {
91 #endif
94 /* Image Information */
95 HRESULT WINAPI D3DXGetImageInfoFromFileA(LPCSTR file, D3DXIMAGE_INFO *info);
96 HRESULT WINAPI D3DXGetImageInfoFromFileW(LPCWSTR file, D3DXIMAGE_INFO *info);
97 #define D3DXGetImageInfoFromFile WINELIB_NAME_AW(D3DXGetImageInfoFromFile)
99 HRESULT WINAPI D3DXGetImageInfoFromResourceA(HMODULE module, LPCSTR resource, D3DXIMAGE_INFO *info);
100 HRESULT WINAPI D3DXGetImageInfoFromResourceW(HMODULE module, LPCWSTR resource, D3DXIMAGE_INFO *info);
101 #define D3DXGetImageInfoFromResource WINELIB_NAME_AW(D3DXGetImageInfoFromResource)
103 HRESULT WINAPI D3DXGetImageInfoFromFileInMemory(LPCVOID data, UINT datasize, D3DXIMAGE_INFO *info);
106 /* Surface Loading/Saving */
107 HRESULT WINAPI D3DXLoadSurfaceFromFileA( LPDIRECT3DSURFACE9 destsurface,
108 CONST PALETTEENTRY *destpalette,
109 CONST RECT *destrect,
110 LPCSTR srcfile,
111 CONST RECT *srcrect,
112 DWORD filter,
113 D3DCOLOR colorkey,
114 D3DXIMAGE_INFO *srcinfo);
116 HRESULT WINAPI D3DXLoadSurfaceFromFileW( LPDIRECT3DSURFACE9 destsurface,
117 CONST PALETTEENTRY *destpalette,
118 CONST RECT *destrect,
119 LPCWSTR srcfile,
120 CONST RECT *srcrect,
121 DWORD filter,
122 D3DCOLOR colorkey,
123 D3DXIMAGE_INFO *srcinfo);
124 #define D3DXLoadSurfaceFromFile WINELIB_NAME_AW(D3DXLoadSurfaceFromFile)
126 HRESULT WINAPI D3DXLoadSurfaceFromResourceA( LPDIRECT3DSURFACE9 destsurface,
127 CONST PALETTEENTRY *destpalette,
128 CONST RECT *destrect,
129 HMODULE srcmodule,
130 LPCSTR resource,
131 CONST RECT *srcrect,
132 DWORD filter,
133 D3DCOLOR colorkey,
134 D3DXIMAGE_INFO *srcinfo);
136 HRESULT WINAPI D3DXLoadSurfaceFromResourceW( LPDIRECT3DSURFACE9 destsurface,
137 CONST PALETTEENTRY *destpalette,
138 CONST RECT *destrect,
139 HMODULE srcmodule,
140 LPCWSTR resource,
141 CONST RECT *srcrect,
142 DWORD filter,
143 D3DCOLOR colorkey,
144 D3DXIMAGE_INFO *srcinfo);
145 #define D3DXLoadSurfaceFromResource WINELIB_NAME_AW(D3DXLoadSurfaceFromResource)
147 HRESULT WINAPI D3DXLoadSurfaceFromFileInMemory(LPDIRECT3DSURFACE9 destsurface,
148 CONST PALETTEENTRY *destpalette,
149 CONST RECT*destrect,
150 LPCVOID srcdata,
151 UINT srcdatasize,
152 CONST RECT *srcrect,
153 DWORD filter,
154 D3DCOLOR colorkey,
155 D3DXIMAGE_INFO *srcinfo);
157 HRESULT WINAPI D3DXLoadSurfaceFromSurface( LPDIRECT3DSURFACE9 destsurface,
158 CONST PALETTEENTRY *destpalette,
159 CONST RECT *destrect,
160 LPDIRECT3DSURFACE9 srcsurface,
161 CONST PALETTEENTRY *srcpalette,
162 CONST RECT *srcrect,
163 DWORD filter,
164 D3DCOLOR colorkey);
166 HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface,
167 const PALETTEENTRY *dst_palette, const RECT *dst_rect, const void *src_memory,
168 D3DFORMAT src_format, UINT src_pitch, const PALETTEENTRY *src_palette, const RECT *src_rect,
169 DWORD filter, D3DCOLOR color_key);
171 HRESULT WINAPI D3DXSaveSurfaceToFileA( LPCSTR destfile,
172 D3DXIMAGE_FILEFORMAT destformat,
173 LPDIRECT3DSURFACE9 srcsurface,
174 CONST PALETTEENTRY *srcpalette,
175 CONST RECT *srcrect);
177 HRESULT WINAPI D3DXSaveSurfaceToFileW( LPCWSTR destfile,
178 D3DXIMAGE_FILEFORMAT destformat,
179 LPDIRECT3DSURFACE9 srcsurface,
180 CONST PALETTEENTRY *srcpalette,
181 CONST RECT *srcrect);
182 #define D3DXSaveSurfaceToFile WINELIB_NAME_AW(D3DXSaveSurfaceToFile)
185 /* Volume Loading/Saving */
186 HRESULT WINAPI D3DXLoadVolumeFromFileA( LPDIRECT3DVOLUME9 destvolume,
187 CONST PALETTEENTRY *destpalette,
188 CONST D3DBOX *destbox,
189 LPCSTR srcfile,
190 CONST D3DBOX *srcbox,
191 DWORD filter,
192 D3DCOLOR colorkey,
193 D3DXIMAGE_INFO *srcinfo);
195 HRESULT WINAPI D3DXLoadVolumeFromFileW( LPDIRECT3DVOLUME9 destVolume,
196 CONST PALETTEENTRY *destpalette,
197 CONST D3DBOX *destbox,
198 LPCWSTR srcfile,
199 CONST D3DBOX *srcbox,
200 DWORD filter,
201 D3DCOLOR colorkey,
202 D3DXIMAGE_INFO *srcinfo);
203 #define D3DXLoadVolumeFromFile WINELIB_NAME_AW(D3DXLoadVolumeFromFile)
205 HRESULT WINAPI D3DXLoadVolumeFromResourceA( LPDIRECT3DVOLUME9 destVolume,
206 CONST PALETTEENTRY *destpalette,
207 CONST D3DBOX *destbox,
208 HMODULE srcmodule,
209 LPCSTR resource,
210 CONST D3DBOX *srcbox,
211 DWORD filter,
212 D3DCOLOR colorkey,
213 D3DXIMAGE_INFO *srcinfo);
215 HRESULT WINAPI D3DXLoadVolumeFromResourceW( LPDIRECT3DVOLUME9 destVolume,
216 CONST PALETTEENTRY *destpalette,
217 CONST D3DBOX *destbox,
218 HMODULE srcmodule,
219 LPCWSTR resource,
220 CONST D3DBOX *srcbox,
221 DWORD filter,
222 D3DCOLOR colorkey,
223 D3DXIMAGE_INFO *srcinfo);
224 #define D3DXLoadVolumeFromResource WINELIB_NAME_AW(D3DXLoadVolumeFromResource)
226 HRESULT WINAPI D3DXLoadVolumeFromFileInMemory(LPDIRECT3DVOLUME9 destvolume,
227 CONST PALETTEENTRY *destpalette,
228 CONST D3DBOX *destbox,
229 LPCVOID srcdata,
230 UINT srcdatasize,
231 CONST D3DBOX *srcbox,
232 DWORD filter,
233 D3DCOLOR colorkey,
234 D3DXIMAGE_INFO *srcinfo);
236 HRESULT WINAPI D3DXLoadVolumeFromVolume( LPDIRECT3DVOLUME9 destvolume,
237 CONST PALETTEENTRY *destpalette,
238 CONST D3DBOX *destbox,
239 LPDIRECT3DVOLUME9 srcvolume,
240 CONST PALETTEENTRY *srcpalette,
241 CONST D3DBOX *srcbox,
242 DWORD filter,
243 D3DCOLOR colorkey);
245 HRESULT WINAPI D3DXLoadVolumeFromMemory( LPDIRECT3DVOLUME9 destvolume,
246 CONST PALETTEENTRY *destpalette,
247 CONST D3DBOX *destbox,
248 LPCVOID srcmemory,
249 D3DFORMAT srcformat,
250 UINT srcrowpitch,
251 UINT srcslicepitch,
252 CONST PALETTEENTRY *srcpalette,
253 CONST D3DBOX *srcbox,
254 DWORD filter,
255 D3DCOLOR colorkey);
257 HRESULT WINAPI D3DXSaveVolumeToFileA( LPCSTR destfile,
258 D3DXIMAGE_FILEFORMAT destformat,
259 LPDIRECT3DVOLUME9 srcvolume,
260 CONST PALETTEENTRY *srcpalette,
261 CONST D3DBOX *srcbox);
263 HRESULT WINAPI D3DXSaveVolumeToFileW( LPCWSTR destfile,
264 D3DXIMAGE_FILEFORMAT destformat,
265 LPDIRECT3DVOLUME9 srcvolume,
266 CONST PALETTEENTRY *srcpalette,
267 CONST D3DBOX *srcbox);
268 #define D3DXSaveVolumeToFile WINELIB_NAME_AW(D3DXSaveVolumeToFile)
271 /* Texture, cube texture and volume texture creation */
272 HRESULT WINAPI D3DXCheckTextureRequirements( LPDIRECT3DDEVICE9 device,
273 UINT *width,
274 UINT *height,
275 UINT *miplevels,
276 DWORD usage,
277 D3DFORMAT *format,
278 D3DPOOL pool);
279 HRESULT WINAPI D3DXCheckCubeTextureRequirements( LPDIRECT3DDEVICE9 device,
280 UINT *size,
281 UINT *miplevels,
282 DWORD usage,
283 D3DFORMAT *format,
284 D3DPOOL pool);
286 HRESULT WINAPI D3DXCheckVolumeTextureRequirements(LPDIRECT3DDEVICE9 device,
287 UINT *width,
288 UINT *height,
289 UINT *depth,
290 UINT *miplevels,
291 DWORD usage,
292 D3DFORMAT *format,
293 D3DPOOL pool);
295 HRESULT WINAPI D3DXCreateTexture( LPDIRECT3DDEVICE9 device,
296 UINT width,
297 UINT height,
298 UINT miplevels,
299 DWORD usage,
300 D3DFORMAT format,
301 D3DPOOL pool,
302 LPDIRECT3DTEXTURE9 *texture);
304 HRESULT WINAPI D3DXCreateCubeTexture( LPDIRECT3DDEVICE9 device,
305 UINT size,
306 UINT miplevels,
307 DWORD usage,
308 D3DFORMAT format,
309 D3DPOOL pool,
310 LPDIRECT3DCUBETEXTURE9 *cube);
312 HRESULT WINAPI D3DXCreateVolumeTexture(LPDIRECT3DDEVICE9 device,
313 UINT width,
314 UINT height,
315 UINT depth,
316 UINT miplevels,
317 DWORD usage,
318 D3DFORMAT format,
319 D3DPOOL pool,
320 LPDIRECT3DVOLUMETEXTURE9 *volume);
322 HRESULT WINAPI D3DXCreateTextureFromFileA( LPDIRECT3DDEVICE9 device,
323 LPCSTR srcfile,
324 LPDIRECT3DTEXTURE9 *texture);
326 HRESULT WINAPI D3DXCreateTextureFromFileW( LPDIRECT3DDEVICE9 device,
327 LPCWSTR srcfile,
328 LPDIRECT3DTEXTURE9 *texture);
329 #define D3DXCreateTextureFromFile WINELIB_NAME_AW(D3DXCreateTextureFromFile)
331 HRESULT WINAPI D3DXCreateCubeTextureFromFileA( LPDIRECT3DDEVICE9 device,
332 LPCSTR srcfile,
333 LPDIRECT3DCUBETEXTURE9 *cube);
335 HRESULT WINAPI D3DXCreateCubeTextureFromFileW( LPDIRECT3DDEVICE9 device,
336 LPCWSTR srcfile,
337 LPDIRECT3DCUBETEXTURE9 *cube);
338 #define D3DXCreateCubeTextureFromFile WINELIB_NAME_AW(D3DXCreateCubeTextureFromFile)
340 HRESULT WINAPI D3DXCreateVolumeTextureFromFileA(LPDIRECT3DDEVICE9 device,
341 LPCSTR srcfile,
342 LPDIRECT3DVOLUMETEXTURE9 *volume);
344 HRESULT WINAPI D3DXCreateVolumeTextureFromFileW(LPDIRECT3DDEVICE9 device,
345 LPCWSTR srcfile,
346 LPDIRECT3DVOLUMETEXTURE9 *volume);
347 #define D3DXCreateVolumeTextureFromFile WINELIB_NAME_AW(D3DXCreateVolumeTextureFromFile)
349 HRESULT WINAPI D3DXCreateTextureFromResourceA( LPDIRECT3DDEVICE9 device,
350 HMODULE srcmodule,
351 LPCSTR resource,
352 LPDIRECT3DTEXTURE9 *texture);
354 HRESULT WINAPI D3DXCreateTextureFromResourceW( LPDIRECT3DDEVICE9 device,
355 HMODULE srcmodule,
356 LPCWSTR resource,
357 LPDIRECT3DTEXTURE9 *texture);
358 #define D3DXCreateTextureFromResource WINELIB_NAME_AW(D3DXCreateTextureFromResource)
360 HRESULT WINAPI D3DXCreateCubeTextureFromResourceA( LPDIRECT3DDEVICE9 device,
361 HMODULE srcmodule,
362 LPCSTR resource,
363 LPDIRECT3DCUBETEXTURE9 *cube);
364 HRESULT WINAPI D3DXCreateCubeTextureFromResourceW( LPDIRECT3DDEVICE9 device,
365 HMODULE srcmodule,
366 LPCWSTR resource,
367 LPDIRECT3DCUBETEXTURE9 *cube);
368 #define D3DXCreateCubeTextureFromResource WINELIB_NAME_AW(D3DXCreateCubeTextureFromResource)
370 HRESULT WINAPI D3DXCreateVolumeTextureFromResourceA(LPDIRECT3DDEVICE9 device,
371 HMODULE srcmodule,
372 LPCSTR resource,
373 LPDIRECT3DVOLUMETEXTURE9 *volume);
374 HRESULT WINAPI D3DXCreateVolumeTextureFromResourceW(LPDIRECT3DDEVICE9 device,
375 HMODULE srcmodule,
376 LPCWSTR resource,
377 LPDIRECT3DVOLUMETEXTURE9 *volume);
378 #define D3DXCreateVolumeTextureFromResource WINELIB_NAME_AW(D3DXCreateVolumeTextureFromResource)
380 HRESULT WINAPI D3DXCreateTextureFromFileExA( LPDIRECT3DDEVICE9 device,
381 LPCSTR srcfile,
382 UINT width,
383 UINT height,
384 UINT miplevels,
385 DWORD usage,
386 D3DFORMAT format,
387 D3DPOOL pool,
388 DWORD filter,
389 DWORD mipfilter,
390 D3DCOLOR colorkey,
391 D3DXIMAGE_INFO *srcinfo,
392 PALETTEENTRY *palette,
393 LPDIRECT3DTEXTURE9 *texture);
395 HRESULT WINAPI D3DXCreateTextureFromFileExW( LPDIRECT3DDEVICE9 device,
396 LPCWSTR srcfile,
397 UINT width,
398 UINT height,
399 UINT miplevels,
400 DWORD usage,
401 D3DFORMAT format,
402 D3DPOOL pool,
403 DWORD filter,
404 DWORD mipfilter,
405 D3DCOLOR colorkey,
406 D3DXIMAGE_INFO *srcinfo,
407 PALETTEENTRY *palette,
408 LPDIRECT3DTEXTURE9 *texture);
409 #define D3DXCreateTextureFromFileEx WINELIB_NAME_AW(D3DXCreateTextureFromFileEx)
411 HRESULT WINAPI D3DXCreateCubeTextureFromFileExA( LPDIRECT3DDEVICE9 device,
412 LPCSTR srcfile,
413 UINT size,
414 UINT miplevels,
415 DWORD usage,
416 D3DFORMAT format,
417 D3DPOOL pool,
418 DWORD filter,
419 DWORD mipfilter,
420 D3DCOLOR colorkey,
421 D3DXIMAGE_INFO *srcinfo,
422 PALETTEENTRY *palette,
423 LPDIRECT3DCUBETEXTURE9 *cube);
425 HRESULT WINAPI D3DXCreateCubeTextureFromFileExW( LPDIRECT3DDEVICE9 device,
426 LPCWSTR srcfile,
427 UINT size,
428 UINT miplevels,
429 DWORD usage,
430 D3DFORMAT format,
431 D3DPOOL pool,
432 DWORD filter,
433 DWORD mipfilter,
434 D3DCOLOR colorkey,
435 D3DXIMAGE_INFO *srcinfo,
436 PALETTEENTRY *palette,
437 LPDIRECT3DCUBETEXTURE9 *cube);
438 #define D3DXCreateCubeTextureFromFileEx WINELIB_NAME_AW(D3DXCreateCubeTextureFromFileEx)
440 HRESULT WINAPI D3DXCreateVolumeTextureFromFileExA(LPDIRECT3DDEVICE9 device,
441 LPCSTR srcfile,
442 UINT width,
443 UINT height,
444 UINT depth,
445 UINT miplevels,
446 DWORD usage,
447 D3DFORMAT format,
448 D3DPOOL pool,
449 DWORD filter,
450 DWORD mipfilter,
451 D3DCOLOR colorkey,
452 D3DXIMAGE_INFO *srcinfo,
453 PALETTEENTRY *palette,
454 LPDIRECT3DVOLUMETEXTURE9 *volume);
456 HRESULT WINAPI D3DXCreateVolumeTextureFromFileExW(LPDIRECT3DDEVICE9 device,
457 LPCWSTR srcfile,
458 UINT width,
459 UINT height,
460 UINT depth,
461 UINT miplevels,
462 DWORD usage,
463 D3DFORMAT format,
464 D3DPOOL pool,
465 DWORD filter,
466 DWORD mipfilter,
467 D3DCOLOR colorkey,
468 D3DXIMAGE_INFO *srcinfo,
469 PALETTEENTRY *palette,
470 LPDIRECT3DVOLUMETEXTURE9 *volume);
471 #define D3DXCreateVolumeTextureFromFileEx WINELIB_NAME_AW(D3DXCreateVolumeTextureFromFileEx)
473 HRESULT WINAPI D3DXCreateTextureFromResourceExA( LPDIRECT3DDEVICE9 device,
474 HMODULE srcmodule,
475 LPCSTR resource,
476 UINT width,
477 UINT height,
478 UINT miplevels,
479 DWORD usage,
480 D3DFORMAT format,
481 D3DPOOL pool,
482 DWORD filter,
483 DWORD mipfilter,
484 D3DCOLOR colorkey,
485 D3DXIMAGE_INFO *srcinfo,
486 PALETTEENTRY *palette,
487 LPDIRECT3DTEXTURE9 *texture);
489 HRESULT WINAPI D3DXCreateTextureFromResourceExW( LPDIRECT3DDEVICE9 device,
490 HMODULE srcmodule,
491 LPCWSTR resource,
492 UINT width,
493 UINT height,
494 UINT miplevels,
495 DWORD usage,
496 D3DFORMAT format,
497 D3DPOOL pool,
498 DWORD filter,
499 DWORD mipfilter,
500 D3DCOLOR colorkey,
501 D3DXIMAGE_INFO *srcinfo,
502 PALETTEENTRY *palette,
503 LPDIRECT3DTEXTURE9 *texture);
504 #define D3DXCreateTextureFromResourceEx WINELIB_NAME_AW(D3DXCreateTextureFromResourceEx)
506 HRESULT WINAPI D3DXCreateCubeTextureFromResourceExA( LPDIRECT3DDEVICE9 device,
507 HMODULE srcmodule,
508 LPCSTR resource,
509 UINT size,
510 UINT miplevels,
511 DWORD usage,
512 D3DFORMAT format,
513 D3DPOOL pool,
514 DWORD filter,
515 DWORD mipfilter,
516 D3DCOLOR colorkey,
517 D3DXIMAGE_INFO *srcinfo,
518 PALETTEENTRY *palette,
519 LPDIRECT3DCUBETEXTURE9 *cube);
521 HRESULT WINAPI D3DXCreateCubeTextureFromResourceExW( LPDIRECT3DDEVICE9 device,
522 HMODULE srcmodule,
523 LPCWSTR resource,
524 UINT size,
525 UINT miplevels,
526 DWORD usage,
527 D3DFORMAT format,
528 D3DPOOL pool,
529 DWORD filter,
530 DWORD mipfilter,
531 D3DCOLOR colorkey,
532 D3DXIMAGE_INFO *srcinfo,
533 PALETTEENTRY *palette,
534 LPDIRECT3DCUBETEXTURE9 *cube);
535 #define D3DXCreateCubeTextureFromResourceEx WINELIB_NAME_AW(D3DXCreateCubeTextureFromResourceEx)
537 HRESULT WINAPI D3DXCreateVolumeTextureFromResourceExA(LPDIRECT3DDEVICE9 device,
538 HMODULE srcmodule,
539 LPCSTR resource,
540 UINT width,
541 UINT height,
542 UINT depth,
543 UINT miplevels,
544 DWORD usage,
545 D3DFORMAT format,
546 D3DPOOL pool,
547 DWORD filter,
548 DWORD mipfilter,
549 D3DCOLOR colorkey,
550 D3DXIMAGE_INFO *srcinfo,
551 PALETTEENTRY *palette,
552 LPDIRECT3DVOLUMETEXTURE9 *volume);
554 HRESULT WINAPI D3DXCreateVolumeTextureFromResourceExW(LPDIRECT3DDEVICE9 device,
555 HMODULE srcmodule,
556 LPCWSTR resource,
557 UINT width,
558 UINT height,
559 UINT depth,
560 UINT miplevels,
561 DWORD usage,
562 D3DFORMAT format,
563 D3DPOOL pool,
564 DWORD filter,
565 DWORD mipfilter,
566 D3DCOLOR colorkey,
567 D3DXIMAGE_INFO *srcinfo,
568 PALETTEENTRY *palette,
569 LPDIRECT3DVOLUMETEXTURE9 *volume);
570 #define D3DXCreateVolumeTextureFromResourceEx WINELIB_NAME_AW(D3DXCreateVolumeTextureFromResourceEx)
572 HRESULT WINAPI D3DXCreateTextureFromFileInMemory( LPDIRECT3DDEVICE9 device,
573 LPCVOID srcdata,
574 UINT srcdatasize,
575 LPDIRECT3DTEXTURE9* texture);
577 HRESULT WINAPI D3DXCreateCubeTextureFromFileInMemory( LPDIRECT3DDEVICE9 device,
578 LPCVOID srcdata,
579 UINT srcdatasize,
580 LPDIRECT3DCUBETEXTURE9* cube);
582 HRESULT WINAPI D3DXCreateVolumeTextureFromFileInMemory(LPDIRECT3DDEVICE9 device,
583 LPCVOID srcdata,
584 UINT srcdatasize,
585 LPDIRECT3DVOLUMETEXTURE9 *volume);
587 HRESULT WINAPI D3DXCreateTextureFromFileInMemoryEx( LPDIRECT3DDEVICE9 device,
588 LPCVOID srcdata,
589 UINT srcdatasize,
590 UINT width,
591 UINT height,
592 UINT miplevels,
593 DWORD usage,
594 D3DFORMAT format,
595 D3DPOOL pool,
596 DWORD filter,
597 DWORD mipfilter,
598 D3DCOLOR colorkey,
599 D3DXIMAGE_INFO *srcinfo,
600 PALETTEENTRY *palette,
601 LPDIRECT3DTEXTURE9 *texture);
603 HRESULT WINAPI D3DXCreateCubeTextureFromFileInMemoryEx( LPDIRECT3DDEVICE9 device,
604 LPCVOID srcdata,
605 UINT srcdatasize,
606 UINT size,
607 UINT miplevels,
608 DWORD usage,
609 D3DFORMAT format,
610 D3DPOOL pool,
611 DWORD filter,
612 DWORD mipfilter,
613 D3DCOLOR colorkey,
614 D3DXIMAGE_INFO *srcinfo,
615 PALETTEENTRY *palette,
616 LPDIRECT3DCUBETEXTURE9 *cube);
618 HRESULT WINAPI D3DXCreateVolumeTextureFromFileInMemoryEx(LPDIRECT3DDEVICE9 device,
619 LPCVOID srcdata,
620 UINT srcdatasize,
621 UINT width,
622 UINT height,
623 UINT depth,
624 UINT miplevels,
625 DWORD usage,
626 D3DFORMAT format,
627 D3DPOOL pool,
628 DWORD filter,
629 DWORD mipfilter,
630 D3DCOLOR colorkey,
631 D3DXIMAGE_INFO *srcinfo,
632 PALETTEENTRY *palette,
633 LPDIRECT3DVOLUMETEXTURE9 *volume);
635 HRESULT WINAPI D3DXSaveTextureToFileA(LPCSTR destfile,
636 D3DXIMAGE_FILEFORMAT destformat,
637 LPDIRECT3DBASETEXTURE9 srctexture,
638 CONST PALETTEENTRY *srcpalette);
639 HRESULT WINAPI D3DXSaveTextureToFileW(LPCWSTR destfile,
640 D3DXIMAGE_FILEFORMAT destformat,
641 LPDIRECT3DBASETEXTURE9 srctexture,
642 CONST PALETTEENTRY *srcpalette);
643 #define D3DXSaveTextureToFile WINELIB_NAME_AW(D3DXSaveTextureToFile)
646 /* Other functions */
647 HRESULT WINAPI D3DXFilterTexture( LPDIRECT3DBASETEXTURE9 texture,
648 CONST PALETTEENTRY *palette,
649 UINT srclevel,
650 DWORD filter);
651 #define D3DXFilterCubeTexture D3DXFilterTexture
652 #define D3DXFilterVolumeTexture D3DXFilterTexture
654 HRESULT WINAPI D3DXFillTexture( LPDIRECT3DTEXTURE9 texture,
655 LPD3DXFILL2D function,
656 LPVOID data);
658 HRESULT WINAPI D3DXFillCubeTexture( LPDIRECT3DCUBETEXTURE9 cube,
659 LPD3DXFILL3D function,
660 LPVOID data);
662 HRESULT WINAPI D3DXFillVolumeTexture( LPDIRECT3DVOLUMETEXTURE9 volume,
663 LPD3DXFILL3D function,
664 LPVOID data);
666 HRESULT WINAPI D3DXFillTextureTX( LPDIRECT3DTEXTURE9 texture,
667 CONST DWORD *function,
668 CONST D3DXVECTOR4 *constants,
669 UINT numconstants);
671 HRESULT WINAPI D3DXFillCubeTextureTX( LPDIRECT3DCUBETEXTURE9 cube,
672 CONST DWORD *function,
673 CONST D3DXVECTOR4 *constants,
674 UINT numconstants);
676 HRESULT WINAPI D3DXFillVolumeTextureTX(LPDIRECT3DVOLUMETEXTURE9 volume,
677 CONST DWORD *function,
678 CONST D3DXVECTOR4 *constants,
679 UINT numconstants);
681 HRESULT WINAPI D3DXComputeNormalMap( LPDIRECT3DTEXTURE9 texture,
682 LPDIRECT3DTEXTURE9 srctexture,
683 CONST PALETTEENTRY *srcpalette,
684 DWORD flags,
685 DWORD channel,
686 FLOAT amplitude);
689 #ifdef __cplusplus
691 #endif
693 #endif /* __WINE_D3DX9TEX_H */