1 ##########################################################################
3 # Copyright 2008-2009 VMware, Inc.
6 # Permission is hereby granted, free of charge, to any person obtaining a copy
7 # of this software and associated documentation files (the "Software"), to deal
8 # in the Software without restriction, including without limitation the rights
9 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 # copies of the Software, and to permit persons to whom the Software is
11 # furnished to do so, subject to the following conditions:
13 # The above copyright notice and this permission notice shall be included in
14 # all copies or substantial portions of the Software.
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24 ##########################################################################/
32 LPD3DVALUE = Pointer(Float)
35 LPD3DVALIDATECALLBACK = LPVOID
36 LPD3DENUMTEXTUREFORMATSCALLBACK = LPVOID
37 LPD3DENUMPIXELFORMATSCALLBACK = LPVOID
40 LPD3DCOLOR = Pointer(D3DCOLOR)
42 D3DMATERIALHANDLE = DWORD
43 LPD3DMATERIALHANDLE = Pointer(D3DMATERIALHANDLE)
45 D3DTEXTUREHANDLE = DWORD
46 LPD3DTEXTUREHANDLE = Pointer(D3DTEXTUREHANDLE)
48 D3DMATRIXHANDLE = DWORD
49 LPD3DMATRIXHANDLE = Pointer(D3DMATRIXHANDLE)
51 D3DCOLORVALUE = Struct("D3DCOLORVALUE", [
57 LPD3DCOLORVALUE = Pointer(D3DCOLORVALUE)
59 D3DRECT = Struct("D3DRECT", [
65 LPD3DRECT = Pointer(D3DRECT)
67 D3DVECTOR = Struct("D3DVECTOR", [
72 LPD3DVECTOR = Pointer(D3DVECTOR)
74 D3DHVERTEX = Struct("D3DHVERTEX", [
80 LPD3DHVERTEX = Pointer(D3DHVERTEX)
82 D3DTLVERTEX = Struct("D3DTLVERTEX", [
88 (D3DCOLOR, "specular"),
92 LPD3DTLVERTEX = Pointer(D3DTLVERTEX)
94 D3DLVERTEX = Struct("D3DLVERTEX", [
98 (DWORD, "dwReserved"),
100 (D3DCOLOR, "specular"),
104 LPD3DLVERTEX = Pointer(D3DLVERTEX)
106 D3DVERTEX = Struct("D3DVERTEX", [
116 LPD3DVERTEX = Pointer(D3DVERTEX)
118 D3DMATRIX = Struct("D3DMATRIX", [
119 (D3DVALUE, "m[4][4]"),
121 LPD3DMATRIX = Pointer(D3DMATRIX)
123 D3DVIEWPORT = Struct("D3DVIEWPORT", [
129 (D3DVALUE, "dvScaleX"),
130 (D3DVALUE, "dvScaleY"),
131 (D3DVALUE, "dvMaxX"),
132 (D3DVALUE, "dvMaxY"),
133 (D3DVALUE, "dvMinZ"),
134 (D3DVALUE, "dvMaxZ"),
136 LPD3DVIEWPORT = Pointer(D3DVIEWPORT)
138 D3DVIEWPORT2 = Struct("D3DVIEWPORT2", [
144 (D3DVALUE, "dvClipX"),
145 (D3DVALUE, "dvClipY"),
146 (D3DVALUE, "dvClipWidth"),
147 (D3DVALUE, "dvClipHeight"),
148 (D3DVALUE, "dvMinZ"),
149 (D3DVALUE, "dvMaxZ"),
151 LPD3DVIEWPORT2 = Pointer(D3DVIEWPORT2)
153 D3DVIEWPORT7 = Struct("D3DVIEWPORT7", [
158 (D3DVALUE, "dvMinZ"),
159 (D3DVALUE, "dvMaxZ"),
161 LPD3DVIEWPORT7 = Pointer(D3DVIEWPORT7)
163 D3DCLIP = Flags(DWORD, [
178 D3DSTATUS = Flags(DWORD, [
180 "D3DSTATUS_CLIPUNIONALL",
181 "D3DSTATUS_CLIPUNIONLEFT",
182 "D3DSTATUS_CLIPUNIONRIGHT",
183 "D3DSTATUS_CLIPUNIONTOP",
184 "D3DSTATUS_CLIPUNIONBOTTOM",
185 "D3DSTATUS_CLIPUNIONFRONT",
186 "D3DSTATUS_CLIPUNIONBACK",
187 "D3DSTATUS_CLIPUNIONGEN0",
188 "D3DSTATUS_CLIPUNIONGEN1",
189 "D3DSTATUS_CLIPUNIONGEN2",
190 "D3DSTATUS_CLIPUNIONGEN3",
191 "D3DSTATUS_CLIPUNIONGEN4",
192 "D3DSTATUS_CLIPUNIONGEN5",
193 "D3DSTATUS_CLIPINTERSECTIONALL",
194 "D3DSTATUS_CLIPINTERSECTIONLEFT",
195 "D3DSTATUS_CLIPINTERSECTIONRIGHT",
196 "D3DSTATUS_CLIPINTERSECTIONTOP",
197 "D3DSTATUS_CLIPINTERSECTIONBOTTOM",
198 "D3DSTATUS_CLIPINTERSECTIONFRONT",
199 "D3DSTATUS_CLIPINTERSECTIONBACK",
200 "D3DSTATUS_CLIPINTERSECTIONGEN0",
201 "D3DSTATUS_CLIPINTERSECTIONGEN1",
202 "D3DSTATUS_CLIPINTERSECTIONGEN2",
203 "D3DSTATUS_CLIPINTERSECTIONGEN3",
204 "D3DSTATUS_CLIPINTERSECTIONGEN4",
205 "D3DSTATUS_CLIPINTERSECTIONGEN5",
206 "D3DSTATUS_ZNOTVISIBLE",
209 D3DTRANSFORM = Flags(DWORD, [
210 "D3DTRANSFORM_CLIPPED",
211 "D3DTRANSFORM_UNCLIPPED",
214 D3DTRANSFORMDATA = Struct("D3DTRANSFORMDATA", [
219 (DWORD, "dwOutSize"),
220 (LPD3DHVERTEX, "lpHOut"),
222 (DWORD, "dwClipIntersection"),
223 (DWORD, "dwClipUnion"),
224 (D3DRECT, "drExtent"),
226 LPD3DTRANSFORMDATA = Pointer(D3DTRANSFORMDATA)
228 D3DLIGHTINGELEMENT = Struct("D3DLIGHTINGELEMENT", [
229 (D3DVECTOR, "dvPosition"),
230 (D3DVECTOR, "dvNormal"),
232 LPD3DLIGHTINGELEMENT = Pointer(D3DLIGHTINGELEMENT)
234 D3DMATERIAL = Struct("D3DMATERIAL", [
236 (D3DCOLORVALUE, "diffuse"),
237 (D3DCOLORVALUE, "ambient"),
238 (D3DCOLORVALUE, "specular"),
239 (D3DCOLORVALUE, "emissive"),
241 (D3DTEXTUREHANDLE, "hTexture"),
242 (DWORD, "dwRampSize"),
244 LPD3DMATERIAL = Pointer(D3DMATERIAL)
246 D3DMATERIAL7 = Struct("D3DMATERIAL7", [
247 (D3DCOLORVALUE, "diffuse"),
248 (D3DCOLORVALUE, "ambient"),
249 (D3DCOLORVALUE, "specular"),
250 (D3DCOLORVALUE, "emissive"),
253 LPD3DMATERIAL7 = Pointer(D3DMATERIAL7)
255 D3DLIGHTTYPE = Enum("D3DLIGHTTYPE", [
258 "D3DLIGHT_DIRECTIONAL",
259 "D3DLIGHT_PARALLELPOINT",
261 "D3DLIGHT_FORCE_DWORD",
264 D3DLIGHT = Struct("D3DLIGHT", [
266 (D3DLIGHTTYPE, "dltType"),
267 (D3DCOLORVALUE, "dcvColor"),
268 (D3DVECTOR, "dvPosition"),
269 (D3DVECTOR, "dvDirection"),
270 (D3DVALUE, "dvRange"),
271 (D3DVALUE, "dvFalloff"),
272 (D3DVALUE, "dvAttenuation0"),
273 (D3DVALUE, "dvAttenuation1"),
274 (D3DVALUE, "dvAttenuation2"),
275 (D3DVALUE, "dvTheta"),
278 LPD3DLIGHT = Pointer(D3DLIGHT)
280 D3DLIGHT7 = Struct("D3DLIGHT7", [
281 (D3DLIGHTTYPE, "dltType"),
282 (D3DCOLORVALUE, "dcvDiffuse"),
283 (D3DCOLORVALUE, "dcvSpecular"),
284 (D3DCOLORVALUE, "dcvAmbient"),
285 (D3DVECTOR, "dvPosition"),
286 (D3DVECTOR, "dvDirection"),
287 (D3DVALUE, "dvRange"),
288 (D3DVALUE, "dvFalloff"),
289 (D3DVALUE, "dvAttenuation0"),
290 (D3DVALUE, "dvAttenuation1"),
291 (D3DVALUE, "dvAttenuation2"),
292 (D3DVALUE, "dvTheta"),
295 LPD3DLIGHT7 = Pointer(D3DLIGHT7)
297 D3DLIGHTFLAGS = Flags(DWORD, [
299 "D3DLIGHT_NO_SPECULAR",
303 D3DLIGHT2 = Struct("D3DLIGHT2", [
305 (D3DLIGHTTYPE, "dltType"),
306 (D3DCOLORVALUE, "dcvColor"),
307 (D3DVECTOR, "dvPosition"),
308 (D3DVECTOR, "dvDirection"),
309 (D3DVALUE, "dvRange"),
310 (D3DVALUE, "dvFalloff"),
311 (D3DVALUE, "dvAttenuation0"),
312 (D3DVALUE, "dvAttenuation1"),
313 (D3DVALUE, "dvAttenuation2"),
314 (D3DVALUE, "dvTheta"),
318 LPD3DLIGHT2 = Pointer(D3DLIGHT2)
320 D3DLIGHTDATA = Struct("D3DLIGHTDATA", [
322 (LPD3DLIGHTINGELEMENT, "lpIn"),
324 (LPD3DTLVERTEX, "lpOut"),
325 (DWORD, "dwOutSize"),
327 LPD3DLIGHTDATA = Pointer(D3DLIGHTDATA)
329 D3DCOLOR = Flags(DWORD, [
334 D3DCOLORMODEL = DWORD
336 D3DCLEAR = Flags(DWORD, [
342 D3DOPCODE = Enum("D3DOPCODE", [
347 "D3DOP_MATRIXMULTIPLY",
348 "D3DOP_STATETRANSFORM",
351 "D3DOP_PROCESSVERTICES",
354 "D3DOP_BRANCHFORWARD",
360 D3DINSTRUCTION = Struct("D3DINSTRUCTION", [
366 D3DTEXTURELOAD = Struct("D3DTEXTURELOAD", [
367 (D3DTEXTUREHANDLE, "hDestTexture"),
368 (D3DTEXTUREHANDLE, "hSrcTexture"),
371 D3DPICKRECORD = Struct("D3DPICKRECORD", [
377 LPD3DPICKRECORD = Pointer(D3DPICKRECORD)
379 D3DSHADEMODE = Enum("D3DSHADEMODE", [
383 "D3DSHADE_FORCE_DWORD",
386 D3DFILLMODE = Enum("D3DFILLMODE", [
390 "D3DFILL_FORCE_DWORD",
393 D3DLINEPATTERN = Struct("D3DLINEPATTERN", [
394 (WORD, "wRepeatFactor"),
395 (WORD, "wLinePattern"),
398 D3DTEXTUREFILTER = Enum("D3DTEXTUREFILTER", [
401 "D3DFILTER_MIPNEAREST",
402 "D3DFILTER_MIPLINEAR",
403 "D3DFILTER_LINEARMIPNEAREST",
404 "D3DFILTER_LINEARMIPLINEAR",
405 "D3DFILTER_FORCE_DWORD",
408 D3DBLEND = Enum("D3DBLEND", [
412 "D3DBLEND_INVSRCCOLOR",
414 "D3DBLEND_INVSRCALPHA",
415 "D3DBLEND_DESTALPHA",
416 "D3DBLEND_INVDESTALPHA",
417 "D3DBLEND_DESTCOLOR",
418 "D3DBLEND_INVDESTCOLOR",
419 "D3DBLEND_SRCALPHASAT",
420 "D3DBLEND_BOTHSRCALPHA",
421 "D3DBLEND_BOTHINVSRCALPHA",
422 "D3DBLEND_FORCE_DWORD",
425 D3DTEXTUREBLEND = Enum("D3DTEXTUREBLEND", [
427 "D3DTBLEND_MODULATE",
428 "D3DTBLEND_DECALALPHA",
429 "D3DTBLEND_MODULATEALPHA",
430 "D3DTBLEND_DECALMASK",
431 "D3DTBLEND_MODULATEMASK",
434 "D3DTBLEND_FORCE_DWORD",
437 D3DTEXTUREADDRESS = Enum("D3DTEXTUREADDRESS", [
439 "D3DTADDRESS_MIRROR",
441 "D3DTADDRESS_BORDER",
442 "D3DTADDRESS_FORCE_DWORD",
445 D3DCULL = Enum("D3DCULL", [
449 "D3DCULL_FORCE_DWORD",
452 D3DCMPFUNC = Enum("D3DCMPFUNC", [
459 "D3DCMP_GREATEREQUAL",
461 "D3DCMP_FORCE_DWORD",
464 D3DSTENCILOP = Enum("D3DSTENCILOP", [
467 "D3DSTENCILOP_REPLACE",
468 "D3DSTENCILOP_INCRSAT",
469 "D3DSTENCILOP_DECRSAT",
470 "D3DSTENCILOP_INVERT",
473 "D3DSTENCILOP_FORCE_DWORD",
476 D3DFOGMODE = Enum("D3DFOGMODE", [
481 "D3DFOG_FORCE_DWORD",
484 D3DZBUFFERTYPE = Enum("D3DZBUFFERTYPE", [
491 D3DANTIALIASMODE = Enum("D3DANTIALIASMODE", [
493 "D3DANTIALIAS_SORTDEPENDENT",
494 "D3DANTIALIAS_SORTINDEPENDENT",
495 "D3DANTIALIAS_FORCE_DWORD",
498 D3DVERTEXTYPE = Enum("D3DVERTEXTYPE", [
505 D3DPRIMITIVETYPE = Enum("D3DPRIMITIVETYPE", [
509 "D3DPT_TRIANGLELIST",
510 "D3DPT_TRIANGLESTRIP",
515 D3DTRANSFORMSTATETYPE = Enum("D3DTRANSFORMSTATETYPE", [
516 "D3DTRANSFORMSTATE_WORLD",
517 "D3DTRANSFORMSTATE_VIEW",
518 "D3DTRANSFORMSTATE_PROJECTION",
519 "D3DTRANSFORMSTATE_WORLD1",
520 "D3DTRANSFORMSTATE_WORLD2",
521 "D3DTRANSFORMSTATE_WORLD3",
522 "D3DTRANSFORMSTATE_TEXTURE0",
523 "D3DTRANSFORMSTATE_TEXTURE1",
524 "D3DTRANSFORMSTATE_TEXTURE2",
525 "D3DTRANSFORMSTATE_TEXTURE3",
526 "D3DTRANSFORMSTATE_TEXTURE4",
527 "D3DTRANSFORMSTATE_TEXTURE5",
528 "D3DTRANSFORMSTATE_TEXTURE6",
529 "D3DTRANSFORMSTATE_TEXTURE7",
530 "D3DTRANSFORMSTATE_FORCE_DWORD",
533 D3DLIGHTSTATETYPE = Enum("D3DLIGHTSTATETYPE", [
534 "D3DLIGHTSTATE_MATERIAL",
535 "D3DLIGHTSTATE_AMBIENT",
536 "D3DLIGHTSTATE_COLORMODEL",
537 "D3DLIGHTSTATE_FOGMODE",
538 "D3DLIGHTSTATE_FOGSTART",
539 "D3DLIGHTSTATE_FOGEND",
540 "D3DLIGHTSTATE_FOGDENSITY",
541 "D3DLIGHTSTATE_COLORVERTEX",
542 "D3DLIGHTSTATE_FORCE_DWORD",
545 D3DRENDERSTATETYPE = Enum("D3DRENDERSTATETYPE", [
546 "D3DRENDERSTATE_ANTIALIAS",
547 "D3DRENDERSTATE_TEXTUREPERSPECTIVE",
548 "D3DRENDERSTATE_ZENABLE",
549 "D3DRENDERSTATE_FILLMODE",
550 "D3DRENDERSTATE_SHADEMODE",
551 "D3DRENDERSTATE_LINEPATTERN",
552 "D3DRENDERSTATE_ZWRITEENABLE",
553 "D3DRENDERSTATE_ALPHATESTENABLE",
554 "D3DRENDERSTATE_LASTPIXEL",
555 "D3DRENDERSTATE_SRCBLEND",
556 "D3DRENDERSTATE_DESTBLEND",
557 "D3DRENDERSTATE_CULLMODE",
558 "D3DRENDERSTATE_ZFUNC",
559 "D3DRENDERSTATE_ALPHAREF",
560 "D3DRENDERSTATE_ALPHAFUNC",
561 "D3DRENDERSTATE_DITHERENABLE",
562 "D3DRENDERSTATE_ALPHABLENDENABLE",
563 "D3DRENDERSTATE_FOGENABLE",
564 "D3DRENDERSTATE_SPECULARENABLE",
565 "D3DRENDERSTATE_ZVISIBLE",
566 "D3DRENDERSTATE_STIPPLEDALPHA",
567 "D3DRENDERSTATE_FOGCOLOR",
568 "D3DRENDERSTATE_FOGTABLEMODE",
569 "D3DRENDERSTATE_FOGSTART",
570 "D3DRENDERSTATE_FOGEND",
571 "D3DRENDERSTATE_FOGDENSITY",
572 "D3DRENDERSTATE_EDGEANTIALIAS",
573 "D3DRENDERSTATE_COLORKEYENABLE",
574 "D3DRENDERSTATE_ZBIAS",
575 "D3DRENDERSTATE_RANGEFOGENABLE",
576 "D3DRENDERSTATE_STENCILENABLE",
577 "D3DRENDERSTATE_STENCILFAIL",
578 "D3DRENDERSTATE_STENCILZFAIL",
579 "D3DRENDERSTATE_STENCILPASS",
580 "D3DRENDERSTATE_STENCILFUNC",
581 "D3DRENDERSTATE_STENCILREF",
582 "D3DRENDERSTATE_STENCILMASK",
583 "D3DRENDERSTATE_STENCILWRITEMASK",
584 "D3DRENDERSTATE_TEXTUREFACTOR",
585 "D3DRENDERSTATE_WRAP0",
586 "D3DRENDERSTATE_WRAP1",
587 "D3DRENDERSTATE_WRAP2",
588 "D3DRENDERSTATE_WRAP3",
589 "D3DRENDERSTATE_WRAP4",
590 "D3DRENDERSTATE_WRAP5",
591 "D3DRENDERSTATE_WRAP6",
592 "D3DRENDERSTATE_WRAP7",
593 "D3DRENDERSTATE_CLIPPING",
594 "D3DRENDERSTATE_LIGHTING",
595 "D3DRENDERSTATE_EXTENTS",
596 "D3DRENDERSTATE_AMBIENT",
597 "D3DRENDERSTATE_FOGVERTEXMODE",
598 "D3DRENDERSTATE_COLORVERTEX",
599 "D3DRENDERSTATE_LOCALVIEWER",
600 "D3DRENDERSTATE_NORMALIZENORMALS",
601 "D3DRENDERSTATE_COLORKEYBLENDENABLE",
602 "D3DRENDERSTATE_DIFFUSEMATERIALSOURCE",
603 "D3DRENDERSTATE_SPECULARMATERIALSOURCE",
604 "D3DRENDERSTATE_AMBIENTMATERIALSOURCE",
605 "D3DRENDERSTATE_EMISSIVEMATERIALSOURCE",
606 "D3DRENDERSTATE_VERTEXBLEND",
607 "D3DRENDERSTATE_CLIPPLANEENABLE",
608 "D3DRENDERSTATE_TEXTUREHANDLE",
609 "D3DRENDERSTATE_TEXTUREADDRESS",
610 "D3DRENDERSTATE_WRAPU",
611 "D3DRENDERSTATE_WRAPV",
612 "D3DRENDERSTATE_MONOENABLE",
613 "D3DRENDERSTATE_ROP2",
614 "D3DRENDERSTATE_PLANEMASK",
615 "D3DRENDERSTATE_TEXTUREMAG",
616 "D3DRENDERSTATE_TEXTUREMIN",
617 "D3DRENDERSTATE_TEXTUREMAPBLEND",
618 "D3DRENDERSTATE_SUBPIXEL",
619 "D3DRENDERSTATE_SUBPIXELX",
620 "D3DRENDERSTATE_STIPPLEENABLE",
621 "D3DRENDERSTATE_BORDERCOLOR",
622 "D3DRENDERSTATE_TEXTUREADDRESSU",
623 "D3DRENDERSTATE_TEXTUREADDRESSV",
624 "D3DRENDERSTATE_MIPMAPLODBIAS",
625 "D3DRENDERSTATE_ANISOTROPY",
626 "D3DRENDERSTATE_FLUSHBATCH",
627 "D3DRENDERSTATE_TRANSLUCENTSORTINDEPENDENT",
628 "D3DRENDERSTATE_STIPPLEPATTERN00",
629 "D3DRENDERSTATE_STIPPLEPATTERN01",
630 "D3DRENDERSTATE_STIPPLEPATTERN02",
631 "D3DRENDERSTATE_STIPPLEPATTERN03",
632 "D3DRENDERSTATE_STIPPLEPATTERN04",
633 "D3DRENDERSTATE_STIPPLEPATTERN05",
634 "D3DRENDERSTATE_STIPPLEPATTERN06",
635 "D3DRENDERSTATE_STIPPLEPATTERN07",
636 "D3DRENDERSTATE_STIPPLEPATTERN08",
637 "D3DRENDERSTATE_STIPPLEPATTERN09",
638 "D3DRENDERSTATE_STIPPLEPATTERN10",
639 "D3DRENDERSTATE_STIPPLEPATTERN11",
640 "D3DRENDERSTATE_STIPPLEPATTERN12",
641 "D3DRENDERSTATE_STIPPLEPATTERN13",
642 "D3DRENDERSTATE_STIPPLEPATTERN14",
643 "D3DRENDERSTATE_STIPPLEPATTERN15",
644 "D3DRENDERSTATE_STIPPLEPATTERN16",
645 "D3DRENDERSTATE_STIPPLEPATTERN17",
646 "D3DRENDERSTATE_STIPPLEPATTERN18",
647 "D3DRENDERSTATE_STIPPLEPATTERN19",
648 "D3DRENDERSTATE_STIPPLEPATTERN20",
649 "D3DRENDERSTATE_STIPPLEPATTERN21",
650 "D3DRENDERSTATE_STIPPLEPATTERN22",
651 "D3DRENDERSTATE_STIPPLEPATTERN23",
652 "D3DRENDERSTATE_STIPPLEPATTERN24",
653 "D3DRENDERSTATE_STIPPLEPATTERN25",
654 "D3DRENDERSTATE_STIPPLEPATTERN26",
655 "D3DRENDERSTATE_STIPPLEPATTERN27",
656 "D3DRENDERSTATE_STIPPLEPATTERN28",
657 "D3DRENDERSTATE_STIPPLEPATTERN29",
658 "D3DRENDERSTATE_STIPPLEPATTERN30",
659 "D3DRENDERSTATE_STIPPLEPATTERN31",
660 "D3DRENDERSTATE_FOGTABLESTART",
661 "D3DRENDERSTATE_FOGTABLEEND",
662 "D3DRENDERSTATE_FOGTABLEDENSITY",
665 D3DMATERIALCOLORSOURCE = Enum("D3DMATERIALCOLORSOURCE", [
671 D3DWRAP = Flags(DWORD, [
680 D3DSTATE = Struct("D3DSTATE", [
681 (D3DTRANSFORMSTATETYPE, "dtstTransformStateType"),
682 (D3DLIGHTSTATETYPE, "dlstLightStateType"),
683 (D3DRENDERSTATETYPE, "drstRenderStateType"),
685 (D3DVALUE, "dvArg[1]"),
688 D3DMATRIXLOAD = Struct("D3DMATRIXLOAD", [
689 (D3DMATRIXHANDLE, "hDestMatrix"),
690 (D3DMATRIXHANDLE, "hSrcMatrix"),
693 D3DMATRIXMULTIPLY = Struct("D3DMATRIXMULTIPLY", [
694 (D3DMATRIXHANDLE, "hDestMatrix"),
695 (D3DMATRIXHANDLE, "hSrcMatrix1"),
696 (D3DMATRIXHANDLE, "hSrcMatrix2"),
699 D3DPROCESSVERTICES = Struct("D3DPROCESSVERTICES", [
704 (DWORD, "dwReserved"),
707 D3DPROCESSVERTICES = Flags(DWORD, [
708 "D3DPROCESSVERTICES_TRANSFORMLIGHT",
709 "D3DPROCESSVERTICES_TRANSFORM",
710 "D3DPROCESSVERTICES_COPY",
711 "D3DPROCESSVERTICES_OPMASK",
712 "D3DPROCESSVERTICES_UPDATEEXTENTS",
713 "D3DPROCESSVERTICES_NOCOLOR",
716 D3DTEXTURESTAGESTATETYPE = Enum("D3DTEXTURESTAGESTATETYPE", [
723 "D3DTSS_BUMPENVMAT00",
724 "D3DTSS_BUMPENVMAT01",
725 "D3DTSS_BUMPENVMAT10",
726 "D3DTSS_BUMPENVMAT11",
727 "D3DTSS_TEXCOORDINDEX",
731 "D3DTSS_BORDERCOLOR",
735 "D3DTSS_MIPMAPLODBIAS",
736 "D3DTSS_MAXMIPLEVEL",
737 "D3DTSS_MAXANISOTROPY",
738 "D3DTSS_BUMPENVLSCALE",
739 "D3DTSS_BUMPENVLOFFSET",
740 "D3DTSS_TEXTURETRANSFORMFLAGS",
741 "D3DTSS_FORCE_DWORD",
744 D3DTSS_TCI = Flags(DWORD, [
745 "D3DTSS_TCI_PASSTHRU",
746 "D3DTSS_TCI_CAMERASPACENORMAL",
747 "D3DTSS_TCI_CAMERASPACEPOSITION",
748 "D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR",
751 D3DTEXTUREOP = Enum("D3DTEXTUREOP", [
760 "D3DTOP_ADDSIGNED2X",
763 "D3DTOP_BLENDDIFFUSEALPHA",
764 "D3DTOP_BLENDTEXTUREALPHA",
765 "D3DTOP_BLENDFACTORALPHA",
766 "D3DTOP_BLENDTEXTUREALPHAPM",
767 "D3DTOP_BLENDCURRENTALPHA",
768 "D3DTOP_PREMODULATE",
769 "D3DTOP_MODULATEALPHA_ADDCOLOR",
770 "D3DTOP_MODULATECOLOR_ADDALPHA",
771 "D3DTOP_MODULATEINVALPHA_ADDCOLOR",
772 "D3DTOP_MODULATEINVCOLOR_ADDALPHA",
774 "D3DTOP_BUMPENVMAPLUMINANCE",
775 "D3DTOP_DOTPRODUCT3",
778 D3DTA = Flags(DWORD, [
786 "D3DTA_ALPHAREPLICATE",
789 D3DTEXTUREMAGFILTER = Enum("D3DTEXTUREMAGFILTER", [
793 "D3DTFG_GAUSSIANCUBIC",
794 "D3DTFG_ANISOTROPIC",
795 "D3DTFG_FORCE_DWORD",
798 D3DTEXTUREMINFILTER = Enum("D3DTEXTUREMINFILTER", [
801 "D3DTFN_ANISOTROPIC",
802 "D3DTFN_FORCE_DWORD",
805 D3DTEXTUREMIPFILTER = Enum("D3DTEXTUREMIPFILTER", [
809 "D3DTFP_FORCE_DWORD",
812 D3DTRIFLAG = Flags(DWORD, [
814 "D3DTRIFLAG_STARTFLAT(len)",
817 "D3DTRIFLAG_EDGEENABLETRIANGLE",
818 "D3DTRIFLAG_EDGEENABLE1",
819 "D3DTRIFLAG_EDGEENABLE2",
820 "D3DTRIFLAG_EDGEENABLE3",
823 D3DTRIANGLE = Struct("D3DTRIANGLE", [
830 D3DLINE = Struct("D3DLINE", [
835 D3DSPAN = Struct("D3DSPAN", [
840 D3DPOINT = Struct("D3DPOINT", [
845 D3DBRANCH = Struct("D3DBRANCH", [
852 D3DSTATUS = Struct("D3DSTATUS", [
855 (D3DRECT, "drExtent"),
858 D3DSETSTATUS = Flags(DWORD, [
859 "D3DSETSTATUS_STATUS",
860 "D3DSETSTATUS_EXTENTS",
864 D3DCLIPSTATUS = Struct("D3DCLIPSTATUS", [
874 LPD3DCLIPSTATUS = Pointer(D3DCLIPSTATUS)
876 D3DCLIPSTATUS = Flags(DWORD, [
877 "D3DCLIPSTATUS_STATUS",
878 "D3DCLIPSTATUS_EXTENTS2",
879 "D3DCLIPSTATUS_EXTENTS3",
882 D3DSTATS = Struct("D3DSTATS", [
884 (DWORD, "dwTrianglesDrawn"),
885 (DWORD, "dwLinesDrawn"),
886 (DWORD, "dwPointsDrawn"),
887 (DWORD, "dwSpansDrawn"),
888 (DWORD, "dwVerticesProcessed"),
890 LPD3DSTATS = Pointer(D3DSTATS)
892 D3DEXECUTE = Flags(DWORD, [
893 "D3DEXECUTE_CLIPPED",
894 "D3DEXECUTE_UNCLIPPED",
897 D3DEXECUTEDATA = Struct("D3DEXECUTEDATA", [
899 (DWORD, "dwVertexOffset"),
900 (DWORD, "dwVertexCount"),
901 (DWORD, "dwInstructionOffset"),
902 (DWORD, "dwInstructionLength"),
903 (DWORD, "dwHVertexOffset"),
904 (D3DSTATUS, "dsStatus"),
906 LPD3DEXECUTEDATA = Pointer(D3DEXECUTEDATA)
908 D3DPAL = Flags(DWORD, [
914 D3DVERTEXBUFFERDESC = Struct("D3DVERTEXBUFFERDESC", [
918 (DWORD, "dwNumVertices"),
920 LPD3DVERTEXBUFFERDESC = Pointer(D3DVERTEXBUFFERDESC)
922 D3DVBCAPS = Flags(DWORD, [
923 "D3DVBCAPS_SYSTEMMEMORY",
924 "D3DVBCAPS_WRITEONLY",
925 "D3DVBCAPS_OPTIMIZED",
926 "D3DVBCAPS_DONOTCLIP",
929 D3DVOP = Flags(DWORD, [
936 D3DPV = Flags(DWORD, [
937 "D3DPV_DONOTCOPYDATA",
940 D3DFVF = Flags(DWORD, [
942 "D3DFVF_POSITION_MASK",
954 "D3DFVF_TEXCOUNT_MASK",
955 "D3DFVF_TEXCOUNT_SHIFT",
970 "D3DFVF_TEXCOORDSIZE1(0)",
971 "D3DFVF_TEXCOORDSIZE1(1)",
972 "D3DFVF_TEXCOORDSIZE2(0)",
973 "D3DFVF_TEXCOORDSIZE2(1)",
974 "D3DFVF_TEXCOORDSIZE3(0)",
975 "D3DFVF_TEXCOORDSIZE3(1)",
976 "D3DFVF_TEXCOORDSIZE4(0)",
977 "D3DFVF_TEXCOORDSIZE4(1)",
980 D3DDP_PTRSTRIDE = Struct("D3DDP_PTRSTRIDE", [
985 D3DDRAWPRIMITIVESTRIDEDDATA = Struct("D3DDRAWPRIMITIVESTRIDEDDATA", [
986 (D3DDP_PTRSTRIDE, "position"),
987 (D3DDP_PTRSTRIDE, "normal"),
988 (D3DDP_PTRSTRIDE, "diffuse"),
989 (D3DDP_PTRSTRIDE, "specular"),
990 (D3DDP_PTRSTRIDE, "textureCoords[D3DDP_MAXTEXCOORD]"),
992 LPD3DDRAWPRIMITIVESTRIDEDDATA = Pointer(D3DDRAWPRIMITIVESTRIDEDDATA)
994 D3DVIS = Flags(DWORD, [
995 "D3DVIS_INSIDE_FRUSTUM",
996 "D3DVIS_INTERSECT_FRUSTUM",
997 "D3DVIS_OUTSIDE_FRUSTUM",
998 "D3DVIS_INSIDE_LEFT",
999 "D3DVIS_INTERSECT_LEFT",
1000 "D3DVIS_OUTSIDE_LEFT",
1001 "D3DVIS_INSIDE_RIGHT",
1002 "D3DVIS_INTERSECT_RIGHT",
1003 "D3DVIS_OUTSIDE_RIGHT",
1004 "D3DVIS_INSIDE_TOP",
1005 "D3DVIS_INTERSECT_TOP",
1006 "D3DVIS_OUTSIDE_TOP",
1007 "D3DVIS_INSIDE_BOTTOM",
1008 "D3DVIS_INTERSECT_BOTTOM",
1009 "D3DVIS_OUTSIDE_BOTTOM",
1010 "D3DVIS_INSIDE_NEAR",
1011 "D3DVIS_INTERSECT_NEAR",
1012 "D3DVIS_OUTSIDE_NEAR",
1013 "D3DVIS_INSIDE_FAR",
1014 "D3DVIS_INTERSECT_FAR",
1015 "D3DVIS_OUTSIDE_FAR",
1016 "D3DVIS_MASK_FRUSTUM",
1018 "D3DVIS_MASK_RIGHT",
1020 "D3DVIS_MASK_BOTTOM",
1025 D3DDEVINFOID = Flags(DWORD, [
1026 "D3DDEVINFOID_TEXTUREMANAGER",
1027 "D3DDEVINFOID_D3DTEXTUREMANAGER",
1028 "D3DDEVINFOID_TEXTURING",
1031 D3DSTATEBLOCKTYPE = Enum("D3DSTATEBLOCKTYPE", [
1033 "D3DSBT_PIXELSTATE",
1034 "D3DSBT_VERTEXSTATE",
1035 "D3DSBT_FORCE_DWORD",
1038 D3DVERTEXBLENDFLAGS = Enum("D3DVERTEXBLENDFLAGS", [
1039 "D3DVBLEND_DISABLE",
1040 "D3DVBLEND_1WEIGHT",
1041 "D3DVBLEND_2WEIGHTS",
1042 "D3DVBLEND_3WEIGHTS",
1045 D3DTEXTURETRANSFORMFLAGS = Enum("D3DTEXTURETRANSFORMFLAGS", [
1051 "D3DTTFF_PROJECTED",
1052 "D3DTTFF_FORCE_DWORD",