2 * Copyright 2002-2003 The wine-d3d team
3 * Copyright 2002-2003 Jason Edmeades
4 * Copyright 2002-2003 Raphael Junqueira
5 * Copyright 2005 Oliver Stieber
6 * Copyright 2006 Stefan Dösinger
7 * Copyright 2006 Stefan Dösinger for CodeWeavers
8 * Copyright 2007 Henri Verbeet
9 * Copyright 2008 Henri Verbeet for CodeWeavers
11 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Lesser General Public
13 * License as published by the Free Software Foundation; either
14 * version 2.1 of the License, or (at your option) any later version.
16 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Lesser General Public License for more details.
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this library; if not, write to the Free Software
23 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
29 typedef HANDLE HMONITOR
;
31 typedef struct _RGNDATAHEADER
40 typedef struct _RGNDATA
47 cpp_quote
("#define WINED3D_OK S_OK")
49 const UINT _FACWINED3D
= 0x876;
50 cpp_quote
("#define MAKE_WINED3DSTATUS(code) MAKE_HRESULT(0, _FACWINED3D, code)")
51 cpp_quote
("#define WINED3DOK_NOAUTOGEN MAKE_WINED3DSTATUS(2159)")
53 cpp_quote
("#define MAKE_WINED3DHRESULT(code) MAKE_HRESULT(1, _FACWINED3D, code)")
54 cpp_quote
("#define WINED3DERR_WRONGTEXTUREFORMAT MAKE_WINED3DHRESULT(2072)")
55 cpp_quote
("#define WINED3DERR_UNSUPPORTEDCOLOROPERATION MAKE_WINED3DHRESULT(2073)")
56 cpp_quote
("#define WINED3DERR_UNSUPPORTEDCOLORARG MAKE_WINED3DHRESULT(2074)")
57 cpp_quote
("#define WINED3DERR_UNSUPPORTEDALPHAOPERATION MAKE_WINED3DHRESULT(2075)")
58 cpp_quote
("#define WINED3DERR_UNSUPPORTEDALPHAARG MAKE_WINED3DHRESULT(2076)")
59 cpp_quote
("#define WINED3DERR_TOOMANYOPERATIONS MAKE_WINED3DHRESULT(2077)")
60 cpp_quote
("#define WINED3DERR_CONFLICTINGTEXTUREFILTER MAKE_WINED3DHRESULT(2078)")
61 cpp_quote
("#define WINED3DERR_UNSUPPORTEDFACTORVALUE MAKE_WINED3DHRESULT(2079)")
62 cpp_quote
("#define WINED3DERR_CONFLICTINGRENDERSTATE MAKE_WINED3DHRESULT(2081)")
63 cpp_quote
("#define WINED3DERR_UNSUPPORTEDTEXTUREFILTER MAKE_WINED3DHRESULT(2082)")
64 cpp_quote
("#define WINED3DERR_CONFLICTINGTEXTUREPALETTE MAKE_WINED3DHRESULT(2086)")
65 cpp_quote
("#define WINED3DERR_DRIVERINTERNALERROR MAKE_WINED3DHRESULT(2087)")
66 cpp_quote
("#define WINED3DERR_NOTFOUND MAKE_WINED3DHRESULT(2150)")
67 cpp_quote
("#define WINED3DERR_MOREDATA MAKE_WINED3DHRESULT(2151)")
68 cpp_quote
("#define WINED3DERR_DEVICELOST MAKE_WINED3DHRESULT(2152)")
69 cpp_quote
("#define WINED3DERR_DEVICENOTRESET MAKE_WINED3DHRESULT(2153)")
70 cpp_quote
("#define WINED3DERR_NOTAVAILABLE MAKE_WINED3DHRESULT(2154)")
71 cpp_quote
("#define WINED3DERR_OUTOFVIDEOMEMORY MAKE_WINED3DHRESULT(380)")
72 cpp_quote
("#define WINED3DERR_INVALIDDEVICE MAKE_WINED3DHRESULT(2155)")
73 cpp_quote
("#define WINED3DERR_INVALIDCALL MAKE_WINED3DHRESULT(2156)")
74 cpp_quote
("#define WINED3DERR_DRIVERINVALIDCALL MAKE_WINED3DHRESULT(2157)")
75 cpp_quote
("#define WINED3DERR_WASSTILLDRAWING MAKE_WINED3DHRESULT(540)")
76 cpp_quote
("#define WINEDDERR_NOTAOVERLAYSURFACE MAKE_WINED3DHRESULT(580)")
77 cpp_quote
("#define WINEDDERR_NOTLOCKED MAKE_WINED3DHRESULT(584)")
78 cpp_quote
("#define WINEDDERR_NODC MAKE_WINED3DHRESULT(586)")
79 cpp_quote
("#define WINEDDERR_DCALREADYCREATED MAKE_WINED3DHRESULT(620)")
80 cpp_quote
("#define WINEDDERR_NOTFLIPPABLE MAKE_WINED3DHRESULT(582)")
81 cpp_quote
("#define WINEDDERR_SURFACEBUSY MAKE_WINED3DHRESULT(430)")
82 cpp_quote
("#define WINEDDERR_INVALIDRECT MAKE_WINED3DHRESULT(150)")
83 cpp_quote
("#define WINEDDERR_NOCLIPLIST MAKE_WINED3DHRESULT(205)")
84 cpp_quote
("#define WINEDDERR_OVERLAYNOTVISIBLE MAKE_WINED3DHRESULT(577)")
86 typedef DWORD WINED3DCOLOR
;
88 typedef enum _WINED3DLIGHTTYPE
90 WINED3DLIGHT_POINT
= 1,
91 WINED3DLIGHT_SPOT
= 2,
92 WINED3DLIGHT_DIRECTIONAL
= 3,
93 WINED3DLIGHT_PARALLELPOINT
= 4, /* D3D7 */
94 WINED3DLIGHT_GLSPOT
= 5, /* D3D7 */
95 WINED3DLIGHT_FORCE_DWORD
= 0x7fffffff
98 typedef enum _WINED3DPRIMITIVETYPE
100 WINED3DPT_POINTLIST
= 1,
101 WINED3DPT_LINELIST
= 2,
102 WINED3DPT_LINESTRIP
= 3,
103 WINED3DPT_TRIANGLELIST
= 4,
104 WINED3DPT_TRIANGLESTRIP
= 5,
105 WINED3DPT_TRIANGLEFAN
= 6,
106 WINED3DPT_FORCE_DWORD
= 0x7fffffff
107 } WINED3DPRIMITIVETYPE
;
109 typedef enum _WINED3DDEVTYPE
111 WINED3DDEVTYPE_HAL
= 1,
112 WINED3DDEVTYPE_REF
= 2,
113 WINED3DDEVTYPE_SW
= 3,
114 WINED3DDEVTYPE_NULLREF
= 4,
115 WINED3DDEVTYPE_FORCE_DWORD
= 0xffffffff
118 typedef enum _WINED3DDEGREETYPE
120 WINED3DDEGREE_LINEAR
= 1,
121 WINED3DDEGREE_QUADRATIC
= 2,
122 WINED3DDEGREE_CUBIC
= 3,
123 WINED3DDEGREE_QUINTIC
= 5,
124 WINED3DDEGREE_FORCE_DWORD
= 0x7fffffff
127 typedef enum _WINED3DFORMAT
129 WINED3DFMT_UNKNOWN
= 0,
130 WINED3DFMT_R8G8B8
= 20,
131 WINED3DFMT_A8R8G8B8
= 21,
132 WINED3DFMT_X8R8G8B8
= 22,
133 WINED3DFMT_R5G6B5
= 23,
134 WINED3DFMT_X1R5G5B5
= 24,
135 WINED3DFMT_A1R5G5B5
= 25,
136 WINED3DFMT_A4R4G4B4
= 26,
137 WINED3DFMT_R3G3B2
= 27,
139 WINED3DFMT_A8R3G3B2
= 29,
140 WINED3DFMT_X4R4G4B4
= 30,
141 WINED3DFMT_A2B10G10R10
= 31,
142 WINED3DFMT_A8B8G8R8
= 32,
143 WINED3DFMT_X8B8G8R8
= 33,
144 WINED3DFMT_G16R16
= 34,
145 WINED3DFMT_A2R10G10B10
= 35,
146 WINED3DFMT_A16B16G16R16
= 36,
147 WINED3DFMT_A8P8
= 40,
150 WINED3DFMT_A8L8
= 51,
151 WINED3DFMT_A4L4
= 52,
152 WINED3DFMT_V8U8
= 60,
153 WINED3DFMT_L6V5U5
= 61,
154 WINED3DFMT_X8L8V8U8
= 62,
155 WINED3DFMT_Q8W8V8U8
= 63,
156 WINED3DFMT_V16U16
= 64,
157 WINED3DFMT_W11V11U10
= 65,
158 WINED3DFMT_A2W10V10U10
= 67,
159 WINED3DFMT_D16_LOCKABLE
= 70,
161 WINED3DFMT_D15S1
= 73,
162 WINED3DFMT_D24S8
= 75,
163 WINED3DFMT_D24X8
= 77,
164 WINED3DFMT_D24X4S4
= 79,
167 WINED3DFMT_D32F_LOCKABLE
= 82,
168 WINED3DFMT_D24FS8
= 83,
169 WINED3DFMT_VERTEXDATA
= 100,
170 WINED3DFMT_INDEX16
= 101,
171 WINED3DFMT_INDEX32
= 102,
172 WINED3DFMT_Q16W16V16U16
= 110,
173 WINED3DFMT_R16F
= 111,
174 WINED3DFMT_G16R16F
= 112,
175 WINED3DFMT_A16B16G16R16F
= 113,
176 WINED3DFMT_R32F
= 114,
177 WINED3DFMT_G32R32F
= 115,
178 WINED3DFMT_A32B32G32R32F
= 116,
179 WINED3DFMT_CxV8U8
= 117,
180 WINED3DFMT_FORCE_DWORD
= 0xffffffff
182 cpp_quote
("#define WINEMAKEFOURCC(ch0, ch1, ch2, ch3) \\")
183 cpp_quote
(" ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \\")
184 cpp_quote
(" ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))")
185 cpp_quote
("#define WINED3DFMT_UYVY WINEMAKEFOURCC('U', 'Y', 'V', 'Y')")
186 cpp_quote
("#define WINED3DFMT_YUY2 WINEMAKEFOURCC('Y', 'U', 'Y', '2')")
187 cpp_quote
("#define WINED3DFMT_YV12 WINEMAKEFOURCC('Y', 'V', '1', '2')")
188 cpp_quote
("#define WINED3DFMT_DXT1 WINEMAKEFOURCC('D', 'X', 'T', '1')")
189 cpp_quote
("#define WINED3DFMT_DXT2 WINEMAKEFOURCC('D', 'X', 'T', '2')")
190 cpp_quote
("#define WINED3DFMT_DXT3 WINEMAKEFOURCC('D', 'X', 'T', '3')")
191 cpp_quote
("#define WINED3DFMT_DXT4 WINEMAKEFOURCC('D', 'X', 'T', '4')")
192 cpp_quote
("#define WINED3DFMT_DXT5 WINEMAKEFOURCC('D', 'X', 'T', '5')")
193 cpp_quote
("#define WINED3DFMT_MULTI2_ARGB8 WINEMAKEFOURCC('M', 'E', 'T', '1')")
194 cpp_quote
("#define WINED3DFMT_G8R8_G8B8 WINEMAKEFOURCC('G', 'R', 'G', 'B')")
195 cpp_quote
("#define WINED3DFMT_R8G8_B8G8 WINEMAKEFOURCC('R', 'G', 'B', 'G')")
196 /* Vendor specific formats */
197 cpp_quote
("#define WINED3DFMT_ATI2N WINEMAKEFOURCC('A', 'T', 'I', '2')")
198 cpp_quote
("#define WINED3DFMT_NVHU WINEMAKEFOURCC('N', 'V', 'H', 'U')")
199 cpp_quote
("#define WINED3DFMT_NVHS WINEMAKEFOURCC('N', 'V', 'H', 'S')")
201 typedef enum _WINED3DRENDERSTATETYPE
203 WINED3DRS_TEXTUREHANDLE
= 1, /* d3d7 */
204 WINED3DRS_ANTIALIAS
= 2, /* d3d7 */
205 WINED3DRS_TEXTUREADDRESS
= 3, /* d3d7 */
206 WINED3DRS_TEXTUREPERSPECTIVE
= 4, /* d3d7 */
207 WINED3DRS_WRAPU
= 5, /* d3d7 */
208 WINED3DRS_WRAPV
= 6, /* d3d7 */
209 WINED3DRS_ZENABLE
= 7,
210 WINED3DRS_FILLMODE
= 8,
211 WINED3DRS_SHADEMODE
= 9,
212 WINED3DRS_LINEPATTERN
= 10, /* d3d7, d3d8 */
213 WINED3DRS_MONOENABLE
= 11, /* d3d7 */
214 WINED3DRS_ROP2
= 12, /* d3d7 */
215 WINED3DRS_PLANEMASK
= 13, /* d3d7 */
216 WINED3DRS_ZWRITEENABLE
= 14,
217 WINED3DRS_ALPHATESTENABLE
= 15,
218 WINED3DRS_LASTPIXEL
= 16,
219 WINED3DRS_TEXTUREMAG
= 17, /* d3d7 */
220 WINED3DRS_TEXTUREMIN
= 18, /* d3d7 */
221 WINED3DRS_SRCBLEND
= 19,
222 WINED3DRS_DESTBLEND
= 20,
223 WINED3DRS_TEXTUREMAPBLEND
= 21, /* d3d7 */
224 WINED3DRS_CULLMODE
= 22,
225 WINED3DRS_ZFUNC
= 23,
226 WINED3DRS_ALPHAREF
= 24,
227 WINED3DRS_ALPHAFUNC
= 25,
228 WINED3DRS_DITHERENABLE
= 26,
229 WINED3DRS_ALPHABLENDENABLE
= 27,
230 WINED3DRS_FOGENABLE
= 28,
231 WINED3DRS_SPECULARENABLE
= 29,
232 WINED3DRS_ZVISIBLE
= 30, /* d3d7, d3d8 */
233 WINED3DRS_SUBPIXEL
= 31, /* d3d7 */
234 WINED3DRS_SUBPIXELX
= 32, /* d3d7 */
235 WINED3DRS_STIPPLEDALPHA
= 33, /* d3d7 */
236 WINED3DRS_FOGCOLOR
= 34,
237 WINED3DRS_FOGTABLEMODE
= 35,
238 WINED3DRS_FOGSTART
= 36,
239 WINED3DRS_FOGEND
= 37,
240 WINED3DRS_FOGDENSITY
= 38,
241 WINED3DRS_STIPPLEENABLE
= 39, /* d3d7 */
242 WINED3DRS_EDGEANTIALIAS
= 40, /* d3d7, d3d8 */
243 WINED3DRS_COLORKEYENABLE
= 41, /* d3d7 */
244 WINED3DRS_BORDERCOLOR
= 43, /* d3d7 */
245 WINED3DRS_TEXTUREADDRESSU
= 44, /* d3d7 */
246 WINED3DRS_TEXTUREADDRESSV
= 45, /* d3d7 */
247 WINED3DRS_MIPMAPLODBIAS
= 46, /* d3d7 */
248 WINED3DRS_ZBIAS
= 47, /* d3d7, d3d8 */
249 WINED3DRS_RANGEFOGENABLE
= 48,
250 WINED3DRS_ANISOTROPY
= 49, /* d3d7 */
251 WINED3DRS_FLUSHBATCH
= 50, /* d3d7 */
252 WINED3DRS_TRANSLUCENTSORTINDEPENDENT
= 51, /* d3d7 */
253 WINED3DRS_STENCILENABLE
= 52,
254 WINED3DRS_STENCILFAIL
= 53,
255 WINED3DRS_STENCILZFAIL
= 54,
256 WINED3DRS_STENCILPASS
= 55,
257 WINED3DRS_STENCILFUNC
= 56,
258 WINED3DRS_STENCILREF
= 57,
259 WINED3DRS_STENCILMASK
= 58,
260 WINED3DRS_STENCILWRITEMASK
= 59,
261 WINED3DRS_TEXTUREFACTOR
= 60,
262 WINED3DRS_STIPPLEPATTERN00
= 64,
263 WINED3DRS_STIPPLEPATTERN01
= 65,
264 WINED3DRS_STIPPLEPATTERN02
= 66,
265 WINED3DRS_STIPPLEPATTERN03
= 67,
266 WINED3DRS_STIPPLEPATTERN04
= 68,
267 WINED3DRS_STIPPLEPATTERN05
= 69,
268 WINED3DRS_STIPPLEPATTERN06
= 70,
269 WINED3DRS_STIPPLEPATTERN07
= 71,
270 WINED3DRS_STIPPLEPATTERN08
= 72,
271 WINED3DRS_STIPPLEPATTERN09
= 73,
272 WINED3DRS_STIPPLEPATTERN10
= 74,
273 WINED3DRS_STIPPLEPATTERN11
= 75,
274 WINED3DRS_STIPPLEPATTERN12
= 76,
275 WINED3DRS_STIPPLEPATTERN13
= 77,
276 WINED3DRS_STIPPLEPATTERN14
= 78,
277 WINED3DRS_STIPPLEPATTERN15
= 79,
278 WINED3DRS_STIPPLEPATTERN16
= 80,
279 WINED3DRS_STIPPLEPATTERN17
= 81,
280 WINED3DRS_STIPPLEPATTERN18
= 82,
281 WINED3DRS_STIPPLEPATTERN19
= 83,
282 WINED3DRS_STIPPLEPATTERN20
= 84,
283 WINED3DRS_STIPPLEPATTERN21
= 85,
284 WINED3DRS_STIPPLEPATTERN22
= 86,
285 WINED3DRS_STIPPLEPATTERN23
= 87,
286 WINED3DRS_STIPPLEPATTERN24
= 88,
287 WINED3DRS_STIPPLEPATTERN25
= 89,
288 WINED3DRS_STIPPLEPATTERN26
= 90,
289 WINED3DRS_STIPPLEPATTERN27
= 91,
290 WINED3DRS_STIPPLEPATTERN28
= 92,
291 WINED3DRS_STIPPLEPATTERN29
= 93,
292 WINED3DRS_STIPPLEPATTERN30
= 94,
293 WINED3DRS_STIPPLEPATTERN31
= 95,
294 WINED3DRS_WRAP0
= 128,
295 WINED3DRS_WRAP1
= 129,
296 WINED3DRS_WRAP2
= 130,
297 WINED3DRS_WRAP3
= 131,
298 WINED3DRS_WRAP4
= 132,
299 WINED3DRS_WRAP5
= 133,
300 WINED3DRS_WRAP6
= 134,
301 WINED3DRS_WRAP7
= 135,
302 WINED3DRS_CLIPPING
= 136,
303 WINED3DRS_LIGHTING
= 137,
304 WINED3DRS_EXTENTS
= 138, /* d3d7 */
305 WINED3DRS_AMBIENT
= 139,
306 WINED3DRS_FOGVERTEXMODE
= 140,
307 WINED3DRS_COLORVERTEX
= 141,
308 WINED3DRS_LOCALVIEWER
= 142,
309 WINED3DRS_NORMALIZENORMALS
= 143,
310 WINED3DRS_COLORKEYBLENDENABLE
= 144, /* d3d7 */
311 WINED3DRS_DIFFUSEMATERIALSOURCE
= 145,
312 WINED3DRS_SPECULARMATERIALSOURCE
= 146,
313 WINED3DRS_AMBIENTMATERIALSOURCE
= 147,
314 WINED3DRS_EMISSIVEMATERIALSOURCE
= 148,
315 WINED3DRS_VERTEXBLEND
= 151,
316 WINED3DRS_CLIPPLANEENABLE
= 152,
317 WINED3DRS_SOFTWAREVERTEXPROCESSING
= 153, /* d3d8 */
318 WINED3DRS_POINTSIZE
= 154,
319 WINED3DRS_POINTSIZE_MIN
= 155,
320 WINED3DRS_POINTSPRITEENABLE
= 156,
321 WINED3DRS_POINTSCALEENABLE
= 157,
322 WINED3DRS_POINTSCALE_A
= 158,
323 WINED3DRS_POINTSCALE_B
= 159,
324 WINED3DRS_POINTSCALE_C
= 160,
325 WINED3DRS_MULTISAMPLEANTIALIAS
= 161,
326 WINED3DRS_MULTISAMPLEMASK
= 162,
327 WINED3DRS_PATCHEDGESTYLE
= 163,
328 WINED3DRS_PATCHSEGMENTS
= 164, /* d3d8 */
329 WINED3DRS_DEBUGMONITORTOKEN
= 165,
330 WINED3DRS_POINTSIZE_MAX
= 166,
331 WINED3DRS_INDEXEDVERTEXBLENDENABLE
= 167,
332 WINED3DRS_COLORWRITEENABLE
= 168,
333 WINED3DRS_TWEENFACTOR
= 170,
334 WINED3DRS_BLENDOP
= 171,
335 WINED3DRS_POSITIONORDER
= 172,
336 WINED3DRS_NORMALORDER
= 173,
337 WINED3DRS_POSITIONDEGREE
= 172,
338 WINED3DRS_NORMALDEGREE
= 173,
339 WINED3DRS_SCISSORTESTENABLE
= 174,
340 WINED3DRS_SLOPESCALEDEPTHBIAS
= 175,
341 WINED3DRS_ANTIALIASEDLINEENABLE
= 176,
342 WINED3DRS_MINTESSELLATIONLEVEL
= 178,
343 WINED3DRS_MAXTESSELLATIONLEVEL
= 179,
344 WINED3DRS_ADAPTIVETESS_X
= 180,
345 WINED3DRS_ADAPTIVETESS_Y
= 181,
346 WINED3DRS_ADAPTIVETESS_Z
= 182,
347 WINED3DRS_ADAPTIVETESS_W
= 183,
348 WINED3DRS_ENABLEADAPTIVETESSELLATION
= 184,
349 WINED3DRS_TWOSIDEDSTENCILMODE
= 185,
350 WINED3DRS_CCW_STENCILFAIL
= 186,
351 WINED3DRS_CCW_STENCILZFAIL
= 187,
352 WINED3DRS_CCW_STENCILPASS
= 188,
353 WINED3DRS_CCW_STENCILFUNC
= 189,
354 WINED3DRS_COLORWRITEENABLE1
= 190,
355 WINED3DRS_COLORWRITEENABLE2
= 191,
356 WINED3DRS_COLORWRITEENABLE3
= 192,
357 WINED3DRS_BLENDFACTOR
= 193,
358 WINED3DRS_SRGBWRITEENABLE
= 194,
359 WINED3DRS_DEPTHBIAS
= 195,
360 WINED3DRS_WRAP8
= 198,
361 WINED3DRS_WRAP9
= 199,
362 WINED3DRS_WRAP10
= 200,
363 WINED3DRS_WRAP11
= 201,
364 WINED3DRS_WRAP12
= 202,
365 WINED3DRS_WRAP13
= 203,
366 WINED3DRS_WRAP14
= 204,
367 WINED3DRS_WRAP15
= 205,
368 WINED3DRS_SEPARATEALPHABLENDENABLE
= 206,
369 WINED3DRS_SRCBLENDALPHA
= 207,
370 WINED3DRS_DESTBLENDALPHA
= 208,
371 WINED3DRS_BLENDOPALPHA
= 209,
372 WINED3DRS_FORCE_DWORD
= 0x7fffffff
373 } WINED3DRENDERSTATETYPE
;
374 const UINT WINEHIGHEST_RENDER_STATE
= WINED3DRS_BLENDOPALPHA
;
376 typedef enum _WINED3DBLEND
378 WINED3DBLEND_ZERO
= 1,
379 WINED3DBLEND_ONE
= 2,
380 WINED3DBLEND_SRCCOLOR
= 3,
381 WINED3DBLEND_INVSRCCOLOR
= 4,
382 WINED3DBLEND_SRCALPHA
= 5,
383 WINED3DBLEND_INVSRCALPHA
= 6,
384 WINED3DBLEND_DESTALPHA
= 7,
385 WINED3DBLEND_INVDESTALPHA
= 8,
386 WINED3DBLEND_DESTCOLOR
= 9,
387 WINED3DBLEND_INVDESTCOLOR
= 10,
388 WINED3DBLEND_SRCALPHASAT
= 11,
389 WINED3DBLEND_BOTHSRCALPHA
= 12,
390 WINED3DBLEND_BOTHINVSRCALPHA
= 13,
391 WINED3DBLEND_BLENDFACTOR
= 14,
392 WINED3DBLEND_INVBLENDFACTOR
= 15,
393 WINED3DBLEND_FORCE_DWORD
= 0x7fffffff
396 typedef enum _WINED3DBLENDOP
398 WINED3DBLENDOP_ADD
= 1,
399 WINED3DBLENDOP_SUBTRACT
= 2,
400 WINED3DBLENDOP_REVSUBTRACT
= 3,
401 WINED3DBLENDOP_MIN
= 4,
402 WINED3DBLENDOP_MAX
= 5,
403 WINED3DBLENDOP_FORCE_DWORD
= 0x7fffffff
406 typedef enum _WINED3DVERTEXBLENDFLAGS
408 WINED3DVBF_DISABLE
= 0,
409 WINED3DVBF_1WEIGHTS
= 1,
410 WINED3DVBF_2WEIGHTS
= 2,
411 WINED3DVBF_3WEIGHTS
= 3,
412 WINED3DVBF_TWEENING
= 255,
413 WINED3DVBF_0WEIGHTS
= 256
414 } WINED3DVERTEXBLENDFLAGS
;
416 typedef enum _WINED3DCMPFUNC
418 WINED3DCMP_NEVER
= 1,
420 WINED3DCMP_EQUAL
= 3,
421 WINED3DCMP_LESSEQUAL
= 4,
422 WINED3DCMP_GREATER
= 5,
423 WINED3DCMP_NOTEQUAL
= 6,
424 WINED3DCMP_GREATEREQUAL
= 7,
425 WINED3DCMP_ALWAYS
= 8,
426 WINED3DCMP_FORCE_DWORD
= 0x7fffffff
429 typedef enum _WINED3DZBUFFERTYPE
434 WINED3DZB_FORCE_DWORD
= 0x7fffffff
435 } WINED3DZBUFFERTYPE
;
437 typedef enum _WINED3DFOGMODE
442 WINED3DFOG_LINEAR
= 3,
443 WINED3DFOG_FORCE_DWORD
= 0x7fffffff
446 typedef enum _WINED3DSHADEMODE
448 WINED3DSHADE_FLAT
= 1,
449 WINED3DSHADE_GOURAUD
= 2,
450 WINED3DSHADE_PHONG
= 3,
451 WINED3DSHADE_FORCE_DWORD
= 0x7fffffff
454 typedef enum _WINED3DFILLMODE
456 WINED3DFILL_POINT
= 1,
457 WINED3DFILL_WIREFRAME
= 2,
458 WINED3DFILL_SOLID
= 3,
459 WINED3DFILL_FORCE_DWORD
= 0x7fffffff
462 typedef enum _WINED3DCULL
464 WINED3DCULL_NONE
= 1,
467 WINED3DCULL_FORCE_DWORD
= 0x7fffffff
470 typedef enum _WINED3DSTENCILOP
472 WINED3DSTENCILOP_KEEP
= 1,
473 WINED3DSTENCILOP_ZERO
= 2,
474 WINED3DSTENCILOP_REPLACE
= 3,
475 WINED3DSTENCILOP_INCRSAT
= 4,
476 WINED3DSTENCILOP_DECRSAT
= 5,
477 WINED3DSTENCILOP_INVERT
= 6,
478 WINED3DSTENCILOP_INCR
= 7,
479 WINED3DSTENCILOP_DECR
= 8,
480 WINED3DSTENCILOP_FORCE_DWORD
= 0x7fffffff
483 typedef enum _WINED3DMATERIALCOLORSOURCE
485 WINED3DMCS_MATERIAL
= 0,
486 WINED3DMCS_COLOR1
= 1,
487 WINED3DMCS_COLOR2
= 2,
488 WINED3DMCS_FORCE_DWORD
= 0x7fffffff
489 } WINED3DMATERIALCOLORSOURCE
;
491 typedef enum _WINED3DPATCHEDGESTYLE
493 WINED3DPATCHEDGE_DISCRETE
= 0,
494 WINED3DPATCHEDGE_CONTINUOUS
= 1,
495 WINED3DPATCHEDGE_FORCE_DWORD
= 0x7fffffff
496 } WINED3DPATCHEDGESTYLE
;
498 typedef enum _WINED3DBACKBUFFER_TYPE
500 WINED3DBACKBUFFER_TYPE_MONO
= 0,
501 WINED3DBACKBUFFER_TYPE_LEFT
= 1,
502 WINED3DBACKBUFFER_TYPE_RIGHT
= 2,
503 WINED3DBACKBUFFER_TYPE_FORCE_DWORD
= 0x7fffffff
504 } WINED3DBACKBUFFER_TYPE
;
506 typedef enum _WINED3DSWAPEFFECT
508 WINED3DSWAPEFFECT_DISCARD
= 1,
509 WINED3DSWAPEFFECT_FLIP
= 2,
510 WINED3DSWAPEFFECT_COPY
= 3,
511 WINED3DSWAPEFFECT_COPY_VSYNC
= 4,
512 WINED3DSWAPEFFECT_FORCE_DWORD
= 0xffffffff
515 typedef enum _WINED3DSAMPLERSTATETYPE
517 WINED3DSAMP_ADDRESSU
= 1,
518 WINED3DSAMP_ADDRESSV
= 2,
519 WINED3DSAMP_ADDRESSW
= 3,
520 WINED3DSAMP_BORDERCOLOR
= 4,
521 WINED3DSAMP_MAGFILTER
= 5,
522 WINED3DSAMP_MINFILTER
= 6,
523 WINED3DSAMP_MIPFILTER
= 7,
524 WINED3DSAMP_MIPMAPLODBIAS
= 8,
525 WINED3DSAMP_MAXMIPLEVEL
= 9,
526 WINED3DSAMP_MAXANISOTROPY
= 10,
527 WINED3DSAMP_SRGBTEXTURE
= 11,
528 WINED3DSAMP_ELEMENTINDEX
= 12,
529 WINED3DSAMP_DMAPOFFSET
= 13,
530 WINED3DSAMP_FORCE_DWORD
= 0x7fffffff,
531 } WINED3DSAMPLERSTATETYPE
;
532 const UINT WINED3D_HIGHEST_SAMPLER_STATE
= WINED3DSAMP_DMAPOFFSET
;
534 typedef enum _WINED3DMULTISAMPLE_TYPE
536 WINED3DMULTISAMPLE_NONE
= 0,
537 WINED3DMULTISAMPLE_NONMASKABLE
= 1,
538 WINED3DMULTISAMPLE_2_SAMPLES
= 2,
539 WINED3DMULTISAMPLE_3_SAMPLES
= 3,
540 WINED3DMULTISAMPLE_4_SAMPLES
= 4,
541 WINED3DMULTISAMPLE_5_SAMPLES
= 5,
542 WINED3DMULTISAMPLE_6_SAMPLES
= 6,
543 WINED3DMULTISAMPLE_7_SAMPLES
= 7,
544 WINED3DMULTISAMPLE_8_SAMPLES
= 8,
545 WINED3DMULTISAMPLE_9_SAMPLES
= 9,
546 WINED3DMULTISAMPLE_10_SAMPLES
= 10,
547 WINED3DMULTISAMPLE_11_SAMPLES
= 11,
548 WINED3DMULTISAMPLE_12_SAMPLES
= 12,
549 WINED3DMULTISAMPLE_13_SAMPLES
= 13,
550 WINED3DMULTISAMPLE_14_SAMPLES
= 14,
551 WINED3DMULTISAMPLE_15_SAMPLES
= 15,
552 WINED3DMULTISAMPLE_16_SAMPLES
= 16,
553 WINED3DMULTISAMPLE_FORCE_DWORD
= 0xffffffff
554 } WINED3DMULTISAMPLE_TYPE
;
556 typedef enum _WINED3DTEXTURESTAGESTATETYPE
558 WINED3DTSS_COLOROP
= 0,
559 WINED3DTSS_COLORARG1
= 1,
560 WINED3DTSS_COLORARG2
= 2,
561 WINED3DTSS_ALPHAOP
= 3,
562 WINED3DTSS_ALPHAARG1
= 4,
563 WINED3DTSS_ALPHAARG2
= 5,
564 WINED3DTSS_BUMPENVMAT00
= 6,
565 WINED3DTSS_BUMPENVMAT01
= 7,
566 WINED3DTSS_BUMPENVMAT10
= 8,
567 WINED3DTSS_BUMPENVMAT11
= 9,
568 WINED3DTSS_TEXCOORDINDEX
= 10,
569 WINED3DTSS_BUMPENVLSCALE
= 11,
570 WINED3DTSS_BUMPENVLOFFSET
= 12,
571 WINED3DTSS_TEXTURETRANSFORMFLAGS
= 13,
572 WINED3DTSS_COLORARG0
= 14,
573 WINED3DTSS_ALPHAARG0
= 15,
574 WINED3DTSS_RESULTARG
= 16,
575 WINED3DTSS_CONSTANT
= 17,
576 WINED3DTSS_FORCE_DWORD
= 0x7fffffff
577 } WINED3DTEXTURESTAGESTATETYPE
;
578 const UINT WINED3D_HIGHEST_TEXTURE_STATE
= WINED3DTSS_CONSTANT
;
580 typedef enum _WINED3DTEXTURETRANSFORMFLAGS
582 WINED3DTTFF_DISABLE
= 0,
583 WINED3DTTFF_COUNT1
= 1,
584 WINED3DTTFF_COUNT2
= 2,
585 WINED3DTTFF_COUNT3
= 3,
586 WINED3DTTFF_COUNT4
= 4,
587 WINED3DTTFF_PROJECTED
= 256,
588 WINED3DTTFF_FORCE_DWORD
= 0x7fffffff
589 } WINED3DTEXTURETRANSFORMFLAGS
;
591 typedef enum _WINED3DTEXTUREOP
593 WINED3DTOP_DISABLE
= 1,
594 WINED3DTOP_SELECTARG1
= 2,
595 WINED3DTOP_SELECTARG2
= 3,
596 WINED3DTOP_MODULATE
= 4,
597 WINED3DTOP_MODULATE2X
= 5,
598 WINED3DTOP_MODULATE4X
= 6,
600 WINED3DTOP_ADDSIGNED
= 8,
601 WINED3DTOP_ADDSIGNED2X
= 9,
602 WINED3DTOP_SUBTRACT
= 10,
603 WINED3DTOP_ADDSMOOTH
= 11,
604 WINED3DTOP_BLENDDIFFUSEALPHA
= 12,
605 WINED3DTOP_BLENDTEXTUREALPHA
= 13,
606 WINED3DTOP_BLENDFACTORALPHA
= 14,
607 WINED3DTOP_BLENDTEXTUREALPHAPM
= 15,
608 WINED3DTOP_BLENDCURRENTALPHA
= 16,
609 WINED3DTOP_PREMODULATE
= 17,
610 WINED3DTOP_MODULATEALPHA_ADDCOLOR
= 18,
611 WINED3DTOP_MODULATECOLOR_ADDALPHA
= 19,
612 WINED3DTOP_MODULATEINVALPHA_ADDCOLOR
= 20,
613 WINED3DTOP_MODULATEINVCOLOR_ADDALPHA
= 21,
614 WINED3DTOP_BUMPENVMAP
= 22,
615 WINED3DTOP_BUMPENVMAPLUMINANCE
= 23,
616 WINED3DTOP_DOTPRODUCT3
= 24,
617 WINED3DTOP_MULTIPLYADD
= 25,
618 WINED3DTOP_LERP
= 26,
619 WINED3DTOP_FORCE_DWORD
= 0x7fffffff,
622 typedef enum _WINED3DTEXTUREADDRESS
624 WINED3DTADDRESS_WRAP
= 1,
625 WINED3DTADDRESS_MIRROR
= 2,
626 WINED3DTADDRESS_CLAMP
= 3,
627 WINED3DTADDRESS_BORDER
= 4,
628 WINED3DTADDRESS_MIRRORONCE
= 5,
629 WINED3DTADDRESS_FORCE_DWORD
= 0x7fffffff
630 } WINED3DTEXTUREADDRESS
;
632 typedef enum _WINED3DTRANSFORMSTATETYPE
635 WINED3DTS_PROJECTION
= 3,
636 WINED3DTS_TEXTURE0
= 16,
637 WINED3DTS_TEXTURE1
= 17,
638 WINED3DTS_TEXTURE2
= 18,
639 WINED3DTS_TEXTURE3
= 19,
640 WINED3DTS_TEXTURE4
= 20,
641 WINED3DTS_TEXTURE5
= 21,
642 WINED3DTS_TEXTURE6
= 22,
643 WINED3DTS_TEXTURE7
= 23,
644 WINED3DTS_FORCE_DWORD
= 0x7fffffff
645 } WINED3DTRANSFORMSTATETYPE
;
646 cpp_quote
("#define WINED3DTS_WORLD WINED3DTS_WORLDMATRIX(0)")
647 cpp_quote
("#define WINED3DTS_WORLD1 WINED3DTS_WORLDMATRIX(1)")
648 cpp_quote
("#define WINED3DTS_WORLD2 WINED3DTS_WORLDMATRIX(2)")
649 cpp_quote
("#define WINED3DTS_WORLD3 WINED3DTS_WORLDMATRIX(3)")
650 cpp_quote
("#define WINED3DTS_WORLDMATRIX(index) (WINED3DTRANSFORMSTATETYPE)(index + 256)")
652 typedef enum _WINED3DBASISTYPE
654 WINED3DBASIS_BEZIER
= 0,
655 WINED3DBASIS_BSPLINE
= 1,
656 WINED3DBASIS_INTERPOLATE
= 2,
657 WINED3DBASIS_FORCE_DWORD
= 0x7fffffff
660 typedef enum _WINED3DCUBEMAP_FACES
662 WINED3DCUBEMAP_FACE_POSITIVE_X
= 0,
663 WINED3DCUBEMAP_FACE_NEGATIVE_X
= 1,
664 WINED3DCUBEMAP_FACE_POSITIVE_Y
= 2,
665 WINED3DCUBEMAP_FACE_NEGATIVE_Y
= 3,
666 WINED3DCUBEMAP_FACE_POSITIVE_Z
= 4,
667 WINED3DCUBEMAP_FACE_NEGATIVE_Z
= 5,
668 WINED3DCUBEMAP_FACE_FORCE_DWORD
= 0xffffffff
669 } WINED3DCUBEMAP_FACES
;
671 typedef enum _WINED3DTEXTUREFILTERTYPE
673 WINED3DTEXF_NONE
= 0,
674 WINED3DTEXF_POINT
= 1,
675 WINED3DTEXF_LINEAR
= 2,
676 WINED3DTEXF_ANISOTROPIC
= 3,
677 WINED3DTEXF_FLATCUBIC
= 4,
678 WINED3DTEXF_GAUSSIANCUBIC
= 5,
679 WINED3DTEXF_PYRAMIDALQUAD
= 6,
680 WINED3DTEXF_GAUSSIANQUAD
= 7,
681 WINED3DTEXF_FORCE_DWORD
= 0x7fffffff
682 } WINED3DTEXTUREFILTERTYPE
;
684 typedef enum _WINED3DRESOURCETYPE
686 WINED3DRTYPE_SURFACE
= 1,
687 WINED3DRTYPE_VOLUME
= 2,
688 WINED3DRTYPE_TEXTURE
= 3,
689 WINED3DRTYPE_VOLUMETEXTURE
= 4,
690 WINED3DRTYPE_CUBETEXTURE
= 5,
691 WINED3DRTYPE_VERTEXBUFFER
= 6,
692 WINED3DRTYPE_INDEXBUFFER
= 7,
693 WINED3DRTYPE_FORCE_DWORD
= 0x7fffffff
694 } WINED3DRESOURCETYPE
;
695 const UINT WINED3DRTYPECOUNT
= WINED3DRTYPE_INDEXBUFFER
+ 1;
697 typedef enum _WINED3DPOOL
699 WINED3DPOOL_DEFAULT
= 0,
700 WINED3DPOOL_MANAGED
= 1,
701 WINED3DPOOL_SYSTEMMEM
= 2,
702 WINED3DPOOL_SCRATCH
= 3,
703 WINED3DPOOL_FORCE_DWORD
= 0x7fffffff
706 typedef enum _WINED3DQUERYTYPE
708 WINED3DQUERYTYPE_VCACHE
= 4,
709 WINED3DQUERYTYPE_RESOURCEMANAGER
= 5,
710 WINED3DQUERYTYPE_VERTEXSTATS
= 6,
711 WINED3DQUERYTYPE_EVENT
= 8,
712 WINED3DQUERYTYPE_OCCLUSION
= 9,
713 WINED3DQUERYTYPE_TIMESTAMP
= 10,
714 WINED3DQUERYTYPE_TIMESTAMPDISJOINT
= 11,
715 WINED3DQUERYTYPE_TIMESTAMPFREQ
= 12,
716 WINED3DQUERYTYPE_PIPELINETIMINGS
= 13,
717 WINED3DQUERYTYPE_INTERFACETIMINGS
= 14,
718 WINED3DQUERYTYPE_VERTEXTIMINGS
= 15,
719 WINED3DQUERYTYPE_PIXELTIMINGS
= 16,
720 WINED3DQUERYTYPE_BANDWIDTHTIMINGS
= 17,
721 WINED3DQUERYTYPE_CACHEUTILIZATION
= 18
724 const UINT WINED3DISSUE_BEGIN
= (1 << 1);
725 const UINT WINED3DISSUE_END
= (1 << 0);
726 const UINT WINED3DGETDATA_FLUSH
= (1 << 0);
728 typedef enum _WINED3DSTATEBLOCKTYPE
732 WINED3DSBT_PIXELSTATE
= 2,
733 WINED3DSBT_VERTEXSTATE
= 3,
734 WINED3DSBT_RECORDED
= 4, /* WineD3D private */
735 WINED3DSBT_FORCE_DWORD
= 0xffffffff
736 } WINED3DSTATEBLOCKTYPE
;
738 typedef enum _WINED3DDECLMETHOD
740 WINED3DDECLMETHOD_DEFAULT
= 0,
741 WINED3DDECLMETHOD_PARTIALU
= 1,
742 WINED3DDECLMETHOD_PARTIALV
= 2,
743 WINED3DDECLMETHOD_CROSSUV
= 3,
744 WINED3DDECLMETHOD_UV
= 4,
745 WINED3DDECLMETHOD_LOOKUP
= 5,
746 WINED3DDECLMETHOD_LOOKUPPRESAMPLED
= 6
749 typedef enum _WINED3DDECLTYPE
751 WINED3DDECLTYPE_FLOAT1
= 0,
752 WINED3DDECLTYPE_FLOAT2
= 1,
753 WINED3DDECLTYPE_FLOAT3
= 2,
754 WINED3DDECLTYPE_FLOAT4
= 3,
755 WINED3DDECLTYPE_D3DCOLOR
= 4,
756 WINED3DDECLTYPE_UBYTE4
= 5,
757 WINED3DDECLTYPE_SHORT2
= 6,
758 WINED3DDECLTYPE_SHORT4
= 7,
760 WINED3DDECLTYPE_UBYTE4N
= 8,
761 WINED3DDECLTYPE_SHORT2N
= 9,
762 WINED3DDECLTYPE_SHORT4N
= 10,
763 WINED3DDECLTYPE_USHORT2N
= 11,
764 WINED3DDECLTYPE_USHORT4N
= 12,
765 WINED3DDECLTYPE_UDEC3
= 13,
766 WINED3DDECLTYPE_DEC3N
= 14,
767 WINED3DDECLTYPE_FLOAT16_2
= 15,
768 WINED3DDECLTYPE_FLOAT16_4
= 16,
769 WINED3DDECLTYPE_UNUSED
= 17,
771 cpp_quote
("#define WINED3DDECL_END() {0xFF, 0, WINED3DDECLTYPE_UNUSED, 0, 0, 0, -1}")
773 typedef enum _WINED3DDECLUSAGE
775 WINED3DDECLUSAGE_POSITION
= 0,
776 WINED3DDECLUSAGE_BLENDWEIGHT
= 1,
777 WINED3DDECLUSAGE_BLENDINDICES
= 2,
778 WINED3DDECLUSAGE_NORMAL
= 3,
779 WINED3DDECLUSAGE_PSIZE
= 4,
780 WINED3DDECLUSAGE_TEXCOORD
= 5,
781 WINED3DDECLUSAGE_TANGENT
= 6,
782 WINED3DDECLUSAGE_BINORMAL
= 7,
783 WINED3DDECLUSAGE_TESSFACTOR
= 8,
784 WINED3DDECLUSAGE_POSITIONT
= 9,
785 WINED3DDECLUSAGE_COLOR
= 10,
786 WINED3DDECLUSAGE_FOG
= 11,
787 WINED3DDECLUSAGE_DEPTH
= 12,
788 WINED3DDECLUSAGE_SAMPLE
= 13
791 typedef enum _WINED3DSURFTYPE
793 SURFACE_UNKNOWN
= 0, /* Default / Unknown surface type */
794 SURFACE_OPENGL
, /* OpenGL surface: Renders using libGL, needed for 3D */
795 SURFACE_GDI
, /* User surface. No 3D, DirectDraw rendering with GDI */
798 const UINT WINED3DCOLORWRITEENABLE_RED
= (1<<0);
799 const UINT WINED3DCOLORWRITEENABLE_GREEN
= (1<<1);
800 const UINT WINED3DCOLORWRITEENABLE_BLUE
= (1<<2);
801 const UINT WINED3DCOLORWRITEENABLE_ALPHA
= (1<<3);
803 const UINT WINED3DADAPTER_DEFAULT
= 0;
804 const UINT WINED3DENUM_NO_WHQL_LEVEL
= 2;
805 const UINT WINED3DPRESENT_BACK_BUFFER_MAX
= 3;
807 const UINT WINED3DTSS_TCI_PASSTHRU
= 0x00000;
808 const UINT WINED3DTSS_TCI_CAMERASPACENORMAL
= 0x10000;
809 const UINT WINED3DTSS_TCI_CAMERASPACEPOSITION
= 0x20000;
810 const UINT WINED3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR
= 0x30000;
811 const UINT WINED3DTSS_TCI_SPHEREMAP
= 0x40000;
813 const UINT WINED3DTA_SELECTMASK
= 0x0000000f;
814 const UINT WINED3DTA_DIFFUSE
= 0x00000000;
815 const UINT WINED3DTA_CURRENT
= 0x00000001;
816 const UINT WINED3DTA_TEXTURE
= 0x00000002;
817 const UINT WINED3DTA_TFACTOR
= 0x00000003;
818 const UINT WINED3DTA_SPECULAR
= 0x00000004;
819 const UINT WINED3DTA_TEMP
= 0x00000005;
820 const UINT WINED3DTA_CONSTANT
= 0x00000006;
821 const UINT WINED3DTA_COMPLEMENT
= 0x00000010;
822 const UINT WINED3DTA_ALPHAREPLICATE
= 0x00000020;
824 const UINT WINED3DPRESENTFLAG_LOCKABLE_BACKBUFFER
= 0x00000001;
825 const UINT WINED3DPRESENTFLAG_DISCARD_DEPTHSTENCIL
= 0x00000002;
826 const UINT WINED3DPRESENTFLAG_DEVICECLIP
= 0x00000004;
827 const UINT WINED3DPRESENTFLAG_VIDEO
= 0x00000010;
828 const UINT WINED3DPRESENTFLAG_NOAUTOROTATE
= 0x00000020;
829 const UINT WINED3DPRESENTFLAG_UNPRUNEDMODE
= 0x00000040;
831 const UINT WINED3DDP_MAXTEXCOORD
= 8;
833 const UINT WINED3DUSAGE_RENDERTARGET
= 0x00000001;
834 const UINT WINED3DUSAGE_DEPTHSTENCIL
= 0x00000002;
835 const UINT WINED3DUSAGE_WRITEONLY
= 0x00000008;
836 const UINT WINED3DUSAGE_SOFTWAREPROCESSING
= 0x00000010;
837 const UINT WINED3DUSAGE_DONOTCLIP
= 0x00000020;
838 const UINT WINED3DUSAGE_POINTS
= 0x00000040;
839 const UINT WINED3DUSAGE_RTPATCHES
= 0x00000080;
840 const UINT WINED3DUSAGE_NPATCHES
= 0x00000100;
841 const UINT WINED3DUSAGE_DYNAMIC
= 0x00000200;
842 const UINT WINED3DUSAGE_AUTOGENMIPMAP
= 0x00000400;
843 const UINT WINED3DUSAGE_DMAP
= 0x00004000;
844 const UINT WINED3DUSAGE_MASK
= 0x00004fff;
845 const UINT WINED3DUSAGE_OVERLAY
= 0x80000000;
847 const UINT WINED3DUSAGE_QUERY_LEGACYBUMPMAP
= 0x00008000;
848 const UINT WINED3DUSAGE_QUERY_FILTER
= 0x00020000;
849 const UINT WINED3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING
= 0x00080000;
850 const UINT WINED3DUSAGE_QUERY_SRGBREAD
= 0x00010000;
851 const UINT WINED3DUSAGE_QUERY_SRGBWRITE
= 0x00040000;
852 const UINT WINED3DUSAGE_QUERY_VERTEXTEXTURE
= 0x00100000;
853 const UINT WINED3DUSAGE_QUERY_WRAPANDMIP
= 0x00200000;
854 const UINT WINED3DUSAGE_QUERY_MASK
= 0x003f8000;
856 const UINT WINED3DLOCK_READONLY
= 0x0010;
857 const UINT WINED3DLOCK_NOSYSLOCK
= 0x0800;
858 const UINT WINED3DLOCK_NOOVERWRITE
= 0x1000;
859 const UINT WINED3DLOCK_DISCARD
= 0x2000;
860 const UINT WINED3DLOCK_DONOTWAIT
= 0x4000;
861 const UINT WINED3DLOCK_NO_DIRTY_UPDATE
= 0x8000;
863 const UINT WINED3DPRESENT_RATE_DEFAULT
= 0x000000000;
865 const UINT WINED3DPRESENT_INTERVAL_DEFAULT
= 0x00000000;
866 const UINT WINED3DPRESENT_INTERVAL_ONE
= 0x00000001;
867 const UINT WINED3DPRESENT_INTERVAL_TWO
= 0x00000002;
868 const UINT WINED3DPRESENT_INTERVAL_THREE
= 0x00000004;
869 const UINT WINED3DPRESENT_INTERVAL_FOUR
= 0x00000008;
870 const UINT WINED3DPRESENT_INTERVAL_IMMEDIATE
= 0x80000000;
872 const UINT WINED3DMAXUSERCLIPPLANES
= 32;
873 const UINT WINED3DCLIPPLANE0
= (1 << 0);
874 const UINT WINED3DCLIPPLANE1
= (1 << 1);
875 const UINT WINED3DCLIPPLANE2
= (1 << 2);
876 const UINT WINED3DCLIPPLANE3
= (1 << 3);
877 const UINT WINED3DCLIPPLANE4
= (1 << 4);
878 const UINT WINED3DCLIPPLANE5
= (1 << 5);
880 /* FVF (Flexible Vertex Format) codes */
881 const UINT WINED3DFVF_RESERVED0
= 0x0001;
882 const UINT WINED3DFVF_POSITION_MASK
= 0x400e;
883 const UINT WINED3DFVF_XYZ
= 0x0002;
884 const UINT WINED3DFVF_XYZRHW
= 0x0004;
885 const UINT WINED3DFVF_XYZB1
= 0x0006;
886 const UINT WINED3DFVF_XYZB2
= 0x0008;
887 const UINT WINED3DFVF_XYZB3
= 0x000a;
888 const UINT WINED3DFVF_XYZB4
= 0x000c;
889 const UINT WINED3DFVF_XYZB5
= 0x000e;
890 const UINT WINED3DFVF_XYZW
= 0x4002;
891 const UINT WINED3DFVF_NORMAL
= 0x0010;
892 const UINT WINED3DFVF_PSIZE
= 0x0020;
893 const UINT WINED3DFVF_DIFFUSE
= 0x0040;
894 const UINT WINED3DFVF_SPECULAR
= 0x0080;
895 const UINT WINED3DFVF_TEXCOUNT_MASK
= 0x0f00;
896 const UINT WINED3DFVF_TEXCOUNT_SHIFT
= 8;
897 const UINT WINED3DFVF_TEX0
= 0x0000;
898 const UINT WINED3DFVF_TEX1
= 0x0100;
899 const UINT WINED3DFVF_TEX2
= 0x0200;
900 const UINT WINED3DFVF_TEX3
= 0x0300;
901 const UINT WINED3DFVF_TEX4
= 0x0400;
902 const UINT WINED3DFVF_TEX5
= 0x0500;
903 const UINT WINED3DFVF_TEX6
= 0x0600;
904 const UINT WINED3DFVF_TEX7
= 0x0700;
905 const UINT WINED3DFVF_TEX8
= 0x0800;
906 const UINT WINED3DFVF_LASTBETA_UBYTE4
= 0x1000;
907 const UINT WINED3DFVF_LASTBETA_D3DCOLOR
= 0x8000;
908 const UINT WINED3DFVF_RESERVED2
= 0x6000;
910 const UINT WINED3DFVF_TEXTUREFORMAT1
= 3;
911 const UINT WINED3DFVF_TEXTUREFORMAT2
= 0;
912 const UINT WINED3DFVF_TEXTUREFORMAT3
= 1;
913 const UINT WINED3DFVF_TEXTUREFORMAT4
= 2;
914 cpp_quote
("#define WINED3DFVF_TEXCOORDSIZE1(CoordIndex) (WINED3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16))")
915 cpp_quote
("#define WINED3DFVF_TEXCOORDSIZE2(CoordIndex) (WINED3DFVF_TEXTUREFORMAT2)")
916 cpp_quote
("#define WINED3DFVF_TEXCOORDSIZE3(CoordIndex) (WINED3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16))")
917 cpp_quote
("#define WINED3DFVF_TEXCOORDSIZE4(CoordIndex) (WINED3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16))")
920 const UINT WINED3DCLEAR_TARGET
= 0x00000001;
921 const UINT WINED3DCLEAR_ZBUFFER
= 0x00000002;
922 const UINT WINED3DCLEAR_STENCIL
= 0x00000004;
924 /* Stream source flags */
925 const UINT WINED3DSTREAMSOURCE_INDEXEDDATA
= (1 << 30);
926 const UINT WINED3DSTREAMSOURCE_INSTANCEDATA
= (2 << 30);
928 /* SetPrivateData flags */
929 const UINT WINED3DSPD_IUNKNOWN
= 0x00000001;
931 /* IWineD3D::CreateDevice behaviour flags */
932 const UINT WINED3DCREATE_FPU_PRESERVE
= 0x00000002;
933 const UINT WINED3DCREATE_PUREDEVICE
= 0x00000010;
934 const UINT WINED3DCREATE_SOFTWARE_VERTEXPROCESSING
= 0x00000020;
935 const UINT WINED3DCREATE_HARDWARE_VERTEXPROCESSING
= 0x00000040;
936 const UINT WINED3DCREATE_MIXED_VERTEXPROCESSING
= 0x00000080;
937 const UINT WINED3DCREATE_DISABLE_DRIVER_MANAGEMENT
= 0x00000100;
938 const UINT WINED3DCREATE_ADAPTERGROUP_DEVICE
= 0x00000200;
941 const UINT WINED3DDMAPSAMPLER
= 0x100;
942 const UINT WINED3DVERTEXTEXTURESAMPLER0
= (WINED3DDMAPSAMPLER
+ 1);
943 const UINT WINED3DVERTEXTEXTURESAMPLER1
= (WINED3DDMAPSAMPLER
+ 2);
944 const UINT WINED3DVERTEXTEXTURESAMPLER2
= (WINED3DDMAPSAMPLER
+ 3);
945 const UINT WINED3DVERTEXTEXTURESAMPLER3
= (WINED3DDMAPSAMPLER
+ 4);
947 const UINT WINED3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD
= 0x00000020;
948 const UINT WINED3DCAPS3_LINEAR_TO_SRGB_PRESENTATION
= 0x00000080;
949 const UINT WINED3DCAPS3_COPY_TO_VIDMEM
= 0x00000100;
950 const UINT WINED3DCAPS3_COPY_TO_SYSTEMMEM
= 0x00000200;
951 const UINT WINED3DCAPS3_RESERVED
= 0x8000001f;
953 const UINT WINED3DDEVCAPS2_STREAMOFFSET
= 0x00000001;
954 const UINT WINED3DDEVCAPS2_DMAPNPATCH
= 0x00000002;
955 const UINT WINED3DDEVCAPS2_ADAPTIVETESSRTPATCH
= 0x00000004;
956 const UINT WINED3DDEVCAPS2_ADAPTIVETESSNPATCH
= 0x00000008;
957 const UINT WINED3DDEVCAPS2_CAN_STRETCHRECT_FROM_TEXTURES
= 0x00000010;
958 const UINT WINED3DDEVCAPS2_PRESAMPLEDDMAPNPATCH
= 0x00000020;
959 const UINT WINED3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET
= 0x00000040;
961 const UINT WINED3DDTCAPS_UBYTE4
= 0x00000001;
962 const UINT WINED3DDTCAPS_UBYTE4N
= 0x00000002;
963 const UINT WINED3DDTCAPS_SHORT2N
= 0x00000004;
964 const UINT WINED3DDTCAPS_SHORT4N
= 0x00000008;
965 const UINT WINED3DDTCAPS_USHORT2N
= 0x00000010;
966 const UINT WINED3DDTCAPS_USHORT4N
= 0x00000020;
967 const UINT WINED3DDTCAPS_UDEC3
= 0x00000040;
968 const UINT WINED3DDTCAPS_DEC3N
= 0x00000080;
969 const UINT WINED3DDTCAPS_FLOAT16_2
= 0x00000100;
970 const UINT WINED3DDTCAPS_FLOAT16_4
= 0x00000200;
972 const UINT WINED3DFVFCAPS_TEXCOORDCOUNTMASK
= 0x0000ffff;
973 const UINT WINED3DFVFCAPS_DONOTSTRIPELEMENTS
= 0x00080000;
974 const UINT WINED3DFVFCAPS_PSIZE
= 0x00100000;
976 const UINT WINED3DLINECAPS_TEXTURE
= 0x00000001;
977 const UINT WINED3DLINECAPS_ZTEST
= 0x00000002;
978 const UINT WINED3DLINECAPS_BLEND
= 0x00000004;
979 const UINT WINED3DLINECAPS_ALPHACMP
= 0x00000008;
980 const UINT WINED3DLINECAPS_FOG
= 0x00000010;
981 const UINT WINED3DLINECAPS_ANTIALIAS
= 0x00000020;
983 const UINT WINED3DMAX30SHADERINSTRUCTIONS
= 32768;
984 const UINT WINED3DMIN30SHADERINSTRUCTIONS
= 512;
986 const UINT WINED3DPBLENDCAPS_ZERO
= 0x00000001;
987 const UINT WINED3DPBLENDCAPS_ONE
= 0x00000002;
988 const UINT WINED3DPBLENDCAPS_SRCCOLOR
= 0x00000004;
989 const UINT WINED3DPBLENDCAPS_INVSRCCOLOR
= 0x00000008;
990 const UINT WINED3DPBLENDCAPS_SRCALPHA
= 0x00000010;
991 const UINT WINED3DPBLENDCAPS_INVSRCALPHA
= 0x00000020;
992 const UINT WINED3DPBLENDCAPS_DESTALPHA
= 0x00000040;
993 const UINT WINED3DPBLENDCAPS_INVDESTALPHA
= 0x00000080;
994 const UINT WINED3DPBLENDCAPS_DESTCOLOR
= 0x00000100;
995 const UINT WINED3DPBLENDCAPS_INVDESTCOLOR
= 0x00000200;
996 const UINT WINED3DPBLENDCAPS_SRCALPHASAT
= 0x00000400;
997 const UINT WINED3DPBLENDCAPS_BOTHSRCALPHA
= 0x00000800;
998 const UINT WINED3DPBLENDCAPS_BOTHINVSRCALPHA
= 0x00001000;
999 const UINT WINED3DPBLENDCAPS_BLENDFACTOR
= 0x00002000;
1001 const UINT WINED3DPCMPCAPS_NEVER
= 0x00000001;
1002 const UINT WINED3DPCMPCAPS_LESS
= 0x00000002;
1003 const UINT WINED3DPCMPCAPS_EQUAL
= 0x00000004;
1004 const UINT WINED3DPCMPCAPS_LESSEQUAL
= 0x00000008;
1005 const UINT WINED3DPCMPCAPS_GREATER
= 0x00000010;
1006 const UINT WINED3DPCMPCAPS_NOTEQUAL
= 0x00000020;
1007 const UINT WINED3DPCMPCAPS_GREATEREQUAL
= 0x00000040;
1008 const UINT WINED3DPCMPCAPS_ALWAYS
= 0x00000080;
1010 const UINT WINED3DPMISCCAPS_MASKZ
= 0x00000002;
1011 const UINT WINED3DPMISCCAPS_LINEPATTERNREP
= 0x00000004;
1012 const UINT WINED3DPMISCCAPS_CULLNONE
= 0x00000010;
1013 const UINT WINED3DPMISCCAPS_CULLCW
= 0x00000020;
1014 const UINT WINED3DPMISCCAPS_CULLCCW
= 0x00000040;
1015 const UINT WINED3DPMISCCAPS_COLORWRITEENABLE
= 0x00000080;
1016 const UINT WINED3DPMISCCAPS_CLIPPLANESCALEDPOINTS
= 0x00000100;
1017 const UINT WINED3DPMISCCAPS_CLIPTLVERTS
= 0x00000200;
1018 const UINT WINED3DPMISCCAPS_TSSARGTEMP
= 0x00000400;
1019 const UINT WINED3DPMISCCAPS_BLENDOP
= 0x00000800;
1020 const UINT WINED3DPMISCCAPS_NULLREFERENCE
= 0x00001000;
1021 const UINT WINED3DPMISCCAPS_INDEPENDENTWRITEMASKS
= 0x00004000;
1022 const UINT WINED3DPMISCCAPS_PERSTAGECONSTANT
= 0x00008000;
1023 const UINT WINED3DPMISCCAPS_FOGANDSPECULARALPHA
= 0x00010000;
1024 const UINT WINED3DPMISCCAPS_SEPARATEALPHABLEND
= 0x00020000;
1025 const UINT WINED3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS
= 0x00040000;
1026 const UINT WINED3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING
= 0x00080000;
1027 const UINT WINED3DPMISCCAPS_FOGVERTEXCLAMPED
= 0x00100000;
1029 const UINT WINED3DPS20_MAX_DYNAMICFLOWCONTROLDEPTH
= 24;
1030 const UINT WINED3DPS20_MIN_DYNAMICFLOWCONTROLDEPTH
= 0;
1031 const UINT WINED3DPS20_MAX_NUMTEMPS
= 32;
1032 const UINT WINED3DPS20_MIN_NUMTEMPS
= 12;
1033 const UINT WINED3DPS20_MAX_STATICFLOWCONTROLDEPTH
= 4;
1034 const UINT WINED3DPS20_MIN_STATICFLOWCONTROLDEPTH
= 0;
1035 const UINT WINED3DPS20_MAX_NUMINSTRUCTIONSLOTS
= 512;
1036 const UINT WINED3DPS20_MIN_NUMINSTRUCTIONSLOTS
= 96;
1038 const UINT WINED3DPS20CAPS_ARBITRARYSWIZZLE
= 0x00000001;
1039 const UINT WINED3DPS20CAPS_GRADIENTINSTRUCTIONS
= 0x00000002;
1040 const UINT WINED3DPS20CAPS_PREDICATION
= 0x00000004;
1041 const UINT WINED3DPS20CAPS_NODEPENDENTREADLIMIT
= 0x00000008;
1042 const UINT WINED3DPS20CAPS_NOTEXINSTRUCTIONLIMIT
= 0x00000010;
1044 const UINT WINED3DPTADDRESSCAPS_WRAP
= 0x00000001;
1045 const UINT WINED3DPTADDRESSCAPS_MIRROR
= 0x00000002;
1046 const UINT WINED3DPTADDRESSCAPS_CLAMP
= 0x00000004;
1047 const UINT WINED3DPTADDRESSCAPS_BORDER
= 0x00000008;
1048 const UINT WINED3DPTADDRESSCAPS_INDEPENDENTUV
= 0x00000010;
1049 const UINT WINED3DPTADDRESSCAPS_MIRRORONCE
= 0x00000020;
1051 const UINT WINED3DSTENCILCAPS_KEEP
= 0x00000001;
1052 const UINT WINED3DSTENCILCAPS_ZERO
= 0x00000002;
1053 const UINT WINED3DSTENCILCAPS_REPLACE
= 0x00000004;
1054 const UINT WINED3DSTENCILCAPS_INCRSAT
= 0x00000008;
1055 const UINT WINED3DSTENCILCAPS_DECRSAT
= 0x00000010;
1056 const UINT WINED3DSTENCILCAPS_INVERT
= 0x00000020;
1057 const UINT WINED3DSTENCILCAPS_INCR
= 0x00000040;
1058 const UINT WINED3DSTENCILCAPS_DECR
= 0x00000080;
1059 const UINT WINED3DSTENCILCAPS_TWOSIDED
= 0x00000100;
1061 const UINT WINED3DTEXOPCAPS_DISABLE
= 0x00000001;
1062 const UINT WINED3DTEXOPCAPS_SELECTARG1
= 0x00000002;
1063 const UINT WINED3DTEXOPCAPS_SELECTARG2
= 0x00000004;
1064 const UINT WINED3DTEXOPCAPS_MODULATE
= 0x00000008;
1065 const UINT WINED3DTEXOPCAPS_MODULATE2X
= 0x00000010;
1066 const UINT WINED3DTEXOPCAPS_MODULATE4X
= 0x00000020;
1067 const UINT WINED3DTEXOPCAPS_ADD
= 0x00000040;
1068 const UINT WINED3DTEXOPCAPS_ADDSIGNED
= 0x00000080;
1069 const UINT WINED3DTEXOPCAPS_ADDSIGNED2X
= 0x00000100;
1070 const UINT WINED3DTEXOPCAPS_SUBTRACT
= 0x00000200;
1071 const UINT WINED3DTEXOPCAPS_ADDSMOOTH
= 0x00000400;
1072 const UINT WINED3DTEXOPCAPS_BLENDDIFFUSEALPHA
= 0x00000800;
1073 const UINT WINED3DTEXOPCAPS_BLENDTEXTUREALPHA
= 0x00001000;
1074 const UINT WINED3DTEXOPCAPS_BLENDFACTORALPHA
= 0x00002000;
1075 const UINT WINED3DTEXOPCAPS_BLENDTEXTUREALPHAPM
= 0x00004000;
1076 const UINT WINED3DTEXOPCAPS_BLENDCURRENTALPHA
= 0x00008000;
1077 const UINT WINED3DTEXOPCAPS_PREMODULATE
= 0x00010000;
1078 const UINT WINED3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR
= 0x00020000;
1079 const UINT WINED3DTEXOPCAPS_MODULATECOLOR_ADDALPHA
= 0x00040000;
1080 const UINT WINED3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR
= 0x00080000;
1081 const UINT WINED3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA
= 0x00100000;
1082 const UINT WINED3DTEXOPCAPS_BUMPENVMAP
= 0x00200000;
1083 const UINT WINED3DTEXOPCAPS_BUMPENVMAPLUMINANCE
= 0x00400000;
1084 const UINT WINED3DTEXOPCAPS_DOTPRODUCT3
= 0x00800000;
1085 const UINT WINED3DTEXOPCAPS_MULTIPLYADD
= 0x01000000;
1086 const UINT WINED3DTEXOPCAPS_LERP
= 0x02000000;
1088 const UINT WINED3DVS20_MAX_DYNAMICFLOWCONTROLDEPTH
= 24;
1089 const UINT WINED3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH
= 0;
1090 const UINT WINED3DVS20_MAX_NUMTEMPS
= 32;
1091 const UINT WINED3DVS20_MIN_NUMTEMPS
= 12;
1092 const UINT WINED3DVS20_MAX_STATICFLOWCONTROLDEPTH
= 4;
1093 const UINT WINED3DVS20_MIN_STATICFLOWCONTROLDEPTH
= 1;
1095 const UINT WINED3DVS20CAPS_PREDICATION
= 0x00000001;
1097 const UINT WINED3DCAPS2_NO2DDURING3DSCENE
= 0x00000002;
1098 const UINT WINED3DCAPS2_FULLSCREENGAMMA
= 0x00020000;
1099 const UINT WINED3DCAPS2_CANRENDERWINDOWED
= 0x00080000;
1100 const UINT WINED3DCAPS2_CANCALIBRATEGAMMA
= 0x00100000;
1101 const UINT WINED3DCAPS2_RESERVED
= 0x02000000;
1102 const UINT WINED3DCAPS2_CANMANAGERESOURCE
= 0x10000000;
1103 const UINT WINED3DCAPS2_DYNAMICTEXTURES
= 0x20000000;
1104 const UINT WINED3DCAPS2_CANAUTOGENMIPMAP
= 0x40000000;
1106 const UINT WINED3DPRASTERCAPS_DITHER
= 0x00000001;
1107 const UINT WINED3DPRASTERCAPS_ROP2
= 0x00000002;
1108 const UINT WINED3DPRASTERCAPS_XOR
= 0x00000004;
1109 const UINT WINED3DPRASTERCAPS_PAT
= 0x00000008;
1110 const UINT WINED3DPRASTERCAPS_ZTEST
= 0x00000010;
1111 const UINT WINED3DPRASTERCAPS_SUBPIXEL
= 0x00000020;
1112 const UINT WINED3DPRASTERCAPS_SUBPIXELX
= 0x00000040;
1113 const UINT WINED3DPRASTERCAPS_FOGVERTEX
= 0x00000080;
1114 const UINT WINED3DPRASTERCAPS_FOGTABLE
= 0x00000100;
1115 const UINT WINED3DPRASTERCAPS_STIPPLE
= 0x00000200;
1116 const UINT WINED3DPRASTERCAPS_ANTIALIASSORTDEPENDENT
= 0x00000400;
1117 const UINT WINED3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT
= 0x00000800;
1118 const UINT WINED3DPRASTERCAPS_ANTIALIASEDGES
= 0x00001000;
1119 const UINT WINED3DPRASTERCAPS_MIPMAPLODBIAS
= 0x00002000;
1120 const UINT WINED3DPRASTERCAPS_ZBIAS
= 0x00004000;
1121 const UINT WINED3DPRASTERCAPS_ZBUFFERLESSHSR
= 0x00008000;
1122 const UINT WINED3DPRASTERCAPS_FOGRANGE
= 0x00010000;
1123 const UINT WINED3DPRASTERCAPS_ANISOTROPY
= 0x00020000;
1124 const UINT WINED3DPRASTERCAPS_WBUFFER
= 0x00040000;
1125 const UINT WINED3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT
= 0x00080000;
1126 const UINT WINED3DPRASTERCAPS_WFOG
= 0x00100000;
1127 const UINT WINED3DPRASTERCAPS_ZFOG
= 0x00200000;
1128 const UINT WINED3DPRASTERCAPS_COLORPERSPECTIVE
= 0x00400000;
1129 const UINT WINED3DPRASTERCAPS_SCISSORTEST
= 0x01000000;
1130 const UINT WINED3DPRASTERCAPS_SLOPESCALEDEPTHBIAS
= 0x02000000;
1131 const UINT WINED3DPRASTERCAPS_DEPTHBIAS
= 0x04000000;
1132 const UINT WINED3DPRASTERCAPS_MULTISAMPLE_TOGGLE
= 0x08000000;
1134 const UINT WINED3DPSHADECAPS_COLORFLATMONO
= 0x00000001;
1135 const UINT WINED3DPSHADECAPS_COLORFLATRGB
= 0x00000002;
1136 const UINT WINED3DPSHADECAPS_COLORGOURAUDMONO
= 0x00000004;
1137 const UINT WINED3DPSHADECAPS_COLORGOURAUDRGB
= 0x00000008;
1138 const UINT WINED3DPSHADECAPS_COLORPHONGMONO
= 0x00000010;
1139 const UINT WINED3DPSHADECAPS_COLORPHONGRGB
= 0x00000020;
1140 const UINT WINED3DPSHADECAPS_SPECULARFLATMONO
= 0x00000040;
1141 const UINT WINED3DPSHADECAPS_SPECULARFLATRGB
= 0x00000080;
1142 const UINT WINED3DPSHADECAPS_SPECULARGOURAUDMONO
= 0x00000100;
1143 const UINT WINED3DPSHADECAPS_SPECULARGOURAUDRGB
= 0x00000200;
1144 const UINT WINED3DPSHADECAPS_SPECULARPHONGMONO
= 0x00000400;
1145 const UINT WINED3DPSHADECAPS_SPECULARPHONGRGB
= 0x00000800;
1146 const UINT WINED3DPSHADECAPS_ALPHAFLATBLEND
= 0x00001000;
1147 const UINT WINED3DPSHADECAPS_ALPHAFLATSTIPPLED
= 0x00002000;
1148 const UINT WINED3DPSHADECAPS_ALPHAGOURAUDBLEND
= 0x00004000;
1149 const UINT WINED3DPSHADECAPS_ALPHAGOURAUDSTIPPLED
= 0x00008000;
1150 const UINT WINED3DPSHADECAPS_ALPHAPHONGBLEND
= 0x00010000;
1151 const UINT WINED3DPSHADECAPS_ALPHAPHONGSTIPPLED
= 0x00020000;
1152 const UINT WINED3DPSHADECAPS_FOGFLAT
= 0x00040000;
1153 const UINT WINED3DPSHADECAPS_FOGGOURAUD
= 0x00080000;
1154 const UINT WINED3DPSHADECAPS_FOGPHONG
= 0x00100000;
1156 const UINT WINED3DPTEXTURECAPS_PERSPECTIVE
= 0x00000001;
1157 const UINT WINED3DPTEXTURECAPS_POW2
= 0x00000002;
1158 const UINT WINED3DPTEXTURECAPS_ALPHA
= 0x00000004;
1159 const UINT WINED3DPTEXTURECAPS_TRANSPARENCY
= 0x00000008;
1160 const UINT WINED3DPTEXTURECAPS_BORDER
= 0x00000010;
1161 const UINT WINED3DPTEXTURECAPS_SQUAREONLY
= 0x00000020;
1162 const UINT WINED3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE
= 0x00000040;
1163 const UINT WINED3DPTEXTURECAPS_ALPHAPALETTE
= 0x00000080;
1164 const UINT WINED3DPTEXTURECAPS_NONPOW2CONDITIONAL
= 0x00000100;
1165 const UINT WINED3DPTEXTURECAPS_PROJECTED
= 0x00000400;
1166 const UINT WINED3DPTEXTURECAPS_CUBEMAP
= 0x00000800;
1167 const UINT WINED3DPTEXTURECAPS_COLORKEYBLEND
= 0x00001000;
1168 const UINT WINED3DPTEXTURECAPS_VOLUMEMAP
= 0x00002000;
1169 const UINT WINED3DPTEXTURECAPS_MIPMAP
= 0x00004000;
1170 const UINT WINED3DPTEXTURECAPS_MIPVOLUMEMAP
= 0x00008000;
1171 const UINT WINED3DPTEXTURECAPS_MIPCUBEMAP
= 0x00010000;
1172 const UINT WINED3DPTEXTURECAPS_CUBEMAP_POW2
= 0x00020000;
1173 const UINT WINED3DPTEXTURECAPS_VOLUMEMAP_POW2
= 0x00040000;
1174 const UINT WINED3DPTEXTURECAPS_NOPROJECTEDBUMPENV
= 0x00200000;
1176 const UINT WINED3DPTFILTERCAPS_NEAREST
= 0x00000001;
1177 const UINT WINED3DPTFILTERCAPS_LINEAR
= 0x00000002;
1178 const UINT WINED3DPTFILTERCAPS_MIPNEAREST
= 0x00000004;
1179 const UINT WINED3DPTFILTERCAPS_MIPLINEAR
= 0x00000008;
1180 const UINT WINED3DPTFILTERCAPS_LINEARMIPNEAREST
= 0x00000010;
1181 const UINT WINED3DPTFILTERCAPS_LINEARMIPLINEAR
= 0x00000020;
1182 const UINT WINED3DPTFILTERCAPS_MINFPOINT
= 0x00000100;
1183 const UINT WINED3DPTFILTERCAPS_MINFLINEAR
= 0x00000200;
1184 const UINT WINED3DPTFILTERCAPS_MINFANISOTROPIC
= 0x00000400;
1185 const UINT WINED3DPTFILTERCAPS_MIPFPOINT
= 0x00010000;
1186 const UINT WINED3DPTFILTERCAPS_MIPFLINEAR
= 0x00020000;
1187 const UINT WINED3DPTFILTERCAPS_MAGFPOINT
= 0x01000000;
1188 const UINT WINED3DPTFILTERCAPS_MAGFLINEAR
= 0x02000000;
1189 const UINT WINED3DPTFILTERCAPS_MAGFANISOTROPIC
= 0x04000000;
1190 const UINT WINED3DPTFILTERCAPS_MAGFPYRAMIDALQUAD
= 0x08000000;
1191 const UINT WINED3DPTFILTERCAPS_MAGFGAUSSIANQUAD
= 0x10000000;
1193 const UINT WINED3DVTXPCAPS_TEXGEN
= 0x00000001;
1194 const UINT WINED3DVTXPCAPS_MATERIALSOURCE7
= 0x00000002;
1195 const UINT WINED3DVTXPCAPS_VERTEXFOG
= 0x00000004;
1196 const UINT WINED3DVTXPCAPS_DIRECTIONALLIGHTS
= 0x00000008;
1197 const UINT WINED3DVTXPCAPS_POSITIONALLIGHTS
= 0x00000010;
1198 const UINT WINED3DVTXPCAPS_LOCALVIEWER
= 0x00000020;
1199 const UINT WINED3DVTXPCAPS_TWEENING
= 0x00000040;
1200 const UINT WINED3DVTXPCAPS_TEXGEN_SPHEREMAP
= 0x00000100;
1201 const UINT WINED3DVTXPCAPS_NO_TEXGEN_NONLOCALVIEWER
= 0x00000200;
1203 const UINT WINED3DCURSORCAPS_COLOR
= 0x00000001;
1204 const UINT WINED3DCURSORCAPS_LOWRES
= 0x00000002;
1206 const UINT WINED3DDEVCAPS_FLOATTLVERTEX
= 0x00000001;
1207 const UINT WINED3DDEVCAPS_SORTINCREASINGZ
= 0x00000002;
1208 const UINT WINED3DDEVCAPS_SORTDECREASINGZ
= 0X00000004;
1209 const UINT WINED3DDEVCAPS_SORTEXACT
= 0x00000008;
1210 const UINT WINED3DDEVCAPS_EXECUTESYSTEMMEMORY
= 0x00000010;
1211 const UINT WINED3DDEVCAPS_EXECUTEVIDEOMEMORY
= 0x00000020;
1212 const UINT WINED3DDEVCAPS_TLVERTEXSYSTEMMEMORY
= 0x00000040;
1213 const UINT WINED3DDEVCAPS_TLVERTEXVIDEOMEMORY
= 0x00000080;
1214 const UINT WINED3DDEVCAPS_TEXTURESYSTEMMEMORY
= 0x00000100;
1215 const UINT WINED3DDEVCAPS_TEXTUREVIDEOMEMORY
= 0x00000200;
1216 const UINT WINED3DDEVCAPS_DRAWPRIMTLVERTEX
= 0x00000400;
1217 const UINT WINED3DDEVCAPS_CANRENDERAFTERFLIP
= 0x00000800;
1218 const UINT WINED3DDEVCAPS_TEXTURENONLOCALVIDMEM
= 0x00001000;
1219 const UINT WINED3DDEVCAPS_DRAWPRIMITIVES2
= 0x00002000;
1220 const UINT WINED3DDEVCAPS_SEPARATETEXTUREMEMORIES
= 0x00004000;
1221 const UINT WINED3DDEVCAPS_DRAWPRIMITIVES2EX
= 0x00008000;
1222 const UINT WINED3DDEVCAPS_HWTRANSFORMANDLIGHT
= 0x00010000;
1223 const UINT WINED3DDEVCAPS_CANBLTSYSTONONLOCAL
= 0x00020000;
1224 const UINT WINED3DDEVCAPS_HWRASTERIZATION
= 0x00080000;
1225 const UINT WINED3DDEVCAPS_PUREDEVICE
= 0x00100000;
1226 const UINT WINED3DDEVCAPS_QUINTICRTPATCHES
= 0x00200000;
1227 const UINT WINED3DDEVCAPS_RTPATCHES
= 0x00400000;
1228 const UINT WINED3DDEVCAPS_RTPATCHHANDLEZERO
= 0x00800000;
1229 const UINT WINED3DDEVCAPS_NPATCHES
= 0x01000000;
1232 /* arithmetic stretching along y axis */
1233 const UINT WINEDDBLTFX_ARITHSTRETCHY
= 0x00000001;
1234 /* mirror on y axis */
1235 const UINT WINEDDBLTFX_MIRRORLEFTRIGHT
= 0x00000002;
1236 /* mirror on x axis */
1237 const UINT WINEDDBLTFX_MIRRORUPDOWN
= 0x00000004;
1239 const UINT WINEDDBLTFX_NOTEARING
= 0x00000008;
1240 /* 180 degrees clockwise rotation */
1241 const UINT WINEDDBLTFX_ROTATE180
= 0x00000010;
1242 /* 270 degrees clockwise rotation */
1243 const UINT WINEDDBLTFX_ROTATE270
= 0x00000020;
1244 /* 90 degrees clockwise rotation */
1245 const UINT WINEDDBLTFX_ROTATE90
= 0x00000040;
1246 /* dwZBufferLow and dwZBufferHigh specify limits to the copied Z values */
1247 const UINT WINEDDBLTFX_ZBUFFERRANGE
= 0x00000080;
1248 /* add dwZBufferBaseDest to every source z value before compare */
1249 const UINT WINEDDBLTFX_ZBUFFERBASEDEST
= 0x00000100;
1251 /* dwFlags for Blt* */
1252 const UINT WINEDDBLT_ALPHADEST
= 0x00000001;
1253 const UINT WINEDDBLT_ALPHADESTCONSTOVERRIDE
= 0x00000002;
1254 const UINT WINEDDBLT_ALPHADESTNEG
= 0x00000004;
1255 const UINT WINEDDBLT_ALPHADESTSURFACEOVERRIDE
= 0x00000008;
1256 const UINT WINEDDBLT_ALPHAEDGEBLEND
= 0x00000010;
1257 const UINT WINEDDBLT_ALPHASRC
= 0x00000020;
1258 const UINT WINEDDBLT_ALPHASRCCONSTOVERRIDE
= 0x00000040;
1259 const UINT WINEDDBLT_ALPHASRCNEG
= 0x00000080;
1260 const UINT WINEDDBLT_ALPHASRCSURFACEOVERRIDE
= 0x00000100;
1261 const UINT WINEDDBLT_ASYNC
= 0x00000200;
1262 const UINT WINEDDBLT_COLORFILL
= 0x00000400;
1263 const UINT WINEDDBLT_DDFX
= 0x00000800;
1264 const UINT WINEDDBLT_DDROPS
= 0x00001000;
1265 const UINT WINEDDBLT_KEYDEST
= 0x00002000;
1266 const UINT WINEDDBLT_KEYDESTOVERRIDE
= 0x00004000;
1267 const UINT WINEDDBLT_KEYSRC
= 0x00008000;
1268 const UINT WINEDDBLT_KEYSRCOVERRIDE
= 0x00010000;
1269 const UINT WINEDDBLT_ROP
= 0x00020000;
1270 const UINT WINEDDBLT_ROTATIONANGLE
= 0x00040000;
1271 const UINT WINEDDBLT_ZBUFFER
= 0x00080000;
1272 const UINT WINEDDBLT_ZBUFFERDESTCONSTOVERRIDE
= 0x00100000;
1273 const UINT WINEDDBLT_ZBUFFERDESTOVERRIDE
= 0x00200000;
1274 const UINT WINEDDBLT_ZBUFFERSRCCONSTOVERRIDE
= 0x00400000;
1275 const UINT WINEDDBLT_ZBUFFERSRCOVERRIDE
= 0x00800000;
1276 const UINT WINEDDBLT_WAIT
= 0x01000000;
1277 const UINT WINEDDBLT_DEPTHFILL
= 0x02000000;
1278 const UINT WINEDDBLT_DONOTWAIT
= 0x08000000;
1280 /* dwTrans for BltFast */
1281 const UINT WINEDDBLTFAST_NOCOLORKEY
= 0x00000000;
1282 const UINT WINEDDBLTFAST_SRCCOLORKEY
= 0x00000001;
1283 const UINT WINEDDBLTFAST_DESTCOLORKEY
= 0x00000002;
1284 const UINT WINEDDBLTFAST_WAIT
= 0x00000010;
1285 const UINT WINEDDBLTFAST_DONOTWAIT
= 0x00000020;
1287 /* DDSURFACEDESC.dwFlags */
1288 const UINT WINEDDSD_CAPS
= 0x00000001;
1289 const UINT WINEDDSD_HEIGHT
= 0x00000002;
1290 const UINT WINEDDSD_WIDTH
= 0x00000004;
1291 const UINT WINEDDSD_PITCH
= 0x00000008;
1292 const UINT WINEDDSD_BACKBUFFERCOUNT
= 0x00000020;
1293 const UINT WINEDDSD_ZBUFFERBITDEPTH
= 0x00000040;
1294 const UINT WINEDDSD_ALPHABITDEPTH
= 0x00000080;
1295 const UINT WINEDDSD_LPSURFACE
= 0x00000800;
1296 const UINT WINEDDSD_PIXELFORMAT
= 0x00001000;
1297 const UINT WINEDDSD_CKDESTOVERLAY
= 0x00002000;
1298 const UINT WINEDDSD_CKDESTBLT
= 0x00004000;
1299 const UINT WINEDDSD_CKSRCOVERLAY
= 0x00008000;
1300 const UINT WINEDDSD_CKSRCBLT
= 0x00010000;
1301 const UINT WINEDDSD_MIPMAPCOUNT
= 0x00020000;
1302 const UINT WINEDDSD_REFRESHRATE
= 0x00040000;
1303 const UINT WINEDDSD_LINEARSIZE
= 0x00080000;
1304 const UINT WINEDDSD_TEXTURESTAGE
= 0x00100000;
1305 const UINT WINEDDSD_FVF
= 0x00200000;
1306 const UINT WINEDDSD_SRCVBHANDLE
= 0x00400000;
1307 const UINT WINEDDSD_ALL
= 0x007ff9ee;
1309 /* Set/Get Colour Key Flags */
1310 const UINT WINEDDCKEY_COLORSPACE
= 0x00000001; /* Struct is single colour space */
1311 const UINT WINEDDCKEY_DESTBLT
= 0x00000002; /* To be used as dest for blt */
1312 const UINT WINEDDCKEY_DESTOVERLAY
= 0x00000004; /* To be used as dest for CK overlays */
1313 const UINT WINEDDCKEY_SRCBLT
= 0x00000008; /* To be used as src for blt */
1314 const UINT WINEDDCKEY_SRCOVERLAY
= 0x00000010; /* To be used as src for CK overlays */
1316 /* dwFlags for GetBltStatus */
1317 const UINT WINEDDGBS_CANBLT
= 0x00000001;
1318 const UINT WINEDDGBS_ISBLTDONE
= 0x00000002;
1320 /* dwFlags for GetFlipStatus */
1321 const UINT WINEDDGFS_CANFLIP
= 0x00000001;
1322 const UINT WINEDDGFS_ISFLIPDONE
= 0x00000002;
1324 /* dwFlags for Flip */
1325 const UINT WINEDDFLIP_WAIT
= 0x00000001;
1326 const UINT WINEDDFLIP_EVEN
= 0x00000002; /* only valid for overlay */
1327 const UINT WINEDDFLIP_ODD
= 0x00000004; /* only valid for overlay */
1328 const UINT WINEDDFLIP_NOVSYNC
= 0x00000008;
1329 const UINT WINEDDFLIP_STEREO
= 0x00000010;
1330 const UINT WINEDDFLIP_DONOTWAIT
= 0x00000020;
1331 const UINT WINEDDFLIP_INTERVAL2
= 0x02000000;
1332 const UINT WINEDDFLIP_INTERVAL3
= 0x03000000;
1333 const UINT WINEDDFLIP_INTERVAL4
= 0x04000000;
1335 const UINT WINEDDOVER_ALPHADEST
= 0x00000001;
1336 const UINT WINEDDOVER_ALPHADESTCONSTOVERRIDE
= 0x00000002;
1337 const UINT WINEDDOVER_ALPHADESTNEG
= 0x00000004;
1338 const UINT WINEDDOVER_ALPHADESTSURFACEOVERRIDE
= 0x00000008;
1339 const UINT WINEDDOVER_ALPHAEDGEBLEND
= 0x00000010;
1340 const UINT WINEDDOVER_ALPHASRC
= 0x00000020;
1341 const UINT WINEDDOVER_ALPHASRCCONSTOVERRIDE
= 0x00000040;
1342 const UINT WINEDDOVER_ALPHASRCNEG
= 0x00000080;
1343 const UINT WINEDDOVER_ALPHASRCSURFACEOVERRIDE
= 0x00000100;
1344 const UINT WINEDDOVER_HIDE
= 0x00000200;
1345 const UINT WINEDDOVER_KEYDEST
= 0x00000400;
1346 const UINT WINEDDOVER_KEYDESTOVERRIDE
= 0x00000800;
1347 const UINT WINEDDOVER_KEYSRC
= 0x00001000;
1348 const UINT WINEDDOVER_KEYSRCOVERRIDE
= 0x00002000;
1349 const UINT WINEDDOVER_SHOW
= 0x00004000;
1350 const UINT WINEDDOVER_ADDDIRTYRECT
= 0x00008000;
1351 const UINT WINEDDOVER_REFRESHDIRTYRECTS
= 0x00010000;
1352 const UINT WINEDDOVER_REFRESHALL
= 0x00020000;
1353 const UINT WINEDDOVER_DDFX
= 0x00080000;
1354 const UINT WINEDDOVER_AUTOFLIP
= 0x00100000;
1355 const UINT WINEDDOVER_BOB
= 0x00200000;
1356 const UINT WINEDDOVER_OVERRIDEBOBWEAVE
= 0x00400000;
1357 const UINT WINEDDOVER_INTERLEAVED
= 0x00800000;
1359 /* DirectDraw Caps */
1360 const UINT WINEDDSCAPS_RESERVED1
= 0x00000001;
1361 const UINT WINEDDSCAPS_ALPHA
= 0x00000002;
1362 const UINT WINEDDSCAPS_BACKBUFFER
= 0x00000004;
1363 const UINT WINEDDSCAPS_COMPLEX
= 0x00000008;
1364 const UINT WINEDDSCAPS_FLIP
= 0x00000010;
1365 const UINT WINEDDSCAPS_FRONTBUFFER
= 0x00000020;
1366 const UINT WINEDDSCAPS_OFFSCREENPLAIN
= 0x00000040;
1367 const UINT WINEDDSCAPS_OVERLAY
= 0x00000080;
1368 const UINT WINEDDSCAPS_PALETTE
= 0x00000100;
1369 const UINT WINEDDSCAPS_PRIMARYSURFACE
= 0x00000200;
1370 const UINT WINEDDSCAPS_PRIMARYSURFACELEFT
= 0x00000400;
1371 const UINT WINEDDSCAPS_SYSTEMMEMORY
= 0x00000800;
1372 const UINT WINEDDSCAPS_TEXTURE
= 0x00001000;
1373 const UINT WINEDDSCAPS_3DDEVICE
= 0x00002000;
1374 const UINT WINEDDSCAPS_VIDEOMEMORY
= 0x00004000;
1375 const UINT WINEDDSCAPS_VISIBLE
= 0x00008000;
1376 const UINT WINEDDSCAPS_WRITEONLY
= 0x00010000;
1377 const UINT WINEDDSCAPS_ZBUFFER
= 0x00020000;
1378 const UINT WINEDDSCAPS_OWNDC
= 0x00040000;
1379 const UINT WINEDDSCAPS_LIVEVIDEO
= 0x00080000;
1380 const UINT WINEDDSCAPS_HWCODEC
= 0x00100000;
1381 const UINT WINEDDSCAPS_MODEX
= 0x00200000;
1382 const UINT WINEDDSCAPS_MIPMAP
= 0x00400000;
1383 const UINT WINEDDSCAPS_RESERVED2
= 0x00800000;
1384 const UINT WINEDDSCAPS_ALLOCONLOAD
= 0x04000000;
1385 const UINT WINEDDSCAPS_VIDEOPORT
= 0x08000000;
1386 const UINT WINEDDSCAPS_LOCALVIDMEM
= 0x10000000;
1387 const UINT WINEDDSCAPS_NONLOCALVIDMEM
= 0x20000000;
1388 const UINT WINEDDSCAPS_STANDARDVGAMODE
= 0x40000000;
1389 const UINT WINEDDSCAPS_OPTIMIZED
= 0x80000000;
1391 const UINT WINEDDCKEYCAPS_DESTBLT
= 0x00000001;
1392 const UINT WINEDDCKEYCAPS_DESTBLTCLRSPACE
= 0x00000002;
1393 const UINT WINEDDCKEYCAPS_DESTBLTCLRSPACEYUV
= 0x00000004;
1394 const UINT WINEDDCKEYCAPS_DESTBLTYUV
= 0x00000008;
1395 const UINT WINEDDCKEYCAPS_DESTOVERLAY
= 0x00000010;
1396 const UINT WINEDDCKEYCAPS_DESTOVERLAYCLRSPACE
= 0x00000020;
1397 const UINT WINEDDCKEYCAPS_DESTOVERLAYCLRSPACEYUV
= 0x00000040;
1398 const UINT WINEDDCKEYCAPS_DESTOVERLAYONEACTIVE
= 0x00000080;
1399 const UINT WINEDDCKEYCAPS_DESTOVERLAYYUV
= 0x00000100;
1400 const UINT WINEDDCKEYCAPS_SRCBLT
= 0x00000200;
1401 const UINT WINEDDCKEYCAPS_SRCBLTCLRSPACE
= 0x00000400;
1402 const UINT WINEDDCKEYCAPS_SRCBLTCLRSPACEYUV
= 0x00000800;
1403 const UINT WINEDDCKEYCAPS_SRCBLTYUV
= 0x00001000;
1404 const UINT WINEDDCKEYCAPS_SRCOVERLAY
= 0x00002000;
1405 const UINT WINEDDCKEYCAPS_SRCOVERLAYCLRSPACE
= 0x00004000;
1406 const UINT WINEDDCKEYCAPS_SRCOVERLAYCLRSPACEYUV
= 0x00008000;
1407 const UINT WINEDDCKEYCAPS_SRCOVERLAYONEACTIVE
= 0x00010000;
1408 const UINT WINEDDCKEYCAPS_SRCOVERLAYYUV
= 0x00020000;
1409 const UINT WINEDDCKEYCAPS_NOCOSTOVERLAY
= 0x00040000;
1411 const UINT WINEDDFXCAPS_BLTALPHA
= 0x00000001;
1412 const UINT WINEDDFXCAPS_OVERLAYALPHA
= 0x00000004;
1413 const UINT WINEDDFXCAPS_BLTARITHSTRETCHYN
= 0x00000010;
1414 const UINT WINEDDFXCAPS_BLTARITHSTRETCHY
= 0x00000020;
1415 const UINT WINEDDFXCAPS_BLTMIRRORLEFTRIGHT
= 0x00000040;
1416 const UINT WINEDDFXCAPS_BLTMIRRORUPDOWN
= 0x00000080;
1417 const UINT WINEDDFXCAPS_BLTROTATION
= 0x00000100;
1418 const UINT WINEDDFXCAPS_BLTROTATION90
= 0x00000200;
1419 const UINT WINEDDFXCAPS_BLTSHRINKX
= 0x00000400;
1420 const UINT WINEDDFXCAPS_BLTSHRINKXN
= 0x00000800;
1421 const UINT WINEDDFXCAPS_BLTSHRINKY
= 0x00001000;
1422 const UINT WINEDDFXCAPS_BLTSHRINKYN
= 0x00002000;
1423 const UINT WINEDDFXCAPS_BLTSTRETCHX
= 0x00004000;
1424 const UINT WINEDDFXCAPS_BLTSTRETCHXN
= 0x00008000;
1425 const UINT WINEDDFXCAPS_BLTSTRETCHY
= 0x00010000;
1426 const UINT WINEDDFXCAPS_BLTSTRETCHYN
= 0x00020000;
1427 const UINT WINEDDFXCAPS_OVERLAYARITHSTRETCHY
= 0x00040000;
1428 const UINT WINEDDFXCAPS_OVERLAYARITHSTRETCHYN
= 0x00000008;
1429 const UINT WINEDDFXCAPS_OVERLAYSHRINKX
= 0x00080000;
1430 const UINT WINEDDFXCAPS_OVERLAYSHRINKXN
= 0x00100000;
1431 const UINT WINEDDFXCAPS_OVERLAYSHRINKY
= 0x00200000;
1432 const UINT WINEDDFXCAPS_OVERLAYSHRINKYN
= 0x00400000;
1433 const UINT WINEDDFXCAPS_OVERLAYSTRETCHX
= 0x00800000;
1434 const UINT WINEDDFXCAPS_OVERLAYSTRETCHXN
= 0x01000000;
1435 const UINT WINEDDFXCAPS_OVERLAYSTRETCHY
= 0x02000000;
1436 const UINT WINEDDFXCAPS_OVERLAYSTRETCHYN
= 0x04000000;
1437 const UINT WINEDDFXCAPS_OVERLAYMIRRORLEFTRIGHT
= 0x08000000;
1438 const UINT WINEDDFXCAPS_OVERLAYMIRRORUPDOWN
= 0x10000000;
1440 const UINT WINEDDCAPS_3D
= 0x00000001;
1441 const UINT WINEDDCAPS_ALIGNBOUNDARYDEST
= 0x00000002;
1442 const UINT WINEDDCAPS_ALIGNSIZEDEST
= 0x00000004;
1443 const UINT WINEDDCAPS_ALIGNBOUNDARYSRC
= 0x00000008;
1444 const UINT WINEDDCAPS_ALIGNSIZESRC
= 0x00000010;
1445 const UINT WINEDDCAPS_ALIGNSTRIDE
= 0x00000020;
1446 const UINT WINEDDCAPS_BLT
= 0x00000040;
1447 const UINT WINEDDCAPS_BLTQUEUE
= 0x00000080;
1448 const UINT WINEDDCAPS_BLTFOURCC
= 0x00000100;
1449 const UINT WINEDDCAPS_BLTSTRETCH
= 0x00000200;
1450 const UINT WINEDDCAPS_GDI
= 0x00000400;
1451 const UINT WINEDDCAPS_OVERLAY
= 0x00000800;
1452 const UINT WINEDDCAPS_OVERLAYCANTCLIP
= 0x00001000;
1453 const UINT WINEDDCAPS_OVERLAYFOURCC
= 0x00002000;
1454 const UINT WINEDDCAPS_OVERLAYSTRETCH
= 0x00004000;
1455 const UINT WINEDDCAPS_PALETTE
= 0x00008000;
1456 const UINT WINEDDCAPS_PALETTEVSYNC
= 0x00010000;
1457 const UINT WINEDDCAPS_READSCANLINE
= 0x00020000;
1458 const UINT WINEDDCAPS_STEREOVIEW
= 0x00040000;
1459 const UINT WINEDDCAPS_VBI
= 0x00080000;
1460 const UINT WINEDDCAPS_ZBLTS
= 0x00100000;
1461 const UINT WINEDDCAPS_ZOVERLAYS
= 0x00200000;
1462 const UINT WINEDDCAPS_COLORKEY
= 0x00400000;
1463 const UINT WINEDDCAPS_ALPHA
= 0x00800000;
1464 const UINT WINEDDCAPS_COLORKEYHWASSIST
= 0x01000000;
1465 const UINT WINEDDCAPS_NOHARDWARE
= 0x02000000;
1466 const UINT WINEDDCAPS_BLTCOLORFILL
= 0x04000000;
1467 const UINT WINEDDCAPS_BANKSWITCHED
= 0x08000000;
1468 const UINT WINEDDCAPS_BLTDEPTHFILL
= 0x10000000;
1469 const UINT WINEDDCAPS_CANCLIP
= 0x20000000;
1470 const UINT WINEDDCAPS_CANCLIPSTRETCHED
= 0x40000000;
1471 const UINT WINEDDCAPS_CANBLTSYSMEM
= 0x80000000;
1473 const UINT WINEDDCAPS2_CERTIFIED
= 0x00000001;
1474 const UINT WINEDDCAPS2_NO2DDURING3DSCENE
= 0x00000002;
1475 const UINT WINEDDCAPS2_VIDEOPORT
= 0x00000004;
1476 const UINT WINEDDCAPS2_AUTOFLIPOVERLAY
= 0x00000008;
1477 const UINT WINEDDCAPS2_CANBOBINTERLEAVED
= 0x00000010;
1478 const UINT WINEDDCAPS2_CANBOBNONINTERLEAVED
= 0x00000020;
1479 const UINT WINEDDCAPS2_COLORCONTROLOVERLAY
= 0x00000040;
1480 const UINT WINEDDCAPS2_COLORCONTROLPRIMARY
= 0x00000080;
1481 const UINT WINEDDCAPS2_CANDROPZ16BIT
= 0x00000100;
1482 const UINT WINEDDCAPS2_NONLOCALVIDMEM
= 0x00000200;
1483 const UINT WINEDDCAPS2_NONLOCALVIDMEMCAPS
= 0x00000400;
1484 const UINT WINEDDCAPS2_NOPAGELOCKREQUIRED
= 0x00000800;
1485 const UINT WINEDDCAPS2_WIDESURFACES
= 0x00001000;
1486 const UINT WINEDDCAPS2_CANFLIPODDEVEN
= 0x00002000;
1487 const UINT WINEDDCAPS2_CANBOBHARDWARE
= 0x00004000;
1488 const UINT WINEDDCAPS2_COPYFOURCC
= 0x00008000;
1489 const UINT WINEDDCAPS2_PRIMARYGAMMA
= 0x00020000;
1490 const UINT WINEDDCAPS2_CANRENDERWINDOWED
= 0x00080000;
1491 const UINT WINEDDCAPS2_CANCALIBRATEGAMMA
= 0x00100000;
1492 const UINT WINEDDCAPS2_FLIPINTERVAL
= 0x00200000;
1493 const UINT WINEDDCAPS2_FLIPNOVSYNC
= 0x00400000;
1494 const UINT WINEDDCAPS2_CANMANAGETEXTURE
= 0x00800000;
1495 const UINT WINEDDCAPS2_TEXMANINNONLOCALVIDMEM
= 0x01000000;
1496 const UINT WINEDDCAPS2_STEREO
= 0x02000000;
1497 const UINT WINEDDCAPS2_SYSTONONLOCAL_AS_SYSTOLOCAL
= 0x04000000;
1500 const UINT WINEDDPCAPS_4BIT
= 0x00000001;
1501 const UINT WINEDDPCAPS_8BITENTRIES
= 0x00000002;
1502 const UINT WINEDDPCAPS_8BIT
= 0x00000004;
1503 const UINT WINEDDPCAPS_INITIALIZE
= 0x00000008;
1504 const UINT WINEDDPCAPS_PRIMARYSURFACE
= 0x00000010;
1505 const UINT WINEDDPCAPS_PRIMARYSURFACELEFT
= 0x00000020;
1506 const UINT WINEDDPCAPS_ALLOW256
= 0x00000040;
1507 const UINT WINEDDPCAPS_VSYNC
= 0x00000080;
1508 const UINT WINEDDPCAPS_1BIT
= 0x00000100;
1509 const UINT WINEDDPCAPS_2BIT
= 0x00000200;
1510 const UINT WINEDDPCAPS_ALPHA
= 0x00000400;
1512 typedef struct _WINED3DDISPLAYMODE
1517 WINED3DFORMAT Format
;
1518 } WINED3DDISPLAYMODE
;
1520 typedef struct _WINED3DCOLORVALUE
1526 } WINED3DCOLORVALUE
;
1528 typedef struct _WINED3DVECTOR
1535 typedef struct _WINED3DMATRIX
1541 float _11
, _12
, _13
, _14
;
1542 float _21
, _22
, _23
, _24
;
1543 float _31
, _32
, _33
, _34
;
1544 float _41
, _42
, _43
, _44
;
1550 typedef struct _WINED3DRECT
1558 typedef struct _WINED3DLIGHT
1560 WINED3DLIGHTTYPE Type
;
1561 WINED3DCOLORVALUE Diffuse
;
1562 WINED3DCOLORVALUE Specular
;
1563 WINED3DCOLORVALUE Ambient
;
1564 WINED3DVECTOR Position
;
1565 WINED3DVECTOR Direction
;
1575 typedef struct _WINED3DMATERIAL
1577 WINED3DCOLORVALUE Diffuse
;
1578 WINED3DCOLORVALUE Ambient
;
1579 WINED3DCOLORVALUE Specular
;
1580 WINED3DCOLORVALUE Emissive
;
1584 typedef struct _WINED3DVIEWPORT
1594 typedef struct _WINED3DGAMMARAMP
1601 typedef struct _WINED3DLINEPATTERN
1605 } WINED3DLINEPATTERN
;
1607 typedef struct _WINEDD3DRECTPATCH_INFO
1609 UINT StartVertexOffsetWidth
;
1610 UINT StartVertexOffsetHeight
;
1614 WINED3DBASISTYPE Basis
;
1615 WINED3DDEGREETYPE Degree
;
1616 } WINED3DRECTPATCH_INFO
;
1618 typedef struct _WINED3DTRIPATCH_INFO
1620 UINT StartVertexOffset
;
1622 WINED3DBASISTYPE Basis
;
1623 WINED3DDEGREETYPE Degree
;
1624 } WINED3DTRIPATCH_INFO
;
1626 typedef struct _WINED3DADAPTER_IDENTIFIER
1631 LARGE_INTEGER
*DriverVersion
;
1636 GUID
*DeviceIdentifier
;
1638 } WINED3DADAPTER_IDENTIFIER
;
1640 typedef struct _WINED3DPRESENT_PARAMETERS
1642 UINT BackBufferWidth
;
1643 UINT BackBufferHeight
;
1644 WINED3DFORMAT BackBufferFormat
;
1645 UINT BackBufferCount
;
1646 WINED3DMULTISAMPLE_TYPE MultiSampleType
;
1647 DWORD MultiSampleQuality
;
1648 WINED3DSWAPEFFECT SwapEffect
;
1651 BOOL EnableAutoDepthStencil
;
1652 WINED3DFORMAT AutoDepthStencilFormat
;
1654 UINT FullScreen_RefreshRateInHz
;
1655 UINT PresentationInterval
;
1656 BOOL AutoRestoreDisplayMode
;
1657 } WINED3DPRESENT_PARAMETERS
;
1659 typedef struct _WINED3DSURFACE_DESC
1661 WINED3DFORMAT
*Format
;
1662 WINED3DRESOURCETYPE
*Type
;
1666 WINED3DMULTISAMPLE_TYPE
*MultiSampleType
;
1667 DWORD
*MultiSampleQuality
;
1670 } WINED3DSURFACE_DESC
;
1672 typedef struct _WINED3DVOLUME_DESC
1674 WINED3DFORMAT
*Format
;
1675 WINED3DRESOURCETYPE
*Type
;
1682 } WINED3DVOLUME_DESC
;
1684 typedef struct _WINED3DCLIPSTATUS
1687 DWORD ClipIntersection
;
1688 } WINED3DCLIPSTATUS
;
1690 typedef struct _WINED3DVERTEXELEMENT
1698 int Reg
; /* DirectX 8 */
1699 } WINED3DVERTEXELEMENT
, *LPWINED3DVERTEXELEMENT
;
1701 typedef struct _WINED3DDEVICE_CREATION_PARAMETERS
1703 UINT AdapterOrdinal
;
1704 WINED3DDEVTYPE DeviceType
;
1706 DWORD BehaviorFlags
;
1707 } WINED3DDEVICE_CREATION_PARAMETERS
;
1709 typedef struct _WINED3DDEVINFO_BANDWIDTHTIMINGS
1711 float MaxBandwidthUtilized
;
1712 float FrontEndUploadMemoryUtilizedPercent
;
1713 float VertexRateUtilizedPercent
;
1714 float TriangleSetupRateUtilizedPercent
;
1715 float FillRateUtilizedPercent
;
1716 } WINED3DDEVINFO_BANDWIDTHTIMINGS
;
1718 typedef struct _WINED3DDEVINFO_CACHEUTILIZATION
1720 float TextureCacheHitRate
;
1721 float PostTransformVertexCacheHitRate
;
1722 } WINED3DDEVINFO_CACHEUTILIZATION
;
1724 typedef struct _WINED3DDEVINFO_INTERFACETIMINGS
1726 float WaitingForGPUToUseApplicationResourceTimePercent
;
1727 float WaitingForGPUToAcceptMoreCommandsTimePercent
;
1728 float WaitingForGPUToStayWithinLatencyTimePercent
;
1729 float WaitingForGPUExclusiveResourceTimePercent
;
1730 float WaitingForGPUOtherTimePercent
;
1731 } WINED3DDEVINFO_INTERFACETIMINGS
;
1733 typedef struct _WINED3DDEVINFO_PIPELINETIMINGS
1735 float VertexProcessingTimePercent
;
1736 float PixelProcessingTimePercent
;
1737 float OtherGPUProcessingTimePercent
;
1738 float GPUIdleTimePercent
;
1739 } WINED3DDEVINFO_PIPELINETIMINGS
;
1741 typedef struct _WINED3DDEVINFO_STAGETIMINGS
1743 float MemoryProcessingPercent
;
1744 float ComputationProcessingPercent
;
1745 } WINED3DDEVINFO_STAGETIMINGS
;
1747 typedef struct _WINED3DRASTER_STATUS
1751 } WINED3DRASTER_STATUS
;
1753 typedef struct WINED3DRESOURCESTATS
1756 DWORD ApproxBytesDownloaded
;
1758 DWORD NumVidCreates
;
1761 DWORD NumUsedInVidMem
;
1763 DWORD WorkingSetBytes
;
1766 } WINED3DRESOURCESTATS
;
1768 typedef struct _WINED3DDEVINFO_RESOURCEMANAGER
1770 WINED3DRESOURCESTATS stats
[WINED3DRTYPECOUNT
];
1771 } WINED3DDEVINFO_RESOURCEMANAGER
;
1773 typedef struct _WINED3DDEVINFO_VERTEXSTATS
1775 DWORD NumRenderedTriangles
;
1776 DWORD NumExtraClippingTriangles
;
1777 } WINED3DDEVINFO_VERTEXSTATS
;
1779 typedef struct _WINED3DLOCKED_RECT
1783 } WINED3DLOCKED_RECT
;
1785 typedef struct _WINED3DLOCKED_BOX
1790 } WINED3DLOCKED_BOX
;
1792 typedef struct _WINED3DBOX
1802 /*Vertex cache optimization hints.*/
1803 typedef struct WINED3DDEVINFO_VCACHE
1805 DWORD Pattern
; /* Must be a 4 char code FOURCC (e.g. CACH) */
1806 DWORD OptMethod
; /* 0 to get the longest strips, 1 vertex cache */
1807 DWORD CacheSize
; /* Cache size to use (only valid if OptMethod==1) */
1808 DWORD MagicNumber
; /* Internal for deciding when to restart strips,
1809 non user modifiable (only valid if OptMethod==1) */
1810 } WINED3DDEVINFO_VCACHE
;
1812 typedef struct _WINED3DVERTEXBUFFER_DESC
1814 WINED3DFORMAT Format
;
1815 WINED3DRESOURCETYPE Type
;
1820 } WINED3DVERTEXBUFFER_DESC
;
1822 typedef struct _WINED3DINDEXBUFFER_DESC
1824 WINED3DFORMAT Format
;
1825 WINED3DRESOURCETYPE Type
;
1829 } WINED3DINDEXBUFFER_DESC
;
1831 typedef struct glDescriptor
1833 UINT textureName
, srgbTextureName
;
1835 int /*GLenum*/ target
;
1836 int /*GLenum*/ glFormat
;
1837 int /*GLenum*/ glFormatInternal
;
1838 int /*GLenum*/ glType
;
1841 typedef struct WineDirect3DStridedData
1843 const BYTE *lpData
; /* Pointer to start of data */
1844 DWORD dwStride
; /* Stride between occurrences of this data */
1845 DWORD dwType
; /* Type (as in D3DVSDT_TYPE) */
1846 int VBO
; /* Vertex buffer object this data is in */
1847 UINT streamNo
; /* D3D stream number */
1848 } WineDirect3DStridedData
;
1850 typedef struct WineDirect3DVertexStridedData
1854 * This structure can be accessed in two ways: Named access, and array
1855 * access. Please note that named access is only valid with the fixed
1856 * function vertex pipeline, and the arrays are only valid with the
1857 * programmable vertex pipeline(vertex shaders).
1863 /* Do not add or reorder fields here,
1864 * so this can be indexed as an array */
1865 WineDirect3DStridedData position
;
1866 WineDirect3DStridedData blendWeights
;
1867 WineDirect3DStridedData blendMatrixIndices
;
1868 WineDirect3DStridedData normal
;
1869 WineDirect3DStridedData pSize
;
1870 WineDirect3DStridedData diffuse
;
1871 WineDirect3DStridedData specular
;
1872 WineDirect3DStridedData texCoords
[WINED3DDP_MAXTEXCOORD
];
1873 WineDirect3DStridedData position2
; /* tween data */
1874 WineDirect3DStridedData normal2
; /* tween data */
1875 WineDirect3DStridedData tangent
;
1876 WineDirect3DStridedData binormal
;
1877 WineDirect3DStridedData tessFactor
;
1878 WineDirect3DStridedData fog
;
1879 WineDirect3DStridedData depth
;
1880 WineDirect3DStridedData sample
;
1882 /* Add fields here */
1884 WineDirect3DStridedData input
[16]; /* Indexed by constants in D3DVSDE_REGISTER */
1887 BOOL position_transformed
;
1888 WORD swizzle_map
; /* MAX_ATTRIBS, 16 */
1889 WORD use_map
; /* MAX_ATTRIBS, 16 */
1890 } WineDirect3DVertexStridedData
;
1892 typedef struct _WINED3DVSHADERCAPS2_0
1895 INT DynamicFlowControlDepth
;
1897 INT StaticFlowControlDepth
;
1898 } WINED3DVSHADERCAPS2_0
;
1900 typedef struct _WINED3DPSHADERCAPS2_0
1903 INT DynamicFlowControlDepth
;
1905 INT StaticFlowControlDepth
;
1906 INT NumInstructionSlots
;
1907 } WINED3DPSHADERCAPS2_0
;
1909 typedef struct _WINEDDCAPS
1931 typedef struct _WINED3DCAPS
1933 WINED3DDEVTYPE DeviceType
;
1934 UINT AdapterOrdinal
;
1939 DWORD PresentationIntervals
;
1943 DWORD PrimitiveMiscCaps
;
1947 DWORD DestBlendCaps
;
1951 DWORD TextureFilterCaps
;
1952 DWORD CubeTextureFilterCaps
;
1953 DWORD VolumeTextureFilterCaps
;
1954 DWORD TextureAddressCaps
;
1955 DWORD VolumeTextureAddressCaps
;
1958 DWORD MaxTextureWidth
;
1959 DWORD MaxTextureHeight
;
1960 DWORD MaxVolumeExtent
;
1961 DWORD MaxTextureRepeat
;
1962 DWORD MaxTextureAspectRatio
;
1963 DWORD MaxAnisotropy
;
1966 float GuardBandLeft
;
1968 float GuardBandRight
;
1969 float GuardBandBottom
;
1971 float ExtentsAdjust
;
1975 DWORD TextureOpCaps
;
1976 DWORD MaxTextureBlendStages
;
1977 DWORD MaxSimultaneousTextures
;
1979 DWORD VertexProcessingCaps
;
1980 DWORD MaxActiveLights
;
1981 DWORD MaxUserClipPlanes
;
1982 DWORD MaxVertexBlendMatrices
;
1983 DWORD MaxVertexBlendMatrixIndex
;
1987 DWORD MaxPrimitiveCount
;
1988 DWORD MaxVertexIndex
;
1990 DWORD MaxStreamStride
;
1992 DWORD VertexShaderVersion
;
1993 DWORD MaxVertexShaderConst
;
1995 DWORD PixelShaderVersion
;
1996 float PixelShader1xMaxValue
;
2001 float MaxNpatchTessellationLevel
;
2002 DWORD Reserved5
; /* undocumented */
2004 UINT MasterAdapterOrdinal
;
2005 UINT AdapterOrdinalInGroup
;
2006 UINT NumberOfAdaptersInGroup
;
2008 DWORD NumSimultaneousRTs
;
2009 DWORD StretchRectFilterCaps
;
2010 WINED3DVSHADERCAPS2_0 VS20Caps
;
2011 WINED3DPSHADERCAPS2_0 PS20Caps
;
2012 DWORD VertexTextureFilterCaps
;
2013 DWORD MaxVShaderInstructionsExecuted
;
2014 DWORD MaxPShaderInstructionsExecuted
;
2015 DWORD MaxVertexShader30InstructionSlots
;
2016 DWORD MaxPixelShader30InstructionSlots
;
2017 DWORD Reserved2
; /* Not in the microsoft headers but documented */
2020 WINEDDCAPS DirectDrawCaps
;
2023 /* DirectDraw types */
2025 typedef struct _WINEDDCOLORKEY
2027 DWORD dwColorSpaceLowValue
; /* low boundary of color space that is to
2028 * be treated as Color Key, inclusive */
2029 DWORD dwColorSpaceHighValue
; /* high boundary of color space that is
2030 * to be treated as Color Key, inclusive */
2031 } WINEDDCOLORKEY
,*LPWINEDDCOLORKEY
;
2033 typedef struct _WINEDDBLTFX
2035 DWORD dwSize
; /* size of structure */
2036 DWORD dwDDFX
; /* FX operations */
2037 DWORD dwROP
; /* Win32 raster operations */
2038 DWORD dwDDROP
; /* Raster operations new for DirectDraw */
2039 DWORD dwRotationAngle
; /* Rotation angle for blt */
2040 DWORD dwZBufferOpCode
; /* ZBuffer compares */
2041 DWORD dwZBufferLow
; /* Low limit of Z buffer */
2042 DWORD dwZBufferHigh
; /* High limit of Z buffer */
2043 DWORD dwZBufferBaseDest
; /* Destination base value */
2044 DWORD dwZDestConstBitDepth
; /* Bit depth used to specify Z constant for destination */
2047 DWORD dwZDestConst
; /* Constant to use as Z buffer for dest */
2048 struct IWineD3DSurface
*lpDDSZBufferDest
; /* Surface to use as Z buffer for dest */
2050 DWORD dwZSrcConstBitDepth
; /* Bit depth used to specify Z constant for source */
2053 DWORD dwZSrcConst
; /* Constant to use as Z buffer for src */
2054 struct IWineD3DSurface
*lpDDSZBufferSrc
; /* Surface to use as Z buffer for src */
2056 DWORD dwAlphaEdgeBlendBitDepth
; /* Bit depth used to specify constant for alpha edge blend */
2057 DWORD dwAlphaEdgeBlend
; /* Alpha for edge blending */
2059 DWORD dwAlphaDestConstBitDepth
; /* Bit depth used to specify alpha constant for destination */
2062 DWORD dwAlphaDestConst
; /* Constant to use as Alpha Channel */
2063 struct IWineD3DSurface
*lpDDSAlphaDest
; /* Surface to use as Alpha Channel */
2065 DWORD dwAlphaSrcConstBitDepth
; /* Bit depth used to specify alpha constant for source */
2068 DWORD dwAlphaSrcConst
; /* Constant to use as Alpha Channel */
2069 struct IWineD3DSurface
*lpDDSAlphaSrc
; /* Surface to use as Alpha Channel */
2073 DWORD dwFillColor
; /* color in RGB or Palettized */
2074 DWORD dwFillDepth
; /* depth value for z-buffer */
2075 DWORD dwFillPixel
; /* pixel val for RGBA or RGBZ */
2076 struct IWineD3DSurface
*lpDDSPattern
; /* Surface to use as pattern */
2078 WINEDDCOLORKEY ddckDestColorkey
; /* DestColorkey override */
2079 WINEDDCOLORKEY ddckSrcColorkey
; /* SrcColorkey override */
2080 } WINEDDBLTFX
,*LPWINEDDBLTFX
;
2082 typedef struct _WINEDDOVERLAYFX
2084 DWORD dwSize
; /* size of structure */
2085 DWORD dwAlphaEdgeBlendBitDepth
; /* Bit depth used to specify constant for alpha edge blend */
2086 DWORD dwAlphaEdgeBlend
; /* Constant to use as alpha for edge blend */
2088 DWORD dwAlphaDestConstBitDepth
; /* Bit depth used to specify alpha constant for destination */
2091 DWORD dwAlphaDestConst
; /* Constant to use as alpha channel for dest */
2092 struct IWineD3DSurface
*lpDDSAlphaDest
; /* Surface to use as alpha channel for dest */
2094 DWORD dwAlphaSrcConstBitDepth
; /* Bit depth used to specify alpha constant for source */
2097 DWORD dwAlphaSrcConst
; /* Constant to use as alpha channel for src */
2098 struct IWineD3DSurface
*lpDDSAlphaSrc
; /* Surface to use as alpha channel for src */
2100 WINEDDCOLORKEY dckDestColorkey
; /* DestColorkey override */
2101 WINEDDCOLORKEY dckSrcColorkey
; /* SrcColorkey override */
2102 DWORD dwDDFX
; /* Overlay FX */
2103 DWORD dwFlags
; /* flags */
2106 interface IWineD3DResource
;
2107 interface IWineD3DSurface
;
2108 interface IWineD3DVolume
;
2109 interface IWineD3DSwapChain
;
2110 interface IWineD3DDevice
;
2115 uuid(aeb62dfc
-bdcb
-4f02
-9519-1eeea00c15cd
)
2117 interface IWineD3DDeviceParent
: IUnknown
2119 HRESULT CreateSurface
(
2120 [in] IUnknown
*superior
,
2123 [in] WINED3DFORMAT format
,
2125 [in] WINED3DPOOL pool
,
2127 [in] WINED3DCUBEMAP_FACES face
,
2128 [out] IWineD3DSurface
**surface
2131 HRESULT CreateRenderTarget
(
2132 [in] IUnknown
*superior
,
2135 [in] WINED3DFORMAT format
,
2136 [in] WINED3DMULTISAMPLE_TYPE multisample_type
,
2137 [in] DWORD multisample_quality
,
2139 [out] IWineD3DSurface
**surface
2142 HRESULT CreateDepthStencilSurface
(
2143 [in] IUnknown
*superior
,
2146 [in] WINED3DFORMAT format
,
2147 [in] WINED3DMULTISAMPLE_TYPE multisample_type
,
2148 [in] DWORD multisample_quality
,
2150 [out] IWineD3DSurface
**surface
2153 HRESULT CreateVolume
(
2154 [in] IUnknown
*superior
,
2158 [in] WINED3DFORMAT format
,
2159 [in] WINED3DPOOL pool
,
2161 [out] IWineD3DVolume
**volume
2164 HRESULT CreateSwapChain
(
2165 [in, out] WINED3DPRESENT_PARAMETERS
*present_parameters
,
2166 [out] IWineD3DSwapChain
**swapchain
2169 typedef ULONG
(*D3DCB_DESTROYSURFACEFN
)(IWineD3DSurface
*pSurface
);
2170 typedef ULONG
(*D3DCB_DESTROYVOLUMEFN
)(IWineD3DVolume
*pVolume
);
2171 typedef ULONG
(*D3DCB_DESTROYSWAPCHAINFN
)(IWineD3DSwapChain
*pSwapChain
);
2172 typedef HRESULT (*D3DCB_ENUMRESOURCES
)(IWineD3DResource
*resource
, void *pData
);
2177 uuid(46799311-8e0e
-40ce
-b2ec
-ddb99f18fcb4
)
2179 interface IWineD3DBase
: IUnknown
2182 [out] IUnknown
**parent
2189 uuid(108f9c44
-6f30
-11d9
-c687
-00046142c14f
)
2191 interface IWineD3D
: IWineD3DBase
2193 UINT GetAdapterCount
(
2195 HRESULT RegisterSoftwareDevice
(
2196 [in] void *pInitializeFunction
2198 HMONITOR GetAdapterMonitor
(
2199 [in] UINT adapter_idx
2201 UINT GetAdapterModeCount
(
2202 [in] UINT adapter_idx
,
2203 [in] WINED3DFORMAT format
2205 HRESULT EnumAdapterModes
(
2206 [in] UINT adapter_idx
,
2208 [in] WINED3DFORMAT format
,
2209 [out] WINED3DDISPLAYMODE
*mode
2211 HRESULT GetAdapterDisplayMode
(
2212 [in] UINT adapter_idx
,
2213 [out] WINED3DDISPLAYMODE
*mode
2215 HRESULT GetAdapterIdentifier
(
2216 [in] UINT adapter_idx
,
2218 [out] WINED3DADAPTER_IDENTIFIER
*identifier
2220 HRESULT CheckDeviceMultiSampleType
(
2221 [in] UINT adapter_idx
,
2222 [in] WINED3DDEVTYPE device_type
,
2223 [in] WINED3DFORMAT surface_format
,
2225 [in] WINED3DMULTISAMPLE_TYPE multisample_type
,
2226 [out] DWORD
*quality_levels
2228 HRESULT CheckDepthStencilMatch
(
2229 [in] UINT adapter_idx
,
2230 [in] WINED3DDEVTYPE device_type
,
2231 [in] WINED3DFORMAT adapter_format
,
2232 [in] WINED3DFORMAT render_target_format
,
2233 [in] WINED3DFORMAT depth_stencil_format
2235 HRESULT CheckDeviceType
(
2236 [in] UINT adapter_idx
,
2237 [in] WINED3DDEVTYPE device_type
,
2238 [in] WINED3DFORMAT display_format
,
2239 [in] WINED3DFORMAT backbuffer_format
,
2242 HRESULT CheckDeviceFormat
(
2243 [in] UINT adaper_idx
,
2244 [in] WINED3DDEVTYPE device_type
,
2245 [in] WINED3DFORMAT adapter_format
,
2247 [in] WINED3DRESOURCETYPE resource_type
,
2248 [in] WINED3DFORMAT check_format
,
2249 [in] WINED3DSURFTYPE surface_type
2251 HRESULT CheckDeviceFormatConversion
(
2252 [in] UINT adapter_idx
,
2253 [in] WINED3DDEVTYPE device_type
,
2254 [in] WINED3DFORMAT source_format
,
2255 [in] WINED3DFORMAT target_format
2257 HRESULT GetDeviceCaps
(
2258 [in] UINT adapter_idx
,
2259 [in] WINED3DDEVTYPE device_type
,
2260 [out] WINED3DCAPS
*caps
2262 HRESULT CreateDevice
(
2263 [in] UINT adapter_idx
,
2264 [in] WINED3DDEVTYPE device_type
,
2265 [in] HWND focus_window
,
2266 [in] DWORD behaviour_flags
,
2267 [in] IUnknown
*parent
,
2268 [in] IWineD3DDeviceParent
*device_parent
,
2269 [out] IWineD3DDevice
**device
2276 uuid(1f3bfb34
-6f30
-11d9
-c687
-00046142c14f
)
2278 interface IWineD3DResource
: IWineD3DBase
2281 [out] IWineD3DDevice
**device
2283 HRESULT SetPrivateData
(
2285 [in] const void *data
,
2286 [in] DWORD data_size
,
2289 HRESULT GetPrivateData
(
2292 [in, out] DWORD
*data_size
2294 HRESULT FreePrivateData
(
2298 [in] DWORD new_priority
2306 WINED3DRESOURCETYPE GetType
(
2313 uuid(217f671e
-6f30
-11d9
-c687
-00046142c14f
)
2315 interface IWineD3DVertexBuffer
: IWineD3DResource
2326 [out] WINED3DVERTEXBUFFER_DESC
*desc
2333 uuid(3a02a54e
-6f30
-11d9
-c687
-00046142c14f
)
2335 interface IWineD3DIndexBuffer
: IWineD3DResource
2346 [out] WINED3DINDEXBUFFER_DESC
*desc
2353 uuid(f756720c
-32b9
-4439-b5a3
-1d6c97037d9e
)
2355 interface IWineD3DPalette
: IWineD3DBase
2361 [out] PALETTEENTRY
*entries
2370 [in] const PALETTEENTRY
*entries
2377 uuid(8f2bceb1
-d338
-488c
-ab7f
-0ec980bf5d2d
)
2379 interface IWineD3DClipper
: IWineD3DBase
2381 HRESULT GetClipList
(
2382 [in] const RECT
*rect
,
2383 [out] RGNDATA
*clip_list
,
2384 [in, out] DWORD
*clip_list_size
2389 HRESULT IsClipListChanged
(
2392 HRESULT SetClipList
(
2393 [in] const RGNDATA
*clip_list
,
2405 uuid(37cd5526
-6f30
-11d9
-c687
-00046142c14f
)
2407 interface IWineD3DSurface
: IWineD3DResource
2409 HRESULT GetContainer
(
2411 [out] void **container
2414 [out] WINED3DSURFACE_DESC
*desc
2417 [out] WINED3DLOCKED_RECT
*locked_rect
,
2418 [in] const RECT
*rect
,
2430 [in] IWineD3DSurface
*override
,
2434 [in] const RECT
*dst_rect
,
2435 [in] IWineD3DSurface
*src_surface
,
2436 [in] const RECT
*src_rect
,
2438 [in] const WINEDDBLTFX
*blt_fx
,
2439 [in] WINED3DTEXTUREFILTERTYPE filter
2441 HRESULT GetBltStatus
(
2444 HRESULT GetFlipStatus
(
2454 [in] IWineD3DSurface
*src_surface
,
2455 [in] const RECT
*src_rect
,
2459 [out] IWineD3DPalette
**palette
2462 [in] IWineD3DPalette
*palette
2464 HRESULT RealizePalette
(
2466 HRESULT SetColorKey
(
2468 [in] const WINEDDCOLORKEY
*color_key
2475 HRESULT SetOverlayPosition
(
2479 HRESULT GetOverlayPosition
(
2483 HRESULT UpdateOverlayZOrder
(
2485 [in] IWineD3DSurface
*ref
2487 HRESULT UpdateOverlay
(
2488 [in] const RECT
*src_rect
,
2489 [in] IWineD3DSurface
*dst_surface
,
2490 [in] const RECT
*dst_rect
,
2492 [in] const WINEDDOVERLAYFX
*fx
2495 [in] IWineD3DClipper
*clipper
2498 [out] IWineD3DClipper
**clipper
2500 HRESULT LoadTexture
(
2506 HRESULT SaveSnapshot
(
2507 [in] const char *filename
2509 HRESULT SetContainer
(
2510 [in] IWineD3DBase
*container
2513 [out] glDescriptor
**desc
2515 const void *GetData
(
2518 [in] WINED3DFORMAT format
2520 HRESULT PrivateSetup
(
2522 void ModifyLocation
(
2523 [in] DWORD location
,
2524 [in] BOOL persistent
2526 HRESULT LoadLocation
(
2527 [in] DWORD location
,
2528 [in] const RECT
*rect
2530 WINED3DSURFTYPE GetImplType
(
2532 HRESULT DrawOverlay
(
2539 uuid(24769ed8
-6f30
-11d9
-c687
-00046142c14f
)
2541 interface IWineD3DVolume
: IWineD3DResource
2543 HRESULT GetContainer
(
2545 [out] void **container
2548 [out] WINED3DVOLUME_DESC
*desc
2551 [out] WINED3DLOCKED_BOX
*locked_box
,
2552 [in] const WINED3DBOX
*box
,
2557 HRESULT LoadTexture
(
2561 HRESULT SetContainer
(
2562 [in] IWineD3DBase
*container
2569 uuid(3c2aebf6
-6f30
-11d9
-c687
-00046142c14f
)
2571 interface IWineD3DBaseTexture
: IWineD3DResource
2578 DWORD GetLevelCount
(
2580 HRESULT SetAutoGenFilterType
(
2581 WINED3DTEXTUREFILTERTYPE filter_type
2583 WINED3DTEXTUREFILTERTYPE GetAutoGenFilterType
(
2585 void GenerateMipSubLevels
(
2592 HRESULT BindTexture
(
2595 UINT GetTextureDimensions
(
2599 void ApplyStateChanges
(
2600 const DWORD texture_states
[WINED3D_HIGHEST_TEXTURE_STATE
+ 1],
2601 const DWORD sampler_states
[WINED3D_HIGHEST_SAMPLER_STATE
+ 1]
2608 uuid(3e72cc1c
-6f30
-11d9
-c687
-00046142c14f
)
2610 interface IWineD3DTexture
: IWineD3DBaseTexture
2613 [in] D3DCB_DESTROYSURFACEFN destroy_surface_callback
2615 HRESULT GetLevelDesc
(
2617 [out] WINED3DSURFACE_DESC
*desc
2619 HRESULT GetSurfaceLevel
(
2621 [out] IWineD3DSurface
**surface
2625 [out] WINED3DLOCKED_RECT
*locked_rect
,
2626 [in] const RECT
*rect
,
2632 HRESULT AddDirtyRect
(
2633 [in] const RECT
*dirty_rect
2640 uuid(41752900-6f30
-11d9
-c687
-00046142c14f
)
2642 interface IWineD3DCubeTexture
: IWineD3DBaseTexture
2645 [in] D3DCB_DESTROYSURFACEFN destroy_surface_callback
2647 HRESULT GetLevelDesc
(
2649 [out] WINED3DSURFACE_DESC
*desc
2651 HRESULT GetCubeMapSurface
(
2652 [in] WINED3DCUBEMAP_FACES face
,
2654 [out] IWineD3DSurface
**surface
2657 [in] WINED3DCUBEMAP_FACES face
,
2659 [out] WINED3DLOCKED_RECT
*locked_rect
,
2660 [in] const RECT
*rect
,
2664 [in] WINED3DCUBEMAP_FACES face
,
2667 HRESULT AddDirtyRect
(
2668 [in] WINED3DCUBEMAP_FACES face
,
2669 [in] const RECT
*dirty_rect
2676 uuid(7b39470c
-6f30
-11d9
-c687
-00046142c14f
)
2678 interface IWineD3DVolumeTexture
: IWineD3DBaseTexture
2681 [in] D3DCB_DESTROYVOLUMEFN destroy_volume_callback
2683 HRESULT GetLevelDesc
(
2685 [out] WINED3DVOLUME_DESC
*desc
2687 HRESULT GetVolumeLevel
(
2689 [out] IWineD3DVolume
**volume
2693 [out] WINED3DLOCKED_BOX
*locked_box
,
2694 [in] const WINED3DBOX
*box
,
2700 HRESULT AddDirtyBox
(
2701 [in] const WINED3DBOX
*dirty_box
2708 uuid(7cd55be6
-6f30
-11d9
-c687
-00046142c14f
)
2710 interface IWineD3DVertexDeclaration
: IWineD3DBase
2713 [out] IWineD3DDevice
**device
2715 HRESULT GetDeclaration
(
2716 [out] WINED3DVERTEXELEMENT
*elements
,
2717 [out] UINT
*element_count
2719 HRESULT SetDeclaration
(
2720 [in] const WINED3DVERTEXELEMENT
*elements
,
2721 [in] UINT element_count
2728 uuid(83b073ce
-6f30
-11d9
-c687
-00046142c14f
)
2730 interface IWineD3DStateBlock
: IWineD3DBase
2733 [out] IWineD3DDevice
**device
2739 HRESULT InitStartupStateBlock
(
2746 uuid(905ddbac
-6f30
-11d9
-c687
-00046142c14f
)
2748 interface IWineD3DQuery
: IWineD3DBase
2751 [out] IWineD3DDevice
**device
2755 [in] DWORD data_size
,
2760 WINED3DQUERYTYPE GetType
(
2770 uuid(34d01b10
-6f30
-11d9
-c687
-00046142c14f
)
2772 interface IWineD3DSwapChain
: IWineD3DBase
2775 [in] D3DCB_DESTROYSURFACEFN destroy_surface_callback
2778 [out] IWineD3DDevice
**device
2781 [in] const RECT
*src_rect
,
2782 [in] const RECT
*dst_rect
,
2783 [in] HWND dst_window_override
,
2784 [in] const RGNDATA
*dirty_region
,
2787 HRESULT SetDestWindowOverride
(
2790 HRESULT GetFrontBufferData
(
2791 [in] IWineD3DSurface
*dst_surface
2793 HRESULT GetBackBuffer
(
2794 [in] UINT backbuffer_idx
,
2795 [in] WINED3DBACKBUFFER_TYPE backbuffer_type
,
2796 [out] IWineD3DSurface
**backbuffer
2798 HRESULT GetRasterStatus
(
2799 [out] WINED3DRASTER_STATUS
*raster_status
2801 HRESULT GetDisplayMode
(
2802 [out] WINED3DDISPLAYMODE
*mode
2804 HRESULT GetPresentParameters
(
2805 [out] WINED3DPRESENT_PARAMETERS
*present_parameters
2807 HRESULT SetGammaRamp
(
2809 [in] const WINED3DGAMMARAMP
*ramp
2811 HRESULT GetGammaRamp
(
2812 [out] WINED3DGAMMARAMP
*ramp
2819 uuid(eac93065
-a4df
-446f
-86a1
-9ef2bca40a3c
)
2821 interface IWineD3DBaseShader
: IWineD3DBase
2823 HRESULT SetFunction
(
2824 [in] const DWORD
*function
2831 uuid(7f7a2b60
-6f30
-11d9
-c687
-00046142c14f
)
2833 interface IWineD3DVertexShader
: IWineD3DBaseShader
2836 [out] IWineD3DDevice
**device
2838 HRESULT GetFunction
(
2840 [in, out] UINT
*data_size
2843 [in] IWineD3DVertexDeclaration
*vertex_declaration
2845 HRESULT SetLocalConstantsF
(
2846 [in] UINT start_idx
,
2847 [in] const float *src_data
,
2848 [in] UINT vector4f_count
2855 uuid(818503da
-6f30
-11d9
-c687
-00046142c14f
)
2857 interface IWineD3DPixelShader
: IWineD3DBaseShader
2860 [out] IWineD3DDevice
**device
2862 HRESULT GetFunction
(
2864 [in, out] UINT
*data_size
2871 uuid(6d10a2ce
-09d0
-4a53
-a427
-11388f9f8ca5
)
2873 interface IWineD3DDevice
: IWineD3DBase
2875 HRESULT CreateVertexBuffer
(
2879 [in] WINED3DPOOL pool
,
2880 [out] IWineD3DVertexBuffer
**vertex_buffer
,
2881 [in] HANDLE *shared_handle
,
2882 [in] IUnknown
*parent
2884 HRESULT CreateIndexBuffer
(
2887 [in] WINED3DFORMAT format
,
2888 [in] WINED3DPOOL pool
,
2889 [out] IWineD3DIndexBuffer
**index_buffer
,
2890 [in] HANDLE *shared_handle
,
2891 [in] IUnknown
*parent
2893 HRESULT CreateStateBlock
(
2894 [in] WINED3DSTATEBLOCKTYPE type
,
2895 [out] IWineD3DStateBlock
**stateblock
,
2896 [in] IUnknown
*parent
2898 HRESULT CreateSurface
(
2901 [in] WINED3DFORMAT format
,
2905 [out] IWineD3DSurface
**surface
,
2906 [in] WINED3DRESOURCETYPE resource_type
,
2908 [in] WINED3DPOOL pool
,
2909 [in] WINED3DMULTISAMPLE_TYPE multisample_type
,
2910 [in] DWORD multisample_quality
,
2911 [in] HANDLE *shared_handle
,
2912 [in] WINED3DSURFTYPE surface_type
,
2913 [in] IUnknown
*parent
2915 HRESULT CreateTexture
(
2920 [in] WINED3DFORMAT format
,
2921 [in] WINED3DPOOL pool
,
2922 [out] IWineD3DTexture
**texture
,
2923 [in] HANDLE *shared_handle
,
2924 [in] IUnknown
*parent
2926 HRESULT CreateVolumeTexture
(
2932 [in] WINED3DFORMAT format
,
2933 [in] WINED3DPOOL pool
,
2934 [out] IWineD3DVolumeTexture
**texture
,
2935 [in] HANDLE *shared_handle
,
2936 [in] IUnknown
*parent
2938 HRESULT CreateVolume
(
2943 [in] WINED3DFORMAT format
,
2944 [in] WINED3DPOOL pool
,
2945 [out] IWineD3DVolume
**volume
,
2946 [in] HANDLE *shared_handle
,
2947 [in] IUnknown
*parent
2949 HRESULT CreateCubeTexture
(
2950 [in] UINT edge_length
,
2953 [in] WINED3DFORMAT format
,
2954 [in] WINED3DPOOL pool
,
2955 [out] IWineD3DCubeTexture
**texture
,
2956 [in] HANDLE *shared_handle
,
2957 [in] IUnknown
*parent
2959 HRESULT CreateQuery
(
2960 [in] WINED3DQUERYTYPE type
,
2961 [out] IWineD3DQuery
**query
,
2962 [in] IUnknown
*parent
2964 HRESULT CreateSwapChain
(
2965 [in] WINED3DPRESENT_PARAMETERS
*present_parameters
,
2966 [out] IWineD3DSwapChain
**swapchain
,
2967 [in] IUnknown
*parent
,
2968 [in] WINED3DSURFTYPE surface_type
2970 HRESULT CreateVertexDeclaration
(
2971 [out] IWineD3DVertexDeclaration
**declaration
,
2972 [in] IUnknown
*parent
,
2973 [in] const WINED3DVERTEXELEMENT
*elements
,
2974 [in] UINT element_count
2976 HRESULT CreateVertexDeclarationFromFVF
(
2977 [out] IWineD3DVertexDeclaration
**declaration
,
2978 [in] IUnknown
*parent
,
2981 HRESULT CreateVertexShader
(
2982 [in] IWineD3DVertexDeclaration
*declaration
,
2983 [in] const DWORD
*function
,
2984 [out] IWineD3DVertexShader
**shader
,
2985 [in] IUnknown
*parent
2987 HRESULT CreatePixelShader
(
2988 [in] const DWORD
*function
,
2989 [out] IWineD3DPixelShader
**shader
,
2990 [in] IUnknown
*parent
2992 HRESULT CreatePalette
(
2994 [in] const PALETTEENTRY
*palette_entry
,
2995 [out] IWineD3DPalette
**palette
,
2996 [in] IUnknown
*parent
2999 [in] WINED3DPRESENT_PARAMETERS
*present_parameters
3002 [in] WINED3DPRESENT_PARAMETERS
*present_parameters
3005 [in] D3DCB_DESTROYSURFACEFN destroy_surface_callback
,
3006 [in] D3DCB_DESTROYSWAPCHAINFN destroy_swapchain_callback
3009 [in] D3DCB_DESTROYSWAPCHAINFN destroy_swapchain_callback
3011 void SetMultithreaded
(
3013 HRESULT EvictManagedResources
(
3015 UINT GetAvailableTextureMem
(
3017 HRESULT GetBackBuffer
(
3018 [in] UINT swapchain_idx
,
3019 [in] UINT backbuffer_idx
,
3020 [in] WINED3DBACKBUFFER_TYPE backbuffer_type
,
3021 [out] IWineD3DSurface
**backbuffer
3023 HRESULT GetCreationParameters
(
3024 [out] WINED3DDEVICE_CREATION_PARAMETERS
*creation_parameters
3026 HRESULT GetDeviceCaps
(
3027 [out] WINED3DCAPS
*caps
3029 HRESULT GetDirect3D
(
3030 [out] IWineD3D
** d3d
3032 HRESULT GetDisplayMode
(
3033 [in] UINT swapchain_idx
,
3034 [out] WINED3DDISPLAYMODE
*mode
3036 HRESULT SetDisplayMode
(
3037 [in] UINT swapchain_idx
,
3038 [in] const WINED3DDISPLAYMODE
*mode
3040 UINT GetNumberOfSwapChains
(
3042 HRESULT GetRasterStatus
(
3043 [in] UINT swapchain_idx
,
3044 [out] WINED3DRASTER_STATUS
*raster_status
3046 HRESULT GetSwapChain
(
3047 [in] UINT swapchain_idx
,
3048 [out] IWineD3DSwapChain
**swapchain
3051 [in] WINED3DPRESENT_PARAMETERS
*present_parameters
3053 HRESULT SetDialogBoxMode
(
3054 [in] BOOL enable_dialogs
3056 HRESULT SetCursorProperties
(
3057 [in] UINT x_hotspot
,
3058 [in] UINT y_hotspot
,
3059 [in] IWineD3DSurface
*cursor_surface
3061 void SetCursorPosition
(
3062 [in] int x_screen_space
,
3063 [in] int y_screen_space
,
3069 HRESULT TestCooperativeLevel
(
3071 HRESULT SetClipPlane
(
3072 [in] DWORD plane_idx
,
3073 [in] const float *plane
3075 HRESULT GetClipPlane
(
3076 [in] DWORD plane_idx
,
3079 HRESULT SetClipStatus
(
3080 [in] const WINED3DCLIPSTATUS
*clip_status
3082 HRESULT GetClipStatus
(
3083 [out] WINED3DCLIPSTATUS
*clip_status
3085 HRESULT SetCurrentTexturePalette
(
3086 [in] UINT palette_number
3088 HRESULT GetCurrentTexturePalette
(
3089 [out] UINT
*palette_number
3091 HRESULT SetDepthStencilSurface
(
3092 [in] IWineD3DSurface
*depth_stencil
3094 HRESULT GetDepthStencilSurface
(
3095 [out] IWineD3DSurface
**depth_stencil
3098 [in] UINT swapchain_idx
,
3100 [in] const WINED3DGAMMARAMP
*ramp
3103 [in] UINT swapchain_idx
,
3104 [out] WINED3DGAMMARAMP
*ramp
3107 [in] IWineD3DIndexBuffer
*index_buffer
3110 [out] IWineD3DIndexBuffer
**index_buffer
3112 HRESULT SetBaseVertexIndex
(
3115 HRESULT GetBaseVertexIndex
(
3116 [out] INT *base_index
3119 [in] DWORD light_idx
,
3120 [in] const WINED3DLIGHT
*light
3123 [in] DWORD light_idx
,
3124 [out] WINED3DLIGHT
*light
3126 HRESULT SetLightEnable
(
3127 [in] DWORD light_idx
,
3130 HRESULT GetLightEnable
(
3131 [in] DWORD light_idx
,
3134 HRESULT SetMaterial
(
3135 [in] const WINED3DMATERIAL
*material
3137 HRESULT GetMaterial
(
3138 [out] WINED3DMATERIAL
*material
3140 HRESULT SetNPatchMode
(
3143 float GetNPatchMode
(
3145 HRESULT SetPaletteEntries
(
3146 [in] UINT palette_number
,
3147 [in] const PALETTEENTRY
*entries
3149 HRESULT GetPaletteEntries
(
3150 [in] UINT palette_number
,
3151 [out] PALETTEENTRY
*entries
3153 HRESULT SetPixelShader
(
3154 [in] IWineD3DPixelShader
*shader
3156 HRESULT GetPixelShader
(
3157 [out] IWineD3DPixelShader
**shader
3159 HRESULT SetPixelShaderConstantB
(
3160 [in] UINT start_register
,
3161 [in] const BOOL
*constants
,
3162 [in] UINT bool_count
3164 HRESULT GetPixelShaderConstantB
(
3165 [in] UINT start_register
,
3166 [out] BOOL
*constants
,
3167 [in] UINT bool_count
3169 HRESULT SetPixelShaderConstantI
(
3170 [in] UINT start_register
,
3171 [in] const int *constants
,
3172 [in] UINT vector4i_count
3174 HRESULT GetPixelShaderConstantI
(
3175 [in] UINT start_register
,
3176 [out] int *constants
,
3177 [in] UINT vector4i_count
3179 HRESULT SetPixelShaderConstantF
(
3180 [in] UINT start_register
,
3181 [in] const float *constants
,
3182 [in] UINT vector4f_count
3184 HRESULT GetPixelShaderConstantF
(
3185 [in] UINT start_register
,
3186 [out] float *constants
,
3187 [in] UINT vector4f_count
3189 HRESULT SetRenderState
(
3190 [in] WINED3DRENDERSTATETYPE state
,
3193 HRESULT GetRenderState
(
3194 [in] WINED3DRENDERSTATETYPE state
,
3197 HRESULT SetRenderTarget
(
3198 [in] DWORD render_target_idx
,
3199 [in] IWineD3DSurface
*render_target
3201 HRESULT GetRenderTarget
(
3202 [in] DWORD render_target_idx
,
3203 [out] IWineD3DSurface
**render_target
3205 HRESULT SetFrontBackBuffers
(
3206 [in] IWineD3DSurface
*front
,
3207 [in] IWineD3DSurface
*back
3209 HRESULT SetSamplerState
(
3210 [in] DWORD sampler_idx
,
3211 [in] WINED3DSAMPLERSTATETYPE state
,
3214 HRESULT GetSamplerState
(
3215 [in] DWORD sampler_idx
,
3216 [in] WINED3DSAMPLERSTATETYPE state
,
3219 HRESULT SetScissorRect
(
3220 [in] const RECT
*rect
3222 HRESULT GetScissorRect
(
3225 HRESULT SetSoftwareVertexProcessing
(
3228 BOOL GetSoftwareVertexProcessing
(
3230 HRESULT SetStreamSource
(
3231 [in] UINT stream_idx
,
3232 [in] IWineD3DVertexBuffer
*vertex_buffer
,
3236 HRESULT GetStreamSource
(
3237 [in] UINT stream_idx
,
3238 [out] IWineD3DVertexBuffer
**vertex_buffer
,
3242 HRESULT SetStreamSourceFreq
(
3243 [in] UINT stream_idx
,
3246 HRESULT GetStreamSourceFreq
(
3247 [in] UINT stream_idx
,
3252 [in] IWineD3DBaseTexture
*texture
3256 [out] IWineD3DBaseTexture
**texture
3258 HRESULT SetTextureStageState
(
3260 [in] WINED3DTEXTURESTAGESTATETYPE state
,
3263 HRESULT GetTextureStageState
(
3265 [in] WINED3DTEXTURESTAGESTATETYPE state
,
3268 HRESULT SetTransform
(
3269 [in] WINED3DTRANSFORMSTATETYPE state
,
3270 [in] const WINED3DMATRIX
*matrix
3272 HRESULT GetTransform
(
3273 [in] WINED3DTRANSFORMSTATETYPE state
,
3274 [out] WINED3DMATRIX
*matrix
3276 HRESULT SetVertexDeclaration
(
3277 [in] IWineD3DVertexDeclaration
*declaration
3279 HRESULT GetVertexDeclaration
(
3280 [out] IWineD3DVertexDeclaration
**declaration
3282 HRESULT SetVertexShader
(
3283 [in] IWineD3DVertexShader
*shader
3285 HRESULT GetVertexShader
(
3286 [out] IWineD3DVertexShader
**shader
3288 HRESULT SetVertexShaderConstantB
(
3289 [in] UINT start_register
,
3290 [in] const BOOL
*constants
,
3291 [in] UINT bool_count
3293 HRESULT GetVertexShaderConstantB
(
3294 [in] UINT start_register
,
3295 [out] BOOL
*constants
,
3296 [in] UINT bool_count
3298 HRESULT SetVertexShaderConstantI
(
3299 [in] UINT start_register
,
3300 [in] const int *constants
,
3301 [in] UINT vector4i_count
3303 HRESULT GetVertexShaderConstantI
(
3304 [in] UINT start_register
,
3305 [out] int *constants
,
3306 [in] UINT vector4i_count
3308 HRESULT SetVertexShaderConstantF
(
3309 [in] UINT start_register
,
3310 [in] const float *constants
,
3311 [in] UINT vector4f_count
3313 HRESULT GetVertexShaderConstantF
(
3314 [in] UINT start_register
,
3315 [out] float *constants
,
3316 [in] UINT vector4f_count
3318 HRESULT SetViewport
(
3319 [in] const WINED3DVIEWPORT
*viewport
3321 HRESULT GetViewport
(
3322 [out] WINED3DVIEWPORT
*viewport
3324 HRESULT MultiplyTransform
(
3325 [in] WINED3DTRANSFORMSTATETYPE state
,
3326 [in] const WINED3DMATRIX
*matrix
3328 HRESULT ValidateDevice
(
3329 [out] DWORD
*num_passes
3331 HRESULT ProcessVertices
(
3332 [in] UINT src_start_idx
,
3334 [in] UINT vertex_count
,
3335 [in] IWineD3DVertexBuffer
*dest_buffer
,
3336 [in] IWineD3DVertexDeclaration
*declaration
,
3339 HRESULT BeginStateBlock
(
3341 HRESULT EndStateBlock
(
3342 [out] IWineD3DStateBlock
**stateblock
3349 [in] const RECT
*src_rect
,
3350 [in] const RECT
*dst_rect
,
3351 [in] HWND dst_window_override
,
3352 [in] const RGNDATA
*dirty_region
3355 [in] DWORD rect_count
,
3356 [in] const WINED3DRECT
*rects
,
3358 [in] WINED3DCOLOR color
,
3362 HRESULT DrawPrimitive
(
3363 [in] WINED3DPRIMITIVETYPE primitive_type
,
3364 [in] UINT start_vertex
,
3365 [in] UINT primitive_count
3367 HRESULT DrawIndexedPrimitive
(
3368 [in] WINED3DPRIMITIVETYPE primitive_type
,
3369 [in] UINT min_vertex_idx
,
3370 [in] UINT vertex_count
,
3371 [in] UINT start_idx
,
3372 [in] UINT primitive_count
3374 HRESULT DrawPrimitiveUP
(
3375 [in] WINED3DPRIMITIVETYPE primitive_type
,
3376 [in] UINT primitive_count
,
3377 [in] const void *stream_data
,
3378 [in] UINT stream_stride
3380 HRESULT DrawIndexedPrimitiveUP
(
3381 [in] WINED3DPRIMITIVETYPE primitive_type
,
3382 [in] UINT min_vertex_idx
,
3383 [in] UINT vertex_count
,
3384 [in] UINT primitive_count
,
3385 [in] const void *index_data
,
3386 [in] WINED3DFORMAT index_data_format
,
3387 [in] const void *stream_data
,
3388 [in] UINT stream_stride
3390 HRESULT DrawPrimitiveStrided
(
3391 [in] WINED3DPRIMITIVETYPE primitive_type
,
3392 [in] UINT primitive_count
,
3393 [in] const WineDirect3DVertexStridedData
*strided_data
3395 HRESULT DrawIndexedPrimitiveStrided
(
3396 [in] WINED3DPRIMITIVETYPE primitive_type
,
3397 [in] UINT primitive_count
,
3398 [in] const WineDirect3DVertexStridedData
*strided_data
,
3399 [in] UINT vertex_count
,
3400 [in] const void *index_data
,
3401 [in] WINED3DFORMAT index_data_format
3403 HRESULT DrawRectPatch
(
3405 [in] const float *num_segs
,
3406 [in] const WINED3DRECTPATCH_INFO
*rect_patch_info
3408 HRESULT DrawTriPatch
(
3410 [in] const float *num_segs
,
3411 [in] const WINED3DTRIPATCH_INFO
*tri_patch_info
3413 HRESULT DeletePatch
(
3417 [in] IWineD3DSurface
*surface
,
3418 [in] const WINED3DRECT
*rect
,
3419 [in] WINED3DCOLOR color
3421 HRESULT UpdateTexture
(
3422 [in] IWineD3DBaseTexture
*src_texture
,
3423 [in] IWineD3DBaseTexture
*dst_texture
3425 HRESULT UpdateSurface
(
3426 [in] IWineD3DSurface
*src_surface
,
3427 [in] const RECT
*src_rect
,
3428 [in] IWineD3DSurface
*dst_surface
,
3429 [in] const POINT
*dst_point
3431 HRESULT GetFrontBufferData
(
3432 [in] UINT swapchain_idx
,
3433 [in] IWineD3DSurface
*dst_surface
3435 void ResourceReleased
(
3436 [in] IWineD3DResource
*resource
3438 HRESULT EnumResources
(
3439 [in] D3DCB_ENUMRESOURCES
callback,
3444 IWineD3D
*WineDirect3DCreate
(UINT dxVersion
, IUnknown
*parent
);
3445 IWineD3DClipper
*WineDirect3DCreateClipper
(IUnknown
*parent
);