wined3d: Add d3d7 and d3d8/9 cap flags to wined3d_types.h.

This commit is contained in:
Stefan Dösinger 2006-03-05 21:07:10 +01:00 committed by Alexandre Julliard
parent 6d30800db6
commit 033769f94d
2 changed files with 141 additions and 44 deletions

View File

@ -1481,25 +1481,25 @@ HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, D3DDEVT
D3DPMISCCAPS_MASKZ;
/*NOT: D3DPMISCCAPS_TSSARGTEMP*/
*pCaps->RasterCaps = D3DPRASTERCAPS_DITHER |
D3DPRASTERCAPS_PAT |
D3DPRASTERCAPS_WFOG |
D3DPRASTERCAPS_ZFOG |
D3DPRASTERCAPS_FOGVERTEX |
D3DPRASTERCAPS_FOGTABLE |
D3DPRASTERCAPS_FOGRANGE;
*pCaps->RasterCaps = WINED3DPRASTERCAPS_DITHER |
WINED3DPRASTERCAPS_PAT |
WINED3DPRASTERCAPS_WFOG |
WINED3DPRASTERCAPS_ZFOG |
WINED3DPRASTERCAPS_FOGVERTEX |
WINED3DPRASTERCAPS_FOGTABLE |
WINED3DPRASTERCAPS_FOGRANGE;
if (GL_SUPPORT(EXT_TEXTURE_FILTER_ANISOTROPIC)) {
*pCaps->RasterCaps |= D3DPRASTERCAPS_ANISOTROPY |
D3DPRASTERCAPS_ZBIAS |
D3DPRASTERCAPS_MIPMAPLODBIAS;
*pCaps->RasterCaps |= WINED3DPRASTERCAPS_ANISOTROPY |
WINED3DPRASTERCAPS_ZBIAS |
WINED3DPRASTERCAPS_MIPMAPLODBIAS;
}
/* FIXME Add:
D3DPRASTERCAPS_COLORPERSPECTIVE
D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE
D3DPRASTERCAPS_ANTIALIASEDGES
D3DPRASTERCAPS_ZBUFFERLESSHSR
D3DPRASTERCAPS_WBUFFER */
WINED3DPRASTERCAPS_COLORPERSPECTIVE
WINED3DPRASTERCAPS_STRETCHBLTMULTISAMPLE
WINED3DPRASTERCAPS_ANTIALIASEDGES
WINED3DPRASTERCAPS_ZBUFFERLESSHSR
WINED3DPRASTERCAPS_WBUFFER */
*pCaps->ZCmpCaps = D3DPCMPCAPS_ALWAYS |
D3DPCMPCAPS_EQUAL |
@ -1514,39 +1514,39 @@ HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, D3DDEVT
*pCaps->DestBlendCaps = 0xFFFFFFFF; /*FIXME: Tidy up later */
*pCaps->AlphaCmpCaps = 0xFFFFFFFF; /*FIXME: Tidy up later */
*pCaps->ShadeCaps = D3DPSHADECAPS_SPECULARGOURAUDRGB |
D3DPSHADECAPS_COLORGOURAUDRGB;
*pCaps->ShadeCaps = WINED3DPSHADECAPS_SPECULARGOURAUDRGB |
WINED3DPSHADECAPS_COLORGOURAUDRGB;
*pCaps->TextureCaps = D3DPTEXTURECAPS_ALPHA |
D3DPTEXTURECAPS_ALPHAPALETTE |
D3DPTEXTURECAPS_VOLUMEMAP |
D3DPTEXTURECAPS_MIPMAP |
D3DPTEXTURECAPS_PROJECTED |
D3DPTEXTURECAPS_PERSPECTIVE |
D3DPTEXTURECAPS_VOLUMEMAP_POW2 ;
*pCaps->TextureCaps = WINED3DPTEXTURECAPS_ALPHA |
WINED3DPTEXTURECAPS_ALPHAPALETTE |
WINED3DPTEXTURECAPS_VOLUMEMAP |
WINED3DPTEXTURECAPS_MIPMAP |
WINED3DPTEXTURECAPS_PROJECTED |
WINED3DPTEXTURECAPS_PERSPECTIVE |
WINED3DPTEXTURECAPS_VOLUMEMAP_POW2 ;
/* TODO: add support for NON-POW2 if avaialble
*/
if (This->dxVersion >= 8) {
*pCaps->TextureCaps |= D3DPTEXTURECAPS_NONPOW2CONDITIONAL;
*pCaps->TextureCaps |= WINED3DPTEXTURECAPS_NONPOW2CONDITIONAL;
} else { /* NONPOW2 isn't accessible by d3d8 yet */
*pCaps->TextureCaps |= D3DPTEXTURECAPS_POW2;
*pCaps->TextureCaps |= WINED3DPTEXTURECAPS_POW2;
}
if (GL_SUPPORT(ARB_TEXTURE_CUBE_MAP)) {
*pCaps->TextureCaps |= D3DPTEXTURECAPS_CUBEMAP |
D3DPTEXTURECAPS_MIPCUBEMAP |
D3DPTEXTURECAPS_CUBEMAP_POW2;
*pCaps->TextureCaps |= WINED3DPTEXTURECAPS_CUBEMAP |
WINED3DPTEXTURECAPS_MIPCUBEMAP |
WINED3DPTEXTURECAPS_CUBEMAP_POW2;
}
*pCaps->TextureFilterCaps = D3DPTFILTERCAPS_MAGFLINEAR |
D3DPTFILTERCAPS_MAGFPOINT |
D3DPTFILTERCAPS_MINFLINEAR |
D3DPTFILTERCAPS_MINFPOINT |
D3DPTFILTERCAPS_MIPFLINEAR |
D3DPTFILTERCAPS_MIPFPOINT;
*pCaps->TextureFilterCaps = WINED3DPTFILTERCAPS_MAGFLINEAR |
WINED3DPTFILTERCAPS_MAGFPOINT |
WINED3DPTFILTERCAPS_MINFLINEAR |
WINED3DPTFILTERCAPS_MINFPOINT |
WINED3DPTFILTERCAPS_MIPFLINEAR |
WINED3DPTFILTERCAPS_MIPFPOINT;
*pCaps->CubeTextureFilterCaps = 0;
*pCaps->VolumeTextureFilterCaps = 0;
@ -1658,11 +1658,11 @@ HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, D3DDEVT
*pCaps->MaxPointSize = GL_LIMITS(pointsize);
*pCaps->VertexProcessingCaps = D3DVTXPCAPS_DIRECTIONALLIGHTS |
D3DVTXPCAPS_MATERIALSOURCE7 |
D3DVTXPCAPS_POSITIONALLIGHTS |
D3DVTXPCAPS_LOCALVIEWER |
D3DVTXPCAPS_TEXGEN;
*pCaps->VertexProcessingCaps = WINED3DVTXPCAPS_DIRECTIONALLIGHTS |
WINED3DVTXPCAPS_MATERIALSOURCE7 |
WINED3DVTXPCAPS_POSITIONALLIGHTS |
WINED3DVTXPCAPS_LOCALVIEWER |
WINED3DVTXPCAPS_TEXGEN;
/* FIXME: Add
D3DVTXPCAPS_TWEENING */
@ -1720,10 +1720,10 @@ HRESULT WINAPI IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter, D3DDEVT
*pCaps->NumSimultaneousRTs = max_buffers;
*pCaps->StretchRectFilterCaps = 0;
/* TODO: add
D3DPTFILTERCAPS_MINFPOINT
D3DPTFILTERCAPS_MAGFPOINT
D3DPTFILTERCAPS_MINFLINEAR
D3DPTFILTERCAPS_MAGFLINEAR
WINED3DPTFILTERCAPS_MINFPOINT
WINED3DPTFILTERCAPS_MAGFPOINT
WINED3DPTFILTERCAPS_MINFLINEAR
WINED3DPTFILTERCAPS_MAGFLINEAR
*/
*pCaps->VS20Caps.Caps = 0;
*pCaps->PS20Caps.Caps = 0;

View File

@ -772,4 +772,101 @@ typedef enum _WINED3DDECLUSAGE {
WINED3DSHADERDECLUSAGE_MAX_USAGE
} WINED3DSHADERDECLUSAGE;
#define WINED3DPRASTERCAPS_DITHER 0x00000001L
#define WINED3DPRASTERCAPS_ROP2 0x00000002L
#define WINED3DPRASTERCAPS_XOR 0x00000004L
#define WINED3DPRASTERCAPS_PAT 0x00000008L
#define WINED3DPRASTERCAPS_ZTEST 0x00000010L
#define WINED3DPRASTERCAPS_SUBPIXEL 0x00000020L
#define WINED3DPRASTERCAPS_SUBPIXELX 0x00000040L
#define WINED3DPRASTERCAPS_FOGVERTEX 0x00000080L
#define WINED3DPRASTERCAPS_FOGTABLE 0x00000100L
#define WINED3DPRASTERCAPS_STIPPLE 0x00000200L
#define WINED3DPRASTERCAPS_ANTIALIASSORTDEPENDENT 0x00000400L
#define WINED3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT 0x00000800L
#define WINED3DPRASTERCAPS_ANTIALIASEDGES 0x00001000L
#define WINED3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000L
#define WINED3DPRASTERCAPS_ZBIAS 0x00004000L
#define WINED3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000L
#define WINED3DPRASTERCAPS_FOGRANGE 0x00010000L
#define WINED3DPRASTERCAPS_ANISOTROPY 0x00020000L
#define WINED3DPRASTERCAPS_WBUFFER 0x00040000L
#define WINED3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT 0x00080000L
#define WINED3DPRASTERCAPS_WFOG 0x00100000L
#define WINED3DPRASTERCAPS_ZFOG 0x00200000L
#define WINED3DPRASTERCAPS_COLORPERSPECTIVE 0x00400000L
#define WINED3DPRASTERCAPS_SCISSORTEST 0x01000000L
#define WINED3DPRASTERCAPS_SLOPESCALEDEPTHBIAS 0x02000000L
#define WINED3DPRASTERCAPS_DEPTHBIAS 0x04000000L
#define WINED3DPRASTERCAPS_MULTISAMPLE_TOGGLE 0x08000000L
#define WINED3DPSHADECAPS_COLORFLATMONO 0x000001
#define WINED3DPSHADECAPS_COLORFLATRGB 0x000002
#define WINED3DPSHADECAPS_COLORGOURAUDMONO 0x000004
#define WINED3DPSHADECAPS_COLORGOURAUDRGB 0x000008
#define WINED3DPSHADECAPS_COLORPHONGMONO 0x000010
#define WINED3DPSHADECAPS_COLORPHONGRGB 0x000020
#define WINED3DPSHADECAPS_SPECULARFLATMONO 0x000040
#define WINED3DPSHADECAPS_SPECULARFLATRGB 0x000080
#define WINED3DPSHADECAPS_SPECULARGOURAUDMONO 0x000100
#define WINED3DPSHADECAPS_SPECULARGOURAUDRGB 0x000200
#define WINED3DPSHADECAPS_SPECULARPHONGMONO 0x000400
#define WINED3DPSHADECAPS_SPECULARPHONGRGB 0x000800
#define WINED3DPSHADECAPS_ALPHAFLATBLEND 0x001000
#define WINED3DPSHADECAPS_ALPHAFLATSTIPPLED 0x002000
#define WINED3DPSHADECAPS_ALPHAGOURAUDBLEND 0x004000
#define WINED3DPSHADECAPS_ALPHAGOURAUDSTIPPLED 0x008000
#define WINED3DPSHADECAPS_ALPHAPHONGBLEND 0x010000
#define WINED3DPSHADECAPS_ALPHAPHONGSTIPPLED 0x020000
#define WINED3DPSHADECAPS_FOGFLAT 0x040000
#define WINED3DPSHADECAPS_FOGGOURAUD 0x080000
#define WINED3DPSHADECAPS_FOGPHONG 0x100000
#define WINED3DPTEXTURECAPS_PERSPECTIVE 0x00000001L
#define WINED3DPTEXTURECAPS_POW2 0x00000002L
#define WINED3DPTEXTURECAPS_ALPHA 0x00000004L
#define WINED3DPTEXTURECAPS_TRANSPARENCY 0x00000008L
#define WINED3DPTEXTURECAPS_BORDER 0x00000010L
#define WINED3DPTEXTURECAPS_SQUAREONLY 0x00000020L
#define WINED3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00000040L
#define WINED3DPTEXTURECAPS_ALPHAPALETTE 0x00000080L
#define WINED3DPTEXTURECAPS_NONPOW2CONDITIONAL 0x00000100L
#define WINED3DPTEXTURECAPS_PROJECTED 0x00000400L
#define WINED3DPTEXTURECAPS_CUBEMAP 0x00000800L
#define WINED3DPTEXTURECAPS_COLORKEYBLEND 0x00001000L
#define WINED3DPTEXTURECAPS_VOLUMEMAP 0x00002000L
#define WINED3DPTEXTURECAPS_MIPMAP 0x00004000L
#define WINED3DPTEXTURECAPS_MIPVOLUMEMAP 0x00008000L
#define WINED3DPTEXTURECAPS_MIPCUBEMAP 0x00010000L
#define WINED3DPTEXTURECAPS_CUBEMAP_POW2 0x00020000L
#define WINED3DPTEXTURECAPS_VOLUMEMAP_POW2 0x00040000L
#define WINED3DPTEXTURECAPS_NOPROJECTEDBUMPENV 0x00200000L
#define WINED3DPTFILTERCAPS_NEAREST 0x00000001
#define WINED3DPTFILTERCAPS_LINEAR 0x00000002
#define WINED3DPTFILTERCAPS_MIPNEAREST 0x00000004
#define WINED3DPTFILTERCAPS_MIPLINEAR 0x00000008
#define WINED3DPTFILTERCAPS_LINEARMIPNEAREST 0x00000010
#define WINED3DPTFILTERCAPS_LINEARMIPLINEAR 0x00000020
#define WINED3DPTFILTERCAPS_MINFPOINT 0x00000100
#define WINED3DPTFILTERCAPS_MINFLINEAR 0x00000200
#define WINED3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400
#define WINED3DPTFILTERCAPS_MIPFPOINT 0x00010000
#define WINED3DPTFILTERCAPS_MIPFLINEAR 0x00020000
#define WINED3DPTFILTERCAPS_MAGFPOINT 0x01000000
#define WINED3DPTFILTERCAPS_MAGFLINEAR 0x02000000
#define WINED3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000
#define WINED3DPTFILTERCAPS_MAGFPYRAMIDALQUAD 0x08000000
#define WINED3DPTFILTERCAPS_MAGFGAUSSIANQUAD 0x10000000
#define WINED3DVTXPCAPS_TEXGEN 0x00000001L
#define WINED3DVTXPCAPS_MATERIALSOURCE7 0x00000002L
#define WINED3DVTXPCAPS_VERTEXFOG 0x00000004L
#define WINED3DVTXPCAPS_DIRECTIONALLIGHTS 0x00000008L
#define WINED3DVTXPCAPS_POSITIONALLIGHTS 0x00000010L
#define WINED3DVTXPCAPS_LOCALVIEWER 0x00000020L
#define WINED3DVTXPCAPS_TWEENING 0x00000040L
#define WINED3DVTXPCAPS_TEXGEN_SPHEREMAP 0x00000100L
#define WINED3DVTXPCAPS_NO_TEXGEN_NONLOCALVIEWER 0x00000200L
#endif