File Annotation

Not logged in
9b639cf2d6 2015-05-05        kinaba: /*==========================================================================;
9b639cf2d6 2015-05-05        kinaba:  *
9b639cf2d6 2015-05-05        kinaba:  *  Copyright (C) Microsoft Corporation.  All Rights Reserved.
9b639cf2d6 2015-05-05        kinaba:  *
9b639cf2d6 2015-05-05        kinaba:  *  File:       d3d9caps.h
9b639cf2d6 2015-05-05        kinaba:  *  Content:    Direct3D capabilities include file
9b639cf2d6 2015-05-05        kinaba:  *
9b639cf2d6 2015-05-05        kinaba:  ***************************************************************************/
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: module win32.directx.d3d9caps;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: private import win32.windows,
9b639cf2d6 2015-05-05        kinaba:                win32.directx.d3d9types;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: align(4):
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct D3DVSHADERCAPS2_0
9b639cf2d6 2015-05-05        kinaba: {
9b639cf2d6 2015-05-05        kinaba:         DWORD Caps;
9b639cf2d6 2015-05-05        kinaba:         INT DynamicFlowControlDepth;
9b639cf2d6 2015-05-05        kinaba:         INT NumTemps;
9b639cf2d6 2015-05-05        kinaba:         INT StaticFlowControlDepth;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DVS20CAPS_PREDICATION = (1<<0);
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DVS20_MAX_DYNAMICFLOWCONTROLDEPTH = 24;
9b639cf2d6 2015-05-05        kinaba: const D3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH = 0;
9b639cf2d6 2015-05-05        kinaba: const D3DVS20_MAX_NUMTEMPS = 32;
9b639cf2d6 2015-05-05        kinaba: const D3DVS20_MIN_NUMTEMPS = 12;
9b639cf2d6 2015-05-05        kinaba: const D3DVS20_MAX_STATICFLOWCONTROLDEPTH = 4;
9b639cf2d6 2015-05-05        kinaba: const D3DVS20_MIN_STATICFLOWCONTROLDEPTH = 1;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct D3DPSHADERCAPS2_0
9b639cf2d6 2015-05-05        kinaba: {
9b639cf2d6 2015-05-05        kinaba:     DWORD Caps;
9b639cf2d6 2015-05-05        kinaba:     INT DynamicFlowControlDepth;
9b639cf2d6 2015-05-05        kinaba:     INT NumTemps;
9b639cf2d6 2015-05-05        kinaba:     INT StaticFlowControlDepth;
9b639cf2d6 2015-05-05        kinaba:     INT NumInstructionSlots;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DPS20CAPS_ARBITRARYSWIZZLE = (1<<0);
9b639cf2d6 2015-05-05        kinaba: const D3DPS20CAPS_GRADIENTINSTRUCTIONS = (1<<1);
9b639cf2d6 2015-05-05        kinaba: const D3DPS20CAPS_PREDICATION = (1<<2);
9b639cf2d6 2015-05-05        kinaba: const D3DPS20CAPS_NODEPENDENTREADLIMIT = (1<<3);
9b639cf2d6 2015-05-05        kinaba: const D3DPS20CAPS_NOTEXINSTRUCTIONLIMIT = (1<<4);
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MAX_DYNAMICFLOWCONTROLDEPTH = 24;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MIN_DYNAMICFLOWCONTROLDEPTH = 0;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MAX_NUMTEMPS = 32;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MIN_NUMTEMPS = 12;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MAX_STATICFLOWCONTROLDEPTH = 4;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MIN_STATICFLOWCONTROLDEPTH = 0;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MAX_NUMINSTRUCTIONSLOTS = 512;
9b639cf2d6 2015-05-05        kinaba: const D3DPS20_MIN_NUMINSTRUCTIONSLOTS = 96;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DMIN30SHADERINSTRUCTIONS = 512;
9b639cf2d6 2015-05-05        kinaba: const D3DMAX30SHADERINSTRUCTIONS = 32768;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct D3DCAPS9
9b639cf2d6 2015-05-05        kinaba: {
9b639cf2d6 2015-05-05        kinaba:     /* Device Info */
9b639cf2d6 2015-05-05        kinaba:     D3DDEVTYPE  DeviceType;
9b639cf2d6 2015-05-05        kinaba:     UINT        AdapterOrdinal;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     /* Caps from DX7 Draw */
9b639cf2d6 2015-05-05        kinaba:     DWORD   Caps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   Caps2;
9b639cf2d6 2015-05-05        kinaba:     DWORD   Caps3;
9b639cf2d6 2015-05-05        kinaba:     DWORD   PresentationIntervals;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     /* Cursor Caps */
9b639cf2d6 2015-05-05        kinaba:     DWORD   CursorCaps;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     /* 3D Device Caps */
9b639cf2d6 2015-05-05        kinaba:     DWORD   DevCaps;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   PrimitiveMiscCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   RasterCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   ZCmpCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   SrcBlendCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   DestBlendCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   AlphaCmpCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   ShadeCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   TextureCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   TextureFilterCaps;          // D3DPTFILTERCAPS for IDirect3DTexture9's
9b639cf2d6 2015-05-05        kinaba:     DWORD   CubeTextureFilterCaps;      // D3DPTFILTERCAPS for IDirect3DCubeTexture9's
9b639cf2d6 2015-05-05        kinaba:     DWORD   VolumeTextureFilterCaps;    // D3DPTFILTERCAPS for IDirect3DVolumeTexture9's
9b639cf2d6 2015-05-05        kinaba:     DWORD   TextureAddressCaps;         // D3DPTADDRESSCAPS for IDirect3DTexture9's
9b639cf2d6 2015-05-05        kinaba:     DWORD   VolumeTextureAddressCaps;   // D3DPTADDRESSCAPS for IDirect3DVolumeTexture9's
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   LineCaps;                   // D3DLINECAPS
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxTextureWidth, MaxTextureHeight;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVolumeExtent;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxTextureRepeat;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxTextureAspectRatio;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxAnisotropy;
9b639cf2d6 2015-05-05        kinaba:     float   MaxVertexW;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     float   GuardBandLeft;
9b639cf2d6 2015-05-05        kinaba:     float   GuardBandTop;
9b639cf2d6 2015-05-05        kinaba:     float   GuardBandRight;
9b639cf2d6 2015-05-05        kinaba:     float   GuardBandBottom;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     float   ExtentsAdjust;
9b639cf2d6 2015-05-05        kinaba:     DWORD   StencilCaps;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   FVFCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   TextureOpCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxTextureBlendStages;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxSimultaneousTextures;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   VertexProcessingCaps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxActiveLights;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxUserClipPlanes;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVertexBlendMatrices;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVertexBlendMatrixIndex;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     float   MaxPointSize;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxPrimitiveCount;          // max number of primitives per DrawPrimitive call
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVertexIndex;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxStreams;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxStreamStride;            // max stride for SetStreamSource
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   VertexShaderVersion;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVertexShaderConst;       // number of vertex shader constant registers
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     DWORD   PixelShaderVersion;
9b639cf2d6 2015-05-05        kinaba:     float   PixelShader1xMaxValue;      // max value storable in registers of ps.1.x shaders
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     // Here are the DX9 specific ones
9b639cf2d6 2015-05-05        kinaba:     DWORD   DevCaps2;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     float   MaxNpatchTessellationLevel;
9b639cf2d6 2015-05-05        kinaba:     DWORD   Reserved5;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba:     UINT    MasterAdapterOrdinal;       // ordinal of master adaptor for adapter group
9b639cf2d6 2015-05-05        kinaba:     UINT    AdapterOrdinalInGroup;      // ordinal inside the adapter group
9b639cf2d6 2015-05-05        kinaba:     UINT    NumberOfAdaptersInGroup;    // number of adapters in this adapter group (only if master)
9b639cf2d6 2015-05-05        kinaba:     DWORD   DeclTypes;                  // Data types, supported in vertex declarations
9b639cf2d6 2015-05-05        kinaba:     DWORD   NumSimultaneousRTs;         // Will be at least 1
9b639cf2d6 2015-05-05        kinaba:     DWORD   StretchRectFilterCaps;      // Filter caps supported by StretchRect
9b639cf2d6 2015-05-05        kinaba:     D3DVSHADERCAPS2_0 VS20Caps;
9b639cf2d6 2015-05-05        kinaba:     D3DPSHADERCAPS2_0 PS20Caps;
9b639cf2d6 2015-05-05        kinaba:     DWORD   VertexTextureFilterCaps;    // D3DPTFILTERCAPS for IDirect3DTexture9's for texture, used in vertex shaders
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVShaderInstructionsExecuted; // maximum number of vertex shader instructions that can be executed
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxPShaderInstructionsExecuted; // maximum number of pixel shader instructions that can be executed
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxVertexShader30InstructionSlots;
9b639cf2d6 2015-05-05        kinaba:     DWORD   MaxPixelShader30InstructionSlots;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // BIT DEFINES FOR D3DCAPS9 DWORD MEMBERS
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // Caps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS_READ_SCANLINE = 0x00020000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // Caps2
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_FULLSCREENGAMMA = 0x00020000L;
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_CANCALIBRATEGAMMA = 0x00100000L;
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_RESERVED = 0x02000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_CANMANAGERESOURCE = 0x10000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_DYNAMICTEXTURES = 0x20000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_CANAUTOGENMIPMAP = 0x40000000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS2_CANSHARERESOURCE = 0x80000000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // Caps3
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS3_RESERVED = 0x8000001fL;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: // Indicates that the device can respect the ALPHABLENDENABLE render state
9b639cf2d6 2015-05-05        kinaba: // when fullscreen while using the FLIP or DISCARD swap effect.
9b639cf2d6 2015-05-05        kinaba: // COPY and COPYVSYNC swap effects work whether or not this flag is set.
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: // Indicates that the device can perform a gamma correction from
9b639cf2d6 2015-05-05        kinaba: // a windowed back buffer containing linear content to the sRGB desktop.
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS3_LINEAR_TO_SRGB_PRESENTATION = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS3_COPY_TO_VIDMEM = 0x00000100L; /* Device can acclerate copies from sysmem to local vidmem */
9b639cf2d6 2015-05-05        kinaba: const D3DCAPS3_COPY_TO_SYSTEMMEM = 0x00000200L; /* Device can acclerate copies from local vidmem to sysmem */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // PresentationIntervals
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPRESENT_INTERVAL_DEFAULT = 0x00000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRESENT_INTERVAL_ONE = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRESENT_INTERVAL_TWO = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRESENT_INTERVAL_THREE = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRESENT_INTERVAL_FOUR = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRESENT_INTERVAL_IMMEDIATE = 0x80000000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // CursorCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // Driver supports HW color cursor in at least hi-res modes(height >=400)
9b639cf2d6 2015-05-05        kinaba: const D3DCURSORCAPS_COLOR = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: // Driver supports HW cursor also in low-res modes(height < 400)
9b639cf2d6 2015-05-05        kinaba: const D3DCURSORCAPS_LOWRES = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // DevCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_EXECUTESYSTEMMEMORY = 0x00000010L; /* Device can use execute buffers from system memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_EXECUTEVIDEOMEMORY = 0x00000020L; /* Device can use execute buffers from video memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_TLVERTEXSYSTEMMEMORY = 0x00000040L; /* Device can use TL buffers from system memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_TLVERTEXVIDEOMEMORY = 0x00000080L; /* Device can use TL buffers from video memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_TEXTURESYSTEMMEMORY = 0x00000100L; /* Device can texture from system memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_TEXTUREVIDEOMEMORY = 0x00000200L; /* Device can texture from device memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_DRAWPRIMTLVERTEX = 0x00000400L; /* Device can draw TLVERTEX primitives */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_CANRENDERAFTERFLIP = 0x00000800L; /* Device can render without waiting for flip to complete */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_TEXTURENONLOCALVIDMEM = 0x00001000L; /* Device can texture from nonlocal video memory */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_DRAWPRIMITIVES2 = 0x00002000L; /* Device can support DrawPrimitives2 */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_SEPARATETEXTUREMEMORIES = 0x00004000L; /* Device is texturing from separate memory pools */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_DRAWPRIMITIVES2EX = 0x00008000L; /* Device can support Extended DrawPrimitives2 i.e. DX7 compliant driver*/
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_HWTRANSFORMANDLIGHT = 0x00010000L; /* Device can support transformation and lighting in hardware and DRAWPRIMITIVES2EX must be also */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_CANBLTSYSTONONLOCAL = 0x00020000L; /* Device supports a Tex Blt from system memory to non-local vidmem */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_HWRASTERIZATION = 0x00080000L; /* Device has HW acceleration for rasterization */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_PUREDEVICE = 0x00100000L; /* Device supports D3DCREATE_PUREDEVICE */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_QUINTICRTPATCHES = 0x00200000L; /* Device supports quintic Beziers and BSplines */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_RTPATCHES = 0x00400000L; /* Device supports Rect and Tri patches */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_RTPATCHHANDLEZERO = 0x00800000L; /* Indicates that RT Patches may be drawn efficiently using handle 0 */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS_NPATCHES = 0x01000000L; /* Device supports N-Patches */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // PrimitiveMiscCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_MASKZ = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_CULLNONE = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_CULLCW = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_CULLCCW = 0x00000040L;
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_COLORWRITEENABLE = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_CLIPPLANESCALEDPOINTS = 0x00000100L; /* Device correctly clips scaled points to clip planes */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_CLIPTLVERTS = 0x00000200L; /* device will clip post-transformed vertex primitives */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_TSSARGTEMP = 0x00000400L; /* device supports D3DTA_TEMP for temporary register */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_BLENDOP = 0x00000800L; /* device supports D3DRS_BLENDOP */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_NULLREFERENCE = 0x00001000L; /* Reference Device that doesnt render */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_INDEPENDENTWRITEMASKS = 0x00004000L; /* Device supports independent write masks for MET or MRT */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_PERSTAGECONSTANT = 0x00008000L; /* Device supports per-stage constants */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_FOGANDSPECULARALPHA = 0x00010000L; /* Device supports separate fog and specular alpha (many devices
9b639cf2d6 2015-05-05        kinaba:                                                           use the specular alpha channel to store fog factor) */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_SEPARATEALPHABLEND = 0x00020000L; /* Device supports separate blend settings for the alpha channel */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS = 0x00040000L; /* Device supports different bit depths for MRT */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING = 0x00080000L; /* Device supports post-pixel shader operations for MRT */
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_FOGVERTEXCLAMPED = 0x00100000L; /* Device clamps fog blend factor per vertex */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DPMISCCAPS_POSTBLENDSRGBCONVERT = 0x00200000L; /* Indicates device can perform conversion to sRGB after blending. */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // LineCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DLINECAPS_TEXTURE = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DLINECAPS_ZTEST = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DLINECAPS_BLEND = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DLINECAPS_ALPHACMP = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DLINECAPS_FOG = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DLINECAPS_ANTIALIAS = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // RasterCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_DITHER = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_ZTEST = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_FOGVERTEX = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_FOGTABLE = 0x00000100L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_MIPMAPLODBIAS = 0x00002000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_ZBUFFERLESSHSR = 0x00008000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_FOGRANGE = 0x00010000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_ANISOTROPY = 0x00020000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_WBUFFER = 0x00040000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_WFOG = 0x00100000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_ZFOG = 0x00200000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_COLORPERSPECTIVE = 0x00400000L; /* Device iterates colors perspective correct */
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_SCISSORTEST = 0x01000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS = 0x02000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_DEPTHBIAS = 0x04000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPRASTERCAPS_MULTISAMPLE_TOGGLE = 0x08000000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // ZCmpCaps, AlphaCmpCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_NEVER = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_LESS = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_EQUAL = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_LESSEQUAL = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_GREATER = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_NOTEQUAL = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_GREATEREQUAL = 0x00000040L;
9b639cf2d6 2015-05-05        kinaba: const D3DPCMPCAPS_ALWAYS = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // SourceBlendCaps, DestBlendCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_ZERO = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_ONE = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_SRCCOLOR = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_INVSRCCOLOR = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_SRCALPHA = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_INVSRCALPHA = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_DESTALPHA = 0x00000040L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_INVDESTALPHA = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_DESTCOLOR = 0x00000100L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_INVDESTCOLOR = 0x00000200L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_SRCALPHASAT = 0x00000400L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_BOTHSRCALPHA = 0x00000800L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_BOTHINVSRCALPHA = 0x00001000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_BLENDFACTOR = 0x00002000L; /* Supports both D3DBLEND_BLENDFACTOR and D3DBLEND_INVBLENDFACTOR */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_SRCCOLOR2 = 0x00004000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPBLENDCAPS_INVSRCCOLOR2 = 0x00008000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // ShadeCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPSHADECAPS_COLORGOURAUDRGB = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DPSHADECAPS_SPECULARGOURAUDRGB = 0x00000200L;
9b639cf2d6 2015-05-05        kinaba: const D3DPSHADECAPS_ALPHAGOURAUDBLEND = 0x00004000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPSHADECAPS_FOGGOURAUD = 0x00080000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // TextureCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_PERSPECTIVE = 0x00000001L; /* Perspective-correct texturing is supported */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_POW2 = 0x00000002L; /* Power-of-2 texture dimensions are required - applies to non-Cube/Volume textures only. */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_ALPHA = 0x00000004L; /* Alpha in texture pixels is supported */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_SQUAREONLY = 0x00000020L; /* Only square textures are supported */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE = 0x00000040L; /* Texture indices are not scaled by the texture size prior to interpolation */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_ALPHAPALETTE = 0x00000080L; /* Device can draw alpha from texture palettes */
9b639cf2d6 2015-05-05        kinaba: // Device can use non-POW2 textures if:
9b639cf2d6 2015-05-05        kinaba: //  1) D3DTEXTURE_ADDRESS is set to CLAMP for this texture's stage
9b639cf2d6 2015-05-05        kinaba: //  2) D3DRS_WRAP(N) is zero for this texture's coordinates
9b639cf2d6 2015-05-05        kinaba: //  3) mip mapping is not enabled (use magnification filter only)
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_NONPOW2CONDITIONAL = 0x00000100L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_PROJECTED = 0x00000400L; /* Device can do D3DTTFF_PROJECTED */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_CUBEMAP = 0x00000800L; /* Device can do cubemap textures */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_VOLUMEMAP = 0x00002000L; /* Device can do volume textures */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_MIPMAP = 0x00004000L; /* Device can do mipmapped textures */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_MIPVOLUMEMAP = 0x00008000L; /* Device can do mipmapped volume textures */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_MIPCUBEMAP = 0x00010000L; /* Device can do mipmapped cube maps */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_CUBEMAP_POW2 = 0x00020000L; /* Device requires that cubemaps be power-of-2 dimension */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_VOLUMEMAP_POW2 = 0x00040000L; /* Device requires that volume maps be power-of-2 dimension */
9b639cf2d6 2015-05-05        kinaba: const D3DPTEXTURECAPS_NOPROJECTEDBUMPENV = 0x00200000L; /* Device does not support projected bump env lookup operation
9b639cf2d6 2015-05-05        kinaba:                                                            in programmable and fixed function pixel shaders */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // TextureFilterCaps, StretchRectFilterCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MINFPOINT = 0x00000100L; /* Min Filter */
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MINFLINEAR = 0x00000200L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MINFANISOTROPIC = 0x00000400L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MINFPYRAMIDALQUAD = 0x00000800L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MINFGAUSSIANQUAD = 0x00001000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MIPFPOINT = 0x00010000L; /* Mip Filter */
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MIPFLINEAR = 0x00020000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_CONVOLUTIONMONO = 0x00040000L; /* Min and Mag for the convolution mono filter */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MAGFPOINT = 0x01000000L; /* Mag Filter */
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MAGFLINEAR = 0x02000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MAGFANISOTROPIC = 0x04000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MAGFPYRAMIDALQUAD = 0x08000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTFILTERCAPS_MAGFGAUSSIANQUAD = 0x10000000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // TextureAddressCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DPTADDRESSCAPS_WRAP = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTADDRESSCAPS_MIRROR = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTADDRESSCAPS_CLAMP = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTADDRESSCAPS_BORDER = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTADDRESSCAPS_INDEPENDENTUV = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DPTADDRESSCAPS_MIRRORONCE = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // StencilCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_KEEP = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_ZERO = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_REPLACE = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_INCRSAT = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_DECRSAT = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_INVERT = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_INCR = 0x00000040L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_DECR = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: const D3DSTENCILCAPS_TWOSIDED = 0x00000100L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // TextureOpCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_DISABLE = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_SELECTARG1 = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_SELECTARG2 = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATE = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATE2X = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATE4X = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_ADD = 0x00000040L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_ADDSIGNED = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_ADDSIGNED2X = 0x00000100L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_SUBTRACT = 0x00000200L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_ADDSMOOTH = 0x00000400L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BLENDDIFFUSEALPHA = 0x00000800L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BLENDTEXTUREALPHA = 0x00001000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BLENDFACTORALPHA = 0x00002000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BLENDTEXTUREALPHAPM = 0x00004000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BLENDCURRENTALPHA = 0x00008000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_PREMODULATE = 0x00010000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR = 0x00020000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA = 0x00040000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR = 0x00080000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA = 0x00100000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BUMPENVMAP = 0x00200000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_BUMPENVMAPLUMINANCE = 0x00400000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_DOTPRODUCT3 = 0x00800000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_MULTIPLYADD = 0x01000000L;
9b639cf2d6 2015-05-05        kinaba: const D3DTEXOPCAPS_LERP = 0x02000000L;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // FVFCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DFVFCAPS_TEXCOORDCOUNTMASK = 0x0000ffffL; /* mask for texture coordinate count field */
9b639cf2d6 2015-05-05        kinaba: const D3DFVFCAPS_DONOTSTRIPELEMENTS = 0x00080000L; /* Device prefers that vertex elements not be stripped */
9b639cf2d6 2015-05-05        kinaba: const D3DFVFCAPS_PSIZE = 0x00100000L; /* Device can receive point size */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // VertexProcessingCaps
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_TEXGEN = 0x00000001L; /* device can do texgen */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_MATERIALSOURCE7 = 0x00000002L; /* device can do DX7-level colormaterialsource ops */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_DIRECTIONALLIGHTS = 0x00000008L; /* device can do directional lights */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_POSITIONALLIGHTS = 0x00000010L; /* device can do positional lights (includes point and spot) */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_LOCALVIEWER = 0x00000020L; /* device can do local viewer */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_TWEENING = 0x00000040L; /* device can do vertex tweening */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_TEXGEN_SPHEREMAP = 0x00000100L; /* device supports D3DTSS_TCI_SPHEREMAP */
9b639cf2d6 2015-05-05        kinaba: const D3DVTXPCAPS_NO_TEXGEN_NONLOCALVIEWER = 0x00000200L; /* device does not support TexGen in non-local
9b639cf2d6 2015-05-05        kinaba:                                                             viewer mode */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // DevCaps2
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_STREAMOFFSET = 0x00000001L; /* Device supports offsets in streams. Must be set by DX9 drivers */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_DMAPNPATCH = 0x00000002L; /* Device supports displacement maps for N-Patches*/
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_ADAPTIVETESSRTPATCH = 0x00000004L; /* Device supports adaptive tesselation of RT-patches*/
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_ADAPTIVETESSNPATCH = 0x00000008L; /* Device supports adaptive tesselation of N-patches*/
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_CAN_STRETCHRECT_FROM_TEXTURES = 0x00000010L; /* Device supports StretchRect calls with a texture as the source*/
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_PRESAMPLEDDMAPNPATCH = 0x00000020L; /* Device supports presampled displacement maps for N-Patches */
9b639cf2d6 2015-05-05        kinaba: const D3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET = 0x00000040L; /* Vertex elements in a vertex declaration can share the same stream offset */
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: // DeclTypes
9b639cf2d6 2015-05-05        kinaba: //
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_UBYTE4 = 0x00000001L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_UBYTE4N = 0x00000002L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_SHORT2N = 0x00000004L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_SHORT4N = 0x00000008L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_USHORT2N = 0x00000010L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_USHORT4N = 0x00000020L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_UDEC3 = 0x00000040L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_DEC3N = 0x00000080L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_FLOAT16_2 = 0x00000100L;
9b639cf2d6 2015-05-05        kinaba: const D3DDTCAPS_FLOAT16_4 = 0x00000200L;