📄 direct3d9.pas
字号:
{$EXTERNALSYM D3DFILL_POINT}
D3DFILL_WIREFRAME = 2;
{$EXTERNALSYM D3DFILL_WIREFRAME}
D3DFILL_SOLID = 3;
{$EXTERNALSYM D3DFILL_SOLID}
type
_D3DBLEND = type DWord;
{$EXTERNALSYM _D3DBLEND}
D3DBLEND = _D3DBLEND;
{$EXTERNALSYM D3DBLEND}
TD3DBlend = _D3DBLEND;
const
D3DBLEND_ZERO = 1;
{$EXTERNALSYM D3DBLEND_ZERO}
D3DBLEND_ONE = 2;
{$EXTERNALSYM D3DBLEND_ONE}
D3DBLEND_SRCCOLOR = 3;
{$EXTERNALSYM D3DBLEND_SRCCOLOR}
D3DBLEND_INVSRCCOLOR = 4;
{$EXTERNALSYM D3DBLEND_INVSRCCOLOR}
D3DBLEND_SRCALPHA = 5;
{$EXTERNALSYM D3DBLEND_SRCALPHA}
D3DBLEND_INVSRCALPHA = 6;
{$EXTERNALSYM D3DBLEND_INVSRCALPHA}
D3DBLEND_DESTALPHA = 7;
{$EXTERNALSYM D3DBLEND_DESTALPHA}
D3DBLEND_INVDESTALPHA = 8;
{$EXTERNALSYM D3DBLEND_INVDESTALPHA}
D3DBLEND_DESTCOLOR = 9;
{$EXTERNALSYM D3DBLEND_DESTCOLOR}
D3DBLEND_INVDESTCOLOR = 10;
{$EXTERNALSYM D3DBLEND_INVDESTCOLOR}
D3DBLEND_SRCALPHASAT = 11;
{$EXTERNALSYM D3DBLEND_SRCALPHASAT}
D3DBLEND_BOTHSRCALPHA = 12;
{$EXTERNALSYM D3DBLEND_BOTHSRCALPHA}
D3DBLEND_BOTHINVSRCALPHA = 13;
{$EXTERNALSYM D3DBLEND_BOTHINVSRCALPHA}
D3DBLEND_BLENDFACTOR = 14; (* Only supported if D3DPBLENDCAPS_BLENDFACTOR is on *)
{$EXTERNALSYM D3DBLEND_BLENDFACTOR}
D3DBLEND_INVBLENDFACTOR = 15; (* Only supported if D3DPBLENDCAPS_BLENDFACTOR is on *)
{$EXTERNALSYM D3DBLEND_INVBLENDFACTOR}
type
_D3DBLENDOP = type DWord;
{$EXTERNALSYM _D3DBLENDOP}
D3DBLENDOP = _D3DBLENDOP;
{$EXTERNALSYM D3DBLENDOP}
TD3DBlendOp = _D3DBLENDOP;
const
D3DBLENDOP_ADD = 1;
{$EXTERNALSYM D3DBLENDOP_ADD}
D3DBLENDOP_SUBTRACT = 2;
{$EXTERNALSYM D3DBLENDOP_SUBTRACT}
D3DBLENDOP_REVSUBTRACT = 3;
{$EXTERNALSYM D3DBLENDOP_REVSUBTRACT}
D3DBLENDOP_MIN = 4;
{$EXTERNALSYM D3DBLENDOP_MIN}
D3DBLENDOP_MAX = 5;
{$EXTERNALSYM D3DBLENDOP_MAX}
type
_D3DTEXTUREADDRESS = type DWord;
{$EXTERNALSYM _D3DTEXTUREADDRESS}
D3DTEXTUREADDRESS = _D3DTEXTUREADDRESS;
{$EXTERNALSYM D3DTEXTUREADDRESS}
TD3DTextureAddress = _D3DTEXTUREADDRESS;
const
D3DTADDRESS_WRAP = 1;
{$EXTERNALSYM D3DTADDRESS_WRAP}
D3DTADDRESS_MIRROR = 2;
{$EXTERNALSYM D3DTADDRESS_MIRROR}
D3DTADDRESS_CLAMP = 3;
{$EXTERNALSYM D3DTADDRESS_CLAMP}
D3DTADDRESS_BORDER = 4;
{$EXTERNALSYM D3DTADDRESS_BORDER}
D3DTADDRESS_MIRRORONCE = 5;
{$EXTERNALSYM D3DTADDRESS_MIRRORONCE}
type
_D3DCULL = type DWord;
{$EXTERNALSYM _D3DCULL}
D3DCULL = _D3DCULL;
{$EXTERNALSYM D3DCULL}
TD3DCull = _D3DCULL;
const
D3DCULL_NONE = 1;
{$EXTERNALSYM D3DCULL_NONE}
D3DCULL_CW = 2;
{$EXTERNALSYM D3DCULL_CW}
D3DCULL_CCW = 3;
{$EXTERNALSYM D3DCULL_CCW}
type
_D3DCMPFUNC = type DWord;
{$EXTERNALSYM _D3DCMPFUNC}
D3DCMPFUNC = _D3DCMPFUNC;
{$EXTERNALSYM D3DCMPFUNC}
TD3DCmpFunc = _D3DCMPFUNC;
const
D3DCMP_NEVER = 1;
{$EXTERNALSYM D3DCMP_NEVER}
D3DCMP_LESS = 2;
{$EXTERNALSYM D3DCMP_LESS}
D3DCMP_EQUAL = 3;
{$EXTERNALSYM D3DCMP_EQUAL}
D3DCMP_LESSEQUAL = 4;
{$EXTERNALSYM D3DCMP_LESSEQUAL}
D3DCMP_GREATER = 5;
{$EXTERNALSYM D3DCMP_GREATER}
D3DCMP_NOTEQUAL = 6;
{$EXTERNALSYM D3DCMP_NOTEQUAL}
D3DCMP_GREATEREQUAL = 7;
{$EXTERNALSYM D3DCMP_GREATEREQUAL}
D3DCMP_ALWAYS = 8;
{$EXTERNALSYM D3DCMP_ALWAYS}
type
_D3DSTENCILOP = type DWord;
{$EXTERNALSYM _D3DSTENCILOP}
D3DSTENCILOP = _D3DSTENCILOP;
{$EXTERNALSYM D3DSTENCILOP}
TD3DStencilOp = _D3DSTENCILOP;
const
D3DSTENCILOP_KEEP = 1;
{$EXTERNALSYM D3DSTENCILOP_KEEP}
D3DSTENCILOP_ZERO = 2;
{$EXTERNALSYM D3DSTENCILOP_ZERO}
D3DSTENCILOP_REPLACE = 3;
{$EXTERNALSYM D3DSTENCILOP_REPLACE}
D3DSTENCILOP_INCRSAT = 4;
{$EXTERNALSYM D3DSTENCILOP_INCRSAT}
D3DSTENCILOP_DECRSAT = 5;
{$EXTERNALSYM D3DSTENCILOP_DECRSAT}
D3DSTENCILOP_INVERT = 6;
{$EXTERNALSYM D3DSTENCILOP_INVERT}
D3DSTENCILOP_INCR = 7;
{$EXTERNALSYM D3DSTENCILOP_INCR}
D3DSTENCILOP_DECR = 8;
{$EXTERNALSYM D3DSTENCILOP_DECR}
type
_D3DFOGMODE = type DWord;
{$EXTERNALSYM _D3DFOGMODE}
D3DFOGMODE = _D3DFOGMODE;
{$EXTERNALSYM D3DFOGMODE}
TD3DFogMode = _D3DFOGMODE;
const
D3DFOG_NONE = 0;
{$EXTERNALSYM D3DFOG_NONE}
D3DFOG_EXP = 1;
{$EXTERNALSYM D3DFOG_EXP}
D3DFOG_EXP2 = 2;
{$EXTERNALSYM D3DFOG_EXP2}
D3DFOG_LINEAR = 3;
{$EXTERNALSYM D3DFOG_LINEAR}
type
_D3DZBUFFERTYPE = type DWord;
{$EXTERNALSYM _D3DZBUFFERTYPE}
D3DZBUFFERTYPE = _D3DZBUFFERTYPE;
{$EXTERNALSYM D3DZBUFFERTYPE}
TD3DZBufferType = _D3DZBUFFERTYPE;
const
D3DZB_FALSE = 0;
{$EXTERNALSYM D3DZB_FALSE}
D3DZB_TRUE = 1;
{$EXTERNALSYM D3DZB_TRUE}
D3DZB_USEW = 2;
{$EXTERNALSYM D3DZB_USEW}
type
// Primitives supported by draw-primitive API
_D3DPRIMITIVETYPE = (
D3DPT_POINTLIST = 1,
D3DPT_LINELIST = 2,
D3DPT_LINESTRIP = 3,
D3DPT_TRIANGLELIST = 4,
D3DPT_TRIANGLESTRIP = 5,
D3DPT_TRIANGLEFAN = 6
);
{$EXTERNALSYM _D3DPRIMITIVETYPE}
D3DPRIMITIVETYPE = _D3DPRIMITIVETYPE;
{$EXTERNALSYM D3DPRIMITIVETYPE}
TD3DPrimitiveType = _D3DPRIMITIVETYPE;
type
_D3DTRANSFORMSTATETYPE = (
D3DTS_VIEW = 2,
D3DTS_PROJECTION = 3,
D3DTS_TEXTURE0 = 16,
D3DTS_TEXTURE1 = 17,
D3DTS_TEXTURE2 = 18,
D3DTS_TEXTURE3 = 19,
D3DTS_TEXTURE4 = 20,
D3DTS_TEXTURE5 = 21,
D3DTS_TEXTURE6 = 22,
D3DTS_TEXTURE7 = 23
);
{$EXTERNALSYM _D3DTRANSFORMSTATETYPE}
D3DTRANSFORMSTATETYPE = _D3DTRANSFORMSTATETYPE;
{$EXTERNALSYM D3DTRANSFORMSTATETYPE}
TD3DTransformStateType = _D3DTRANSFORMSTATETYPE;
// #define D3DTS_WORLDMATRIX(index) (D3DTRANSFORMSTATETYPE)(index + 256)
function D3DTS_WORLDMATRIX(index: Byte): TD3DTransformStateType; inline;
{$EXTERNALSYM D3DTS_WORLDMATRIX}
const
D3DTS_WORLD = TD3DTransformStateType(0 + 256); // #define D3DTS_WORLD D3DTS_WORLDMATRIX(0)
{$EXTERNALSYM D3DTS_WORLD}
D3DTS_WORLD1 = TD3DTransformStateType(1 + 256); // #define D3DTS_WORLD1 D3DTS_WORLDMATRIX(1)
{$EXTERNALSYM D3DTS_WORLD1}
D3DTS_WORLD2 = TD3DTransformStateType(2 + 256); // #define D3DTS_WORLD2 D3DTS_WORLDMATRIX(2)
{$EXTERNALSYM D3DTS_WORLD2}
D3DTS_WORLD3 = TD3DTransformStateType(3 + 256); // #define D3DTS_WORLD3 D3DTS_WORLDMATRIX(3)
{$EXTERNALSYM D3DTS_WORLD3}
type
_D3DRENDERSTATETYPE = (
D3DRS_ZENABLE = 7, (* D3DZBUFFERTYPE (or TRUE/FALSE for legacy) *)
D3DRS_FILLMODE = 8, (* D3DFILLMODE *)
D3DRS_SHADEMODE = 9, (* D3DSHADEMODE *)
D3DRS_ZWRITEENABLE = 14, (* TRUE to enable z writes *)
D3DRS_ALPHATESTENABLE = 15, (* TRUE to enable alpha tests *)
D3DRS_LASTPIXEL = 16, (* TRUE for last-pixel on lines *)
D3DRS_SRCBLEND = 19, (* D3DBLEND *)
D3DRS_DESTBLEND = 20, (* D3DBLEND *)
D3DRS_CULLMODE = 22, (* D3DCULL *)
D3DRS_ZFUNC = 23, (* D3DCMPFUNC *)
D3DRS_ALPHAREF = 24, (* D3DFIXED *)
D3DRS_ALPHAFUNC = 25, (* D3DCMPFUNC *)
D3DRS_DITHERENABLE = 26, (* TRUE to enable dithering *)
D3DRS_ALPHABLENDENABLE = 27, (* TRUE to enable alpha blending *)
D3DRS_FOGENABLE = 28, (* TRUE to enable fog blending *)
D3DRS_SPECULARENABLE = 29, (* TRUE to enable specular *)
D3DRS_FOGCOLOR = 34, (* D3DCOLOR *)
D3DRS_FOGTABLEMODE = 35, (* D3DFOGMODE *)
D3DRS_FOGSTART = 36, (* Fog start (for both vertex and pixel fog) *)
D3DRS_FOGEND = 37, (* Fog end *)
D3DRS_FOGDENSITY = 38, (* Fog density *)
D3DRS_RANGEFOGENABLE = 48, (* Enables range-based fog *)
D3DRS_STENCILENABLE = 52, (* BOOL enable/disable stenciling *)
D3DRS_STENCILFAIL = 53, (* D3DSTENCILOP to do if stencil test fails *)
D3DRS_STENCILZFAIL = 54, (* D3DSTENCILOP to do if stencil test passes and Z test fails *)
D3DRS_STENCILPASS = 55, (* D3DSTENCILOP to do if both stencil and Z tests pass *)
D3DRS_STENCILFUNC = 56, (* D3DCMPFUNC fn. Stencil Test passes if ((ref & mask) stencilfn (stencil & mask)) is true *)
D3DRS_STENCILREF = 57, (* Reference value used in stencil test *)
D3DRS_STENCILMASK = 58, (* Mask value used in stencil test *)
D3DRS_STENCILWRITEMASK = 59, (* Write mask applied to values written to stencil buffer *)
D3DRS_TEXTUREFACTOR = 60, (* D3DCOLOR used for multi-texture blend *)
D3DRS_WRAP0 = 128, (* wrap for 1st texture coord. set *)
D3DRS_WRAP1 = 129, (* wrap for 2nd texture coord. set *)
D3DRS_WRAP2 = 130, (* wrap for 3rd texture coord. set *)
D3DRS_WRAP3 = 131, (* wrap for 4th texture coord. set *)
D3DRS_WRAP4 = 132, (* wrap for 5th texture coord. set *)
D3DRS_WRAP5 = 133, (* wrap for 6th texture coord. set *)
D3DRS_WRAP6 = 134, (* wrap for 7th texture coord. set *)
D3DRS_WRAP7 = 135, (* wrap for 8th texture coord. set *)
D3DRS_CLIPPING = 136,
D3DRS_LIGHTING = 137,
D3DRS_AMBIENT = 139,
D3DRS_FOGVERTEXMODE = 140,
D3DRS_COLORVERTEX = 141,
D3DRS_LOCALVIEWER = 142,
D3DRS_NORMALIZENORMALS = 143,
D3DRS_DIFFUSEMATERIALSOURCE = 145,
D3DRS_SPECULARMATERIALSOURCE = 146,
D3DRS_AMBIENTMATERIALSOURCE = 147,
D3DRS_EMISSIVEMATERIALSOURCE = 148,
D3DRS_VERTEXBLEND = 151,
D3DRS_CLIPPLANEENABLE = 152,
D3DRS_POINTSIZE = 154, (* float point size *)
D3DRS_POINTSIZE_MIN = 155, (* float point size min threshold *)
D3DRS_POINTSPRITEENABLE = 156, (* BOOL point texture coord control *)
D3DRS_POINTSCALEENABLE = 157, (* BOOL point size scale enable *)
D3DRS_POINTSCALE_A = 158, (* float point attenuation A value *)
D3DRS_POINTSCALE_B = 159, (* float point attenuation B value *)
D3DRS_POINTSCALE_C = 160, (* float point attenuation C value *)
D3DRS_MULTISAMPLEANTIALIAS = 161, // BOOL - set to do FSAA with multisample buffer
D3DRS_MULTISAMPLEMASK = 162, // DWORD - per-sample enable/disable
D3DRS_PATCHEDGESTYLE = 163, // Sets whether patch edges will use float style tessellation
D3DRS_DEBUGMONITORTOKEN = 165, // DEBUG ONLY - token to debug monitor
D3DRS_POINTSIZE_MAX = 166, (* float point size max threshold *)
D3DRS_INDEXEDVERTEXBLENDENABLE = 167,
D3DRS_COLORWRITEENABLE = 168, // per-channel write enable
D3DRS_TWEENFACTOR = 170, // float tween factor
D3DRS_BLENDOP = 171, // D3DBLENDOP setting
D3DRS_POSITIONDEGREE = 172, // NPatch position interpolation degree. D3DDEGREE_LINEAR or D3DDEGREE_CUBIC (default)
D3DRS_NORMALDEGREE = 173, // NPatch normal interpolation degree. D3DDEGREE_LINEAR (default) or D3DDEGREE_QUADRATIC
D3DRS_SCISSORTESTENABLE = 174,
D3DRS_SLOPESCALEDEPTHBIAS = 175,
D3DRS_ANTIALIASEDLINEENABLE = 176,
D3DRS_MINTESSELLATIONLEVEL = 178,
D3DRS_MAXTESSELLATIONLEVEL = 179,
D3DRS_ADAPTIVETESS_X = 180,
D3DRS_ADAPTIVETESS_Y = 181,
D3DRS_ADAPTIVETESS_Z = 182,
D3DRS_ADAPTIVETESS_W = 183,
D3DRS_ENABLEADAPTIVETESSELLATION = 184,
D3DRS_TWOSIDEDSTENCILMODE = 185, (* BOOL enable/disable 2 sided stenciling *)
D3DRS_CCW_STENCILFAIL = 186, (* D3DSTENCILOP to do if ccw stencil test fails *)
D3DRS_CCW_STENCILZFAIL = 187, (* D3DSTENCILOP to do if ccw stencil test passes and Z test fails *)
D3DRS_CCW_STENCILPASS = 188, (* D3DSTENCILOP to do if both ccw stencil and Z tests pass *)
D3DRS_CCW_STENCILFUNC = 189, (* D3DCMPFUNC fn. ccw Stencil Test passes if ((ref & mask) stencilfn (stencil & mask)) is true *)
D3DRS_COLORWRITEENABLE1 = 190, (* Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS *)
D3DRS_COLORWRITEENABLE2 = 191, (* Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS *)
D3DRS_COLORWRITEENABLE3 = 192, (* Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS *)
D3DRS_BLENDFACTOR = 193, (* D3DCOLOR used for a constant blend factor during alpha blending for devices that support D3DPBLENDCAPS_BLENDFACTOR *)
D3DRS_SRGBWRITEENABLE = 194, (* Enable rendertarget writes to be DE-linearized to SRGB (for formats that expose D3DUSAGE_QUERY_SRGBWRITE) *)
D3DRS_DEPTHBIAS = 195,
D3DRS_WRAP8 = 198, (* Additional wrap states for vs_3_0+ attributes with D3DDECLUSAGE_TEXCOORD *)
D3DRS_WRAP9 = 199,
D3DRS_WRAP10 = 200,
D3DRS_WRAP11 = 201,
D3DRS_WRAP12 = 202,
D3DRS_WRAP13 = 203,
D3DRS_WRAP14 = 204,
D3DRS_WRAP15 = 205,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -