/* $Revision: 1.2 $ */ #ifndef _LCC_D3DCAPS_H #define _LCC_D3DCAPS_H #include #pragma pack(push,4) typedef struct _D3DTRANSFORMCAPS { DWORD dwSize; DWORD dwCaps; } D3DTRANSFORMCAPS, *LPD3DTRANSFORMCAPS; #define D3DTRANSFORMCAPS_CLIP 1 typedef struct _D3DLIGHTINGCAPS { DWORD dwSize; DWORD dwCaps; DWORD dwLightingModel; DWORD dwNumLights; } D3DLIGHTINGCAPS, *LPD3DLIGHTINGCAPS; #define D3DLIGHTINGMODEL_RGB 1 #define D3DLIGHTINGMODEL_MONO 2 #define D3DLIGHTCAPS_POINT 1 #define D3DLIGHTCAPS_SPOT 2 #define D3DLIGHTCAPS_DIRECTIONAL 4 #define D3DLIGHTCAPS_PARALLELPOINT 8 #define D3DLIGHTCAPS_GLSPOT 16 typedef struct _D3DPrimCaps { DWORD dwSize; DWORD dwMiscCaps; DWORD dwRasterCaps; DWORD dwZCmpCaps; DWORD dwSrcBlendCaps; DWORD dwDestBlendCaps; DWORD dwAlphaCmpCaps; DWORD dwShadeCaps; DWORD dwTextureCaps; DWORD dwTextureFilterCaps; DWORD dwTextureBlendCaps; DWORD dwTextureAddressCaps; DWORD dwStippleWidth; DWORD dwStippleHeight; } D3DPRIMCAPS, *LPD3DPRIMCAPS; #define D3DPMISCCAPS_MASKPLANES 1 #define D3DPMISCCAPS_MASKZ 2 #define D3DPMISCCAPS_LINEPATTERNREP 4L #define D3DPMISCCAPS_CONFORMANT 8 #define D3DPMISCCAPS_CULLNONE 16 #define D3DPMISCCAPS_CULLCW 32 #define D3DPMISCCAPS_CULLCCW 64 #define D3DPRASTERCAPS_DITHER 1 #define D3DPRASTERCAPS_ROP2 2 #define D3DPRASTERCAPS_XOR 4L #define D3DPRASTERCAPS_PAT 8 #define D3DPRASTERCAPS_ZTEST 16 #define D3DPRASTERCAPS_SUBPIXEL 32 #define D3DPRASTERCAPS_SUBPIXELX 64 #define D3DPRASTERCAPS_FOGVERTEX 128 #define D3DPRASTERCAPS_FOGTABLE 0x00000100 #define D3DPRASTERCAPS_STIPPLE 0x00000200 #define D3DPCMPCAPS_NEVER 1 #define D3DPCMPCAPS_LESS 2 #define D3DPCMPCAPS_EQUAL 4L #define D3DPCMPCAPS_LESSEQUAL 8 #define D3DPCMPCAPS_GREATER 16 #define D3DPCMPCAPS_NOTEQUAL 32 #define D3DPCMPCAPS_GREATEREQUAL 64 #define D3DPCMPCAPS_ALWAYS 128 #define D3DPBLENDCAPS_ZERO 1 #define D3DPBLENDCAPS_ONE 2 #define D3DPBLENDCAPS_SRCCOLOR 4 #define D3DPBLENDCAPS_INVSRCCOLOR 8 #define D3DPBLENDCAPS_SRCALPHA 16 #define D3DPBLENDCAPS_INVSRCALPHA 32 #define D3DPBLENDCAPS_DESTALPHA 64 #define D3DPBLENDCAPS_INVDESTALPHA 128 #define D3DPBLENDCAPS_DESTCOLOR 0x100 #define D3DPBLENDCAPS_INVDESTCOLOR 0x200 #define D3DPBLENDCAPS_SRCALPHASAT 0x400 #define D3DPBLENDCAPS_BOTHSRCALPHA 0x800 #define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x1000 #define D3DPSHADECAPS_COLORFLATMONO 1 #define D3DPSHADECAPS_COLORFLATRGB 2 #define D3DPSHADECAPS_COLORGOURAUDMONO 4 #define D3DPSHADECAPS_COLORGOURAUDRGB 8 #define D3DPSHADECAPS_COLORPHONGMONO 16 #define D3DPSHADECAPS_COLORPHONGRGB 32 #define D3DPSHADECAPS_SPECULARFLATMONO 64 #define D3DPSHADECAPS_SPECULARFLATRGB 128 #define D3DPSHADECAPS_SPECULARGOURAUDMONO 0x100 #define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x200 #define D3DPSHADECAPS_SPECULARPHONGMONO 0x400 #define D3DPSHADECAPS_SPECULARPHONGRGB 0x800 #define D3DPSHADECAPS_ALPHAFLATBLEND 0x1000 #define D3DPSHADECAPS_ALPHAFLATSTIPPLED 0x2000 #define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x4000 #define D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED 0x8000 #define D3DPSHADECAPS_ALPHAPHONGBLEND 0x10000 #define D3DPSHADECAPS_ALPHAPHONGSTIPPLED 0x20000 #define D3DPSHADECAPS_FOGFLAT 0x40000 #define D3DPSHADECAPS_FOGGOURAUD 0x080000 #define D3DPSHADECAPS_FOGPHONG 0x100000 #define D3DPTEXTURECAPS_PERSPECTIVE 1 #define D3DPTEXTURECAPS_POW2 2 #define D3DPTEXTURECAPS_ALPHA 4L #define D3DPTEXTURECAPS_TRANSPARENCY 8 #define D3DPTEXTURECAPS_BORDER 16 #define D3DPTEXTURECAPS_SQUAREONLY 32 #define D3DPTFILTERCAPS_NEAREST 1 #define D3DPTFILTERCAPS_LINEAR 2 #define D3DPTFILTERCAPS_MIPNEAREST 4L #define D3DPTFILTERCAPS_MIPLINEAR 8 #define D3DPTFILTERCAPS_LINEARMIPNEAREST 16 #define D3DPTFILTERCAPS_LINEARMIPLINEAR 32 #define D3DPTBLENDCAPS_DECAL 1 #define D3DPTBLENDCAPS_MODULATE 2 #define D3DPTBLENDCAPS_DECALALPHA 4L #define D3DPTBLENDCAPS_MODULATEALPHA 8 #define D3DPTBLENDCAPS_DECALMASK 16 #define D3DPTBLENDCAPS_MODULATEMASK 32 #define D3DPTBLENDCAPS_COPY 64 #define D3DPTADDRESSCAPS_WRAP 1 #define D3DPTADDRESSCAPS_MIRROR 2 #define D3DPTADDRESSCAPS_CLAMP 4L typedef struct _D3DDeviceDesc { DWORD dwSize; DWORD dwFlags; D3DCOLORMODEL dcmColorModel; DWORD dwDevCaps; D3DTRANSFORMCAPS dtcTransformCaps; BOOL bClipping; D3DLIGHTINGCAPS dlcLightingCaps; D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcTriCaps; DWORD dwDeviceRenderBitDepth; DWORD dwDeviceZBufferBitDepth; DWORD dwMaxBufferSize; DWORD dwMaxVertexCount; } D3DDEVICEDESC, *LPD3DDEVICEDESC; typedef HRESULT (FAR PASCAL * LPD3DENUMDEVICESCALLBACK)(LPGUID,LPSTR,LPSTR,LPD3DDEVICEDESC, LPD3DDEVICEDESC,LPVOID); #define D3DDD_COLORMODEL 1 #define D3DDD_DEVCAPS 2 #define D3DDD_TRANSFORMCAPS 4L #define D3DDD_LIGHTINGCAPS 8 #define D3DDD_BCLIPPING 16 #define D3DDD_LINECAPS 32 #define D3DDD_TRICAPS 64 #define D3DDD_DEVICERENDERBITDEPTH 128 #define D3DDD_DEVICEZBUFFERBITDEPTH 0x100L #define D3DDD_MAXBUFFERSIZE 0x200L #define D3DDD_MAXVERTEXCOUNT 0x400L #define D3DDEVCAPS_FLOATTLVERTEX 1 #define D3DDEVCAPS_SORTINCREASINGZ 2 #define D3DDEVCAPS_SORTDECREASINGZ 4 #define D3DDEVCAPS_SORTEXACT 8 #define D3DDEVCAPS_EXECUTESYSTEMMEMORY 16 #define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x20L #define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x40L #define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x80L #define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x100L #define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x200L #define D3DFDS_COLORMODEL 1 #define D3DFDS_GUID 2 #define D3DFDS_HARDWARE 4 #define D3DFDS_TRIANGLES 8 #define D3DFDS_LINES 0x10 #define D3DFDS_MISCCAPS 0x20 #define D3DFDS_RASTERCAPS 0x40L #define D3DFDS_ZCMPCAPS 0x80L #define D3DFDS_ALPHACMPCAPS 0x100L #define D3DFDS_SRCBLENDCAPS 0x200L #define D3DFDS_DSTBLENDCAPS 0x400L #define D3DFDS_SHADECAPS 0x800L #define D3DFDS_TEXTURECAPS 0x1000L #define D3DFDS_TEXTUREFILTERCAPS 0x2000L #define D3DFDS_TEXTUREBLENDCAPS 0x4000L #define D3DFDS_TEXTUREADDRESSCAPS 0x8000L typedef struct _D3DFINDDEVICESEARCH { DWORD dwSize; DWORD dwFlags; BOOL bHardware; D3DCOLORMODEL dcmColorModel; GUID guid; DWORD dwCaps; D3DPRIMCAPS dpcPrimCaps; } D3DFINDDEVICESEARCH, *LPD3DFINDDEVICESEARCH; typedef struct _D3DFINDDEVICERESULT { DWORD dwSize; GUID guid; D3DDEVICEDESC ddHwDesc; D3DDEVICEDESC ddSwDesc; } D3DFINDDEVICERESULT, *LPD3DFINDDEVICERESULT; typedef struct _D3DExecuteBufferDesc { DWORD dwSize; DWORD dwFlags; DWORD dwCaps; DWORD dwBufferSize; LPVOID lpData; } D3DEXECUTEBUFFERDESC, *LPD3DEXECUTEBUFFERDESC; #define D3DDEB_BUFSIZE 1 #define D3DDEB_CAPS 2 #define D3DDEB_LPDATA 4 #define D3DDEBCAPS_SYSTEMMEMORY 1 #define D3DDEBCAPS_VIDEOMEMORY 2 #define D3DDEBCAPS_MEM (D3DDEBCAPS_SYSTEMMEMORY|D3DDEBCAPS_VIDEOMEMORY) #pragma pack(pop) #endif