⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wined3d_types.h

📁 这是一个开放源代码的与WINNT/WIN2K/WIN2003兼容的操作系统
💻 H
📖 第 1 页 / 共 5 页
字号:
#define WINED3DUSAGE_DYNAMIC                          0x00000200L
#define WINED3DUSAGE_AUTOGENMIPMAP                    0x00000400L 
#define WINED3DUSAGE_DMAP                             0x00004000L
#define WINED3DUSAGE_MASK                             0x00004FFFL
#define WINED3DUSAGE_OVERLAY                          0x00010000L

#define WINED3DUSAGE_QUERY_LEGACYBUMPMAP            0x00008000L
#define WINED3DUSAGE_QUERY_FILTER                   0x00020000L
#define WINED3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING 0x00080000L
#define WINED3DUSAGE_QUERY_SRGBREAD                 0x00010000L
#define WINED3DUSAGE_QUERY_SRGBWRITE                0x00040000L
#define WINED3DUSAGE_QUERY_VERTEXTEXTURE            0x00100000L
#define WINED3DUSAGE_QUERY_WRAPANDMIP               0x00200000L
#define WINED3DUSAGE_QUERY_MASK                     0x002F8000L

typedef enum _WINED3DSURFTYPE {
    SURFACE_UNKNOWN    = 0,   /* Default / Unknown surface type */
    SURFACE_OPENGL,           /* OpenGL surface: Renders using libGL, needed for 3D */
    SURFACE_GDI,              /* User surface. No 3D, DirectDraw rendering with GDI */
    SURFACE_XRENDER           /* Future dreams: Use XRENDER / EXA / whatever stuff */
} WINED3DSURFTYPE;

#define WINED3DCAPS2_NO2DDURING3DSCENE                 0x00000002L
#define WINED3DCAPS2_FULLSCREENGAMMA                   0x00020000L
#define WINED3DCAPS2_CANRENDERWINDOWED                 0x00080000L
#define WINED3DCAPS2_CANCALIBRATEGAMMA                 0x00100000L
#define WINED3DCAPS2_RESERVED                          0x02000000L
#define WINED3DCAPS2_CANMANAGERESOURCE                 0x10000000L
#define WINED3DCAPS2_DYNAMICTEXTURES                   0x20000000L
#define WINED3DCAPS2_CANAUTOGENMIPMAP                  0x40000000L

#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

#define WINED3DCURSORCAPS_COLOR                      0x000000001
#define WINED3DCURSORCAPS_LOWRES                     0x000000002

#define WINED3DDEVCAPS_FLOATTLVERTEX                 0x000000001
#define WINED3DDEVCAPS_SORTINCREASINGZ               0x000000002
#define WINED3DDEVCAPS_SORTDECREASINGZ               0X000000004
#define WINED3DDEVCAPS_SORTEXACT                     0x000000008
#define WINED3DDEVCAPS_EXECUTESYSTEMMEMORY           0x000000010
#define WINED3DDEVCAPS_EXECUTEVIDEOMEMORY            0x000000020
#define WINED3DDEVCAPS_TLVERTEXSYSTEMMEMORY          0x000000040
#define WINED3DDEVCAPS_TLVERTEXVIDEOMEMORY           0x000000080
#define WINED3DDEVCAPS_TEXTURESYSTEMMEMORY           0x000000100
#define WINED3DDEVCAPS_TEXTUREVIDEOMEMORY            0x000000200
#define WINED3DDEVCAPS_DRAWPRIMTLVERTEX              0x000000400
#define WINED3DDEVCAPS_CANRENDERAFTERFLIP            0x000000800
#define WINED3DDEVCAPS_TEXTURENONLOCALVIDMEM         0x000001000
#define WINED3DDEVCAPS_DRAWPRIMITIVES2               0x000002000
#define WINED3DDEVCAPS_SEPARATETEXTUREMEMORIES       0x000004000
#define WINED3DDEVCAPS_DRAWPRIMITIVES2EX             0x000008000
#define WINED3DDEVCAPS_HWTRANSFORMANDLIGHT           0x000010000
#define WINED3DDEVCAPS_CANBLTSYSTONONLOCAL           0x000020000
#define WINED3DDEVCAPS_HWRASTERIZATION               0x000080000
#define WINED3DDEVCAPS_PUREDEVICE                    0x000100000
#define WINED3DDEVCAPS_QUINTICRTPATCHES              0x000200000
#define WINED3DDEVCAPS_RTPATCHES                     0x000400000
#define WINED3DDEVCAPS_RTPATCHHANDLEZERO             0x000800000
#define WINED3DDEVCAPS_NPATCHES                      0x001000000

#define WINED3DLOCK_READONLY           0x0010
#define WINED3DLOCK_NOSYSLOCK          0x0800
#define WINED3DLOCK_NOOVERWRITE        0x1000
#define WINED3DLOCK_DISCARD            0x2000
#define WINED3DLOCK_DONOTWAIT          0x4000
#define WINED3DLOCK_NO_DIRTY_UPDATE    0x8000

#define WINED3DPRESENT_RATE_DEFAULT                  0x000000000

#define WINED3DPRESENT_INTERVAL_DEFAULT              0x00000000
#define WINED3DPRESENT_INTERVAL_ONE                  0x00000001
#define WINED3DPRESENT_INTERVAL_TWO                  0x00000002
#define WINED3DPRESENT_INTERVAL_THREE                0x00000004
#define WINED3DPRESENT_INTERVAL_FOUR                 0x00000008
#define WINED3DPRESENT_INTERVAL_IMMEDIATE            0x80000000

#define WINED3DMAXUSERCLIPPLANES       32
#define WINED3DCLIPPLANE0              (1 << 0)
#define WINED3DCLIPPLANE1              (1 << 1)
#define WINED3DCLIPPLANE2              (1 << 2)
#define WINED3DCLIPPLANE3              (1 << 3)
#define WINED3DCLIPPLANE4              (1 << 4)
#define WINED3DCLIPPLANE5              (1 << 5)

/* FVF (Flexible Vertex Format) codes */
#define WINED3DFVF_RESERVED0           0x0001
#define WINED3DFVF_POSITION_MASK       0x000E
#define WINED3DFVF_XYZ                 0x0002
#define WINED3DFVF_XYZRHW              0x0004
#define WINED3DFVF_XYZB1               0x0006
#define WINED3DFVF_XYZB2               0x0008
#define WINED3DFVF_XYZB3               0x000a
#define WINED3DFVF_XYZB4               0x000c
#define WINED3DFVF_XYZB5               0x000e
#define WINED3DFVF_XYZW                0x4002
#define WINED3DFVF_NORMAL              0x0010
#define WINED3DFVF_PSIZE               0x0020
#define WINED3DFVF_DIFFUSE             0x0040
#define WINED3DFVF_SPECULAR            0x0080
#define WINED3DFVF_TEXCOUNT_MASK       0x0f00
#define WINED3DFVF_TEXCOUNT_SHIFT           8
#define WINED3DFVF_TEX0                0x0000
#define WINED3DFVF_TEX1                0x0100
#define WINED3DFVF_TEX2                0x0200
#define WINED3DFVF_TEX3                0x0300
#define WINED3DFVF_TEX4                0x0400
#define WINED3DFVF_TEX5                0x0500
#define WINED3DFVF_TEX6                0x0600
#define WINED3DFVF_TEX7                0x0700
#define WINED3DFVF_TEX8                0x0800
#define WINED3DFVF_LASTBETA_UBYTE4     0x1000
#define WINED3DFVF_LASTBETA_D3DCOLOR   0x8000
#define WINED3DFVF_RESERVED2           0x6000

#define WINED3DFVF_TEXTUREFORMAT1 3
#define WINED3DFVF_TEXTUREFORMAT2 0
#define WINED3DFVF_TEXTUREFORMAT3 1
#define WINED3DFVF_TEXTUREFORMAT4 2
#define WINED3DFVF_TEXCOORDSIZE1(CoordIndex) (WINED3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16))
#define WINED3DFVF_TEXCOORDSIZE2(CoordIndex) (WINED3DFVF_TEXTUREFORMAT2)
#define WINED3DFVF_TEXCOORDSIZE3(CoordIndex) (WINED3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16))
#define WINED3DFVF_TEXCOORDSIZE4(CoordIndex) (WINED3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16))

/* Clear flags */
#define WINED3DCLEAR_TARGET   0x00000001
#define WINED3DCLEAR_ZBUFFER  0x00000002
#define WINED3DCLEAR_STENCIL  0x00000004

/* Stream source flags */
#define WINED3DSTREAMSOURCE_INDEXEDDATA  (1 << 30)
#define WINED3DSTREAMSOURCE_INSTANCEDATA (2 << 30)

/* SetPrivateData flags */
#define WINED3DSPD_IUNKNOWN 0x00000001

/* IWineD3D::CreateDevice behaviour flags */
#define WINED3DCREATE_FPU_PRESERVE                  0x00000002
#define WINED3DCREATE_PUREDEVICE                    0x00000010
#define WINED3DCREATE_SOFTWARE_VERTEXPROCESSING     0x00000020
#define WINED3DCREATE_HARDWARE_VERTEXPROCESSING     0x00000040
#define WINED3DCREATE_MIXED_VERTEXPROCESSING        0x00000080
#define WINED3DCREATE_DISABLE_DRIVER_MANAGEMENT     0x00000100
#define WINED3DCREATE_ADAPTERGROUP_DEVICE           0x00000200

/* VTF defines */
#define WINED3DDMAPSAMPLER              0x100
#define WINED3DVERTEXTEXTURESAMPLER0    (WINED3DDMAPSAMPLER + 1)
#define WINED3DVERTEXTEXTURESAMPLER1    (WINED3DDMAPSAMPLER + 2)
#define WINED3DVERTEXTEXTURESAMPLER2    (WINED3DDMAPSAMPLER + 3)
#define WINED3DVERTEXTEXTURESAMPLER3    (WINED3DDMAPSAMPLER + 4)

/* DirectDraw types */

typedef struct _WINEDDCOLORKEY
{
    DWORD       dwColorSpaceLowValue;           /* low boundary of color space that is to
                                                 * be treated as Color Key, inclusive
                                                 */
    DWORD       dwColorSpaceHighValue;          /* high boundary of color space that is
                                                 * to be treated as Color Key, inclusive
                                                 */
} WINEDDCOLORKEY,*LPWINEDDCOLORKEY;

typedef struct _WINEDDBLTFX
{
    DWORD       dwSize;                         /* size of structure */
    DWORD       dwDDFX;                         /* FX operations */
    DWORD       dwROP;                          /* Win32 raster operations */
    DWORD       dwDDROP;                        /* Raster operations new for DirectDraw */
    DWORD       dwRotationAngle;                /* Rotation angle for blt */
    DWORD       dwZBufferOpCode;                /* ZBuffer compares */
    DWORD       dwZBufferLow;                   /* Low limit of Z buffer */
    DWORD       dwZBufferHigh;                  /* High limit of Z buffer */
    DWORD       dwZBufferBaseDest;              /* Destination base value */
    DWORD       dwZDestConstBitDepth;           /* Bit depth used to specify Z constant for destination */
    union
    {
        DWORD   dwZDestConst;                   /* Constant to use as Z buffer for dest */
        struct IWineD3DSurface *lpDDSZBufferDest;      /* Surface to use as Z buffer for dest */
    } DUMMYUNIONNAME1;
    DWORD       dwZSrcConstBitDepth;            /* Bit depth used to specify Z constant for source */
    union
    {
        DWORD   dwZSrcConst;                    /* Constant to use as Z buffer for src */
        struct IWineD3DSurface *lpDDSZBufferSrc;/* Surface to use as Z buffer for src */
    } DUMMYUNIONNAME2;
    DWORD       dwAlphaEdgeBlendBitDepth;       /* Bit depth used to specify constant for alpha edge blend */
    DWORD       dwAlphaEdgeBlend;               /* Alpha for edge blending */
    DWORD       dwReserved;
    DWORD       dwAlphaDestConstBitDepth;       /* Bit depth used to specify alpha constant for destination */
    union
    {
        DWORD   dwAlphaDestConst;               /* Constant to use as Alpha Channel */
        struct IWineD3DSurface *lpDDSAlphaDest; /* Surface to use as Alpha Channel */
    } DUMMYUNIONNAME3;
    DWORD       dwAlphaSrcConstBitDepth;        /* Bit depth used to specify alpha constant for source */
    union
    {
        DWORD   dwAlphaSrcConst;                /* Constant to use as Alpha Channel */
        struct IWineD3DSurface *lpDDSAlphaSrc;  /* Surface to use as Alpha Channel */
    } DUMMYUNIONNAME4;
    union
    {
        DWORD   dwFillColor;                    /* color in RGB or Palettized */
        DWORD   dwFillDepth;                    /* depth value for z-buffer */
	DWORD   dwFillPixel;			/* pixel val for RGBA or RGBZ */
        struct IWineD3DSurface *lpDDSPattern;   /* Surface to use as pattern */
    } DUMMYUNIONNAME5;
    WINEDDCOLORKEY  ddckDestColorkey;          /* DestColorkey override */
    WINEDDCOLORKEY  ddckSrcColorkey;           /* SrcColorkey override */
} WINEDDBLTFX,*LPWINEDDBLTFX;

typedef struct _WINEDDOVERLAYFX
{
    DWORD       dwSize;                         /* size of structure */
    DWORD       dwAlphaEdgeBlendBitDepth;       /* Bit depth used to specify constant for alpha edge blend */
    DWORD       dwAlphaEdgeBlend;               /* Constant to use as alpha for edge blend */
    DWORD       dwReserved;
    DWORD       dwAlphaDestConstBitDepth;       /* Bit depth used to specify alpha constant for destination */
    union
    {
        DWORD   dwAlphaDestConst;               /* Constant to use as alpha channel for dest */
        struct IWineD3DSurface *lpDDSAlphaDest; /* Surface to use as alpha channel for dest */
    } DUMMYUNIONNAME1;
    DWORD       dwAlphaSrcConstBitDepth;        /* Bit depth used to specify alpha constant for source */
    union
    {
        DWORD   dwAlphaSrcConst;                /* Constant to use as alpha channel for src */
        struct IWineD3DSurface *lpDDSAlphaSrc;  /* Surface to use as alpha channel for src */
    } DUMMYUNIONNAME2;
    WINEDDCOLORKEY  dckDestColorkey;            /* DestColorkey override *

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -