DirectX Structures

 

Direct3D Structures

 

D3DADAPTER_IDENTIFIER9

 

Contains information identifying the adapter.

 

TYPE D3DADAPTER_IDENTIFIER9
  Driver AS STRING * %MAX_DEVICE_IDENTIFIER_STRING
  Description AS STRING * %MAX_DEVICE_IDENTIFIER_STRING
  DeviceName AS STRING * 32

  DriverVersion AS QUAD

  VendorId AS DWORD
  DeviceId AS DWORD
  SubSysId AS DWORD
  Revision AS DWORD
  DeviceIdentifier AS GUID
  WHQLLevel AS DWORD
END TYPE

 

 

D3DBOX

 

Defines a volume.

 

TYPE D3DBOX
  nLeft AS DWORD
  nTop AS DWORD
  nRight AS DWORD
  nBottom AS DWORD
  nFront AS DWORD
  nBack AS DWORD
END TYPE

 

 

D3DCAPS9

 

Represents the capabilities of the hardware exposed through the Microsoft Direct3D object.

 

TYPE D3DCAPS9
  DeviceType AS DWORD
  AdapterOrdinal AS DWORD
  Caps AS DWORD
  Caps2 AS DWORD
  Caps3 AS DWORD
  PresentationIntervals AS DWORD
  CursorCaps AS DWORD
  DevCaps AS DWORD
  PrimitiveMiscCaps AS DWORD
  RasterCaps AS DWORD
  ZCmpCaps AS DWORD
  SrcBlendCaps AS DWORD
  DestBlendCaps AS DWORD
  AlphaCmpCaps AS DWORD
  ShadeCaps AS DWORD
  TextureCaps AS DWORD
  TextureFilterCaps AS DWORD

  CubeTextureFilterCaps AS DWORD

  VolumeTextureFilterCaps AS DWORD

  TextureAddressCaps AS DWORD

  VolumeTextureAddressCaps AS DWORD

  LineCaps AS DWORD

  MaxTextureWidth AS DWORD
  MaxTextureHeight AS DWORD
  MaxVolumeExtent AS DWORD
  MaxTextureRepeat AS DWORD
  MaxTextureAspectRatio AS DWORD
  MaxAnisotropy AS DWORD
  MaxVertexW AS SINGLE
  GuardBandLeft AS SINGLE
  GuardBandTop AS SINGLE
  GuardBandRight AS SINGLE
  GuardBandBottom AS SINGLE
  ExtentsAdjust AS SINGLE
  StencilCaps AS DWORD
  FVFCaps AS DWORD
  TextureOpCaps AS DWORD
  MaxTextureBlendStages AS DWORD
  MaxSimultaneousTextures AS DWORD
  VertexProcessingCaps AS DWORD
  MaxActiveLights AS DWORD
  MaxUserClipPlanes AS DWORD
  MaxVertexBlendMatrices AS DWORD
  MaxVertexBlendMatrixIndex AS DWORD
  MaxPointSize AS SINGLE
  MaxPrimitiveCount AS DWORD

  MaxVertexIndex AS DWORD
  MaxStreams AS DWORD
  MaxStreamStride AS DWORD

  VertexShaderVersion AS DWORD
  MaxVertexShaderConst AS DWORD

  PixelShaderVersion AS DWORD
  PixelShader1xMaxValue AS SINGLE

  DevCaps2 AS DWORD
  MaxNpatchTessellationLevel AS SINGLE
  Reserved5 AS DWORD
  MasterAdapterOrdinal AS DWORD

  AdapterOrdinalInGroup AS DWORD

  NumberOfAdaptersInGroup AS DWORD

  DeclTypes AS DWORD

  NumSimultaneousRTs AS DWORD

  StretchRectFilterCaps AS DWORD

  VS20Caps AS D3DVSHADERCAPS2_0
  PS20Caps AS D3DVSHADERCAPS2_0
  VertexTextureFilterCaps AS DWORD

  MaxVShaderInstructionsExecuted AS DWORD

  MaxPShaderInstructionsExecuted AS DWORD

  MaxVertexShader30InstructionSlots AS DWORD
  MaxPixelShader30InstructionSlots AS DWORD
END TYPE

 

 

D3DCLIPSTATUS9

 

Describes the current clip status.

 

TYPE D3DCLIPSTATUS9
  ClipUnion AS DWORD
  ClipIntersection AS DWORD
END TYPE

 

 

D3DCOLORVALUE

 

Describes color values.

 

TYPE D3DCOLORVALUE
  r AS SINGLE
  g AS SINGLE
  b AS SINGLE
  a AS SINGLE
END TYPE

 

 

D3DDEVICE_CREATION_PARAMETERS

 

Describes color values.

 

TYPE D3DDEVICE_CREATION_PARAMETERS
  AdapterOrdinal AS DWORD
  DeviceType AS DWORD
  hFocusWindow AS DWORD
  BehaviorFlags AS DWORD
END TYPE

 

 

D3DDEVINFO_D3D9BANDWIDTHTIMINGS

 

Throughput metrics for help in understanding the performance of an application.

 

TYPE D3DDEVINFO_D3D9BANDWIDTHTIMINGS
  MaxBandwidthUtilized AS SINGLE
  FrontEndUploadMemoryUtilizedPercent AS SINGLE
  VertexRateUtilizedPercent AS SINGLE
  TriangleSetupRateUtilizedPercent AS SINGLE
  FillRateUtilizedPercent AS SINGLE
END TYPE

 

 

D3DDEVINFO_D3D9CACHEUTILIZATION

 

Measure the cache hit rate performance for textures and indexed vertices.

 

TYPE D3DDEVINFO_D3D9CACHEUTILIZATION
  TextureCacheHitRate AS SINGLE

  PostTransformVertexCacheHitRate AS SINGLE
END TYPE

 

 

D3DDEVINFO_D3D9INTERFACETIMINGS

 

Percent of time processing data in the driver. These statistics may help identify cases when the driver is waiting for other resources.

 

TYPE D3DDEVINFO_D3D9INTERFACETIMINGS
  WaitingForGPUToUseApplicationResourceTimePercent AS SINGLE
  WaitingForGPUToAcceptMoreCommandsTimePercent AS SINGLE
  WaitingForGPUToStayWithinLatencyTimePercent AS SINGLE
  WaitingForGPUExclusiveResourceTimePercent AS SINGLE
  WaitingForGPUOtherTimePercent AS SINGLE
END TYPE

 

 

D3DDEVINFO_D3D9PIPELINETIMINGS

 

Percent of time processing data in the pipeline.

 

TYPE D3DDEVINFO_D3D9PIPELINETIMINGS
  VertexProcessingTimePercent AS SINGLE
  PixelProcessingTimePercent AS SINGLE
  OtherGPUProcessingTimePercent AS SINGLE
  GPUIdleTimePercent AS SINGLE
END TYPE

 

 

D3DDEVINFO_D3D9STAGETIMINGS

 

Percent of time processing shader data.

 

TYPE D3DDEVINFO_D3D9STAGETIMINGS
  MemoryProcessingPercent AS SINGLE
  ComputationProcessingPercent AS SINGLE
END TYPE

 

 

D3DDEVINFO_D3DVERTEXSTATS

 

Reports the number of triangles that have been processed and clipped by the runtime's software vertex processing.

 

TYPE D3DDEVINFO_D3DVERTEXSTATS
  NumRenderedTriangles AS DWORD

  NumExtraClippingTriangles AS DWORD

END TYPE

 

 

D3DDEVINFO_RESOURCEMANAGER

 

Resource usage statistics.

 

TYPE D3DDEVINFO_RESOURCEMANAGER
  stats(0 TO %D3DRTYPECOUNT - 1) AS D3DRESOURCESTATS
END TYPE

 

 

D3DDEVINFO_VCACHE

 

Vertex cache optimization hints.

 

TYPE D3DDEVINFO_VCACHE
  Pattern AS DWORD

  OptMethod AS DWORD

  CacheSize AS DWORD

  MagicNumber AS DWORD

END TYPE

 

 

D3DDISPLAYMODE

 

Describes the display mode.

 

TYPE D3DDISPLAYMODE
  nWidth AS DWORD
  nHeight AS DWORD
  RefreshRate AS DWORD
  nFormat AS DWORD
END TYPE

 

 

D3DGAMMARAMP

 

Contains red, green, and blue ramp data.

 

TYPE D3DGAMMARAMP
  red (255) AS WORD
  green(255) AS WORD
  blue (255) AS DWORD
END TYPE

 

 

D3DINDEXBUFFER_DESC

 

Describes an index buffer.

 

TYPE D3DINDEXBUFFER_DESC
  nFormat AS DWORD
  nType AS DWORD
  Usage AS DWORD
  Pool AS DWORD
  nSize AS DWORD
END TYPE

 

 

D3DLIGHT9

 

Defines a set of lighting properties.

 

TYPE D3DLIGHT9
  nType AS DWORD
  Diffuse AS D3DCOLORVALUE
  Specular AS D3DCOLORVALUE
  Ambient AS D3DCOLORVALUE
  Position AS D3DVECTOR
  Direction AS D3DVECTOR
  Range AS SINGLE
  Falloff AS SINGLE
  Attenuation0 AS SINGLE
  Attenuation1 AS SINGLE
  Attenuation2 AS SINGLE
  Theta AS SINGLE
  Phi AS SINGLE
END TYPE

 

 

D3DLOCKED_BOX

 

Describes a locked box (volume).

 

TYPE D3DLOCKED_BOX
  RowPitch AS LONG
  SlicePitch AS LONG
  pBits AS DWORD
END TYPE

 

 

D3DLOCKED_RECT

 

Describes a locked rectangular region.

 

TYPE D3DLOCKED_RECT
  Pitch AS LONG
  pBits AS DWORD
END TYPE

 

 

D3DMATERIAL9

 

Specifies material properties.

 

TYPE D3DMATERIAL9
  Diffuse AS D3DCOLORVALUE
  Ambient AS D3DCOLORVALUE
  Specular AS D3DCOLORVALUE
  Emissive AS D3DCOLORVALUE
  Power AS SINGLE
END TYPE

 

 

D3DMATRIX

 

Describes a matrix.

 

TYPE D3DMATRIX
  m11 AS SINGLE
  m12 AS SINGLE
  m13 AS SINGLE
  m14 AS SINGLE
  m21 AS SINGLE
  m22 AS SINGLE
  m23 AS SINGLE
  m24 AS SINGLE
  m31 AS SINGLE
  m32 AS SINGLE
  m33 AS SINGLE
  m34 AS SINGLE
  m41 AS SINGLE
  m42 AS SINGLE
  m43 AS SINGLE
  m44 AS SINGLE
END TYPE

 

 

D3DPRESENT_PARAMETERS

 

Describes the presentation parameters.

 

TYPE D3DPRESENT_PARAMETERS
  BackBufferWidth AS DWORD
  BackBufferHeight AS DWORD
  BackBufferFormat AS DWORD
  BackBufferCount AS DWORD
  MultiSampleType AS DWORD
  MultiSampleQuality AS DWORD
  SwapEffect AS DWORD
  hDeviceWindow AS DWORD
  Windowed AS LONG
  EnableAutoDepthStencil AS LONG
  AutoDepthStencilFormat AS DWORD
  Flags AS DWORD
  FullScreen_RefreshRateInHz AS DWORD
  PresentationInterval AS DWORD
END TYPE

 

 

D3DPSHADERCAPS2_0

 

Pixel shader driver caps.

 

TYPE D3DPSHADERCAPS2_0
  Caps AS DWORD
  DynamicFlowControlDepth AS LONG
  NumTemps AS LONG
  StaticFlowControlDepth AS LONG
  NumInstructionSlots AS LONG
END TYPE

 

 

D3DRANGE

 

Defines a range.

 

TYPE D3DRANGE
  Offset AS DWORD
  nSize AS DWORD
END TYPE

 

 

D3DRASTER_STATUS

 

Describes the raster status.

 

TYPE D3DRASTER_STATUS
  InVBlank AS LONG
  ScanLine AS DWORD
END TYPE

 

 

D3DRECT

 

Defines a rectangle.

 

TYPE D3DRECT
  x1 AS LONG
  y1 AS LONG
  x2 AS LONG
  y2 AS LONG
END TYPE

 

 

D3DRECTPATCH_INFO

 

Describes a rectangular high-order patch.

 

TYPE D3DRECTPATCH_INFO
  StartVertexOffsetWidth AS DWORD
  StartVertexOffsetHeight AS DWORD
  nWidth AS DWORD
  nHeight AS DWORD
  Stride AS DWORD
  Basis AS DWORD
  Degree AS DWORD
END TYPE

 

 

D3DRESOURCESTATS

 

Resource statistics gathered by the D3DDEVINFO_RESOURCEMANAGER when using the asynchronous query mechanism.

 

TYPE D3DRESOURCESTATS
  bThrashing AS LONG

  ApproxBytesDownloaded AS DWORD

  NumEvicts AS DWORD

  NumVidCreates AS DWORD

  LastPri AS DWORD

  NumUsed AS DWORD

  NumUsedInVidMem AS DWORD

  WorkingSet AS DWORD

  WorkingSetBytes AS DWORD

  TotalManaged AS DWORD

  TotalBytes AS DWORD

END TYPE

 

 

D3DSURFACE_DESC

 

Describes a surface.

 

TYPE D3DSURFACE_DESC
  nFormat AS DWORD
  nType AS DWORD
  Usage AS DWORD
  Pool AS DWORD
  MultiSampleType AS DWORD
  MultiSampleQuality AS DWORD
  nWidth AS DWORD
  nHeight AS DWORD
END TYPE

 

 

D3DTRIPATCH_INFO

 

Describes a triangular high-order patch.

 

TYPE D3DTRIPATCH_INFO
  StartVertexOffset AS DWORD
  NumVertices AS DWORD
  Basis AS DWORD
  Degree AS DWORD
END TYPE

 

 

D3DVECTOR

 

Defines a vector.

 

TYPE D3DVECTOR
  x AS SINGLE
  y AS SINGLE
  z AS SINGLE
END TYPE

 

 

D3DVERTEXBUFFER_DESC

 

Describes a vertex buffer.

 

TYPE D3DVERTEXBUFFER_DESC
  nFormat AS DWORD
  nType AS DWORD
  Usage AS DWORD
  Pool AS DWORD
  nSize AS DWORD
  FVF AS DWORD
END TYPE

 

 

D3DVERTEXELEMENT9

 

Defines the vertex data layout. Each vertex can contain one or more data types and each data type is described by a vertex element.

 

TYPE D3DVERTEXELEMENT9
  Stream AS WORD
  Offset AS WORD
  nType AS BYTE

  Method AS BYTE

  Usage AS BYTE
  UsageIndex AS BYTE
END TYPE

 

 

D3DVIEWPORT9

 

Defines the window dimensions of a render-target surface onto which a 3-D volume projects.

 

TYPE D3DVIEWPORT9
  X AS DWORD
  Y AS DWORD

  nWidth AS DWORD
  nHeight AS DWORD
  MinZ AS SINGLE

  MaxZ AS SINGLE

END TYPE

 

 

D3DVOLUME_DESC

 

Describes a volume.

 

TYPE D3DVOLUME_DESC
  nFormat AS DWORD
  nType AS DWORD
  Usage AS DWORD
  Pool AS DWORD
  nWidth AS DWORD
  nHeight AS DWORD
  Depth AS DWORD
END TYPE

 

 

D3DVSHADERCAPS2_0

 

Vertex shader caps.

 

TYPE D3DVSHADERCAPS2_0
  Caps AS DWORD
  DynamicFlowControlDepth AS LONG
  NumTemps AS LONG
  StaticFlowControlDepth AS LONG
END TYPE

 

 

PALETTEENTRY

 

Specifies the color and usage of an entry in a logical palette.

 

This structure is part of the Platform SDK. It is documented here for convenience.

 

TYPE PALETTEENTRY
  peRed AS BYTE
  peGreen AS BYTE
  peBlue AS BYTE
  peFlags AS BYTE
END TYPE

 

 

 

Effect Structures

 

D3DXEFFECT_DESC

 

Describes an effect object.

 

TYPE D3DXEFFECT_DESC
  Creator AS ASCIIZ PTR

  Parameters AS DWORD

  Techniques AS DWORD

  Functions AS DWORD

END TYPE

 

 

D3DXEFFECTDEFAULT

 

Effect default parameters.

 

TYPE D3DXEFFECTDEFAULT
  pParamName AS DWORD
  nType AS DWORD

  NumBytes AS DWORD

  pValue AS DWORD

END TYPE

 

 

D3DXEFFECTINSTANCE

 

Data type for managing a set of default effect parameters.

 

TYPE D3DXEFFECTINSTANCE
  pEffectFilename AS DWORD
  NumDefaults AS DWORD
  pDefaults AS DWORD
END TYPE

 

 

D3DXFRAGMENT_DESC

 

Describes an annotation used by an effect object.

 

TYPE D3DXFRAGMENT_DESC
  pName AS ASCIIZ PTR
  Target AS DWORD
END TYPE

 

 

D3DXFUNCTION_DESC

 

Describes a function used by an effect.

 

TYPE D3DXFUNCTION_DESC
  pName AS ASCIIZ PTR

  Annotations AS DWORD

END TYPE

 

 

D3DXPARAMETER_DESC

 

Describes a parameter used for an effect object.

 

TYPE D3DXPARAMETER_DESC
  pName AS ASCIIZ PTR

  Semantic AS ASCIIZ PTR

  Class AS DWORD

  nType AS DWORD

  Rows AS DWORD

  Columns AS DWORD

  Elements AS DWORD

  Annotations AS DWORD

  StructMembers AS DWORD

  Flags AS DWORD

  Bytes AS DWORD

END TYPE

 

 

D3DXPASS_DESC

 

Describes a pass for an effect object.

 

TYPE D3DXPASS_DESC
  pName AS ASCIIZ PTR

  Annotations AS DWORD

  pVertexShaderFunction AS DWORD

  pPixelShaderFunction AS DWORD

END TYPE

 

 

D3DXSEMANTIC

 

Semantics map a parameter to vertex or pixel shader registers. They can also be optional descriptive strings attached to non-register parameters.

 

TYPE D3DXSEMANTIC
  Usage AS DWORD
  UsageIndex AS DWORD
END TYPE

 

 

D3DXTECHNIQUE_DESC

 

Describes a technique used by an effect.

 

TYPE D3DXTECHNIQUE_DESC
  pName AS ASCIIZ PTR

  Passes AS DWORD

  Annotations AS DWORD

END TYPE

 

 

 

X File Structures

 

D3DXF_FILELOADMEMORY

 

Identifies memory data.

 

TYPE D3DXF_FILELOADMEMORY
  lpMemory AS DWORD

  dSize AS DWORD

END TYPE

 

 

D3DXF_FILELOADRESOURCE

 

Identifies resource data.

 

TYPE D3DXF_FILELOADRESOURCE
  hModule AS DWORD
  lpName AS ASCIIZ PTR
  lpType AS ASCIIZ PTR
END TYPE

 

 

XFILECOMPRESSEDANIMATIONSET

 

Identifies compressed key frame animation data.

 

TYPE XFILECOMPRESSEDANIMATIONSET
  CompressedBlockSize AS DWORD
  TicksPerSec AS SINGLE
  PlaybackType AS DWORD
  BufferLength AS DWORD
END TYPE

 

 

 

D3DX Structures

 

D3DXATTRIBUTERANGE

 

Stores an attribute table entry.

 

TYPE D3DXATTRIBUTERANGE
  AttribId AS DWORD
  FaceStart AS DWORD
  FaceCount AS DWORD
  VertexStart AS DWORD
  VertexCount AS DWORD
END TYPE

 

 

D3DXATTRIBUTEWEIGHTS

 

Specifies mesh weight attributes.

 

TYPE D3DXATTRIBUTEWEIGHTS
  Position AS SINGLE
  Boundary AS SINGLE
  Normal AS SINGLE
  Diffuse AS SINGLE
  Specular AS SINGLE
  Texcoord (0 TO 7) AS SINGLE
  Tangent AS SINGLE
  Binormal AS SINGLE
END TYPE

 

 

D3DXBONECOMBINATION

 

Describes a subset of the mesh that has the same attribute and bone combination.

 

TYPE D3DXBONECOMBINATION
  AttribId AS DWORD
  FaceStart AS DWORD
  FaceCount AS DWORD
  VertexStart AS DWORD
  VertexCount AS DWORD
  BoneId AS DWORD
END TYPE

 

 

D3DXCOLOR

 

Describes color values.

 

TYPE D3DXCOLOR
  r AS SINGLE
  g AS SINGLE
  b AS SINGLE
  a AS SINGLE
END TYPE

 

 

D3DXCONSTANT_DESC

 

Describes color values.

 

TYPE D3DXCONSTANT_DESC
  pName AS ASCIIZ PTR

  RegisterSet AS DWORD

  RegisterIndex AS DWORD

  RegisterCount AS DWORD

  Class AS DWORD

  nType AS DWORD

  Rows AS DWORD

  Columns AS DWORD

  Elements AS DWORD

  StructMembers AS DWORD

  Bytes AS DWORD

  DefaultValue AS DWORD

END TYPE

 

 

D3DXCONSTANTTABLE_DESC

 

Describes color values.

 

TYPE D3DXCONSTANTTABLE_DESC
  Creator AS ASCIIZ PTR

  Version AS DWORD

  Constants AS DWORD

END TYPE

 

 

D3DXEVENT_DESC

 

Describes an animation event.

 

UNION uD3DXEVENT_DESC
  Weight AS SINGLE
  Speed AS SINGLE
  Position AS DOUBLE
  bEnable AS LONG
END UNION

TYPE D3DXEVENT_DESC
  nType AS DWORD
  Track AS DWORD
  StartTime AS DOUBLE
  Duration AS DOUBLE
  Transition AS DWORD
  u AS uD3DXEVENT_DESC
END TYPE

 

 

D3DXFONT_DESC

 

Defines the attributes of a font.

 

TYPE D3DXFONT_DESCA
  nHeight AS LONG
  nWidth AS DWORD
  nWeight AS DWORD
  MipLevels AS DWORD
  Italic AS LONG
  CharSet AS BYTE
  OutputPrecision AS BYTE
  Quality AS BYTE
  PitchAndFamily AS BYTE
  FaceName AS STRING * %LF_FACESIZE
END TYPE

 

TYPE D3DXFONT_DESCW
  nHeight AS LONG
  nWidth AS DWORD
  nWeight AS DWORD
  MipLevels AS DWORD
  Italic AS LONG
  CharSet AS BYTE
  OutputPrecision AS BYTE
  Quality AS BYTE
  PitchAndFamily AS BYTE
  FaceName AS STRING * (%LF_FACESIZE * 2)
END TYPE

 

 

D3DXFRAME

 

Encapsulates a transform frame in a transformation frame hierarchy.

 

TYPE D3DXFRAME
  pName AS ASCIIZ PTR
  TransformationMatrix AS DWORD
  pMeshContainer AS DWORD
  pFrameSibling AS DWORD
  pFrameFirstChild AS DWORD
END TYPE

 

 

D3DXIMAGE_INFO

 

Returns a description of the original contents of an image file.

 

TYPE D3DXIMAGE_INFO
  nWidth AS DWORD
  nHeight AS DWORD
  Depth AS DWORD
  MipLevels AS DWORD
  nFormat AS DWORD
  ResourceType AS DWORD
  ImageFileFormat AS DWORD
END TYPE

 

 

D3DXINTERSECTINFO

 

Returns a description of the original contents of an image file.

 

TYPE D3DXINTERSECTINFO
  FaceIndex AS DWORD

  U AS SINGLE

  V AS SINGLE

  Dist AS SINGLE

END TYPE

 

 

D3DXKEY_CALLBACK

 

Returns a description of the original contents of an image file.

 

TYPE D3DXKEY_CALLBACK
  fTime AS SINGLE
  pCallbackData AS DWORD
END TYPE

 

 

D3DXKEY_QUATERNION

 

Describes a quaternion key for use in key frame animation. A quaternion key is a quaternion value at a given time.

 

TYPE D3DXKEY_QUATERNION
  fTime AS SINGLE
  Value AS D3DXQUATERNION
END TYPE

 

 

D3DXKEY_VECTOR3

 

Describes a vector key for use in key frame animation. It specifies a vector at a given time. This is used for scale and translation keys.

 

TYPE D3DXKEY_VECTOR3
  fTime AS SINGLE
  Value AS D3DXVECTOR3
END TYPE

 

 

D3DXMACRO

 

Describes preprocessor definitions used by an effect object.

 

TYPE D3DXMACRO
  pName AS ASCIIZ PTR
  pDefinition AS ASCIIZ PTR
END TYPE

 

 

D3DXMATERIAL

 

Returns material information saved in Microsoft Direct3D (.x) files.

 

TYPE D3DXMATERIAL
  MatD3D AS D3DMATERIAL9
  pTextureFilename AS DWORD
END TYPE

 

 

D3DXMATRIX

 

Describes a matrix.

 

TYPE D3DXMATRIX
  m11 AS SINGLE
  m12 AS SINGLE
  m13 AS SINGLE
  m14 AS SINGLE
  m21 AS SINGLE
  m22 AS SINGLE
  m23 AS SINGLE
  m24 AS SINGLE
  m31 AS SINGLE
  m32 AS SINGLE
  m33 AS SINGLE
  m34 AS SINGLE
  m41 AS SINGLE
  m42 AS SINGLE
  m43 AS SINGLE
  m44 AS SINGLE
END TYPE

 

 

D3DXMESHCONTAINER

 

Encapsulates a mesh object in a transformation frame hierarchy.

 

TYPE D3DXMESHCONTAINER
  pName AS ASCIIZ PTR
  MeshData AS DWORD
  pMaterials AS DWORD
  pEffects AS DWORD
  NumMaterials AS DWORD
  pAdjacency AS DWORD PTR
  pSkinInfo AS DWORD
END TYPE

 

 

D3DXMESHDATA

 

Mesh data structure.

 

UNION uD3DXMESHDATA
  pMesh AS DWORD
  pPMesh AS DWORD
  pPatchMesh AS DWORD
END UNION

TYPE D3DXMESHDATA
  nType AS DWORD
  u AS uD3DXMESHDATA
END TYPE

 

 

D3DXPATCHINFO

 

Structure that contains the attributes of a patch mesh.

 

TYPE D3DXPATCHINFO
  PatchType AS DWORD
  Degree AS DWORD
  Basis AS DWORD
END TYPE

 

 

D3DXPLANE

 

Describes a plane.

 

TYPE D3DXPLANE
  a AS SINGLE
  b AS SINGLE
  c AS SINGLE
  d AS SINGLE
END TYPE

 

 

D3DXQUATERNION

 

Describes a quaternion.

 

TYPE D3DXQUATERNION
  x AS SINGLE
  y AS SINGLE
  z AS SINGLE
  w AS SINGLE
END TYPE

 

 

D3DXRTE_DESC

 

Describes an off-screen render target used by an instance of ID3DXRenderToEnvMap.

 

TYPE D3DXRTE_DESC
  nSize AS DWORD
  MipLevels AS DWORD
  nFormat AS DWORD
  DepthStencil AS LONG
  DepthStencilFormat AS DWORD
END TYPE

 

 

D3DXRTS_DESC

 

Describes a render surface.

 

TYPE D3DXRTS_DESC
  nWidth AS DWORD
  nHeight AS DWORD
  nFormat AS DWORD
  DepthStencil AS LONG
  DepthStencilFormat AS DWORD
END TYPE

 

 

D3DXSHADER_CONSTANTINFO

 

TYPE D3DXSHADER_CONSTANTINFO
  pName AS DWORD

  RegisterSet AS WORD

  RegisterIndex AS WORD

  RegisterCount AS WORD

  Reserved AS WORD

  TypeInfo AS DWORD

  DefaultValue AS DWORD

END TYPE

 

 

D3DXSHADER_CONSTANTTABLE

 

Helper structure for managing a shader constant table. This can also be done using ID3DXConstantTable.

 

TYPE D3DXSHADER_CONSTANTTABLE
  nSize AS DWORD

  Creator AS DWORD

  Version AS DWORD

  Constants AS DWORD

  ConstantInfo AS DWORD

  Flags AS DWORD

  Target AS DWORD

END TYPE

 

 

D3DXSHADER_STRUCTMEMBERINFO

 

A helper structure containing member structure information.

 

TYPE D3DXSHADER_TYPEINFO
  pName AS WORD

  TypeInfo AS WORD

END TYPE

 

 

D3DXSHADER_TYPEINFO

 

A helper structure containing member type information.

 

TYPE D3DXSHADER_TYPEINFO
  Class AS WORD

  nType AS WORD

  Rows AS WORD

  Columns AS WORD

  Elements AS WORD

  StructMembers AS WORD

  StructMemberInfo AS DWORD

END TYPE

 

 

D3DXSHMATERIAL

 

Spherical harmonic (SH) precomputed radiance transfer (PRT) material characteristics.

 

TYPE D3DXSHMATERIAL
  Diffuse AS D3DCOLORVALUE

  bMirror AS LONG

  bSubSurf AS LONG

  RelativeIndexOfRefraction AS SINGLE
  Absorption AS D3DCOLORVALUE
  ReducedScattering AS D3DCOLORVALUE
END TYPE

 

 

D3DXSHPRTSPLITMESHCLUSTERDATA

 

TYPE D3DXSHPRTSPLITMESHCLUSTERDATA
  uVertStart AS DWORD

  uVertLength AS DWORD

  uFaceStart AS DWORD

  uFaceLength AS DWORD

  uClusterStart AS DWORD

  uClusterLength AS DWORD

END TYPE

 

 

D3DXSHPRTSPLITMESHVERTDATA

 

TYPE D3DXSHPRTSPLITMESHVERTDATA
  uVertRemap AS DWORD

  uSubCluster AS DWORD

  ucVertStatus AS BYTE

END TYPE

 

 

D3DXTRACK_DESC

 

Describes an animation track and specifies blending weight, speed, and position for the track at a given time.

 

TYPE D3DXTRACK_DESC
  Priority AS DWORD
  Weight AS SINGLE
  Speed AS SINGLE
  Position AS DOUBLE
  lEnable AS LONG
END TYPE

 

 

D3DXVECTOR2

 

Describes a vector in 2-D space.

 

TYPE D3DXVECTOR2
  x AS SINGLE
  y AS SINGLE
END TYPE

 

 

D3DXVECTOR3

 

Describes a vector in three-dimensional (3-D) space.

 

TYPE D3DXVECTOR3
  x AS SINGLE
  y AS SINGLE
  z AS SINGLE
END TYPE

 

 

D3DXVECTOR4

 

Describes a vector in 4-D space.

 

TYPE D3DXVECTOR4
  x AS SINGLE
  y AS SINGLE
  z AS SINGLE
  w AS SINGLE
END TYPE

 

 

D3DXWELDEPSILONS

 

Specifies tolerance values for each vertex component when comparing vertices to determine if they are similar enough to be welded together.

 

TYPE D3DXWELDEPSILONS
  Position AS SINGLE

  BlendWeights AS SINGLE
  Normal AS SINGLE
  PSize AS SINGLE
  Specular AS SINGLE
  Diffuse AS SINGLE
  Texcoord(0 TO 7) AS SINGLE
  Tangent AS SINGLE
  Binormal AS SINGLE
  TessFactor AS SINGLE
END TYPE

 

 

 

DirectInput Structures

 

CPOINT

 

Describes a calibration point. An array of CPOINT structures is contained by a DIPROPCPOINTS structure.

 

TYPE CPOINT
  lP AS LONG

  dwLog AS DWORD

END TYPE

 

 

DIACTION

 

Describes a mapping of one game action to one device semantic. An array of DIACTION structures is contained by a DIACTIONFORMAT structure.

 

UNION DIACTIONA_UNION
  lptszActionName AS ASCIIZ PTR ' // LPCSTR
  uResIdString AS DWORD
END UNION

TYPE DIACTIONA
  uAppData AS DWORD PTR
  dwSemantic AS DWORD
  dwFlags AS DWORD
  DIACTIONA_UNION
  guidInstance AS GUID
  dwObjID AS DWORD
  dwHow AS DWORD
END TYPE

 

UNION DIACTIONW_UNION
  lptszActionName AS DWORD ' // LPCWSTR
  uResIdString AS DWORD
END UNION

TYPE DIACTIONW
  uAppData AS DWORD PTR
  dwSemantic AS DWORD
  dwFlags AS DWORD
  DIACTIONW_UNION
  guidInstance AS GUID
  dwObjID AS DWORD
  dwHow AS DWORD
END TYPE

 

 

DIACTIONFORMAT

 

Contains information about the calling application and acts as a container for an array of DIACTION structures that define action-to-control mappings for a genre.

 

TYPE DIACTIONFORMATA
  dwSize AS DWORD
  dwActionSize AS DWORD
  dwDataSize AS DWORD
  dwNumActions AS DWORD
  rgoAction AS DWORD ' // Array of DIACTIONA structures
  guidActionMap AS GUID
  dwGenre AS DWORD
  dwBufferSize AS DWORD
  lAxisMin AS LONG
  lAxisMax AS LONG
  hInstString AS DWORD
  ftTimeStamp AS FILETIME
  dwCRC AS DWORD
  tszActionMap AS ASCIIZ * %MAX_PATH
END TYPE

TYPE DIACTIONFORMATW
  dwSize AS DWORD
  dwActionSize AS DWORD
  dwDataSize AS DWORD
  dwNumActions AS DWORD
  rgoAction AS DWORD ' // Array of DIACTIONW structures
  guidActionMap AS GUID
  dwGenre AS DWORD
  dwBufferSize AS DWORD
  lAxisMin AS LONG
  lAxisMax AS LONG
  hInstString AS DWORD
  ftTimeStamp AS FILETIME
  dwCRC AS DWORD
  tszActionMap AS STRING * %MAX_PATH * 2
END TYPE

 

 

DICOLORSET

 

Describes a set of colors used to draw the device configuration user interface. It is part of the DICONFIGUREDEVICESPARAMS structure.

 

TYPE DICOLORSET
  dwSize AS DWORD
  cTextFore AS DWORD ' // D3DCOLOR
  cTextHighlight AS DWORD ' // D3DCOLOR
  cCalloutLine AS DWORD ' // D3DCOLOR
  cCalloutHighlight AS DWORD ' // D3DCOLOR
  cBorder AS DWORD ' // D3DCOLOR
  cControlFill AS DWORD ' // D3DCOLOR
  cHighlightFill AS DWORD ' // D3DCOLOR
  cAreaFill AS DWORD ' // D3DCOLOR
END TYPE

 

 

DICONDITION

 

Contains type-specific information for effects that are marked as DIEFT_CONDITION.

 

TYPE DICONDITION
  lOffset AS LONG
  lPositiveCoefficient AS LONG
  lNegativeCoefficient AS LONG
  dwPositiveSaturation AS DWORD
  dwNegativeSaturation AS DWORD
  lDeadBand AS LONG
END TYPE

 

 

DICONFIGUREDEVICESPARAMS

 

Contains information for the device configuration property sheet. It is used by the IDirectInput8::ConfigureDevices method.

 

TYPE DICONFIGUREDEVICESPARAMSA
  dwSize AS DWORD
  dwcUsers AS DWORD
  lptszUserNames AS ASCIIZ PTR
  dwcFormats AS DWORD
  lprgFormats AS DWORD
  hwnd AS DWORD
  dics AS DICOLORSET
  lpUnkDDSTarget AS DWORD PTR
END TYPE

TYPE DICONFIGUREDEVICESPARAMSW
  dwSize AS DWORD
  dwcUsers AS DWORD
  lptszUserNames AS DWORD ' // LPWSTR
  dwcFormats AS DWORD
  lprgFormats AS DWORD
  hwnd AS DWORD
  dics AS DICOLORSET
  lpUnkDDSTarget AS DWORD PTR
END TYPE

 

 

DICONSTANTFORCE

 

Contains type-specific information for effects that are marked as DIEFT_CONSTANTFORCE.

 

TYPE DICONSTANTFORCE
  lMagnitude AS LONG
END TYPE

 

 

DICUSTOMFORCE

 

Contains type-specific information for effects that are marked as DIEFT_CUSTOMFORCE.

 

TYPE DICUSTOMFORCE
  cChannels AS DWORD
  dwSamplePeriod