d3d8caps.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. /*
  2. * Copyright (C) 2002 Jason Edmeades
  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_D3D8CAPS_H
  19. #define __WINE_D3D8CAPS_H
  20. #ifdef __i386__
  21. #include <pshpack4.h>
  22. #endif
  23. /*
  24. * Definitions
  25. */
  26. #define D3DCAPS_READ_SCANLINE 0x20000
  27. #define D3DCURSORCAPS_COLOR 1
  28. #define D3DCURSORCAPS_LOWRES 2
  29. #define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x0000010
  30. #define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x0000020
  31. #define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x0000040
  32. #define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x0000080
  33. #define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x0000100
  34. #define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x0000200
  35. #define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x0000400
  36. #define D3DDEVCAPS_CANRENDERAFTERFLIP 0x0000800
  37. #define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x0001000
  38. #define D3DDEVCAPS_DRAWPRIMITIVES2 0x0002000
  39. #define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x0004000
  40. #define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x0008000
  41. #define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x0010000
  42. #define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x0020000
  43. #define D3DDEVCAPS_HWRASTERIZATION 0x0080000
  44. #define D3DDEVCAPS_PUREDEVICE 0x0100000
  45. #define D3DDEVCAPS_QUINTICRTPATCHES 0x0200000
  46. #define D3DDEVCAPS_RTPATCHES 0x0400000
  47. #define D3DDEVCAPS_RTPATCHHANDLEZERO 0x0800000
  48. #define D3DDEVCAPS_NPATCHES 0x1000000
  49. #define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x00FFFF
  50. #define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x080000
  51. #define D3DFVFCAPS_PSIZE 0x100000
  52. #define D3DLINECAPS_TEXTURE 0x01
  53. #define D3DLINECAPS_ZTEST 0x02
  54. #define D3DLINECAPS_BLEND 0x04
  55. #define D3DLINECAPS_ALPHACMP 0x08
  56. #define D3DLINECAPS_FOG 0x10
  57. #define D3DPBLENDCAPS_ZERO 0x0001
  58. #define D3DPBLENDCAPS_ONE 0x0002
  59. #define D3DPBLENDCAPS_SRCCOLOR 0x0004
  60. #define D3DPBLENDCAPS_INVSRCCOLOR 0x0008
  61. #define D3DPBLENDCAPS_SRCALPHA 0x0010
  62. #define D3DPBLENDCAPS_INVSRCALPHA 0x0020
  63. #define D3DPBLENDCAPS_DESTALPHA 0x0040
  64. #define D3DPBLENDCAPS_INVDESTALPHA 0x0080
  65. #define D3DPBLENDCAPS_DESTCOLOR 0x0100
  66. #define D3DPBLENDCAPS_INVDESTCOLOR 0x0200
  67. #define D3DPBLENDCAPS_SRCALPHASAT 0x0400
  68. #define D3DPBLENDCAPS_BOTHSRCALPHA 0x0800
  69. #define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x1000
  70. #define D3DPCMPCAPS_NEVER 0x01
  71. #define D3DPCMPCAPS_LESS 0x02
  72. #define D3DPCMPCAPS_EQUAL 0x04
  73. #define D3DPCMPCAPS_LESSEQUAL 0x08
  74. #define D3DPCMPCAPS_GREATER 0x10
  75. #define D3DPCMPCAPS_NOTEQUAL 0x20
  76. #define D3DPCMPCAPS_GREATEREQUAL 0x40
  77. #define D3DPCMPCAPS_ALWAYS 0x80
  78. #define D3DPMISCCAPS_MASKZ __MSABI_LONG(0x00000002)
  79. #define D3DPMISCCAPS_LINEPATTERNREP __MSABI_LONG(0x00000004)
  80. #define D3DPMISCCAPS_CULLNONE __MSABI_LONG(0x00000010)
  81. #define D3DPMISCCAPS_CULLCW __MSABI_LONG(0x00000020)
  82. #define D3DPMISCCAPS_CULLCCW __MSABI_LONG(0x00000040)
  83. #define D3DPMISCCAPS_COLORWRITEENABLE __MSABI_LONG(0x00000080)
  84. #define D3DPMISCCAPS_CLIPPLANESCALEDPOINTS __MSABI_LONG(0x00000100)
  85. #define D3DPMISCCAPS_CLIPTLVERTS __MSABI_LONG(0x00000200)
  86. #define D3DPMISCCAPS_TSSARGTEMP __MSABI_LONG(0x00000400)
  87. #define D3DPMISCCAPS_BLENDOP __MSABI_LONG(0x00000800)
  88. #define D3DPMISCCAPS_NULLREFERENCE __MSABI_LONG(0x00001000)
  89. #define D3DPRASTERCAPS_DITHER 0x00000001
  90. #define D3DPRASTERCAPS_PAT 0x00000008
  91. #define D3DPRASTERCAPS_ZTEST 0x00000010
  92. #define D3DPRASTERCAPS_FOGVERTEX 0x00000080
  93. #define D3DPRASTERCAPS_FOGTABLE 0x00000100
  94. #define D3DPRASTERCAPS_ANTIALIASEDGES 0x00001000
  95. #define D3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000
  96. #define D3DPRASTERCAPS_ZBIAS 0x00004000
  97. #define D3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000
  98. #define D3DPRASTERCAPS_FOGRANGE 0x00010000
  99. #define D3DPRASTERCAPS_ANISOTROPY 0x00020000
  100. #define D3DPRASTERCAPS_WBUFFER 0x00040000
  101. #define D3DPRASTERCAPS_WFOG 0x00100000
  102. #define D3DPRASTERCAPS_ZFOG 0x00200000
  103. #define D3DPRASTERCAPS_COLORPERSPECTIVE 0x00400000
  104. #define D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE 0x00800000
  105. #define D3DPRESENT_INTERVAL_DEFAULT 0x00000000
  106. #define D3DPRESENT_INTERVAL_ONE 0x00000001
  107. #define D3DPRESENT_INTERVAL_TWO 0x00000002
  108. #define D3DPRESENT_INTERVAL_THREE 0x00000004
  109. #define D3DPRESENT_INTERVAL_FOUR 0x00000008
  110. #define D3DPRESENT_INTERVAL_IMMEDIATE 0x80000000
  111. #define D3DPSHADECAPS_COLORGOURAUDRGB 0x00008
  112. #define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00200
  113. #define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x04000
  114. #define D3DPSHADECAPS_FOGGOURAUD 0x80000
  115. #define D3DPTADDRESSCAPS_WRAP 0x01
  116. #define D3DPTADDRESSCAPS_MIRROR 0x02
  117. #define D3DPTADDRESSCAPS_CLAMP 0x04
  118. #define D3DPTADDRESSCAPS_BORDER 0x08
  119. #define D3DPTADDRESSCAPS_INDEPENDENTUV 0x10
  120. #define D3DPTADDRESSCAPS_MIRRORONCE 0x20
  121. #define D3DPTEXTURECAPS_PERSPECTIVE 0x00001
  122. #define D3DPTEXTURECAPS_POW2 0x00002
  123. #define D3DPTEXTURECAPS_ALPHA 0x00004
  124. #define D3DPTEXTURECAPS_SQUAREONLY 0x00020
  125. #define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00040
  126. #define D3DPTEXTURECAPS_ALPHAPALETTE 0x00080
  127. #define D3DPTEXTURECAPS_NONPOW2CONDITIONAL 0x00100
  128. #define D3DPTEXTURECAPS_PROJECTED 0x00400
  129. #define D3DPTEXTURECAPS_CUBEMAP 0x00800
  130. #define D3DPTEXTURECAPS_VOLUMEMAP 0x02000
  131. #define D3DPTEXTURECAPS_MIPMAP 0x04000
  132. #define D3DPTEXTURECAPS_MIPVOLUMEMAP 0x08000
  133. #define D3DPTEXTURECAPS_MIPCUBEMAP 0x10000
  134. #define D3DPTEXTURECAPS_CUBEMAP_POW2 0x20000
  135. #define D3DPTEXTURECAPS_VOLUMEMAP_POW2 0x40000
  136. #define D3DPTFILTERCAPS_MINFPOINT 0x00000100
  137. #define D3DPTFILTERCAPS_MINFLINEAR 0x00000200
  138. #define D3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400
  139. #define D3DPTFILTERCAPS_MIPFPOINT 0x00010000
  140. #define D3DPTFILTERCAPS_MIPFLINEAR 0x00020000
  141. #define D3DPTFILTERCAPS_MAGFPOINT 0x01000000
  142. #define D3DPTFILTERCAPS_MAGFLINEAR 0x02000000
  143. #define D3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000
  144. #define D3DPTFILTERCAPS_MAGFAFLATCUBIC 0x08000000
  145. #define D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 0x10000000
  146. #define D3DSTENCILCAPS_KEEP 0x01
  147. #define D3DSTENCILCAPS_ZERO 0x02
  148. #define D3DSTENCILCAPS_REPLACE 0x04
  149. #define D3DSTENCILCAPS_INCRSAT 0x08
  150. #define D3DSTENCILCAPS_DECRSAT 0x10
  151. #define D3DSTENCILCAPS_INVERT 0x20
  152. #define D3DSTENCILCAPS_INCR 0x40
  153. #define D3DSTENCILCAPS_DECR 0x80
  154. #define D3DTEXOPCAPS_DISABLE 0x0000001
  155. #define D3DTEXOPCAPS_SELECTARG1 0x0000002
  156. #define D3DTEXOPCAPS_SELECTARG2 0x0000004
  157. #define D3DTEXOPCAPS_MODULATE 0x0000008
  158. #define D3DTEXOPCAPS_MODULATE2X 0x0000010
  159. #define D3DTEXOPCAPS_MODULATE4X 0x0000020
  160. #define D3DTEXOPCAPS_ADD 0x0000040
  161. #define D3DTEXOPCAPS_ADDSIGNED 0x0000080
  162. #define D3DTEXOPCAPS_ADDSIGNED2X 0x0000100
  163. #define D3DTEXOPCAPS_SUBTRACT 0x0000200
  164. #define D3DTEXOPCAPS_ADDSMOOTH 0x0000400
  165. #define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x0000800
  166. #define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x0001000
  167. #define D3DTEXOPCAPS_BLENDFACTORALPHA 0x0002000
  168. #define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x0004000
  169. #define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x0008000
  170. #define D3DTEXOPCAPS_PREMODULATE 0x0010000
  171. #define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x0020000
  172. #define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x0040000
  173. #define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x0080000
  174. #define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x0100000
  175. #define D3DTEXOPCAPS_BUMPENVMAP 0x0200000
  176. #define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x0400000
  177. #define D3DTEXOPCAPS_DOTPRODUCT3 0x0800000
  178. #define D3DTEXOPCAPS_MULTIPLYADD 0x1000000
  179. #define D3DTEXOPCAPS_LERP 0x2000000
  180. #define D3DVTXPCAPS_TEXGEN __MSABI_LONG(0x00000001)
  181. #define D3DVTXPCAPS_MATERIALSOURCE7 __MSABI_LONG(0x00000002)
  182. #define D3DVTXPCAPS_DIRECTIONALLIGHTS __MSABI_LONG(0x00000008)
  183. #define D3DVTXPCAPS_POSITIONALLIGHTS __MSABI_LONG(0x00000010)
  184. #define D3DVTXPCAPS_LOCALVIEWER __MSABI_LONG(0x00000020)
  185. #define D3DVTXPCAPS_TWEENING __MSABI_LONG(0x00000040)
  186. #define D3DVTXPCAPS_NO_VSDT_UBYTE4 __MSABI_LONG(0x00000080)
  187. #define D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD 0x00000020
  188. #define D3DCAPS3_RESERVED 0x8000001f
  189. #define D3DCAPS2_CANCALIBRATEGAMMA 0x0100000
  190. #define D3DCAPS2_CANRENDERWINDOWED 0x0080000
  191. #define D3DCAPS2_CANMANAGERESOURCE 0x10000000
  192. #define D3DCAPS2_DYNAMICTEXTURES 0x20000000
  193. #define D3DCAPS2_FULLSCREENGAMMA 0x0020000
  194. #define D3DCAPS2_NO2DDURING3DSCENE 0x0000002
  195. #define D3DCAPS2_RESERVED 0x2000000
  196. /*
  197. * The d3dcaps8 structure
  198. */
  199. typedef struct _D3DCAPS8 {
  200. D3DDEVTYPE DeviceType;
  201. UINT AdapterOrdinal;
  202. DWORD Caps;
  203. DWORD Caps2;
  204. DWORD Caps3;
  205. DWORD PresentationIntervals;
  206. DWORD CursorCaps;
  207. DWORD DevCaps;
  208. DWORD PrimitiveMiscCaps;
  209. DWORD RasterCaps;
  210. DWORD ZCmpCaps;
  211. DWORD SrcBlendCaps;
  212. DWORD DestBlendCaps;
  213. DWORD AlphaCmpCaps;
  214. DWORD ShadeCaps;
  215. DWORD TextureCaps;
  216. DWORD TextureFilterCaps;
  217. DWORD CubeTextureFilterCaps;
  218. DWORD VolumeTextureFilterCaps;
  219. DWORD TextureAddressCaps;
  220. DWORD VolumeTextureAddressCaps;
  221. DWORD LineCaps;
  222. DWORD MaxTextureWidth, MaxTextureHeight;
  223. DWORD MaxVolumeExtent;
  224. DWORD MaxTextureRepeat;
  225. DWORD MaxTextureAspectRatio;
  226. DWORD MaxAnisotropy;
  227. float MaxVertexW;
  228. float GuardBandLeft;
  229. float GuardBandTop;
  230. float GuardBandRight;
  231. float GuardBandBottom;
  232. float ExtentsAdjust;
  233. DWORD StencilCaps;
  234. DWORD FVFCaps;
  235. DWORD TextureOpCaps;
  236. DWORD MaxTextureBlendStages;
  237. DWORD MaxSimultaneousTextures;
  238. DWORD VertexProcessingCaps;
  239. DWORD MaxActiveLights;
  240. DWORD MaxUserClipPlanes;
  241. DWORD MaxVertexBlendMatrices;
  242. DWORD MaxVertexBlendMatrixIndex;
  243. float MaxPointSize;
  244. DWORD MaxPrimitiveCount;
  245. DWORD MaxVertexIndex;
  246. DWORD MaxStreams;
  247. DWORD MaxStreamStride;
  248. DWORD VertexShaderVersion;
  249. DWORD MaxVertexShaderConst;
  250. DWORD PixelShaderVersion;
  251. float MaxPixelShaderValue;
  252. } D3DCAPS8;
  253. #ifdef __i386__
  254. #include <poppack.h>
  255. #endif
  256. #endif /* __WINE_D3D8CAPS_H */