[1] | 1 | ' d3d9types.sbp
|
---|
| 2 |
|
---|
| 3 |
|
---|
| 4 | #ifndef _INC_D3D9TYPES
|
---|
| 5 | #define _INC_D3D9TYPES
|
---|
| 6 |
|
---|
| 7 |
|
---|
| 8 | Const D3DCOLOR_ARGB(a,r,g,b) = ((a and &HFF)<<24) or ((r and &HFF)<<16) or ((g and &HFF)<<8) or (b and &HFF)
|
---|
| 9 | Const D3DCOLOR_RGBA(r,g,b,a) = D3DCOLOR_ARGB(a,r,g,b)
|
---|
| 10 | Const D3DCOLOR_XRGB(r,g,b) = D3DCOLOR_ARGB(&HFF,r,g,b)
|
---|
| 11 |
|
---|
| 12 | Const D3DCOLOR_COLORVALUE(r,g,b,a) = D3DCOLOR_RGBA(r*255,g*255,b*255,a*255)
|
---|
| 13 |
|
---|
| 14 |
|
---|
| 15 | Type D3DVECTOR
|
---|
| 16 | x As Single
|
---|
| 17 | y As Single
|
---|
| 18 | z As Single
|
---|
| 19 | End Type
|
---|
| 20 |
|
---|
| 21 | Type D3DCOLORVALUE
|
---|
| 22 | r As Single
|
---|
| 23 | g As Single
|
---|
| 24 | b As Single
|
---|
| 25 | a As Single
|
---|
| 26 | End Type
|
---|
| 27 |
|
---|
| 28 | Type D3DRECT
|
---|
| 29 | x1 As Long
|
---|
| 30 | y1 As Long
|
---|
| 31 | x2 As Long
|
---|
| 32 | y2 As Long
|
---|
| 33 | End Type
|
---|
| 34 |
|
---|
| 35 | Type D3DMATRIX
|
---|
| 36 | m[3,3] As Single
|
---|
| 37 | End Type
|
---|
| 38 |
|
---|
| 39 | Type D3DVIEWPORT9
|
---|
| 40 | X As DWord
|
---|
| 41 | Y As DWord
|
---|
| 42 | Width As DWord
|
---|
| 43 | Height As DWord
|
---|
| 44 | MinZ As Single
|
---|
| 45 | MaxZ As Single
|
---|
| 46 | End Type
|
---|
| 47 |
|
---|
| 48 | ' Max number of user clipping planes, supported in D3D.
|
---|
| 49 | Const D3DMAXUSERCLIPPLANES = 32
|
---|
| 50 |
|
---|
| 51 | ' These bits could be ORed together to use with D3DRS_CLIPPLANEENABLE
|
---|
| 52 | Const D3DCLIPPLANE0 = 1 << 0
|
---|
| 53 | Const D3DCLIPPLANE1 = 1 << 1
|
---|
| 54 | Const D3DCLIPPLANE2 = 1 << 2
|
---|
| 55 | Const D3DCLIPPLANE3 = 1 << 3
|
---|
| 56 | Const D3DCLIPPLANE4 = 1 << 4
|
---|
| 57 | Const D3DCLIPPLANE5 = 1 << 5
|
---|
| 58 |
|
---|
| 59 | Const D3DCS_LEFT = &H00000001
|
---|
| 60 | Const D3DCS_RIGHT = &H00000002
|
---|
| 61 | Const D3DCS_TOP = &H00000004
|
---|
| 62 | Const D3DCS_BOTTOM = &H00000008
|
---|
| 63 | Const D3DCS_FRONT = &H00000010
|
---|
| 64 | Const D3DCS_BACK = &H00000020
|
---|
| 65 | Const D3DCS_PLANE0 = &H00000040
|
---|
| 66 | Const D3DCS_PLANE1 = &H00000080
|
---|
| 67 | Const D3DCS_PLANE2 = &H00000100
|
---|
| 68 | Const D3DCS_PLANE3 = &H00000200
|
---|
| 69 | Const D3DCS_PLANE4 = &H00000400
|
---|
| 70 | Const D3DCS_PLANE5 = &H00000800
|
---|
| 71 | Const D3DCS_ALL = D3DCS_LEFT or D3DCS_RIGHT or D3DCS_TOP or D3DCS_BOTTOM or D3DCS_FRONT or D3DCS_BACK or D3DCS_PLANE0 or D3DCS_PLANE1 or D3DCS_PLANE2 or D3DCS_PLANE3 or D3DCS_PLANE4 or D3DCS_PLANE5
|
---|
| 72 | Type D3DCLIPSTATUS9
|
---|
| 73 | ClipUnion As DWord
|
---|
| 74 | ClipIntersection As DWord
|
---|
| 75 | End Type
|
---|
| 76 |
|
---|
| 77 | Type D3DMATERIAL9
|
---|
| 78 | Diffuse As D3DCOLORVALUE
|
---|
| 79 | Ambient As D3DCOLORVALUE
|
---|
| 80 | Specular As D3DCOLORVALUE
|
---|
| 81 | Emissive As D3DCOLORVALUE
|
---|
| 82 | Power As Single
|
---|
| 83 | End Type
|
---|
| 84 |
|
---|
| 85 | Const Enum D3DLIGHTTYPE
|
---|
| 86 | D3DLIGHT_POINT = 1
|
---|
| 87 | D3DLIGHT_SPOT = 2
|
---|
| 88 | D3DLIGHT_DIRECTIONAL = 3
|
---|
| 89 | D3DLIGHT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 90 | End Enum
|
---|
| 91 |
|
---|
| 92 | Type D3DLIGHT9
|
---|
| 93 | Type_ As D3DLIGHTTYPE
|
---|
| 94 | Diffuse As D3DCOLORVALUE
|
---|
| 95 | Specular As D3DCOLORVALUE
|
---|
| 96 | Ambient As D3DCOLORVALUE
|
---|
| 97 | Position As D3DVECTOR
|
---|
| 98 | Direction As D3DVECTOR
|
---|
| 99 | Range As Single
|
---|
| 100 | Falloff As Single
|
---|
| 101 | Attenuation0 As Single
|
---|
| 102 | Attenuation1 As Single
|
---|
| 103 | Attenuation2 As Single
|
---|
| 104 | Theta As Single
|
---|
| 105 | Phi As Single
|
---|
| 106 | End Type
|
---|
| 107 |
|
---|
| 108 |
|
---|
| 109 | ' Options for clearing
|
---|
| 110 | Const D3DCLEAR_TARGET = &H00000001 'Clear target surface
|
---|
| 111 | Const D3DCLEAR_ZBUFFER = &H00000002 'Clear target z buffer
|
---|
| 112 | Const D3DCLEAR_STENCIL = &H00000004 'Clear stencil planes
|
---|
| 113 |
|
---|
| 114 |
|
---|
| 115 | ' The following defines the rendering states
|
---|
| 116 | Const Enum D3DSHADEMODE
|
---|
| 117 | D3DSHADE_FLAT = 1
|
---|
| 118 | D3DSHADE_GOURAUD = 2
|
---|
| 119 | D3DSHADE_PHONG = 3
|
---|
| 120 | D3DSHADE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 121 | End Enum
|
---|
| 122 |
|
---|
| 123 | Const Enum D3DFILLMODE
|
---|
| 124 | D3DFILL_POINT = 1
|
---|
| 125 | D3DFILL_WIREFRAME = 2
|
---|
| 126 | D3DFILL_SOLID = 3
|
---|
| 127 | D3DFILL_FORCE_DWORD = &H7FFFFFFF
|
---|
| 128 | End Enum
|
---|
| 129 |
|
---|
| 130 | Const Enum D3DBLEND
|
---|
| 131 | D3DBLEND_ZERO = 1
|
---|
| 132 | D3DBLEND_ONE = 2
|
---|
| 133 | D3DBLEND_SRCCOLOR = 3
|
---|
| 134 | D3DBLEND_INVSRCCOLOR = 4
|
---|
| 135 | D3DBLEND_SRCALPHA = 5
|
---|
| 136 | D3DBLEND_INVSRCALPHA = 6
|
---|
| 137 | D3DBLEND_DESTALPHA = 7
|
---|
| 138 | D3DBLEND_INVDESTALPHA = 8
|
---|
| 139 | D3DBLEND_DESTCOLOR = 9
|
---|
| 140 | D3DBLEND_INVDESTCOLOR = 10
|
---|
| 141 | D3DBLEND_SRCALPHASAT = 11
|
---|
| 142 | D3DBLEND_BOTHSRCALPHA = 12
|
---|
| 143 | D3DBLEND_BOTHINVSRCALPHA = 13
|
---|
| 144 | D3DBLEND_BLENDFACTOR = 14 'Only supported if D3DPBLENDCAPS_BLENDFACTOR is on
|
---|
| 145 | D3DBLEND_INVBLENDFACTOR = 15 'Only supported if D3DPBLENDCAPS_BLENDFACTOR is on
|
---|
| 146 |
|
---|
| 147 | D3DBLEND_FORCE_DWORD = &H7FFFFFFF
|
---|
| 148 | End Enum
|
---|
| 149 |
|
---|
| 150 | Const Enum D3DBLENDOP
|
---|
| 151 | D3DBLENDOP_ADD = 1
|
---|
| 152 | D3DBLENDOP_SUBTRACT = 2
|
---|
| 153 | D3DBLENDOP_REVSUBTRACT = 3
|
---|
| 154 | D3DBLENDOP_MIN = 4
|
---|
| 155 | D3DBLENDOP_MAX = 5
|
---|
| 156 | D3DBLENDOP_FORCE_DWORD = &H7FFFFFFF
|
---|
| 157 | End Enum
|
---|
| 158 |
|
---|
| 159 | Const Enum D3DTEXTUREADDRESS
|
---|
| 160 | D3DTADDRESS_WRAP = 1
|
---|
| 161 | D3DTADDRESS_MIRROR = 2
|
---|
| 162 | D3DTADDRESS_CLAMP = 3
|
---|
| 163 | D3DTADDRESS_BORDER = 4
|
---|
| 164 | D3DTADDRESS_MIRRORONCE = 5
|
---|
| 165 | D3DTADDRESS_FORCE_DWORD = &H7FFFFFFF
|
---|
| 166 | End Enum
|
---|
| 167 |
|
---|
| 168 | Const Enum D3DCULL
|
---|
| 169 | D3DCULL_NONE = 1
|
---|
| 170 | D3DCULL_CW = 2
|
---|
| 171 | D3DCULL_CCW = 3
|
---|
| 172 | D3DCULL_FORCE_DWORD = &H7FFFFFFF
|
---|
| 173 | End Enum
|
---|
| 174 |
|
---|
| 175 | Const Enum D3DCMPFUNC
|
---|
| 176 | D3DCMP_NEVER = 1
|
---|
| 177 | D3DCMP_LESS = 2
|
---|
| 178 | D3DCMP_EQUAL = 3
|
---|
| 179 | D3DCMP_LESSEQUAL = 4
|
---|
| 180 | D3DCMP_GREATER = 5
|
---|
| 181 | D3DCMP_NOTEQUAL = 6
|
---|
| 182 | D3DCMP_GREATEREQUAL = 7
|
---|
| 183 | D3DCMP_ALWAYS = 8
|
---|
| 184 | D3DCMP_FORCE_DWORD = &H7FFFFFFF
|
---|
| 185 | End Enum
|
---|
| 186 |
|
---|
| 187 | Const Enum D3DSTENCILOP
|
---|
| 188 | D3DSTENCILOP_KEEP = 1
|
---|
| 189 | D3DSTENCILOP_ZERO = 2
|
---|
| 190 | D3DSTENCILOP_REPLACE = 3
|
---|
| 191 | D3DSTENCILOP_INCRSAT = 4
|
---|
| 192 | D3DSTENCILOP_DECRSAT = 5
|
---|
| 193 | D3DSTENCILOP_INVERT = 6
|
---|
| 194 | D3DSTENCILOP_INCR = 7
|
---|
| 195 | D3DSTENCILOP_DECR = 8
|
---|
| 196 | D3DSTENCILOP_FORCE_DWORD = &H7FFFFFFF
|
---|
| 197 | End Enum
|
---|
| 198 |
|
---|
| 199 | Const Enum D3DFOGMODE
|
---|
| 200 | D3DFOG_NONE = 0
|
---|
| 201 | D3DFOG_EXP = 1
|
---|
| 202 | D3DFOG_EXP2 = 2
|
---|
| 203 | D3DFOG_LINEAR = 3
|
---|
| 204 | D3DFOG_FORCE_DWORD = &H7FFFFFFF
|
---|
| 205 | End Enum
|
---|
| 206 |
|
---|
| 207 | Const Enum D3DZBUFFERTYPE
|
---|
| 208 | D3DZB_FALSE = 0
|
---|
| 209 | D3DZB_TRUE = 1 'Z buffering
|
---|
| 210 | D3DZB_USEW = 2 'W buffering
|
---|
| 211 | D3DZB_FORCE_DWORD = &H7FFFFFFF
|
---|
| 212 | End Enum
|
---|
| 213 |
|
---|
| 214 | ' Primitives supported by draw-primitive API
|
---|
| 215 | Const Enum D3DPRIMITIVETYPE
|
---|
| 216 | D3DPT_POINTLIST = 1
|
---|
| 217 | D3DPT_LINELIST = 2
|
---|
| 218 | D3DPT_LINESTRIP = 3
|
---|
| 219 | D3DPT_TRIANGLELIST = 4
|
---|
| 220 | D3DPT_TRIANGLESTRIP = 5
|
---|
| 221 | D3DPT_TRIANGLEFAN = 6
|
---|
| 222 | D3DPT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 223 | End Enum
|
---|
| 224 |
|
---|
| 225 |
|
---|
| 226 | Const D3DTS_WORLDMATRIX(index) = index + 256
|
---|
| 227 | Const Enum D3DTRANSFORMSTATETYPE
|
---|
| 228 | D3DTS_VIEW = 2
|
---|
| 229 | D3DTS_PROJECTION = 3
|
---|
| 230 | D3DTS_TEXTURE0 = 16
|
---|
| 231 | D3DTS_TEXTURE1 = 17
|
---|
| 232 | D3DTS_TEXTURE2 = 18
|
---|
| 233 | D3DTS_TEXTURE3 = 19
|
---|
| 234 | D3DTS_TEXTURE4 = 20
|
---|
| 235 | D3DTS_TEXTURE5 = 21
|
---|
| 236 | D3DTS_TEXTURE6 = 22
|
---|
| 237 | D3DTS_TEXTURE7 = 23
|
---|
| 238 | D3DTS_WORLD = D3DTS_WORLDMATRIX(0)
|
---|
| 239 | D3DTS_WORLD1 = D3DTS_WORLDMATRIX(1)
|
---|
| 240 | D3DTS_WORLD2 = D3DTS_WORLDMATRIX(2)
|
---|
| 241 | D3DTS_WORLD3 = D3DTS_WORLDMATRIX(3)
|
---|
| 242 | D3DTS_FORCE_DWORD = &H7FFFFFFF
|
---|
| 243 | End Enum
|
---|
| 244 |
|
---|
| 245 | Const Enum D3DRENDERSTATETYPE
|
---|
| 246 | D3DRS_ZENABLE = 7 'D3DZBUFFERTYPE (or TRUE/FALSE for legacy)
|
---|
| 247 | D3DRS_FILLMODE = 8 'D3DFILLMODE
|
---|
| 248 | D3DRS_SHADEMODE = 9 'D3DSHADEMODE
|
---|
| 249 | D3DRS_ZWRITEENABLE = 14 'TRUE to enable z writes
|
---|
| 250 | D3DRS_ALPHATESTENABLE = 15 'TRUE to enable alpha tests
|
---|
| 251 | D3DRS_LASTPIXEL = 16 'TRUE for last-pixel on lines
|
---|
| 252 | D3DRS_SRCBLEND = 19 'D3DBLEND
|
---|
| 253 | D3DRS_DESTBLEND = 20 'D3DBLEND
|
---|
| 254 | D3DRS_CULLMODE = 22 'D3DCULL
|
---|
| 255 | D3DRS_ZFUNC = 23 'D3DCMPFUNC
|
---|
| 256 | D3DRS_ALPHAREF = 24 'D3DFIXED
|
---|
| 257 | D3DRS_ALPHAFUNC = 25 'D3DCMPFUNC
|
---|
| 258 | D3DRS_DITHERENABLE = 26 'TRUE to enable dithering
|
---|
| 259 | D3DRS_ALPHABLENDENABLE = 27 'TRUE to enable alpha blending
|
---|
| 260 | D3DRS_FOGENABLE = 28 'TRUE to enable fog blending
|
---|
| 261 | D3DRS_SPECULARENABLE = 29 'TRUE to enable specular
|
---|
| 262 | D3DRS_FOGCOLOR = 34 'D3DCOLOR
|
---|
| 263 | D3DRS_FOGTABLEMODE = 35 'D3DFOGMODE
|
---|
| 264 | D3DRS_FOGSTART = 36 'Fog start (for both vertex and pixel fog)
|
---|
| 265 | D3DRS_FOGEND = 37 'Fog end
|
---|
| 266 | D3DRS_FOGDENSITY = 38 'Fog density
|
---|
| 267 | D3DRS_RANGEFOGENABLE = 48 'Enables range-based fog
|
---|
| 268 | D3DRS_STENCILENABLE = 52 'BOOL enable/disable stenciling
|
---|
| 269 | D3DRS_STENCILFAIL = 53 'D3DSTENCILOP to do if stencil test fails
|
---|
| 270 | D3DRS_STENCILZFAIL = 54 'D3DSTENCILOP to do if stencil test passes and Z test fails
|
---|
| 271 | D3DRS_STENCILPASS = 55 'D3DSTENCILOP to do if both stencil and Z tests pass
|
---|
| 272 | D3DRS_STENCILFUNC = 56 'D3DCMPFUNC fn. Stencil Test passes if ((ref & mask) stencilfn (stencil & mask)) is true
|
---|
| 273 | D3DRS_STENCILREF = 57 'Reference value used in stencil test
|
---|
| 274 | D3DRS_STENCILMASK = 58 'Mask value used in stencil test
|
---|
| 275 | D3DRS_STENCILWRITEMASK = 59 'Write mask applied to values written to stencil buffer
|
---|
| 276 | D3DRS_TEXTUREFACTOR = 60 'D3DCOLOR used for multi-texture blend
|
---|
| 277 | D3DRS_WRAP0 = 128 'wrap for 1st texture coord. set
|
---|
| 278 | D3DRS_WRAP1 = 129 'wrap for 2nd texture coord. set
|
---|
| 279 | D3DRS_WRAP2 = 130 'wrap for 3rd texture coord. set
|
---|
| 280 | D3DRS_WRAP3 = 131 'wrap for 4th texture coord. set
|
---|
| 281 | D3DRS_WRAP4 = 132 'wrap for 5th texture coord. set
|
---|
| 282 | D3DRS_WRAP5 = 133 'wrap for 6th texture coord. set
|
---|
| 283 | D3DRS_WRAP6 = 134 'wrap for 7th texture coord. set
|
---|
| 284 | D3DRS_WRAP7 = 135 'wrap for 8th texture coord. set
|
---|
| 285 | D3DRS_CLIPPING = 136
|
---|
| 286 | D3DRS_LIGHTING = 137
|
---|
| 287 | D3DRS_AMBIENT = 139
|
---|
| 288 | D3DRS_FOGVERTEXMODE = 140
|
---|
| 289 | D3DRS_COLORVERTEX = 141
|
---|
| 290 | D3DRS_LOCALVIEWER = 142
|
---|
| 291 | D3DRS_NORMALIZENORMALS = 143
|
---|
| 292 | D3DRS_DIFFUSEMATERIALSOURCE = 145
|
---|
| 293 | D3DRS_SPECULARMATERIALSOURCE = 146
|
---|
| 294 | D3DRS_AMBIENTMATERIALSOURCE = 147
|
---|
| 295 | D3DRS_EMISSIVEMATERIALSOURCE = 148
|
---|
| 296 | D3DRS_VERTEXBLEND = 151
|
---|
| 297 | D3DRS_CLIPPLANEENABLE = 152
|
---|
| 298 | D3DRS_POINTSIZE = 154 'float point size
|
---|
| 299 | D3DRS_POINTSIZE_MIN = 155 'float point size min threshold
|
---|
| 300 | D3DRS_POINTSPRITEENABLE = 156 'BOOL point texture coord control
|
---|
| 301 | D3DRS_POINTSCALEENABLE = 157 'BOOL point size scale enable
|
---|
| 302 | D3DRS_POINTSCALE_A = 158 'float point attenuation A value
|
---|
| 303 | D3DRS_POINTSCALE_B = 159 'float point attenuation B value
|
---|
| 304 | D3DRS_POINTSCALE_C = 160 'float point attenuation C value
|
---|
| 305 | D3DRS_MULTISAMPLEANTIALIAS = 161 ' BOOL - set to do FSAA with multisample buffer
|
---|
| 306 | D3DRS_MULTISAMPLEMASK = 162 ' DWORD - per-sample enable/disable
|
---|
| 307 | D3DRS_PATCHEDGESTYLE = 163 ' Sets whether patch edges will use float style tessellation
|
---|
| 308 | D3DRS_DEBUGMONITORTOKEN = 165 ' DEBUG ONLY - token to debug monitor
|
---|
| 309 | D3DRS_POINTSIZE_MAX = 166 'float point size max threshold
|
---|
| 310 | D3DRS_INDEXEDVERTEXBLENDENABLE = 167
|
---|
| 311 | D3DRS_COLORWRITEENABLE = 168 ' per-channel write enable
|
---|
| 312 | D3DRS_TWEENFACTOR = 170 ' float tween factor
|
---|
| 313 | D3DRS_BLENDOP = 171 ' D3DBLENDOP setting
|
---|
| 314 | D3DRS_POSITIONDEGREE = 172 ' NPatch position interpolation degree. D3DDEGREE_LINEAR or D3DDEGREE_CUBIC (default)
|
---|
| 315 | D3DRS_NORMALDEGREE = 173 ' NPatch normal interpolation degree. D3DDEGREE_LINEAR (default) or D3DDEGREE_QUADRATIC
|
---|
| 316 | D3DRS_SCISSORTESTENABLE = 174
|
---|
| 317 | D3DRS_SLOPESCALEDEPTHBIAS = 175
|
---|
| 318 | D3DRS_ANTIALIASEDLINEENABLE = 176
|
---|
| 319 | D3DRS_MINTESSELLATIONLEVEL = 178
|
---|
| 320 | D3DRS_MAXTESSELLATIONLEVEL = 179
|
---|
| 321 | D3DRS_ADAPTIVETESS_X = 180
|
---|
| 322 | D3DRS_ADAPTIVETESS_Y = 181
|
---|
| 323 | D3DRS_ADAPTIVETESS_Z = 182
|
---|
| 324 | D3DRS_ADAPTIVETESS_W = 183
|
---|
| 325 | D3DRS_ENABLEADAPTIVETESSELLATION = 184
|
---|
| 326 | D3DRS_TWOSIDEDSTENCILMODE = 185 'BOOL enable/disable 2 sided stenciling
|
---|
| 327 | D3DRS_CCW_STENCILFAIL = 186 'D3DSTENCILOP to do if ccw stencil test fails
|
---|
| 328 | D3DRS_CCW_STENCILZFAIL = 187 'D3DSTENCILOP to do if ccw stencil test passes and Z test fails
|
---|
| 329 | D3DRS_CCW_STENCILPASS = 188 'D3DSTENCILOP to do if both ccw stencil and Z tests pass
|
---|
| 330 | D3DRS_CCW_STENCILFUNC = 189 'D3DCMPFUNC fn. ccw Stencil Test passes if ((ref & mask) stencilfn (stencil & mask)) is true
|
---|
| 331 | D3DRS_COLORWRITEENABLE1 = 190 'Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS
|
---|
| 332 | D3DRS_COLORWRITEENABLE2 = 191 'Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS
|
---|
| 333 | D3DRS_COLORWRITEENABLE3 = 192 'Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS
|
---|
| 334 | D3DRS_BLENDFACTOR = 193 'D3DCOLOR used for a constant blend factor during alpha blending for devices that support D3DPBLENDCAPS_BLENDFACTOR
|
---|
| 335 | D3DRS_SRGBWRITEENABLE = 194 'Enable rendertarget writes to be DE-linearized to SRGB (for formats that expose D3DUSAGE_QUERY_SRGBWRITE)
|
---|
| 336 | D3DRS_DEPTHBIAS = 195
|
---|
| 337 | D3DRS_WRAP8 = 198 'Additional wrap states for vs_3_0+ attributes with D3DDECLUSAGE_TEXCOORD
|
---|
| 338 | D3DRS_WRAP9 = 199
|
---|
| 339 | D3DRS_WRAP10 = 200
|
---|
| 340 | D3DRS_WRAP11 = 201
|
---|
| 341 | D3DRS_WRAP12 = 202
|
---|
| 342 | D3DRS_WRAP13 = 203
|
---|
| 343 | D3DRS_WRAP14 = 204
|
---|
| 344 | D3DRS_WRAP15 = 205
|
---|
| 345 | D3DRS_SEPARATEALPHABLENDENABLE = 206 'TRUE to enable a separate blending function for the alpha channel
|
---|
| 346 | D3DRS_SRCBLENDALPHA = 207 'SRC blend factor for the alpha channel when D3DRS_SEPARATEDESTALPHAENABLE is TRUE
|
---|
| 347 | D3DRS_DESTBLENDALPHA = 208 'DST blend factor for the alpha channel when D3DRS_SEPARATEDESTALPHAENABLE is TRUE
|
---|
| 348 | D3DRS_BLENDOPALPHA = 209 'Blending operation for the alpha channel when D3DRS_SEPARATEDESTALPHAENABLE is TRUE
|
---|
| 349 | D3DRS_FORCE_DWORD = &H7FFFFFFF
|
---|
| 350 | End Enum
|
---|
| 351 |
|
---|
| 352 | ' Values for material source
|
---|
| 353 | Const Enum D3DMATERIALCOLORSOURCE
|
---|
| 354 | D3DMCS_MATERIAL = 0 'Color from material is used
|
---|
| 355 | D3DMCS_COLOR1 = 1 'Diffuse vertex color is used
|
---|
| 356 | D3DMCS_COLOR2 = 2 'Specular vertex color is used
|
---|
| 357 | D3DMCS_FORCE_DWORD = &H7FFFFFFF
|
---|
| 358 | End Enum
|
---|
| 359 |
|
---|
| 360 | ' Bias to apply to the texture coordinate set to apply a wrap to.
|
---|
| 361 | Const D3DRENDERSTATE_WRAPBIAS = 128
|
---|
| 362 |
|
---|
| 363 | ' Flags to construct the WRAP render states
|
---|
| 364 | Const D3DWRAP_U = &H00000001
|
---|
| 365 | Const D3DWRAP_V = &H00000002
|
---|
| 366 | Const D3DWRAP_W = &H00000004
|
---|
| 367 |
|
---|
| 368 | ' Flags to construct the WRAP render states for 1D thru 4D texture coordinates
|
---|
| 369 | Const D3DWRAPCOORD_0 = &H00000001 'same as D3DWRAP_U
|
---|
| 370 | Const D3DWRAPCOORD_1 = &H00000002 'same as D3DWRAP_V
|
---|
| 371 | Const D3DWRAPCOORD_2 = &H00000004 'same as D3DWRAP_W
|
---|
| 372 | Const D3DWRAPCOORD_3 = &H00000008
|
---|
| 373 |
|
---|
| 374 | ' Flags to construct D3DRS_COLORWRITEENABLE
|
---|
| 375 | Const D3DCOLORWRITEENABLE_RED = 1<<0
|
---|
| 376 | Const D3DCOLORWRITEENABLE_GREEN = 1<<1
|
---|
| 377 | Const D3DCOLORWRITEENABLE_BLUE = 1<<2
|
---|
| 378 | Const D3DCOLORWRITEENABLE_ALPHA = 1<<3
|
---|
| 379 |
|
---|
| 380 |
|
---|
| 381 | ' State enumerants for per-stage processing of fixed function pixel processing
|
---|
| 382 | ' Two of these affect fixed function vertex processing as well: TEXTURETRANSFORMFLAGS and TEXCOORDINDEX.
|
---|
| 383 | Const Enum D3DTEXTURESTAGESTATETYPE
|
---|
| 384 | D3DTSS_COLOROP = 1 'D3DTEXTUREOP - per-stage blending controls for color channels
|
---|
| 385 | D3DTSS_COLORARG1 = 2 'D3DTA_* (texture arg)
|
---|
| 386 | D3DTSS_COLORARG2 = 3 'D3DTA_* (texture arg)
|
---|
| 387 | D3DTSS_ALPHAOP = 4 'D3DTEXTUREOP - per-stage blending controls for alpha channel
|
---|
| 388 | D3DTSS_ALPHAARG1 = 5 'D3DTA_* (texture arg)
|
---|
| 389 | D3DTSS_ALPHAARG2 = 6 'D3DTA_* (texture arg)
|
---|
| 390 | D3DTSS_BUMPENVMAT00 = 7 'float (bump mapping matrix)
|
---|
| 391 | D3DTSS_BUMPENVMAT01 = 8 'float (bump mapping matrix)
|
---|
| 392 | D3DTSS_BUMPENVMAT10 = 9 'float (bump mapping matrix)
|
---|
| 393 | D3DTSS_BUMPENVMAT11 = 10 'float (bump mapping matrix)
|
---|
| 394 | D3DTSS_TEXCOORDINDEX = 11 'identifies which set of texture coordinates index this texture
|
---|
| 395 | D3DTSS_BUMPENVLSCALE = 22 'float scale for bump map luminance
|
---|
| 396 | D3DTSS_BUMPENVLOFFSET = 23 'float offset for bump map luminance
|
---|
| 397 | D3DTSS_TEXTURETRANSFORMFLAGS = 24 'D3DTEXTURETRANSFORMFLAGS controls texture transform
|
---|
| 398 | D3DTSS_COLORARG0 = 26 'D3DTA_* third arg for triadic ops
|
---|
| 399 | D3DTSS_ALPHAARG0 = 27 'D3DTA_* third arg for triadic ops
|
---|
| 400 | D3DTSS_RESULTARG = 28 'D3DTA_* arg for result (CURRENT or TEMP)
|
---|
| 401 | D3DTSS_CONSTANT = 32 'Per-stage constant D3DTA_CONSTANT
|
---|
| 402 |
|
---|
| 403 | D3DTSS_FORCE_DWORD = &H7FFFFFFF
|
---|
| 404 | End Enum
|
---|
| 405 |
|
---|
| 406 |
|
---|
| 407 | ' State enumerants for per-sampler texture processing.
|
---|
| 408 | Const Enum D3DSAMPLERSTATETYPE
|
---|
| 409 | D3DSAMP_ADDRESSU = 1 'D3DTEXTUREADDRESS for U coordinate
|
---|
| 410 | D3DSAMP_ADDRESSV = 2 'D3DTEXTUREADDRESS for V coordinate
|
---|
| 411 | D3DSAMP_ADDRESSW = 3 'D3DTEXTUREADDRESS for W coordinate
|
---|
| 412 | D3DSAMP_BORDERCOLOR = 4 'D3DCOLOR
|
---|
| 413 | D3DSAMP_MAGFILTER = 5 'D3DTEXTUREFILTER filter to use for magnification
|
---|
| 414 | D3DSAMP_MINFILTER = 6 'D3DTEXTUREFILTER filter to use for minification
|
---|
| 415 | D3DSAMP_MIPFILTER = 7 'D3DTEXTUREFILTER filter to use between mipmaps during minification
|
---|
| 416 | D3DSAMP_MIPMAPLODBIAS = 8 'float Mipmap LOD bias
|
---|
| 417 | D3DSAMP_MAXMIPLEVEL = 9 'DWORD 0..(n-1) LOD index of largest map to use (0 == largest)
|
---|
| 418 | D3DSAMP_MAXANISOTROPY = 10 'DWORD maximum anisotropy
|
---|
| 419 | D3DSAMP_SRGBTEXTURE = 11 'Default = 0 (which means Gamma 1.0,
|
---|
| 420 | ' no correction required.) else correct for
|
---|
| 421 | ' Gamma = 2.2
|
---|
| 422 | D3DSAMP_ELEMENTINDEX = 12 'When multi-element texture is assigned to sampler, this
|
---|
| 423 | ' indicates which element index to use. Default = 0.
|
---|
| 424 | D3DSAMP_DMAPOFFSET = 13 'Offset in vertices in the pre-sampled displacement map.
|
---|
| 425 | ' Only valid for D3DDMAPSAMPLER sampler
|
---|
| 426 |
|
---|
| 427 | D3DSAMP_FORCE_DWORD = &H7FFFFFFF
|
---|
| 428 | End Enum
|
---|
| 429 |
|
---|
| 430 | ' Special sampler which is used in the tesselator
|
---|
| 431 | Const D3DDMAPSAMPLER = 256
|
---|
| 432 |
|
---|
| 433 | ' Samplers used in vertex shaders
|
---|
| 434 | Const D3DVERTEXTEXTURESAMPLER0 = D3DDMAPSAMPLER+1
|
---|
| 435 | Const D3DVERTEXTEXTURESAMPLER1 = D3DDMAPSAMPLER+2
|
---|
| 436 | Const D3DVERTEXTEXTURESAMPLER2 = D3DDMAPSAMPLER+3
|
---|
| 437 | Const D3DVERTEXTEXTURESAMPLER3 = D3DDMAPSAMPLER+4
|
---|
| 438 |
|
---|
| 439 | ' Values, used with D3DTSS_TEXCOORDINDEX, to specify that the vertex data(position
|
---|
| 440 | ' and normal in the camera space) should be taken as texture coordinates
|
---|
| 441 | ' Low 16 bits are used to specify texture coordinate index, to take the WRAP mode from
|
---|
| 442 | Const D3DTSS_TCI_PASSTHRU = &H00000000
|
---|
| 443 | Const D3DTSS_TCI_CAMERASPACENORMAL = &H00010000
|
---|
| 444 | Const D3DTSS_TCI_CAMERASPACEPOSITION = &H00020000
|
---|
| 445 | Const D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR = &H00030000
|
---|
| 446 | Const D3DTSS_TCI_SPHEREMAP = &H00040000
|
---|
| 447 |
|
---|
| 448 |
|
---|
| 449 | ' Enumerations for COLOROP and ALPHAOP texture blending operations set in
|
---|
| 450 | ' texture processing stage controls in D3DTSS.
|
---|
| 451 | Const Enum D3DTEXTUREOP
|
---|
| 452 | 'Control
|
---|
| 453 | D3DTOP_DISABLE = 1 'disables stage
|
---|
| 454 | D3DTOP_SELECTARG1 = 2 'the default
|
---|
| 455 | D3DTOP_SELECTARG2 = 3
|
---|
| 456 |
|
---|
| 457 | 'Modulate
|
---|
| 458 | D3DTOP_MODULATE = 4 'multiply args together
|
---|
| 459 | D3DTOP_MODULATE2X = 5 'multiply and 1 bit
|
---|
| 460 | D3DTOP_MODULATE4X = 6 'multiply and 2 bits
|
---|
| 461 |
|
---|
| 462 | 'Add
|
---|
| 463 | D3DTOP_ADD = 7 'add arguments together
|
---|
| 464 | D3DTOP_ADDSIGNED = 8 'add with -0.5 bias
|
---|
| 465 | D3DTOP_ADDSIGNED2X = 9 'as above but left 1 bit
|
---|
| 466 | D3DTOP_SUBTRACT = 10 'Arg1 - Arg2, with no saturation
|
---|
| 467 | D3DTOP_ADDSMOOTH = 11 'add 2 args, subtract product
|
---|
| 468 | 'Arg1 + Arg2 - Arg1*Arg2
|
---|
| 469 | '= Arg1 + (1-Arg1)*Arg2
|
---|
| 470 |
|
---|
| 471 | 'Linear alpha blend: Arg1*(Alpha) + Arg2*(1-Alpha)
|
---|
| 472 | D3DTOP_BLENDDIFFUSEALPHA = 12 'iterated alpha
|
---|
| 473 | D3DTOP_BLENDTEXTUREALPHA = 13 'texture alpha
|
---|
| 474 | D3DTOP_BLENDFACTORALPHA = 14 'alpha from D3DRS_TEXTUREFACTOR
|
---|
| 475 |
|
---|
| 476 | 'Linear alpha blend with pre-multiplied arg1 input: Arg1 + Arg2*(1-Alpha)
|
---|
| 477 | D3DTOP_BLENDTEXTUREALPHAPM = 15 'texture alpha
|
---|
| 478 | D3DTOP_BLENDCURRENTALPHA = 16 'by alpha of current color
|
---|
| 479 |
|
---|
| 480 | 'Specular mapping
|
---|
| 481 | D3DTOP_PREMODULATE = 17 'modulate with next texture before use
|
---|
| 482 | D3DTOP_MODULATEALPHA_ADDCOLOR = 18 'Arg1.RGB + Arg1.A*Arg2.RGB
|
---|
| 483 | 'COLOROP only
|
---|
| 484 | D3DTOP_MODULATECOLOR_ADDALPHA = 19 'Arg1.RGB*Arg2.RGB + Arg1.A
|
---|
| 485 | 'COLOROP only
|
---|
| 486 | D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20 '(1-Arg1.A)*Arg2.RGB + Arg1.RGB
|
---|
| 487 | 'COLOROP only
|
---|
| 488 | D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21 '(1-Arg1.RGB)*Arg2.RGB + Arg1.A
|
---|
| 489 | 'COLOROP only
|
---|
| 490 |
|
---|
| 491 | 'Bump mapping
|
---|
| 492 | D3DTOP_BUMPENVMAP = 22 'per pixel env map perturbation
|
---|
| 493 | D3DTOP_BUMPENVMAPLUMINANCE = 23 'with luminance channel
|
---|
| 494 |
|
---|
| 495 | 'This can do either diffuse or specular bump mapping with correct input.
|
---|
| 496 | 'Performs the function (Arg1.R*Arg2.R + Arg1.G*Arg2.G + Arg1.B*Arg2.B)
|
---|
| 497 | 'where each component has been scaled and offset to make it signed.
|
---|
| 498 | 'The result is replicated into all four (including alpha) channels.
|
---|
| 499 | 'This is a valid COLOROP only.
|
---|
| 500 | D3DTOP_DOTPRODUCT3 = 24
|
---|
| 501 |
|
---|
| 502 | 'Triadic ops
|
---|
| 503 | D3DTOP_MULTIPLYADD = 25 'Arg0 + Arg1*Arg2
|
---|
| 504 | D3DTOP_LERP = 26 '(Arg0)*Arg1 + (1-Arg0)*Arg2
|
---|
| 505 |
|
---|
| 506 | D3DTOP_FORCE_DWORD = &H7FFFFFFF
|
---|
| 507 | End Enum
|
---|
| 508 |
|
---|
| 509 |
|
---|
| 510 | ' Values for COLORARG0,1,2, ALPHAARG0,1,2, and RESULTARG texture blending
|
---|
| 511 | ' operations set in texture processing stage controls in D3DRENDERSTATE.
|
---|
| 512 | Const D3DTA_SELECTMASK = &H0000000f 'mask for arg selector
|
---|
| 513 | Const D3DTA_DIFFUSE = &H00000000 'select diffuse color (read only)
|
---|
| 514 | Const D3DTA_CURRENT = &H00000001 'select stage destination register (read/write)
|
---|
| 515 | Const D3DTA_TEXTURE = &H00000002 'select texture color (read only)
|
---|
| 516 | Const D3DTA_TFACTOR = &H00000003 'select D3DRS_TEXTUREFACTOR (read only)
|
---|
| 517 | Const D3DTA_SPECULAR = &H00000004 'select specular color (read only)
|
---|
| 518 | Const D3DTA_TEMP = &H00000005 'select temporary register color (read/write)
|
---|
| 519 | Const D3DTA_CONSTANT = &H00000006 'select texture stage constant
|
---|
| 520 | Const D3DTA_COMPLEMENT = &H00000010 'take 1.0 - x (read modifier)
|
---|
| 521 | Const D3DTA_ALPHAREPLICATE = &H00000020 'replicate alpha to color components (read modifier)
|
---|
| 522 |
|
---|
| 523 |
|
---|
| 524 | ' Values for D3DSAMP_***FILTER texture stage states
|
---|
| 525 | Const Enum D3DTEXTUREFILTERTYPE
|
---|
| 526 | D3DTEXF_NONE = 0 ' filtering disabled (valid for mip filter only)
|
---|
| 527 | D3DTEXF_POINT = 1 ' nearest
|
---|
| 528 | D3DTEXF_LINEAR = 2 ' linear interpolation
|
---|
| 529 | D3DTEXF_ANISOTROPIC = 3 ' anisotropic
|
---|
| 530 | D3DTEXF_PYRAMIDALQUAD = 6 ' 4-sample tent
|
---|
| 531 | D3DTEXF_GAUSSIANQUAD = 7 ' 4-sample gaussian
|
---|
| 532 | D3DTEXF_FORCE_DWORD = &H7FFFFFFF ' force 32-bit size enum
|
---|
| 533 | End Enum
|
---|
| 534 |
|
---|
| 535 | ' Bits for Flags in ProcessVertices call
|
---|
| 536 | Const D3DPV_DONOTCOPYDATA = 1<<0
|
---|
| 537 |
|
---|
| 538 |
|
---|
| 539 | 'Flexible vertex format bits
|
---|
| 540 | Const D3DFVF_RESERVED0 = &H001
|
---|
| 541 | Const D3DFVF_POSITION_MASK = &H400E
|
---|
| 542 | Const D3DFVF_XYZ = &H002
|
---|
| 543 | Const D3DFVF_XYZRHW = &H004
|
---|
| 544 | Const D3DFVF_XYZB1 = &H006
|
---|
| 545 | Const D3DFVF_XYZB2 = &H008
|
---|
| 546 | Const D3DFVF_XYZB3 = &H00a
|
---|
| 547 | Const D3DFVF_XYZB4 = &H00c
|
---|
| 548 | Const D3DFVF_XYZB5 = &H00e
|
---|
| 549 | Const D3DFVF_XYZW = &H4002
|
---|
| 550 |
|
---|
| 551 | Const D3DFVF_NORMAL = &H010
|
---|
| 552 | Const D3DFVF_PSIZE = &H020
|
---|
| 553 | Const D3DFVF_DIFFUSE = &H040
|
---|
| 554 | Const D3DFVF_SPECULAR = &H080
|
---|
| 555 |
|
---|
| 556 | Const D3DFVF_TEXCOUNT_MASK = &Hf00
|
---|
| 557 | Const D3DFVF_TEXCOUNT_SHIFT = &H8
|
---|
| 558 | Const D3DFVF_TEX0 = &H000
|
---|
| 559 | Const D3DFVF_TEX1 = &H100
|
---|
| 560 | Const D3DFVF_TEX2 = &H200
|
---|
| 561 | Const D3DFVF_TEX3 = &H300
|
---|
| 562 | Const D3DFVF_TEX4 = &H400
|
---|
| 563 | Const D3DFVF_TEX5 = &H500
|
---|
| 564 | Const D3DFVF_TEX6 = &H600
|
---|
| 565 | Const D3DFVF_TEX7 = &H700
|
---|
| 566 | Const D3DFVF_TEX8 = &H800
|
---|
| 567 |
|
---|
| 568 | Const D3DFVF_LASTBETA_UBYTE4 = &H1000
|
---|
| 569 | Const D3DFVF_LASTBETA_D3DCOLOR = &H8000
|
---|
| 570 |
|
---|
| 571 | Const D3DFVF_RESERVED2 = &H6000 '2 reserved bits
|
---|
| 572 |
|
---|
| 573 |
|
---|
| 574 | ' Vertex element semantics
|
---|
| 575 | Const Enum D3DDECLUSAGE
|
---|
| 576 | D3DDECLUSAGE_POSITION = 0
|
---|
| 577 | D3DDECLUSAGE_BLENDWEIGHT = 1
|
---|
| 578 | D3DDECLUSAGE_BLENDINDICES = 2
|
---|
| 579 | D3DDECLUSAGE_NORMAL = 3
|
---|
| 580 | D3DDECLUSAGE_PSIZE = 4
|
---|
| 581 | D3DDECLUSAGE_TEXCOORD = 5
|
---|
| 582 | D3DDECLUSAGE_TANGENT = 6
|
---|
| 583 | D3DDECLUSAGE_BINORMAL = 7
|
---|
| 584 | D3DDECLUSAGE_TESSFACTOR = 8
|
---|
| 585 | D3DDECLUSAGE_POSITIONT = 9
|
---|
| 586 | D3DDECLUSAGE_COLOR = 10
|
---|
| 587 | D3DDECLUSAGE_FOG = 11
|
---|
| 588 | D3DDECLUSAGE_DEPTH = 12
|
---|
| 589 | D3DDECLUSAGE_SAMPLE = 13
|
---|
| 590 | End Enum
|
---|
| 591 |
|
---|
| 592 | Const Enum D3DDECLMETHOD
|
---|
| 593 | D3DDECLMETHOD_DEFAULT = 0
|
---|
| 594 | D3DDECLMETHOD_PARTIALU = 1
|
---|
| 595 | D3DDECLMETHOD_PARTIALV = 2
|
---|
| 596 | D3DDECLMETHOD_CROSSUV = 3 'Normal
|
---|
| 597 | D3DDECLMETHOD_UV = 4
|
---|
| 598 | D3DDECLMETHOD_LOOKUP = 5 'Lookup a displacement map
|
---|
| 599 | D3DDECLMETHOD_LOOKUPPRESAMPLED = 6 'Lookup a pre-sampled displacement map
|
---|
| 600 | End Enum
|
---|
| 601 |
|
---|
| 602 | ' Declarations for _Type fields
|
---|
| 603 | Const Enum D3DDECLTYPE
|
---|
| 604 | D3DDECLTYPE_FLOAT1 = 0 '1D float expanded to (value, 0., 0., 1.)
|
---|
| 605 | D3DDECLTYPE_FLOAT2 = 1 '2D float expanded to (value, value, 0., 1.)
|
---|
| 606 | D3DDECLTYPE_FLOAT3 = 2 '3D float expanded to (value, value, value, 1.)
|
---|
| 607 | D3DDECLTYPE_FLOAT4 = 3 '4D float
|
---|
| 608 | D3DDECLTYPE_D3DCOLOR = 4 '4D packed unsigned bytes mapped to 0. to 1. range
|
---|
| 609 | 'Input is in D3DCOLOR format (ARGB) expanded to (R, G, B, A)
|
---|
| 610 | D3DDECLTYPE_UBYTE4 = 5 '4D unsigned byte
|
---|
| 611 | D3DDECLTYPE_SHORT2 = 6 '2D signed short expanded to (value, value, 0., 1.)
|
---|
| 612 | D3DDECLTYPE_SHORT4 = 7 '4D signed short
|
---|
| 613 |
|
---|
| 614 | 'The following types are valid only with vertex shaders >= 2.0
|
---|
| 615 | D3DDECLTYPE_UBYTE4N = 8 'Each of 4 bytes is normalized by dividing to 255.0
|
---|
| 616 | D3DDECLTYPE_SHORT2N = 9 '2D signed short normalized (v[0]/32767.0,v[1]/32767.0,0,1)
|
---|
| 617 | D3DDECLTYPE_SHORT4N = 10 '4D signed short normalized (v[0]/32767.0,v[1]/32767.0,v[2]/32767.0,v[3]/32767.0)
|
---|
| 618 | D3DDECLTYPE_USHORT2N = 11 '2D unsigned short normalized (v[0]/65535.0,v[1]/65535.0,0,1)
|
---|
| 619 | D3DDECLTYPE_USHORT4N = 12 '4D unsigned short normalized (v[0]/65535.0,v[1]/65535.0,v[2]/65535.0,v[3]/65535.0)
|
---|
| 620 | D3DDECLTYPE_UDEC3 = 13 '3D unsigned 10 10 10 format expanded to (value, value, value, 1)
|
---|
| 621 | D3DDECLTYPE_DEC3N = 14 '3D signed 10 10 10 format normalized and expanded to (v[0]/511.0, v[1]/511.0, v[2]/511.0, 1)
|
---|
| 622 | D3DDECLTYPE_FLOAT16_2 = 15 'Two 16-bit floating point values, expanded to (value, value, 0, 1)
|
---|
| 623 | D3DDECLTYPE_FLOAT16_4 = 16 'Four 16-bit floating point values
|
---|
| 624 | D3DDECLTYPE_UNUSED = 17 'When the type field in a decl is unused.
|
---|
| 625 | End Enum
|
---|
| 626 |
|
---|
| 627 | Type D3DVERTEXELEMENT9
|
---|
| 628 | Stream As Word
|
---|
| 629 | Offset As Word
|
---|
| 630 | byType As Byte
|
---|
| 631 | Method As Byte
|
---|
| 632 | Usage As Byte
|
---|
| 633 | UsageIndex As Byte
|
---|
| 634 | End Type
|
---|
| 635 |
|
---|
| 636 | ' Maximum supported number of texture coordinate sets
|
---|
| 637 | Const D3DDP_MAXTEXCOORD = 8
|
---|
| 638 |
|
---|
| 639 |
|
---|
| 640 | ' Values for IDirect3DDevice9::SetStreamSourceFreq's Setting parameter
|
---|
| 641 | Const D3DSTREAMSOURCE_INDEXEDDATA = 1<<30
|
---|
| 642 | Const D3DSTREAMSOURCE_INSTANCEDATA = 2<<30
|
---|
| 643 |
|
---|
| 644 | Const D3DSP_TEXTURETYPE_SHIFT = 27
|
---|
| 645 | Const Enum D3DSAMPLER_TEXTURE_TYPE
|
---|
| 646 | D3DSTT_UNKNOWN = 0<<D3DSP_TEXTURETYPE_SHIFT 'uninitialized value
|
---|
| 647 | D3DSTT_2D = 2<<D3DSP_TEXTURETYPE_SHIFT 'dcl_2d s# (for declaring a 2-D texture)
|
---|
| 648 | D3DSTT_CUBE = 3<<D3DSP_TEXTURETYPE_SHIFT 'dcl_cube s# (for declaring a cube texture)
|
---|
| 649 | D3DSTT_VOLUME = 4<<D3DSP_TEXTURETYPE_SHIFT 'dcl_volume s# (for declaring a volume texture)
|
---|
| 650 | D3DSTT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 651 | End Enum
|
---|
| 652 |
|
---|
| 653 |
|
---|
| 654 | ' pixel shader version token
|
---|
| 655 | Const D3DPS_VERSION(_Major,_Minor) = &HFFFF0000 or (_Major<<8) or _Minor
|
---|
| 656 |
|
---|
| 657 | ' vertex shader version token
|
---|
| 658 | Const D3DVS_VERSION(_Major,_Minor) = &HFFFE0000 or (_Major<<8) or _Minor
|
---|
| 659 |
|
---|
| 660 |
|
---|
| 661 |
|
---|
| 662 | ' High order surfaces
|
---|
| 663 | Const Enum D3DBASISTYPE
|
---|
| 664 | D3DBASIS_BEZIER = 0
|
---|
| 665 | D3DBASIS_BSPLINE = 1
|
---|
| 666 | D3DBASIS_CATMULL_ROM = 2 ' In D3D8 this used to be D3DBASIS_INTERPOLATE
|
---|
| 667 | D3DBASIS_FORCE_DWORD = &H7FFFFFFF
|
---|
| 668 | End Enum
|
---|
| 669 |
|
---|
| 670 | Const Enum D3DDEGREETYPE
|
---|
| 671 | D3DDEGREE_LINEAR = 1
|
---|
| 672 | D3DDEGREE_QUADRATIC = 2
|
---|
| 673 | D3DDEGREE_CUBIC = 3
|
---|
| 674 | D3DDEGREE_QUINTIC = 5
|
---|
| 675 | D3DDEGREE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 676 | End Enum
|
---|
| 677 |
|
---|
| 678 | Const Enum D3DPATCHEDGESTYLE
|
---|
| 679 | D3DPATCHEDGE_DISCRETE = 0
|
---|
| 680 | D3DPATCHEDGE_CONTINUOUS = 1
|
---|
| 681 | D3DPATCHEDGE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 682 | End Enum
|
---|
| 683 |
|
---|
| 684 | Const Enum D3DSTATEBLOCKTYPE
|
---|
| 685 | D3DSBT_ALL = 1 'capture all state
|
---|
| 686 | D3DSBT_PIXELSTATE = 2 'capture pixel state
|
---|
| 687 | D3DSBT_VERTEXSTATE = 3 'capture vertex state
|
---|
| 688 | D3DSBT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 689 | End Enum
|
---|
| 690 |
|
---|
| 691 | ' The D3DVERTEXBLENDFLAGS type is used with D3DRS_VERTEXBLEND state.
|
---|
| 692 | Const Enum D3DVERTEXBLENDFLAGS
|
---|
| 693 | D3DVBF_DISABLE = 0 'Disable vertex blending
|
---|
| 694 | D3DVBF_1WEIGHTS = 1 '2 matrix blending
|
---|
| 695 | D3DVBF_2WEIGHTS = 2 '3 matrix blending
|
---|
| 696 | D3DVBF_3WEIGHTS = 3 '4 matrix blending
|
---|
| 697 | D3DVBF_TWEENING = 255 'blending using D3DRS_TWEENFACTOR
|
---|
| 698 | D3DVBF_0WEIGHTS = 256 'one matrix is used with weight 1.0
|
---|
| 699 | D3DVBF_FORCE_DWORD = &H7FFFFFFF
|
---|
| 700 | End Enum
|
---|
| 701 |
|
---|
| 702 | Const Enum D3DTEXTURETRANSFORMFLAGS
|
---|
| 703 | D3DTTFF_DISABLE = 0 'texture coordinates are passed directly
|
---|
| 704 | D3DTTFF_COUNT1 = 1 'rasterizer should expect 1-D texture coords
|
---|
| 705 | D3DTTFF_COUNT2 = 2 'rasterizer should expect 2-D texture coords
|
---|
| 706 | D3DTTFF_COUNT3 = 3 'rasterizer should expect 3-D texture coords
|
---|
| 707 | D3DTTFF_COUNT4 = 4 'rasterizer should expect 4-D texture coords
|
---|
| 708 | D3DTTFF_PROJECTED = 256 'texcoords to be divided by COUNTth element
|
---|
| 709 | D3DTTFF_FORCE_DWORD = &H7FFFFFFF
|
---|
| 710 | End Enum
|
---|
| 711 |
|
---|
| 712 | ' Macros to set texture coordinate format bits in the FVF id
|
---|
| 713 | Const D3DFVF_TEXTUREFORMAT2 = 0 'Two floating point values
|
---|
| 714 | Const D3DFVF_TEXTUREFORMAT1 = 3 'One floating point value
|
---|
| 715 | Const D3DFVF_TEXTUREFORMAT3 = 1 'Three floating point values
|
---|
| 716 | Const D3DFVF_TEXTUREFORMAT4 = 2 'Four floating point values
|
---|
| 717 |
|
---|
| 718 | Const D3DFVF_TEXCOORDSIZE3(CoordIndex) = D3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16)
|
---|
| 719 | Const D3DFVF_TEXCOORDSIZE2(CoordIndex) = D3DFVF_TEXTUREFORMAT2
|
---|
| 720 | Const D3DFVF_TEXCOORDSIZE4(CoordIndex) = D3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16)
|
---|
| 721 | Const D3DFVF_TEXCOORDSIZE1(CoordIndex) = D3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16)
|
---|
| 722 |
|
---|
| 723 |
|
---|
| 724 | ' Direct3D9 Device types
|
---|
| 725 | Const Enum D3DDEVTYPE
|
---|
| 726 | D3DDEVTYPE_HAL = 1
|
---|
| 727 | D3DDEVTYPE_REF = 2
|
---|
| 728 | D3DDEVTYPE_SW = 3
|
---|
| 729 |
|
---|
| 730 | D3DDEVTYPE_NULLREF = 4
|
---|
| 731 |
|
---|
| 732 | D3DDEVTYPE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 733 | End Enum
|
---|
| 734 |
|
---|
| 735 |
|
---|
| 736 | ' Multi-Sample buffer types
|
---|
| 737 | Const Enum D3DMULTISAMPLE_TYPE
|
---|
| 738 | D3DMULTISAMPLE_NONE = 0
|
---|
| 739 | D3DMULTISAMPLE_NONMASKABLE = 1
|
---|
| 740 | D3DMULTISAMPLE_2_SAMPLES = 2
|
---|
| 741 | D3DMULTISAMPLE_3_SAMPLES = 3
|
---|
| 742 | D3DMULTISAMPLE_4_SAMPLES = 4
|
---|
| 743 | D3DMULTISAMPLE_5_SAMPLES = 5
|
---|
| 744 | D3DMULTISAMPLE_6_SAMPLES = 6
|
---|
| 745 | D3DMULTISAMPLE_7_SAMPLES = 7
|
---|
| 746 | D3DMULTISAMPLE_8_SAMPLES = 8
|
---|
| 747 | D3DMULTISAMPLE_9_SAMPLES = 9
|
---|
| 748 | D3DMULTISAMPLE_10_SAMPLES = 10
|
---|
| 749 | D3DMULTISAMPLE_11_SAMPLES = 11
|
---|
| 750 | D3DMULTISAMPLE_12_SAMPLES = 12
|
---|
| 751 | D3DMULTISAMPLE_13_SAMPLES = 13
|
---|
| 752 | D3DMULTISAMPLE_14_SAMPLES = 14
|
---|
| 753 | D3DMULTISAMPLE_15_SAMPLES = 15
|
---|
| 754 | D3DMULTISAMPLE_16_SAMPLES = 16
|
---|
| 755 |
|
---|
| 756 | D3DMULTISAMPLE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 757 | End Enum
|
---|
| 758 |
|
---|
| 759 | Const Enum D3DFORMAT
|
---|
| 760 | D3DFMT_UNKNOWN = 0
|
---|
| 761 |
|
---|
| 762 | D3DFMT_R8G8B8 = 20
|
---|
| 763 | D3DFMT_A8R8G8B8 = 21
|
---|
| 764 | D3DFMT_X8R8G8B8 = 22
|
---|
| 765 | D3DFMT_R5G6B5 = 23
|
---|
| 766 | D3DFMT_X1R5G5B5 = 24
|
---|
| 767 | D3DFMT_A1R5G5B5 = 25
|
---|
| 768 | D3DFMT_A4R4G4B4 = 26
|
---|
| 769 | D3DFMT_R3G3B2 = 27
|
---|
| 770 | D3DFMT_A8 = 28
|
---|
| 771 | D3DFMT_A8R3G3B2 = 29
|
---|
| 772 | D3DFMT_X4R4G4B4 = 30
|
---|
| 773 | D3DFMT_A2B10G10R10 = 31
|
---|
| 774 | D3DFMT_A8B8G8R8 = 32
|
---|
| 775 | D3DFMT_X8B8G8R8 = 33
|
---|
| 776 | D3DFMT_G16R16 = 34
|
---|
| 777 | D3DFMT_A2R10G10B10 = 35
|
---|
| 778 | D3DFMT_A16B16G16R16 = 36
|
---|
| 779 |
|
---|
| 780 | D3DFMT_A8P8 = 40
|
---|
| 781 | D3DFMT_P8 = 41
|
---|
| 782 |
|
---|
| 783 | D3DFMT_L8 = 50
|
---|
| 784 | D3DFMT_A8L8 = 51
|
---|
| 785 | D3DFMT_A4L4 = 52
|
---|
| 786 |
|
---|
| 787 | D3DFMT_V8U8 = 60
|
---|
| 788 | D3DFMT_L6V5U5 = 61
|
---|
| 789 | D3DFMT_X8L8V8U8 = 62
|
---|
| 790 | D3DFMT_Q8W8V8U8 = 63
|
---|
| 791 | D3DFMT_V16U16 = 64
|
---|
| 792 | D3DFMT_A2W10V10U10 = 67
|
---|
| 793 |
|
---|
| 794 | D3DFMT_UYVY = &H59565955 'MAKEFOURCC('U', 'Y', 'V', 'Y'),
|
---|
| 795 | D3DFMT_R8G8_B8G8 = &H47424752 'MAKEFOURCC('R', 'G', 'B', 'G'),
|
---|
| 796 | D3DFMT_YUY2 = &H32595559 'MAKEFOURCC('Y', 'U', 'Y', '2'),
|
---|
| 797 | D3DFMT_G8R8_G8B8 = &H42475247 'MAKEFOURCC('G', 'R', 'G', 'B'),
|
---|
| 798 | D3DFMT_DXT1 = &H31545844 'MAKEFOURCC('D', 'X', 'T', '1'),
|
---|
| 799 | D3DFMT_DXT2 = &H32545844 'MAKEFOURCC('D', 'X', 'T', '2'),
|
---|
| 800 | D3DFMT_DXT3 = &H33545844 'MAKEFOURCC('D', 'X', 'T', '3'),
|
---|
| 801 | D3DFMT_DXT4 = &H34545844 'MAKEFOURCC('D', 'X', 'T', '4'),
|
---|
| 802 | D3DFMT_DXT5 = &H35545844 'MAKEFOURCC('D', 'X', 'T', '5'),
|
---|
| 803 |
|
---|
| 804 | D3DFMT_D16_LOCKABLE = 70
|
---|
| 805 | D3DFMT_D32 = 71
|
---|
| 806 | D3DFMT_D15S1 = 73
|
---|
| 807 | D3DFMT_D24S8 = 75
|
---|
| 808 | D3DFMT_D24X8 = 77
|
---|
| 809 | D3DFMT_D24X4S4 = 79
|
---|
| 810 | D3DFMT_D16 = 80
|
---|
| 811 |
|
---|
| 812 | D3DFMT_D32F_LOCKABLE = 82
|
---|
| 813 | D3DFMT_D24FS8 = 83
|
---|
| 814 |
|
---|
| 815 |
|
---|
| 816 | D3DFMT_L16 = 81
|
---|
| 817 |
|
---|
| 818 | D3DFMT_VERTEXDATA =100
|
---|
| 819 | D3DFMT_INDEX16 =101
|
---|
| 820 | D3DFMT_INDEX32 =102
|
---|
| 821 |
|
---|
| 822 | D3DFMT_Q16W16V16U16 =110
|
---|
| 823 |
|
---|
| 824 | D3DFMT_MULTI2_ARGB8 = &H3154454D 'MAKEFOURCC('M','E','T','1')
|
---|
| 825 |
|
---|
| 826 | ' Floating point surface formats
|
---|
| 827 |
|
---|
| 828 | ' s10e5 formats (16-bits per channel)
|
---|
| 829 | D3DFMT_R16F = 111
|
---|
| 830 | D3DFMT_G16R16F = 112
|
---|
| 831 | D3DFMT_A16B16G16R16F = 113
|
---|
| 832 |
|
---|
| 833 | ' IEEE s23e8 formats (32-bits per channel)
|
---|
| 834 | D3DFMT_R32F = 114
|
---|
| 835 | D3DFMT_G32R32F = 115
|
---|
| 836 | D3DFMT_A32B32G32R32F = 116
|
---|
| 837 |
|
---|
| 838 | D3DFMT_CxV8U8 = 117
|
---|
| 839 |
|
---|
| 840 |
|
---|
| 841 | D3DFMT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 842 | End Enum
|
---|
| 843 |
|
---|
| 844 | Type D3DDISPLAYMODE
|
---|
| 845 | Width As DWord
|
---|
| 846 | Height As DWord
|
---|
| 847 | RefreshRate As DWord
|
---|
| 848 | Format As D3DFORMAT
|
---|
| 849 | End Type
|
---|
| 850 |
|
---|
| 851 | ' Creation Parameters
|
---|
| 852 | Type D3DDEVICE_CREATION_PARAMETERS
|
---|
| 853 | AdapterOrdinal As DWord
|
---|
| 854 | DeviceType As DWord
|
---|
| 855 | hFocusWindow As DWord
|
---|
| 856 | BehaviorFlags As DWord
|
---|
| 857 | End Type
|
---|
| 858 |
|
---|
| 859 | ' SwapEffects
|
---|
| 860 | Const Enum D3DSWAPEFFECT
|
---|
| 861 | D3DSWAPEFFECT_DISCARD = 1
|
---|
| 862 | D3DSWAPEFFECT_FLIP = 2
|
---|
| 863 | D3DSWAPEFFECT_COPY = 3
|
---|
| 864 |
|
---|
| 865 | D3DSWAPEFFECT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 866 | End Enum
|
---|
| 867 |
|
---|
| 868 | ' Pool types
|
---|
| 869 | Const Enum D3DPOOL
|
---|
| 870 | D3DPOOL_DEFAULT = 0
|
---|
| 871 | D3DPOOL_MANAGED = 1
|
---|
| 872 | D3DPOOL_SYSTEMMEM = 2
|
---|
| 873 | D3DPOOL_SCRATCH = 3
|
---|
| 874 |
|
---|
| 875 | D3DPOOL_FORCE_DWORD = &H7FFFFFFF
|
---|
| 876 | End Enum
|
---|
| 877 |
|
---|
| 878 | 'RefreshRate pre-defines
|
---|
| 879 | Const D3DPRESENT_RATE_DEFAULT = &H00000000
|
---|
| 880 |
|
---|
| 881 | ' Resize Optional Parameters
|
---|
| 882 | Type D3DPRESENT_PARAMETERS
|
---|
| 883 | BackBufferWidth As DWord
|
---|
| 884 | BackBufferHeight As DWord
|
---|
| 885 | BackBufferFormat As D3DFORMAT
|
---|
| 886 | BackBufferCount As DWord
|
---|
| 887 |
|
---|
| 888 | MultiSampleType As D3DMULTISAMPLE_TYPE
|
---|
| 889 | MultiSampleQuality As DWord
|
---|
| 890 |
|
---|
| 891 | SwapEffect As D3DSWAPEFFECT
|
---|
| 892 | hDeviceWindow As HWND
|
---|
| 893 | Windowed As Long
|
---|
| 894 | EnableAutoDepthStencil As Long
|
---|
| 895 | AutoDepthStencilFormat As D3DFORMAT
|
---|
| 896 | Flags As DWord
|
---|
| 897 |
|
---|
| 898 | 'FullScreen_RefreshRateInHz must be zero for Windowed mode
|
---|
| 899 | FullScreen_RefreshRateInHz As DWord
|
---|
| 900 | PresentationInterval As DWord
|
---|
| 901 | End Type
|
---|
| 902 |
|
---|
| 903 | ' Values for D3DPRESENT_PARAMETERS.Flags
|
---|
| 904 | Const D3DPRESENTFLAG_LOCKABLE_BACKBUFFER = &H00000001
|
---|
| 905 | Const D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL = &H00000002
|
---|
| 906 | Const D3DPRESENTFLAG_DEVICECLIP = &H00000004
|
---|
| 907 | Const D3DPRESENTFLAG_VIDEO = &H00000010
|
---|
| 908 |
|
---|
| 909 | ' Gamma Ramp: Same as DX7
|
---|
| 910 | Type D3DGAMMARAMP
|
---|
| 911 | red[255] As Word
|
---|
| 912 | green[255] As Word
|
---|
| 913 | blue[255] As Word
|
---|
| 914 | End Type
|
---|
| 915 |
|
---|
| 916 | ' Back buffer types
|
---|
| 917 | Const Enum D3DBACKBUFFER_TYPE
|
---|
| 918 | D3DBACKBUFFER_TYPE_MONO = 0
|
---|
| 919 | D3DBACKBUFFER_TYPE_LEFT = 1
|
---|
| 920 | D3DBACKBUFFER_TYPE_RIGHT = 2
|
---|
| 921 |
|
---|
| 922 | D3DBACKBUFFER_TYPE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 923 | End Enum
|
---|
| 924 |
|
---|
| 925 | Const Enum D3DRESOURCETYPE
|
---|
| 926 | D3DRTYPE_SURFACE = 1
|
---|
| 927 | D3DRTYPE_VOLUME = 2
|
---|
| 928 | D3DRTYPE_TEXTURE = 3
|
---|
| 929 | D3DRTYPE_VOLUMETEXTURE = 4
|
---|
| 930 | D3DRTYPE_CUBETEXTURE = 5
|
---|
| 931 | D3DRTYPE_VERTEXBUFFER = 6
|
---|
| 932 | D3DRTYPE_INDEXBUFFER = 7
|
---|
| 933 |
|
---|
| 934 | D3DRTYPE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 935 | End Enum
|
---|
| 936 |
|
---|
| 937 | ' Usages
|
---|
| 938 | Const D3DUSAGE_RENDERTARGET = &H00000001
|
---|
| 939 | Const D3DUSAGE_DEPTHSTENCIL = &H00000002
|
---|
| 940 | Const D3DUSAGE_DYNAMIC = &H00000200
|
---|
| 941 |
|
---|
| 942 | ' When passed to CheckDeviceFormat, D3DUSAGE_AUTOGENMIPMAP may return
|
---|
| 943 | ' D3DOK_NOAUTOGEN if the device doesn't support autogeneration for that format.
|
---|
| 944 | ' D3DOK_NOAUTOGEN is a success code, not a failure code... the SUCCEEDED and FAILED macros
|
---|
| 945 | ' will return true and false respectively for this code.
|
---|
| 946 | Const D3DUSAGE_AUTOGENMIPMAP = &H00000400
|
---|
| 947 | Const D3DUSAGE_DMAP = &H00004000
|
---|
| 948 |
|
---|
| 949 | ' The following usages are valid only for querying CheckDeviceFormat
|
---|
| 950 | Const D3DUSAGE_QUERY_LEGACYBUMPMAP = &H00008000
|
---|
| 951 | Const D3DUSAGE_QUERY_SRGBREAD = &H00010000
|
---|
| 952 | Const D3DUSAGE_QUERY_FILTER = &H00020000
|
---|
| 953 | Const D3DUSAGE_QUERY_SRGBWRITE = &H00040000
|
---|
| 954 | Const D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING = &H00080000
|
---|
| 955 | Const D3DUSAGE_QUERY_VERTEXTEXTURE = &H00100000
|
---|
| 956 | Const D3DUSAGE_QUERY_WRAPANDMIP = &H00200000
|
---|
| 957 |
|
---|
| 958 | ' Usages for Vertex/Index buffers
|
---|
| 959 | Const D3DUSAGE_WRITEONLY = &H00000008
|
---|
| 960 | Const D3DUSAGE_SOFTWAREPROCESSING = &H00000010
|
---|
| 961 | Const D3DUSAGE_DONOTCLIP = &H00000020
|
---|
| 962 | Const D3DUSAGE_POINTS = &H00000040
|
---|
| 963 | Const D3DUSAGE_RTPATCHES = &H00000080
|
---|
| 964 | Const D3DUSAGE_NPATCHES = &H00000100
|
---|
| 965 |
|
---|
| 966 |
|
---|
| 967 |
|
---|
| 968 | ' CubeMap Face identifiers
|
---|
| 969 | Const Enum D3DCUBEMAP_FACES
|
---|
| 970 | D3DCUBEMAP_FACE_POSITIVE_X = 0
|
---|
| 971 | D3DCUBEMAP_FACE_NEGATIVE_X = 1
|
---|
| 972 | D3DCUBEMAP_FACE_POSITIVE_Y = 2
|
---|
| 973 | D3DCUBEMAP_FACE_NEGATIVE_Y = 3
|
---|
| 974 | D3DCUBEMAP_FACE_POSITIVE_Z = 4
|
---|
| 975 | D3DCUBEMAP_FACE_NEGATIVE_Z = 5
|
---|
| 976 |
|
---|
| 977 | D3DCUBEMAP_FACE_FORCE_DWORD = &H7FFFFFFF
|
---|
| 978 | End Enum
|
---|
| 979 |
|
---|
| 980 | ' Lock flags
|
---|
| 981 | Const D3DLOCK_READONLY = &H00000010
|
---|
| 982 | Const D3DLOCK_DISCARD = &H00002000
|
---|
| 983 | Const D3DLOCK_NOOVERWRITE = &H00001000
|
---|
| 984 | Const D3DLOCK_NOSYSLOCK = &H00000800
|
---|
| 985 | Const D3DLOCK_DONOTWAIT = &H00004000
|
---|
| 986 | Const D3DLOCK_NO_DIRTY_UPDATE = &H00008000
|
---|
| 987 |
|
---|
| 988 |
|
---|
| 989 |
|
---|
| 990 | ' Vertex Buffer Description
|
---|
| 991 | Type D3DVERTEXBUFFER_DESC
|
---|
| 992 | Format As D3DFORMAT
|
---|
| 993 | SourceType As D3DRESOURCETYPE
|
---|
| 994 | Usage As DWord
|
---|
| 995 | Pool As D3DPOOL
|
---|
| 996 | Size As DWord
|
---|
| 997 |
|
---|
| 998 | FVF As DWord
|
---|
| 999 | End Type
|
---|
| 1000 |
|
---|
| 1001 | ' Index Buffer Description
|
---|
| 1002 | Type D3DINDEXBUFFER_DESC
|
---|
| 1003 | Format As D3DFORMAT
|
---|
| 1004 | SourceType As D3DRESOURCETYPE
|
---|
| 1005 | Usage As DWord
|
---|
| 1006 | Pool As D3DPOOL
|
---|
| 1007 | Size As DWord
|
---|
| 1008 | End Type
|
---|
| 1009 |
|
---|
| 1010 |
|
---|
| 1011 | ' Surface Description
|
---|
| 1012 | Type D3DSURFACE_DESC
|
---|
| 1013 | Format As D3DFORMAT
|
---|
| 1014 | SourceType As D3DRESOURCETYPE
|
---|
| 1015 | Usage As DWord
|
---|
| 1016 | Pool As D3DPOOL
|
---|
| 1017 | MultiSampleType As D3DMULTISAMPLE_TYPE
|
---|
| 1018 | MultiSampleQuality As DWord
|
---|
| 1019 | Width As DWord
|
---|
| 1020 | Height As DWord
|
---|
| 1021 | End Type
|
---|
| 1022 |
|
---|
| 1023 |
|
---|
| 1024 | Type D3DVOLUME_DESC
|
---|
| 1025 | Format As D3DFORMAT
|
---|
| 1026 | SourceType As D3DRESOURCETYPE
|
---|
| 1027 | Usage As DWord
|
---|
| 1028 | Pool As D3DPOOL
|
---|
| 1029 | Width As DWord
|
---|
| 1030 | Height As DWord
|
---|
| 1031 | Depth As DWord
|
---|
| 1032 | End Type
|
---|
| 1033 |
|
---|
| 1034 | ' Structure for LockRect
|
---|
| 1035 | Type D3DLOCKED_RECT
|
---|
| 1036 | Pitch As Long
|
---|
| 1037 | pBits As VoidPtr
|
---|
| 1038 | End Type
|
---|
| 1039 |
|
---|
| 1040 | 'Structures for LockBox
|
---|
| 1041 | Type D3DBOX
|
---|
| 1042 | Left As DWord
|
---|
| 1043 | Top As DWord
|
---|
| 1044 | Right As DWord
|
---|
| 1045 | Bottom As DWord
|
---|
| 1046 | Front As DWord
|
---|
| 1047 | Back As DWord
|
---|
| 1048 | End Type
|
---|
| 1049 |
|
---|
| 1050 | Type D3DLOCKED_BOX
|
---|
| 1051 | RowPitch As Long
|
---|
| 1052 | SlicePitch As Long
|
---|
| 1053 | pBits As VoidPtr
|
---|
| 1054 | End Type
|
---|
| 1055 |
|
---|
| 1056 | ' Structures for LockRange
|
---|
| 1057 | Type D3DRANGE
|
---|
| 1058 | Offset As DWord
|
---|
| 1059 | Size As DWord
|
---|
| 1060 | End Type
|
---|
| 1061 |
|
---|
| 1062 | ' Structures for high order primitives
|
---|
| 1063 | Type D3DRECTPATCH_INFO
|
---|
| 1064 | StartVertexOffsetWidth As DWord
|
---|
| 1065 | StartVertexOffsetHeight As DWord
|
---|
| 1066 | Width As DWord
|
---|
| 1067 | Height As DWord
|
---|
| 1068 | Stride As DWord
|
---|
| 1069 | Basis As D3DBASISTYPE
|
---|
| 1070 | Degree As D3DDEGREETYPE
|
---|
| 1071 | End Type
|
---|
| 1072 | Type D3DTRIPATCH_INFO
|
---|
| 1073 | StartVertexOffset As DWord
|
---|
| 1074 | NumVertices As DWord
|
---|
| 1075 | Basis As D3DBASISTYPE
|
---|
| 1076 | Degree As D3DDEGREETYPE
|
---|
| 1077 | End Type
|
---|
| 1078 |
|
---|
| 1079 |
|
---|
| 1080 | ' Adapter Identifier
|
---|
| 1081 | Const MAX_DEVICE_IDENTIFIER_STRING = 512
|
---|
| 1082 | Type D3DADAPTER_IDENTIFIER9
|
---|
| 1083 | Driver[MAX_DEVICE_IDENTIFIER_STRING-1] As Byte
|
---|
| 1084 | Description[MAX_DEVICE_IDENTIFIER_STRING-1] As Byte
|
---|
| 1085 | DeviceName[31] As Byte
|
---|
| 1086 |
|
---|
| 1087 | DriverVersionLowPart As DWord
|
---|
| 1088 | DriverVersionHighPart As DWord
|
---|
| 1089 |
|
---|
| 1090 | VendorId As DWord
|
---|
| 1091 | DeviceId As DWord
|
---|
| 1092 | SubSysId As DWord
|
---|
| 1093 | Revision As DWord
|
---|
| 1094 |
|
---|
| 1095 | DeviceIdentifier As GUID
|
---|
| 1096 |
|
---|
| 1097 | WHQLLevel As DWord
|
---|
| 1098 | End Type
|
---|
| 1099 |
|
---|
| 1100 | ' Raster Status structure returned by GetRasterStatus
|
---|
| 1101 | Type D3DRASTER_STATUS
|
---|
| 1102 | InVBlank As Long
|
---|
| 1103 | ScanLine As DWord
|
---|
| 1104 | End Type
|
---|
| 1105 |
|
---|
| 1106 |
|
---|
| 1107 | Const Enum D3DDEBUGMONITORTOKENS
|
---|
| 1108 | D3DDMT_ENABLE = 0 'enable debug monitor
|
---|
| 1109 | D3DDMT_DISABLE = 1 'disable debug monitor
|
---|
| 1110 | D3DDMT_FORCE_DWORD = &H7FFFFFFF
|
---|
| 1111 | End Enum
|
---|
| 1112 |
|
---|
| 1113 |
|
---|
| 1114 | 'Async feedback
|
---|
| 1115 | Const Enum D3DQUERYTYPE
|
---|
| 1116 | D3DQUERYTYPE_VCACHE = 4 'D3DISSUE_END
|
---|
| 1117 | D3DQUERYTYPE_RESOURCEMANAGER = 5 'D3DISSUE_END
|
---|
| 1118 | D3DQUERYTYPE_VERTEXSTATS = 6 'D3DISSUE_END
|
---|
| 1119 | D3DQUERYTYPE_EVENT = 8 'D3DISSUE_END
|
---|
| 1120 | D3DQUERYTYPE_OCCLUSION = 9 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1121 | D3DQUERYTYPE_TIMESTAMP = 10 'D3DISSUE_END
|
---|
| 1122 | D3DQUERYTYPE_TIMESTAMPDISJOINT = 11 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1123 | D3DQUERYTYPE_TIMESTAMPFREQ = 12 'D3DISSUE_END
|
---|
| 1124 | D3DQUERYTYPE_PIPELINETIMINGS = 13 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1125 | D3DQUERYTYPE_INTERFACETIMINGS = 14 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1126 | D3DQUERYTYPE_VERTEXTIMINGS = 15 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1127 | D3DQUERYTYPE_PIXELTIMINGS = 16 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1128 | D3DQUERYTYPE_BANDWIDTHTIMINGS = 17 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1129 | D3DQUERYTYPE_CACHEUTILIZATION = 18 'D3DISSUE_BEGIN, D3DISSUE_END
|
---|
| 1130 | End Enum
|
---|
| 1131 |
|
---|
| 1132 | ' Flags field for Issue
|
---|
| 1133 | Const D3DISSUE_END = 1<<0 'Tells the runtime to issue the end of a query, changing it's state to "non-signaled".
|
---|
| 1134 | Const D3DISSUE_BEGIN = 1<<1 'Tells the runtime to issue the beginng of a query.
|
---|
| 1135 |
|
---|
| 1136 | ' Flags field for GetData
|
---|
| 1137 | Const D3DGETDATA_FLUSH = 1<<0 'Tells the runtime to flush if the query is outstanding.
|
---|
| 1138 |
|
---|
| 1139 |
|
---|
| 1140 | Type D3DRESOURCESTATS
|
---|
| 1141 | 'Data collected since last Present()
|
---|
| 1142 | bThrashing As Long 'indicates if thrashing
|
---|
| 1143 | ApproxBytesDownloaded As DWord 'Approximate number of bytes downloaded by resource manager
|
---|
| 1144 | NumEvicts As DWord 'number of objects evicted
|
---|
| 1145 | NumVidCreates As DWord 'number of objects created in video memory
|
---|
| 1146 | LastPri As DWord 'priority of last object evicted
|
---|
| 1147 | NumUsed As DWord 'number of objects set to the device
|
---|
| 1148 | NumUsedInVidMem As DWord 'number of objects set to the device, which are already in video memory
|
---|
| 1149 | 'Persistent data
|
---|
| 1150 | WorkingSet As DWord 'number of objects in video memory
|
---|
| 1151 | WorkingSetBytes As DWord 'number of bytes in video memory
|
---|
| 1152 | TotalManaged As DWord 'total number of managed objects
|
---|
| 1153 | TotalBytes As DWord 'total number of bytes of managed objects
|
---|
| 1154 | End Type
|
---|
| 1155 |
|
---|
| 1156 | Const D3DRTYPECOUNT = 8
|
---|
| 1157 |
|
---|
| 1158 | Type D3DDEVINFO_RESOURCEMANAGER
|
---|
| 1159 | stats[D3DRTYPECOUNT-1] As D3DRESOURCESTATS
|
---|
| 1160 | End Type
|
---|
| 1161 |
|
---|
| 1162 | Type D3DDEVINFO_D3DVERTEXSTATS
|
---|
| 1163 | NumRenderedTriangles As DWord 'total number of triangles that are not clipped in this frame
|
---|
| 1164 | NumExtraClippingTriangles As DWord 'Number of new triangles generated by clipping
|
---|
| 1165 | End Type
|
---|
| 1166 |
|
---|
| 1167 | Type D3DDEVINFO_VCACHE
|
---|
| 1168 | Pattern As DWord
|
---|
| 1169 | OptMethod As DWord
|
---|
| 1170 | CacheSize As DWord
|
---|
| 1171 | MagicNumber As DWord
|
---|
| 1172 | End Type
|
---|
| 1173 |
|
---|
| 1174 | Type D3DDEVINFO_D3D9PIPELINETIMINGS
|
---|
| 1175 | VertexProcessingTimePercent As Single
|
---|
| 1176 | PixelProcessingTimePercent As Single
|
---|
| 1177 | OtherGPUProcessingTimePercent As Single
|
---|
| 1178 | GPUIdleTimePercent As Single
|
---|
| 1179 | End Type
|
---|
| 1180 |
|
---|
| 1181 | Type D3DDEVINFO_D3D9INTERFACETIMINGS
|
---|
| 1182 | WaitingForGPUToUseApplicationResourceTimePercent As Single
|
---|
| 1183 | WaitingForGPUToAcceptMoreCommandsTimePercent As Single
|
---|
| 1184 | WaitingForGPUToStayWithinLatencyTimePercent As Single
|
---|
| 1185 | WaitingForGPUExclusiveResourceTimePercent As Single
|
---|
| 1186 | WaitingForGPUOtherTimePercent As Single
|
---|
| 1187 | End Type
|
---|
| 1188 |
|
---|
| 1189 | Type D3DDEVINFO_D3D9STAGETIMINGS
|
---|
| 1190 | MemoryProcessingPercent As Single
|
---|
| 1191 | ComputationProcessingPercent As Single
|
---|
| 1192 | End Type
|
---|
| 1193 |
|
---|
| 1194 | Type D3DDEVINFO_D3D9BANDWIDTHTIMINGS
|
---|
| 1195 | MaxBandwidthUtilized As Single
|
---|
| 1196 | FrontEndUploadMemoryUtilizedPercent As Single
|
---|
| 1197 | VertexRateUtilizedPercent As Single
|
---|
| 1198 | TriangleSetupRateUtilizedPercent As Single
|
---|
| 1199 | FillRateUtilizedPercent As Single
|
---|
| 1200 | End Type
|
---|
| 1201 |
|
---|
| 1202 | Type D3DDEVINFO_D3D9CACHEUTILIZATION
|
---|
| 1203 | TextureCacheHitRate As Single
|
---|
| 1204 | PostTransformVertexCacheHitRate As Single
|
---|
| 1205 | End Type
|
---|
| 1206 |
|
---|
| 1207 |
|
---|
| 1208 | #endif '_INC_D3D9TYPES
|
---|