d3dcaps.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439
  1. /*
  2. * Copyright (C) 2000 Peter Hunnisett
  3. *
  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.
  8. *
  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.
  13. *
  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
  17. */
  18. #ifndef __WINE_D3DCAPS_H
  19. #define __WINE_D3DCAPS_H
  20. #include <ddraw.h>
  21. #ifdef __i386__
  22. #include <pshpack4.h>
  23. #endif
  24. typedef struct _D3DTRANSFORMCAPS {
  25. DWORD dwSize;
  26. DWORD dwCaps;
  27. } D3DTRANSFORMCAPS, *LPD3DTRANSFORMCAPS;
  28. #define D3DTRANSFORMCAPS_CLIP __MSABI_LONG(0x00000001)
  29. typedef struct _D3DLIGHTINGCAPS {
  30. DWORD dwSize;
  31. DWORD dwCaps;
  32. DWORD dwLightingModel;
  33. DWORD dwNumLights;
  34. } D3DLIGHTINGCAPS, *LPD3DLIGHTINGCAPS;
  35. #define D3DLIGHTINGMODEL_RGB 0x00000001
  36. #define D3DLIGHTINGMODEL_MONO 0x00000002
  37. #define D3DLIGHTCAPS_POINT 0x00000001
  38. #define D3DLIGHTCAPS_SPOT 0x00000002
  39. #define D3DLIGHTCAPS_DIRECTIONAL 0x00000004
  40. #define D3DLIGHTCAPS_PARALLELPOINT 0x00000008
  41. #define D3DLIGHTCAPS_GLSPOT 0x00000010
  42. typedef struct _D3dPrimCaps {
  43. DWORD dwSize;
  44. DWORD dwMiscCaps;
  45. DWORD dwRasterCaps;
  46. DWORD dwZCmpCaps;
  47. DWORD dwSrcBlendCaps;
  48. DWORD dwDestBlendCaps;
  49. DWORD dwAlphaCmpCaps;
  50. DWORD dwShadeCaps;
  51. DWORD dwTextureCaps;
  52. DWORD dwTextureFilterCaps;
  53. DWORD dwTextureBlendCaps;
  54. DWORD dwTextureAddressCaps;
  55. DWORD dwStippleWidth;
  56. DWORD dwStippleHeight;
  57. } D3DPRIMCAPS, *LPD3DPRIMCAPS;
  58. #define D3DPMISCCAPS_MASKPLANES 0x00000001
  59. #define D3DPMISCCAPS_MASKZ 0x00000002
  60. #define D3DPMISCCAPS_LINEPATTERNREP 0x00000004
  61. #define D3DPMISCCAPS_CONFORMANT 0x00000008
  62. #define D3DPMISCCAPS_CULLNONE 0x00000010
  63. #define D3DPMISCCAPS_CULLCW 0x00000020
  64. #define D3DPMISCCAPS_CULLCCW 0x00000040
  65. #define D3DPRASTERCAPS_DITHER 0x00000001
  66. #define D3DPRASTERCAPS_ROP2 0x00000002
  67. #define D3DPRASTERCAPS_XOR 0x00000004
  68. #define D3DPRASTERCAPS_PAT 0x00000008
  69. #define D3DPRASTERCAPS_ZTEST 0x00000010
  70. #define D3DPRASTERCAPS_SUBPIXEL 0x00000020
  71. #define D3DPRASTERCAPS_SUBPIXELX 0x00000040
  72. #define D3DPRASTERCAPS_FOGVERTEX 0x00000080
  73. #define D3DPRASTERCAPS_FOGTABLE 0x00000100
  74. #define D3DPRASTERCAPS_STIPPLE 0x00000200
  75. #define D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT 0x00000400
  76. #define D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT 0x00000800
  77. #define D3DPRASTERCAPS_ANTIALIASEDGES 0x00001000
  78. #define D3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000
  79. #define D3DPRASTERCAPS_ZBIAS 0x00004000
  80. #define D3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000
  81. #define D3DPRASTERCAPS_FOGRANGE 0x00010000
  82. #define D3DPRASTERCAPS_ANISOTROPY 0x00020000
  83. #define D3DPRASTERCAPS_WBUFFER 0x00040000
  84. #define D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT 0x00080000
  85. #define D3DPRASTERCAPS_WFOG 0x00100000
  86. #define D3DPRASTERCAPS_ZFOG 0x00200000
  87. #define D3DPCMPCAPS_NEVER 0x00000001
  88. #define D3DPCMPCAPS_LESS 0x00000002
  89. #define D3DPCMPCAPS_EQUAL 0x00000004
  90. #define D3DPCMPCAPS_LESSEQUAL 0x00000008
  91. #define D3DPCMPCAPS_GREATER 0x00000010
  92. #define D3DPCMPCAPS_NOTEQUAL 0x00000020
  93. #define D3DPCMPCAPS_GREATEREQUAL 0x00000040
  94. #define D3DPCMPCAPS_ALWAYS 0x00000080
  95. #define D3DPBLENDCAPS_ZERO 0x00000001
  96. #define D3DPBLENDCAPS_ONE 0x00000002
  97. #define D3DPBLENDCAPS_SRCCOLOR 0x00000004
  98. #define D3DPBLENDCAPS_INVSRCCOLOR 0x00000008
  99. #define D3DPBLENDCAPS_SRCALPHA 0x00000010
  100. #define D3DPBLENDCAPS_INVSRCALPHA 0x00000020
  101. #define D3DPBLENDCAPS_DESTALPHA 0x00000040
  102. #define D3DPBLENDCAPS_INVDESTALPHA 0x00000080
  103. #define D3DPBLENDCAPS_DESTCOLOR 0x00000100
  104. #define D3DPBLENDCAPS_INVDESTCOLOR 0x00000200
  105. #define D3DPBLENDCAPS_SRCALPHASAT 0x00000400
  106. #define D3DPBLENDCAPS_BOTHSRCALPHA 0x00000800
  107. #define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x00001000
  108. #define D3DPSHADECAPS_COLORFLATMONO 0x00000001
  109. #define D3DPSHADECAPS_COLORFLATRGB 0x00000002
  110. #define D3DPSHADECAPS_COLORGOURAUDMONO 0x00000004
  111. #define D3DPSHADECAPS_COLORGOURAUDRGB 0x00000008
  112. #define D3DPSHADECAPS_COLORPHONGMONO 0x00000010
  113. #define D3DPSHADECAPS_COLORPHONGRGB 0x00000020
  114. #define D3DPSHADECAPS_SPECULARFLATMONO 0x00000040
  115. #define D3DPSHADECAPS_SPECULARFLATRGB 0x00000080
  116. #define D3DPSHADECAPS_SPECULARGOURAUDMONO 0x00000100
  117. #define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00000200
  118. #define D3DPSHADECAPS_SPECULARPHONGMONO 0x00000400
  119. #define D3DPSHADECAPS_SPECULARPHONGRGB 0x00000800
  120. #define D3DPSHADECAPS_ALPHAFLATBLEND 0x00001000
  121. #define D3DPSHADECAPS_ALPHAFLATSTIPPLED 0x00002000
  122. #define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x00004000
  123. #define D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED 0x00008000
  124. #define D3DPSHADECAPS_ALPHAPHONGBLEND 0x00010000
  125. #define D3DPSHADECAPS_ALPHAPHONGSTIPPLED 0x00020000
  126. #define D3DPSHADECAPS_FOGFLAT 0x00040000
  127. #define D3DPSHADECAPS_FOGGOURAUD 0x00080000
  128. #define D3DPSHADECAPS_FOGPHONG 0x00100000
  129. #define D3DPTEXTURECAPS_PERSPECTIVE 0x00000001
  130. #define D3DPTEXTURECAPS_POW2 0x00000002
  131. #define D3DPTEXTURECAPS_ALPHA 0x00000004
  132. #define D3DPTEXTURECAPS_TRANSPARENCY 0x00000008
  133. #define D3DPTEXTURECAPS_BORDER 0x00000010
  134. #define D3DPTEXTURECAPS_SQUAREONLY 0x00000020
  135. #define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00000040
  136. #define D3DPTEXTURECAPS_ALPHAPALETTE 0x00000080
  137. #define D3DPTEXTURECAPS_NONPOW2CONDITIONAL __MSABI_LONG(0x00000100)
  138. /* yes actually 0x00000200 is unused - or at least unreleased */
  139. #define D3DPTEXTURECAPS_PROJECTED 0x00000400
  140. #define D3DPTEXTURECAPS_CUBEMAP 0x00000800
  141. #define D3DPTEXTURECAPS_COLORKEYBLEND 0x00001000
  142. #define D3DPTFILTERCAPS_NEAREST 0x00000001
  143. #define D3DPTFILTERCAPS_LINEAR 0x00000002
  144. #define D3DPTFILTERCAPS_MIPNEAREST 0x00000004
  145. #define D3DPTFILTERCAPS_MIPLINEAR 0x00000008
  146. #define D3DPTFILTERCAPS_LINEARMIPNEAREST 0x00000010
  147. #define D3DPTFILTERCAPS_LINEARMIPLINEAR 0x00000020
  148. /* yes - missing numbers */
  149. #define D3DPTFILTERCAPS_MINFPOINT 0x00000100
  150. #define D3DPTFILTERCAPS_MINFLINEAR 0x00000200
  151. #define D3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400
  152. /* yes - missing numbers */
  153. #define D3DPTFILTERCAPS_MIPFPOINT 0x00010000
  154. #define D3DPTFILTERCAPS_MIPFLINEAR 0x00020000
  155. /* yes - missing numbers */
  156. #define D3DPTFILTERCAPS_MAGFPOINT 0x01000000
  157. #define D3DPTFILTERCAPS_MAGFLINEAR 0x02000000
  158. #define D3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000
  159. #define D3DPTFILTERCAPS_MAGFAFLATCUBIC 0x08000000
  160. #define D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 0x10000000
  161. #define D3DPTBLENDCAPS_DECAL 0x00000001
  162. #define D3DPTBLENDCAPS_MODULATE 0x00000002
  163. #define D3DPTBLENDCAPS_DECALALPHA 0x00000004
  164. #define D3DPTBLENDCAPS_MODULATEALPHA 0x00000008
  165. #define D3DPTBLENDCAPS_DECALMASK 0x00000010
  166. #define D3DPTBLENDCAPS_MODULATEMASK 0x00000020
  167. #define D3DPTBLENDCAPS_COPY 0x00000040
  168. #define D3DPTBLENDCAPS_ADD 0x00000080
  169. #define D3DPTADDRESSCAPS_WRAP 0x00000001
  170. #define D3DPTADDRESSCAPS_MIRROR 0x00000002
  171. #define D3DPTADDRESSCAPS_CLAMP 0x00000004
  172. #define D3DPTADDRESSCAPS_BORDER 0x00000008
  173. #define D3DPTADDRESSCAPS_INDEPENDENTUV 0x00000010
  174. typedef struct _D3DDeviceDesc {
  175. DWORD dwSize;
  176. DWORD dwFlags;
  177. D3DCOLORMODEL dcmColorModel;
  178. DWORD dwDevCaps;
  179. D3DTRANSFORMCAPS dtcTransformCaps;
  180. WINBOOL bClipping;
  181. D3DLIGHTINGCAPS dlcLightingCaps;
  182. D3DPRIMCAPS dpcLineCaps;
  183. D3DPRIMCAPS dpcTriCaps;
  184. DWORD dwDeviceRenderBitDepth;
  185. DWORD dwDeviceZBufferBitDepth;
  186. DWORD dwMaxBufferSize;
  187. DWORD dwMaxVertexCount;
  188. DWORD dwMinTextureWidth,dwMinTextureHeight;
  189. DWORD dwMaxTextureWidth,dwMaxTextureHeight;
  190. DWORD dwMinStippleWidth,dwMaxStippleWidth;
  191. DWORD dwMinStippleHeight,dwMaxStippleHeight;
  192. DWORD dwMaxTextureRepeat;
  193. DWORD dwMaxTextureAspectRatio;
  194. DWORD dwMaxAnisotropy;
  195. D3DVALUE dvGuardBandLeft;
  196. D3DVALUE dvGuardBandTop;
  197. D3DVALUE dvGuardBandRight;
  198. D3DVALUE dvGuardBandBottom;
  199. D3DVALUE dvExtentsAdjust;
  200. DWORD dwStencilCaps;
  201. DWORD dwFVFCaps;
  202. DWORD dwTextureOpCaps;
  203. WORD wMaxTextureBlendStages;
  204. WORD wMaxSimultaneousTextures;
  205. } D3DDEVICEDESC,*LPD3DDEVICEDESC;
  206. #define D3DDEVICEDESCSIZE (sizeof(D3DDEVICEDESC))
  207. typedef struct _D3DDeviceDesc7 {
  208. DWORD dwDevCaps;
  209. D3DPRIMCAPS dpcLineCaps;
  210. D3DPRIMCAPS dpcTriCaps;
  211. DWORD dwDeviceRenderBitDepth;
  212. DWORD dwDeviceZBufferBitDepth;
  213. DWORD dwMinTextureWidth, dwMinTextureHeight;
  214. DWORD dwMaxTextureWidth, dwMaxTextureHeight;
  215. DWORD dwMaxTextureRepeat;
  216. DWORD dwMaxTextureAspectRatio;
  217. DWORD dwMaxAnisotropy;
  218. D3DVALUE dvGuardBandLeft;
  219. D3DVALUE dvGuardBandTop;
  220. D3DVALUE dvGuardBandRight;
  221. D3DVALUE dvGuardBandBottom;
  222. D3DVALUE dvExtentsAdjust;
  223. DWORD dwStencilCaps;
  224. DWORD dwFVFCaps;
  225. DWORD dwTextureOpCaps;
  226. WORD wMaxTextureBlendStages;
  227. WORD wMaxSimultaneousTextures;
  228. DWORD dwMaxActiveLights;
  229. D3DVALUE dvMaxVertexW;
  230. GUID deviceGUID;
  231. WORD wMaxUserClipPlanes;
  232. WORD wMaxVertexBlendMatrices;
  233. DWORD dwVertexProcessingCaps;
  234. DWORD dwReserved1;
  235. DWORD dwReserved2;
  236. DWORD dwReserved3;
  237. DWORD dwReserved4;
  238. } D3DDEVICEDESC7, *LPD3DDEVICEDESC7;
  239. #define D3DDEVICEDESC7SIZE (sizeof(D3DDEVICEDESC7))
  240. #define D3DDD_COLORMODEL 0x00000001
  241. #define D3DDD_DEVCAPS 0x00000002
  242. #define D3DDD_TRANSFORMCAPS 0x00000004
  243. #define D3DDD_LIGHTINGCAPS 0x00000008
  244. #define D3DDD_BCLIPPING 0x00000010
  245. #define D3DDD_LINECAPS 0x00000020
  246. #define D3DDD_TRICAPS 0x00000040
  247. #define D3DDD_DEVICERENDERBITDEPTH 0x00000080
  248. #define D3DDD_DEVICEZBUFFERBITDEPTH 0x00000100
  249. #define D3DDD_MAXBUFFERSIZE 0x00000200
  250. #define D3DDD_MAXVERTEXCOUNT 0x00000400
  251. #define D3DDEVCAPS_FLOATTLVERTEX 0x00000001
  252. #define D3DDEVCAPS_SORTINCREASINGZ 0x00000002
  253. #define D3DDEVCAPS_SORTDECREASINGZ 0X00000004
  254. #define D3DDEVCAPS_SORTEXACT 0x00000008
  255. #define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x00000010
  256. #define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x00000020
  257. #define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x00000040
  258. #define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x00000080
  259. #define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x00000100
  260. #define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x00000200
  261. #define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x00000400
  262. #define D3DDEVCAPS_CANRENDERAFTERFLIP 0x00000800
  263. #define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x00001000
  264. #define D3DDEVCAPS_DRAWPRIMITIVES2 0x00002000
  265. #define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x00004000
  266. #define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x00008000
  267. #define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x00010000
  268. #define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x00020000
  269. #define D3DDEVCAPS_HWRASTERIZATION 0x00080000
  270. #define D3DSTENCILCAPS_KEEP 0x00000001
  271. #define D3DSTENCILCAPS_ZERO 0x00000002
  272. #define D3DSTENCILCAPS_REPLACE 0x00000004
  273. #define D3DSTENCILCAPS_INCRSAT 0x00000008
  274. #define D3DSTENCILCAPS_DECRSAT 0x00000010
  275. #define D3DSTENCILCAPS_INVERT 0x00000020
  276. #define D3DSTENCILCAPS_INCR 0x00000040
  277. #define D3DSTENCILCAPS_DECR 0x00000080
  278. #define D3DTEXOPCAPS_DISABLE 0x00000001
  279. #define D3DTEXOPCAPS_SELECTARG1 0x00000002
  280. #define D3DTEXOPCAPS_SELECTARG2 0x00000004
  281. #define D3DTEXOPCAPS_MODULATE 0x00000008
  282. #define D3DTEXOPCAPS_MODULATE2X 0x00000010
  283. #define D3DTEXOPCAPS_MODULATE4X 0x00000020
  284. #define D3DTEXOPCAPS_ADD 0x00000040
  285. #define D3DTEXOPCAPS_ADDSIGNED 0x00000080
  286. #define D3DTEXOPCAPS_ADDSIGNED2X 0x00000100
  287. #define D3DTEXOPCAPS_SUBTRACT 0x00000200
  288. #define D3DTEXOPCAPS_ADDSMOOTH 0x00000400
  289. #define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x00000800
  290. #define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x00001000
  291. #define D3DTEXOPCAPS_BLENDFACTORALPHA 0x00002000
  292. #define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x00004000
  293. #define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x00008000
  294. #define D3DTEXOPCAPS_PREMODULATE 0x00010000
  295. #define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x00020000
  296. #define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x00040000
  297. #define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x00080000
  298. #define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x00100000
  299. #define D3DTEXOPCAPS_BUMPENVMAP 0x00200000
  300. #define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x00400000
  301. #define D3DTEXOPCAPS_DOTPRODUCT3 0x00800000
  302. #define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x0000FFFF
  303. #define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x00080000
  304. #define D3DVTXPCAPS_TEXGEN 0x00000001
  305. #define D3DVTXPCAPS_MATERIALSOURCE7 0x00000002
  306. #define D3DVTXPCAPS_VERTEXFOG 0x00000004
  307. #define D3DVTXPCAPS_DIRECTIONALLIGHTS 0x00000008
  308. #define D3DVTXPCAPS_POSITIONALLIGHTS 0x00000010
  309. #define D3DVTXPCAPS_LOCALVIEWER 0x00000020
  310. typedef HRESULT (CALLBACK *LPD3DENUMDEVICESCALLBACK)(GUID *guid, char *description, char *name,
  311. D3DDEVICEDESC *hal_desc, D3DDEVICEDESC *hel_desc, void *ctx);
  312. typedef HRESULT (CALLBACK *LPD3DENUMDEVICESCALLBACK7)(char *description, char *name, D3DDEVICEDESC7 *desc, void *ctx);
  313. #define D3DFDS_COLORMODEL 0x00000001
  314. #define D3DFDS_GUID 0x00000002
  315. #define D3DFDS_HARDWARE 0x00000004
  316. #define D3DFDS_TRIANGLES 0x00000008
  317. #define D3DFDS_LINES 0x00000010
  318. #define D3DFDS_MISCCAPS 0x00000020
  319. #define D3DFDS_RASTERCAPS 0x00000040
  320. #define D3DFDS_ZCMPCAPS 0x00000080
  321. #define D3DFDS_ALPHACMPCAPS 0x00000100
  322. #define D3DFDS_SRCBLENDCAPS 0x00000200
  323. #define D3DFDS_DSTBLENDCAPS 0x00000400
  324. #define D3DFDS_SHADECAPS 0x00000800
  325. #define D3DFDS_TEXTURECAPS 0x00001000
  326. #define D3DFDS_TEXTUREFILTERCAPS 0x00002000
  327. #define D3DFDS_TEXTUREBLENDCAPS 0x00004000
  328. #define D3DFDS_TEXTUREADDRESSCAPS 0x00008000
  329. typedef struct _D3DFINDDEVICESEARCH {
  330. DWORD dwSize;
  331. DWORD dwFlags;
  332. WINBOOL bHardware;
  333. D3DCOLORMODEL dcmColorModel;
  334. GUID guid;
  335. DWORD dwCaps;
  336. D3DPRIMCAPS dpcPrimCaps;
  337. } D3DFINDDEVICESEARCH,*LPD3DFINDDEVICESEARCH;
  338. typedef struct _D3DFINDDEVICERESULT {
  339. DWORD dwSize;
  340. GUID guid;
  341. D3DDEVICEDESC ddHwDesc;
  342. D3DDEVICEDESC ddSwDesc;
  343. } D3DFINDDEVICERESULT,*LPD3DFINDDEVICERESULT;
  344. typedef struct _D3DExecuteBufferDesc {
  345. DWORD dwSize;
  346. DWORD dwFlags;
  347. DWORD dwCaps;
  348. DWORD dwBufferSize;
  349. void *lpData;
  350. } D3DEXECUTEBUFFERDESC, *LPD3DEXECUTEBUFFERDESC;
  351. #define D3DDEB_BUFSIZE 0x00000001
  352. #define D3DDEB_CAPS 0x00000002
  353. #define D3DDEB_LPDATA 0x00000004
  354. #define D3DDEBCAPS_SYSTEMMEMORY 0x00000001
  355. #define D3DDEBCAPS_VIDEOMEMORY 0x00000002
  356. #define D3DDEBCAPS_MEM (D3DDEBCAPS_SYSTEMMEMORY|D3DDEBCAPS_VIDEOMEMORY) /* = 0x3 */
  357. typedef struct _D3DDEVINFO_TEXTUREMANAGER {
  358. WINBOOL bThrashing;
  359. DWORD dwApproxBytesDownloaded;
  360. DWORD dwNumEvicts;
  361. DWORD dwNumVidCreates;
  362. DWORD dwNumTexturesUsed;
  363. DWORD dwNumUsedTexInVid;
  364. DWORD dwWorkingSet;
  365. DWORD dwWorkingSetBytes;
  366. DWORD dwTotalManaged;
  367. DWORD dwTotalBytes;
  368. DWORD dwLastPri;
  369. } D3DDEVINFO_TEXTUREMANAGER, *LPD3DDEVINFO_TEXTUREMANAGER;
  370. typedef struct _D3DDEVINFO_TEXTURING {
  371. DWORD dwNumLoads;
  372. DWORD dwApproxBytesLoaded;
  373. DWORD dwNumPreLoads;
  374. DWORD dwNumSet;
  375. DWORD dwNumCreates;
  376. DWORD dwNumDestroys;
  377. DWORD dwNumSetPriorities;
  378. DWORD dwNumSetLODs;
  379. DWORD dwNumLocks;
  380. DWORD dwNumGetDCs;
  381. } D3DDEVINFO_TEXTURING, *LPD3DDEVINFO_TEXTURING;
  382. #ifdef __i386__
  383. #include <poppack.h>
  384. #endif
  385. #endif