Hex Artifact Content

Not logged in

Artifact 49794b578fca5d4e5e16df2906f5e1867ece50fb:


0000: 2f 2f 20 44 33 44 58 20 54 79 70 65 73 20 61 6e  // D3DX Types an
0010: 64 20 43 6f 6e 73 74 61 6e 74 73 20 2d 2d 2d 2d  d Constants ----
0020: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0030: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0040: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0050: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0060: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
0070: 2d 2d 2d 0d 0a 0d 0a 6d 6f 64 75 6c 65 20 77 69  ---....module wi
0080: 6e 33 32 2e 64 69 72 65 63 74 78 2e 64 33 64 78  n32.directx.d3dx
0090: 39 3b 0d 0a 0d 0a 70 75 62 6c 69 63 20 69 6d 70  9;....public imp
00a0: 6f 72 74 20 77 69 6e 33 32 2e 64 69 72 65 63 74  ort win32.direct
00b0: 78 2e 64 33 64 39 3b 0d 0a 70 75 62 6c 69 63 20  x.d3d9;..public 
00c0: 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 77 69 6e  import win32.win
00d0: 64 6f 77 73 3b 0d 0a 0d 0a 61 6c 69 61 73 20 44  dows;....alias D
00e0: 33 44 4d 41 54 52 49 58 20 44 33 44 58 4d 41 54  3DMATRIX D3DXMAT
00f0: 52 49 58 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 75 69  RIX;....const ui
0100: 6e 74 20 4d 41 58 44 33 44 44 45 43 4c 4c 45 4e  nt MAXD3DDECLLEN
0110: 47 54 48 20 3d 20 36 34 3b 0d 0a 63 6f 6e 73 74  GTH = 64;..const
0120: 20 75 69 6e 74 20 4d 41 58 5f 46 56 46 5f 44 45   uint MAX_FVF_DE
0130: 43 4c 5f 53 49 5a 45 20 3d 20 4d 41 58 44 33 44  CL_SIZE = MAXD3D
0140: 44 45 43 4c 4c 45 4e 47 54 48 20 2b 20 31 3b 0d  DECLLENGTH + 1;.
0150: 0a 0d 0a 61 6c 69 67 6e 28 34 29 20 73 74 72 75  ...align(4) stru
0160: 63 74 20 44 33 44 58 41 54 54 52 49 42 55 54 45  ct D3DXATTRIBUTE
0170: 52 41 4e 47 45 0d 0a 7b 0d 0a 20 20 20 20 44 57  RANGE..{..    DW
0180: 4f 52 44 20 41 74 74 72 69 62 49 64 3b 0d 0a 20  ORD AttribId;.. 
0190: 20 20 20 44 57 4f 52 44 20 46 61 63 65 53 74 61     DWORD FaceSta
01a0: 72 74 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 46  rt;..    DWORD F
01b0: 61 63 65 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 44  aceCount;..    D
01c0: 57 4f 52 44 20 56 65 72 74 65 78 53 74 61 72 74  WORD VertexStart
01d0: 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 56 65 72  ;..    DWORD Ver
01e0: 74 65 78 43 6f 75 6e 74 3b 0d 0a 7d 0d 0a 0d 0a  texCount;..}....
01f0: 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63 74 20  align(4) struct 
0200: 44 33 44 58 56 45 43 54 4f 52 32 0d 0a 7b 0d 0a  D3DXVECTOR2..{..
0210: 09 66 6c 6f 61 74 20 78 20 3d 20 30 2c 20 79 20  .float x = 0, y 
0220: 3d 20 30 3b 0d 0a 0d 0a 09 73 74 61 74 69 63 20  = 0;.....static 
0230: 44 33 44 58 56 45 43 54 4f 52 32 20 6f 70 43 61  D3DXVECTOR2 opCa
0240: 6c 6c 28 66 6c 6f 61 74 20 78 2c 20 66 6c 6f 61  ll(float x, floa
0250: 74 20 79 29 0d 0a 09 7b 0d 0a 09 09 44 33 44 58  t y)...{....D3DX
0260: 56 45 43 54 4f 52 32 20 76 3b 0d 0a 09 09 76 2e  VECTOR2 v;....v.
0270: 78 20 3d 20 78 3b 0d 0a 09 09 76 2e 79 20 3d 20  x = x;....v.y = 
0280: 79 3b 0d 0a 09 09 72 65 74 75 72 6e 20 76 3b 0d  y;....return v;.
0290: 0a 09 7d 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20  ..}..}....alias 
02a0: 44 33 44 56 45 43 54 4f 52 20 44 33 44 58 56 45  D3DVECTOR D3DXVE
02b0: 43 54 4f 52 33 3b 0d 0a 0d 0a 61 6c 69 67 6e 28  CTOR3;....align(
02c0: 34 29 20 73 74 72 75 63 74 20 44 33 44 58 56 45  4) struct D3DXVE
02d0: 43 54 4f 52 34 0d 0a 7b 0d 0a 09 66 6c 6f 61 74  CTOR4..{...float
02e0: 20 78 20 3d 20 30 2c 20 79 20 3d 20 30 2c 20 7a   x = 0, y = 0, z
02f0: 20 3d 20 30 2c 20 77 20 3d 20 30 3b 0d 0a 0d 0a   = 0, w = 0;....
0300: 09 73 74 61 74 69 63 20 44 33 44 58 56 45 43 54  .static D3DXVECT
0310: 4f 52 34 20 6f 70 43 61 6c 6c 28 66 6c 6f 61 74  OR4 opCall(float
0320: 20 78 2c 20 66 6c 6f 61 74 20 79 2c 20 66 6c 6f   x, float y, flo
0330: 61 74 20 7a 2c 20 66 6c 6f 61 74 20 77 29 0d 0a  at z, float w)..
0340: 09 7b 0d 0a 09 09 44 33 44 58 56 45 43 54 4f 52  .{....D3DXVECTOR
0350: 34 20 76 3b 0d 0a 09 09 76 2e 78 20 3d 20 78 3b  4 v;....v.x = x;
0360: 0d 0a 09 09 76 2e 79 20 3d 20 79 3b 0d 0a 09 09  ....v.y = y;....
0370: 76 2e 7a 20 3d 20 7a 3b 0d 0a 09 09 76 2e 77 20  v.z = z;....v.w 
0380: 3d 20 77 3b 0d 0a 09 09 72 65 74 75 72 6e 20 76  = w;....return v
0390: 3b 0d 0a 09 7d 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67  ;...}..}....alig
03a0: 6e 28 34 29 20 73 74 72 75 63 74 20 44 33 44 58  n(4) struct D3DX
03b0: 51 55 41 54 45 52 4e 49 4f 4e 0d 0a 7b 0d 0a 09  QUATERNION..{...
03c0: 66 6c 6f 61 74 20 78 20 3d 20 30 2c 20 79 20 3d  float x = 0, y =
03d0: 20 30 2c 20 7a 20 3d 20 30 2c 20 77 20 3d 20 30   0, z = 0, w = 0
03e0: 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29  ;..}....align(4)
03f0: 20 73 74 72 75 63 74 20 44 33 44 58 46 52 41 4d   struct D3DXFRAM
0400: 45 0d 0a 7b 0d 0a 20 20 20 20 4c 50 53 54 52 20  E..{..    LPSTR 
0410: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0420: 20 20 4e 61 6d 65 3b 0d 0a 20 20 20 20 44 33 44    Name;..    D3D
0430: 58 4d 41 54 52 49 58 20 20 20 20 20 20 20 20 20  XMATRIX         
0440: 20 20 20 20 20 54 72 61 6e 73 66 6f 72 6d 61 74       Transformat
0450: 69 6f 6e 4d 61 74 72 69 78 3b 0d 0a 0d 0a 20 20  ionMatrix;....  
0460: 20 20 44 33 44 58 4d 45 53 48 43 4f 4e 54 41 49    D3DXMESHCONTAI
0470: 4e 45 52 2a 20 20 20 20 20 70 4d 65 73 68 43 6f  NER*     pMeshCo
0480: 6e 74 61 69 6e 65 72 3b 0d 0a 0d 0a 20 20 20 20  ntainer;....    
0490: 44 33 44 58 46 52 41 4d 45 20 20 20 20 20 20 20  D3DXFRAME       
04a0: 2a 70 46 72 61 6d 65 53 69 62 6c 69 6e 67 3b 0d  *pFrameSibling;.
04b0: 0a 20 20 20 20 44 33 44 58 46 52 41 4d 45 20 20  .    D3DXFRAME  
04c0: 20 20 20 20 20 2a 70 46 72 61 6d 65 46 69 72 73       *pFrameFirs
04d0: 74 43 68 69 6c 64 3b 0d 0a 7d 0d 0a 0d 0a 61 6c  tChild;..}....al
04e0: 69 67 6e 28 34 29 20 73 74 72 75 63 74 20 44 33  ign(4) struct D3
04f0: 44 58 4d 45 53 48 43 4f 4e 54 41 49 4e 45 52 0d  DXMESHCONTAINER.
0500: 0a 7b 0d 0a 20 20 20 20 4c 50 53 54 52 20 20 20  .{..    LPSTR   
0510: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0520: 4e 61 6d 65 3b 0d 0a 0d 0a 20 20 20 20 44 33 44  Name;....    D3D
0530: 58 4d 45 53 48 44 41 54 41 20 20 20 20 20 20 20  XMESHDATA       
0540: 20 20 20 20 20 4d 65 73 68 44 61 74 61 3b 0d 0a       MeshData;..
0550: 0d 0a 20 20 20 20 44 33 44 58 4d 41 54 45 52 49  ..    D3DXMATERI
0560: 41 4c 2a 20 20 20 20 20 20 20 20 20 20 70 4d 61  AL*          pMa
0570: 74 65 72 69 61 6c 73 3b 0d 0a 20 20 20 20 44 33  terials;..    D3
0580: 44 58 45 46 46 45 43 54 49 4e 53 54 41 4e 43 45  DXEFFECTINSTANCE
0590: 2a 20 20 20 20 70 45 66 66 65 63 74 73 3b 0d 0a  *    pEffects;..
05a0: 20 20 20 20 44 57 4f 52 44 20 20 20 20 20 20 20      DWORD       
05b0: 20 20 20 20 20 20 20 20 20 20 20 20 4e 75 6d 4d              NumM
05c0: 61 74 65 72 69 61 6c 73 3b 0d 0a 20 20 20 20 44  aterials;..    D
05d0: 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 20  WORD            
05e0: 20 20 20 20 20 20 2a 70 41 64 6a 61 63 65 6e 63        *pAdjacenc
05f0: 79 3b 0d 0a 0d 0a 20 20 20 20 49 44 33 44 58 53  y;....    ID3DXS
0600: 6b 69 6e 49 6e 66 6f 20 20 20 20 20 20 20 20 20  kinInfo         
0610: 20 70 53 6b 69 6e 49 6e 66 6f 3b 0d 0a 0d 0a 20   pSkinInfo;.... 
0620: 20 20 20 44 33 44 58 4d 45 53 48 43 4f 4e 54 41     D3DXMESHCONTA
0630: 49 4e 45 52 2a 20 70 4e 65 78 74 4d 65 73 68 43  INER* pNextMeshC
0640: 6f 6e 74 61 69 6e 65 72 3b 0d 0a 7d 0d 0a 0d 0a  ontainer;..}....
0650: 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63 74 20  align(4) struct 
0660: 44 33 44 58 4d 45 53 48 44 41 54 41 0d 0a 7b 0d  D3DXMESHDATA..{.
0670: 0a 20 20 20 20 44 33 44 58 4d 45 53 48 44 41 54  .    D3DXMESHDAT
0680: 41 54 59 50 45 20 54 79 70 65 3b 0d 0a 0d 0a 20  ATYPE Type;.... 
0690: 20 20 20 2f 2f 20 63 75 72 72 65 6e 74 20 6d 65     // current me
06a0: 73 68 20 64 61 74 61 20 69 6e 74 65 72 66 61 63  sh data interfac
06b0: 65 0d 0a 20 20 20 20 75 6e 69 6f 6e 0d 0a 20 20  e..    union..  
06c0: 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 49 44 33    {..        ID3
06d0: 44 58 4d 65 73 68 20 20 20 20 20 20 20 20 20 20  DXMesh          
06e0: 20 20 20 20 70 4d 65 73 68 3b 0d 0a 20 20 20 20      pMesh;..    
06f0: 20 20 20 20 49 44 33 44 58 50 4d 65 73 68 20 20      ID3DXPMesh  
0700: 20 20 20 20 20 20 20 20 20 20 20 70 50 4d 65 73             pPMes
0710: 68 3b 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44  h;..        ID3D
0720: 58 50 61 74 63 68 4d 65 73 68 20 20 20 20 20 20  XPatchMesh      
0730: 20 20 20 70 50 61 74 63 68 4d 65 73 68 3b 0d 0a     pPatchMesh;..
0740: 20 20 20 20 7d 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61      }..}....alia
0750: 73 20 75 69 6e 74 20 44 33 44 58 4d 45 53 48 44  s uint D3DXMESHD
0760: 41 54 41 54 59 50 45 3b 0d 0a 65 6e 75 6d 20 3a  ATATYPE;..enum :
0770: 20 75 69 6e 74 0d 0a 7b 0d 0a 20 20 20 20 44 33   uint..{..    D3
0780: 44 58 4d 45 53 48 54 59 50 45 5f 4d 45 53 48 20  DXMESHTYPE_MESH 
0790: 20 20 20 20 20 3d 20 30 78 30 30 31 2c 20 20 20       = 0x001,   
07a0: 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 6f 72            // Nor
07b0: 6d 61 6c 20 49 44 33 44 58 4d 65 73 68 20 64 61  mal ID3DXMesh da
07c0: 74 61 0d 0a 20 20 20 20 44 33 44 58 4d 45 53 48  ta..    D3DXMESH
07d0: 54 59 50 45 5f 50 4d 45 53 48 20 20 20 20 20 3d  TYPE_PMESH     =
07e0: 20 30 78 30 30 32 2c 20 20 20 20 20 20 20 20 20   0x002,         
07f0: 20 20 20 20 2f 2f 20 50 72 6f 67 72 65 73 73 69      // Progressi
0800: 76 65 20 4d 65 73 68 20 2d 20 49 44 33 44 58 50  ve Mesh - ID3DXP
0810: 4d 65 73 68 0d 0a 20 20 20 20 44 33 44 58 4d 45  Mesh..    D3DXME
0820: 53 48 54 59 50 45 5f 50 41 54 43 48 4d 45 53 48  SHTYPE_PATCHMESH
0830: 20 3d 20 30 78 30 30 33 20 20 20 20 20 20 20 20   = 0x003        
0840: 20 20 20 20 20 2f 2f 20 50 61 74 63 68 20 4d 65       // Patch Me
0850: 73 68 20 2d 20 49 44 33 44 58 50 61 74 63 68 4d  sh - ID3DXPatchM
0860: 65 73 68 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28  esh..}....align(
0870: 34 29 20 73 74 72 75 63 74 20 44 33 44 58 4d 41  4) struct D3DXMA
0880: 54 45 52 49 41 4c 0d 0a 7b 0d 0a 20 20 20 20 44  TERIAL..{..    D
0890: 33 44 4d 41 54 45 52 49 41 4c 39 20 20 4d 61 74  3DMATERIAL9  Mat
08a0: 44 33 44 3b 0d 0a 20 20 20 20 4c 50 53 54 52 20  D3D;..    LPSTR 
08b0: 20 20 20 20 20 20 20 20 70 54 65 78 74 75 72 65          pTexture
08c0: 46 69 6c 65 6e 61 6d 65 3b 0d 0a 7d 0d 0a 0d 0a  Filename;..}....
08d0: 61 6c 69 61 73 20 75 69 6e 74 20 44 33 44 58 45  alias uint D3DXE
08e0: 46 46 45 43 54 44 45 46 41 55 4c 54 54 59 50 45  FFECTDEFAULTTYPE
08f0: 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0d 0a  ;..enum : uint..
0900: 7b 0d 0a 20 20 20 20 44 33 44 58 45 44 54 5f 53  {..    D3DXEDT_S
0910: 54 52 49 4e 47 20 3d 20 30 78 31 2c 20 20 20 20  TRING = 0x1,    
0920: 20 20 20 2f 2f 20 70 56 61 6c 75 65 20 70 6f 69     // pValue poi
0930: 6e 74 73 20 74 6f 20 61 20 6e 75 6c 6c 20 74 65  nts to a null te
0940: 72 6d 69 6e 61 74 65 64 20 41 53 43 49 49 20 73  rminated ASCII s
0950: 74 72 69 6e 67 0d 0a 20 20 20 20 44 33 44 58 45  tring..    D3DXE
0960: 44 54 5f 46 4c 4f 41 54 53 20 3d 20 30 78 32 2c  DT_FLOATS = 0x2,
0970: 20 20 20 20 20 20 20 2f 2f 20 70 56 61 6c 75 65         // pValue
0980: 20 70 6f 69 6e 74 73 20 74 6f 20 61 6e 20 61 72   points to an ar
0990: 72 61 79 20 6f 66 20 66 6c 6f 61 74 73 20 2d 20  ray of floats - 
09a0: 6e 75 6d 62 65 72 20 6f 66 20 66 6c 6f 61 74 73  number of floats
09b0: 20 69 73 20 4e 75 6d 42 79 74 65 73 20 2f 20 73   is NumBytes / s
09c0: 69 7a 65 6f 66 28 66 6c 6f 61 74 29 0d 0a 20 20  izeof(float)..  
09d0: 20 20 44 33 44 58 45 44 54 5f 44 57 4f 52 44 20    D3DXEDT_DWORD 
09e0: 20 3d 20 30 78 33 20 20 20 20 20 20 20 2f 2f 20   = 0x3       // 
09f0: 70 56 61 6c 75 65 20 70 6f 69 6e 74 73 20 74 6f  pValue points to
0a00: 20 61 20 44 57 4f 52 44 0d 0a 7d 0d 0a 0d 0a 61   a DWORD..}....a
0a10: 6c 69 67 6e 28 34 29 20 73 74 72 75 63 74 20 44  lign(4) struct D
0a20: 33 44 58 45 46 46 45 43 54 44 45 46 41 55 4c 54  3DXEFFECTDEFAULT
0a30: 0d 0a 7b 0d 0a 20 20 20 20 4c 50 53 54 52 20 20  ..{..    LPSTR  
0a40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70                 p
0a50: 50 61 72 61 6d 4e 61 6d 65 3b 0d 0a 20 20 20 20  ParamName;..    
0a60: 44 33 44 58 45 46 46 45 43 54 44 45 46 41 55 4c  D3DXEFFECTDEFAUL
0a70: 54 54 59 50 45 20 54 79 70 65 3b 20 20 20 20 20  TTYPE Type;     
0a80: 20 20 20 20 20 20 2f 2f 20 74 79 70 65 20 6f 66        // type of
0a90: 20 74 68 65 20 64 61 74 61 20 70 6f 69 6e 74 65   the data pointe
0aa0: 64 20 74 6f 20 62 79 20 70 56 61 6c 75 65 0d 0a  d to by pValue..
0ab0: 20 20 20 20 44 57 4f 52 44 20 20 20 20 20 20 20      DWORD       
0ac0: 20 20 20 20 20 20 20 20 20 20 4e 75 6d 42 79 74            NumByt
0ad0: 65 73 3b 20 20 20 20 20 20 20 2f 2f 20 73 69 7a  es;       // siz
0ae0: 65 20 69 6e 20 62 79 74 65 73 20 6f 66 20 74 68  e in bytes of th
0af0: 65 20 64 61 74 61 20 70 6f 69 6e 74 65 64 20 74  e data pointed t
0b00: 6f 20 62 79 20 70 56 61 6c 75 65 0d 0a 20 20 20  o by pValue..   
0b10: 20 4c 50 56 4f 49 44 20 20 20 20 20 20 20 20 20   LPVOID         
0b20: 20 20 20 20 20 20 20 70 56 61 6c 75 65 3b 20 20         pValue;  
0b30: 20 20 20 20 20 20 20 2f 2f 20 64 61 74 61 20 66         // data f
0b40: 6f 72 20 74 68 65 20 64 65 66 61 75 6c 74 20 6f  or the default o
0b50: 66 20 74 68 65 20 65 66 66 65 63 74 0d 0a 7d 0d  f the effect..}.
0b60: 0a 0d 0a 61 6c 69 67 6e 28 34 29 20 73 74 72 75  ...align(4) stru
0b70: 63 74 20 44 33 44 58 45 46 46 45 43 54 49 4e 53  ct D3DXEFFECTINS
0b80: 54 41 4e 43 45 0d 0a 7b 0d 0a 20 20 20 20 4c 50  TANCE..{..    LP
0b90: 53 54 52 20 20 20 20 20 20 20 20 20 20 20 20 20  STR             
0ba0: 20 20 70 45 66 66 65 63 74 46 69 6c 65 6e 61 6d    pEffectFilenam
0bb0: 65 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 20 20  e;..    DWORD   
0bc0: 20 20 20 20 20 20 20 20 20 20 20 20 4e 75 6d 44              NumD
0bd0: 65 66 61 75 6c 74 73 3b 0d 0a 20 20 20 20 44 33  efaults;..    D3
0be0: 44 58 45 46 46 45 43 54 44 45 46 41 55 4c 54 2a  DXEFFECTDEFAULT*
0bf0: 20 70 44 65 66 61 75 6c 74 73 3b 0d 0a 7d 0d 0a   pDefaults;..}..
0c00: 0d 0a 61 6c 69 61 73 20 75 69 6e 74 20 44 33 44  ..alias uint D3D
0c10: 58 50 41 54 43 48 4d 45 53 48 54 59 50 45 3b 0d  XPATCHMESHTYPE;.
0c20: 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0d 0a 7b 0d  .enum : uint..{.
0c30: 0a 20 20 20 20 44 33 44 58 50 41 54 43 48 4d 45  .    D3DXPATCHME
0c40: 53 48 5f 52 45 43 54 20 20 20 3d 20 30 78 30 30  SH_RECT   = 0x00
0c50: 31 2c 0d 0a 20 20 20 20 44 33 44 58 50 41 54 43  1,..    D3DXPATC
0c60: 48 4d 45 53 48 5f 54 52 49 20 20 20 20 3d 20 30  HMESH_TRI    = 0
0c70: 78 30 30 32 2c 0d 0a 20 20 20 20 44 33 44 58 50  x002,..    D3DXP
0c80: 41 54 43 48 4d 45 53 48 5f 4e 50 41 54 43 48 20  ATCHMESH_NPATCH 
0c90: 3d 20 30 78 30 30 33 0d 0a 7d 0d 0a 0d 0a 61 6c  = 0x003..}....al
0ca0: 69 67 6e 28 34 29 20 73 74 72 75 63 74 20 44 33  ign(4) struct D3
0cb0: 44 58 50 41 54 43 48 49 4e 46 4f 0d 0a 7b 0d 0a  DXPATCHINFO..{..
0cc0: 20 20 20 20 44 33 44 58 50 41 54 43 48 4d 45 53      D3DXPATCHMES
0cd0: 48 54 59 50 45 20 50 61 74 63 68 54 79 70 65 3b  HTYPE PatchType;
0ce0: 0d 0a 20 20 20 20 44 33 44 44 45 47 52 45 45 54  ..    D3DDEGREET
0cf0: 59 50 45 20 44 65 67 72 65 65 3b 0d 0a 20 20 20  YPE Degree;..   
0d00: 20 44 33 44 42 41 53 49 53 54 59 50 45 20 42 61   D3DBASISTYPE Ba
0d10: 73 69 73 3b 0d 0a 7d 0d 0a 0d 0a 63 6f 6e 73 74  sis;..}....const
0d20: 20 75 69 6e 74 20 4c 46 5f 46 41 43 45 53 49 5a   uint LF_FACESIZ
0d30: 45 20 3d 20 33 32 3b 0d 0a 0d 0a 61 6c 69 67 6e  E = 32;....align
0d40: 28 34 29 20 73 74 72 75 63 74 20 44 33 44 58 46  (4) struct D3DXF
0d50: 4f 4e 54 5f 44 45 53 43 41 0d 0a 7b 0d 0a 20 20  ONT_DESCA..{..  
0d60: 20 20 49 4e 54 20 48 65 69 67 68 74 3b 0d 0a 20    INT Height;.. 
0d70: 20 20 20 55 49 4e 54 20 57 69 64 74 68 3b 0d 0a     UINT Width;..
0d80: 20 20 20 20 55 49 4e 54 20 57 65 69 67 68 74 3b      UINT Weight;
0d90: 0d 0a 20 20 20 20 55 49 4e 54 20 4d 69 70 4c 65  ..    UINT MipLe
0da0: 76 65 6c 73 3b 0d 0a 20 20 20 20 42 4f 4f 4c 20  vels;..    BOOL 
0db0: 49 74 61 6c 69 63 3b 0d 0a 20 20 20 20 42 59 54  Italic;..    BYT
0dc0: 45 20 43 68 61 72 53 65 74 3b 0d 0a 20 20 20 20  E CharSet;..    
0dd0: 42 59 54 45 20 4f 75 74 70 75 74 50 72 65 63 69  BYTE OutputPreci
0de0: 73 69 6f 6e 3b 0d 0a 20 20 20 20 42 59 54 45 20  sion;..    BYTE 
0df0: 51 75 61 6c 69 74 79 3b 0d 0a 20 20 20 20 42 59  Quality;..    BY
0e00: 54 45 20 50 69 74 63 68 41 6e 64 46 61 6d 69 6c  TE PitchAndFamil
0e10: 79 3b 0d 0a 20 20 20 20 43 48 41 52 5b 4c 46 5f  y;..    CHAR[LF_
0e20: 46 41 43 45 53 49 5a 45 5d 20 46 61 63 65 4e 61  FACESIZE] FaceNa
0e30: 6d 65 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28  me;..}....align(
0e40: 34 29 20 73 74 72 75 63 74 20 44 33 44 58 46 4f  4) struct D3DXFO
0e50: 4e 54 5f 44 45 53 43 57 0d 0a 7b 0d 0a 20 20 20  NT_DESCW..{..   
0e60: 20 49 4e 54 20 48 65 69 67 68 74 3b 0d 0a 20 20   INT Height;..  
0e70: 20 20 55 49 4e 54 20 57 69 64 74 68 3b 0d 0a 20    UINT Width;.. 
0e80: 20 20 20 55 49 4e 54 20 57 65 69 67 68 74 3b 0d     UINT Weight;.
0e90: 0a 20 20 20 20 55 49 4e 54 20 4d 69 70 4c 65 76  .    UINT MipLev
0ea0: 65 6c 73 3b 0d 0a 20 20 20 20 42 4f 4f 4c 20 49  els;..    BOOL I
0eb0: 74 61 6c 69 63 3b 0d 0a 20 20 20 20 42 59 54 45  talic;..    BYTE
0ec0: 20 43 68 61 72 53 65 74 3b 0d 0a 20 20 20 20 42   CharSet;..    B
0ed0: 59 54 45 20 4f 75 74 70 75 74 50 72 65 63 69 73  YTE OutputPrecis
0ee0: 69 6f 6e 3b 0d 0a 20 20 20 20 42 59 54 45 20 51  ion;..    BYTE Q
0ef0: 75 61 6c 69 74 79 3b 0d 0a 20 20 20 20 42 59 54  uality;..    BYT
0f00: 45 20 50 69 74 63 68 41 6e 64 46 61 6d 69 6c 79  E PitchAndFamily
0f10: 3b 0d 0a 20 20 20 20 57 43 48 41 52 5b 4c 46 5f  ;..    WCHAR[LF_
0f20: 46 41 43 45 53 49 5a 45 5d 20 46 61 63 65 4e 61  FACESIZE] FaceNa
0f30: 6d 65 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28  me;..}....align(
0f40: 34 29 20 73 74 72 75 63 74 20 54 45 58 54 4d 45  4) struct TEXTME
0f50: 54 52 49 43 41 0d 0a 7b 0d 0a 20 20 20 20 4c 4f  TRICA..{..    LO
0f60: 4e 47 20 20 20 20 20 20 20 20 74 6d 48 65 69 67  NG        tmHeig
0f70: 68 74 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20  ht;..    LONG   
0f80: 20 20 20 20 20 74 6d 41 73 63 65 6e 74 3b 0d 0a       tmAscent;..
0f90: 20 20 20 20 4c 4f 4e 47 20 20 20 20 20 20 20 20      LONG        
0fa0: 74 6d 44 65 73 63 65 6e 74 3b 0d 0a 20 20 20 20  tmDescent;..    
0fb0: 4c 4f 4e 47 20 20 20 20 20 20 20 20 74 6d 49 6e  LONG        tmIn
0fc0: 74 65 72 6e 61 6c 4c 65 61 64 69 6e 67 3b 0d 0a  ternalLeading;..
0fd0: 20 20 20 20 4c 4f 4e 47 20 20 20 20 20 20 20 20      LONG        
0fe0: 74 6d 45 78 74 65 72 6e 61 6c 4c 65 61 64 69 6e  tmExternalLeadin
0ff0: 67 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20  g;..    LONG    
1000: 20 20 20 20 74 6d 41 76 65 43 68 61 72 57 69 64      tmAveCharWid
1010: 74 68 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20  th;..    LONG   
1020: 20 20 20 20 20 74 6d 4d 61 78 43 68 61 72 57 69       tmMaxCharWi
1030: 64 74 68 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20  dth;..    LONG  
1040: 20 20 20 20 20 20 74 6d 57 65 69 67 68 74 3b 0d        tmWeight;.
1050: 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20 20 20 20  .    LONG       
1060: 20 74 6d 4f 76 65 72 68 61 6e 67 3b 0d 0a 20 20   tmOverhang;..  
1070: 20 20 4c 4f 4e 47 20 20 20 20 20 20 20 20 74 6d    LONG        tm
1080: 44 69 67 69 74 69 7a 65 64 41 73 70 65 63 74 58  DigitizedAspectX
1090: 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20 20  ;..    LONG     
10a0: 20 20 20 74 6d 44 69 67 69 74 69 7a 65 64 41 73     tmDigitizedAs
10b0: 70 65 63 74 59 3b 0d 0a 20 20 20 20 42 59 54 45  pectY;..    BYTE
10c0: 20 20 20 20 20 20 20 20 74 6d 46 69 72 73 74 43          tmFirstC
10d0: 68 61 72 3b 0d 0a 20 20 20 20 42 59 54 45 20 20  har;..    BYTE  
10e0: 20 20 20 20 20 20 74 6d 4c 61 73 74 43 68 61 72        tmLastChar
10f0: 3b 0d 0a 20 20 20 20 42 59 54 45 20 20 20 20 20  ;..    BYTE     
1100: 20 20 20 74 6d 44 65 66 61 75 6c 74 43 68 61 72     tmDefaultChar
1110: 3b 0d 0a 20 20 20 20 42 59 54 45 20 20 20 20 20  ;..    BYTE     
1120: 20 20 20 74 6d 42 72 65 61 6b 43 68 61 72 3b 0d     tmBreakChar;.
1130: 0a 20 20 20 20 42 59 54 45 20 20 20 20 20 20 20  .    BYTE       
1140: 20 74 6d 49 74 61 6c 69 63 3b 0d 0a 20 20 20 20   tmItalic;..    
1150: 42 59 54 45 20 20 20 20 20 20 20 20 74 6d 55 6e  BYTE        tmUn
1160: 64 65 72 6c 69 6e 65 64 3b 0d 0a 20 20 20 20 42  derlined;..    B
1170: 59 54 45 20 20 20 20 20 20 20 20 74 6d 53 74 72  YTE        tmStr
1180: 75 63 6b 4f 75 74 3b 0d 0a 20 20 20 20 42 59 54  uckOut;..    BYT
1190: 45 20 20 20 20 20 20 20 20 74 6d 50 69 74 63 68  E        tmPitch
11a0: 41 6e 64 46 61 6d 69 6c 79 3b 0d 0a 20 20 20 20  AndFamily;..    
11b0: 42 59 54 45 20 20 20 20 20 20 20 20 74 6d 43 68  BYTE        tmCh
11c0: 61 72 53 65 74 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69  arSet;..}....ali
11d0: 67 6e 28 34 29 20 73 74 72 75 63 74 20 54 45 58  gn(4) struct TEX
11e0: 54 4d 45 54 52 49 43 57 0d 0a 7b 0d 0a 20 20 20  TMETRICW..{..   
11f0: 20 4c 4f 4e 47 20 20 20 20 20 20 20 20 74 6d 48   LONG        tmH
1200: 65 69 67 68 74 3b 0d 0a 20 20 20 20 4c 4f 4e 47  eight;..    LONG
1210: 20 20 20 20 20 20 20 20 74 6d 41 73 63 65 6e 74          tmAscent
1220: 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20 20  ;..    LONG     
1230: 20 20 20 74 6d 44 65 73 63 65 6e 74 3b 0d 0a 20     tmDescent;.. 
1240: 20 20 20 4c 4f 4e 47 20 20 20 20 20 20 20 20 74     LONG        t
1250: 6d 49 6e 74 65 72 6e 61 6c 4c 65 61 64 69 6e 67  mInternalLeading
1260: 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20 20  ;..    LONG     
1270: 20 20 20 74 6d 45 78 74 65 72 6e 61 6c 4c 65 61     tmExternalLea
1280: 64 69 6e 67 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20  ding;..    LONG 
1290: 20 20 20 20 20 20 20 74 6d 41 76 65 43 68 61 72         tmAveChar
12a0: 57 69 64 74 68 3b 0d 0a 20 20 20 20 4c 4f 4e 47  Width;..    LONG
12b0: 20 20 20 20 20 20 20 20 74 6d 4d 61 78 43 68 61          tmMaxCha
12c0: 72 57 69 64 74 68 3b 0d 0a 20 20 20 20 4c 4f 4e  rWidth;..    LON
12d0: 47 20 20 20 20 20 20 20 20 74 6d 57 65 69 67 68  G        tmWeigh
12e0: 74 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20  t;..    LONG    
12f0: 20 20 20 20 74 6d 4f 76 65 72 68 61 6e 67 3b 0d      tmOverhang;.
1300: 0a 20 20 20 20 4c 4f 4e 47 20 20 20 20 20 20 20  .    LONG       
1310: 20 74 6d 44 69 67 69 74 69 7a 65 64 41 73 70 65   tmDigitizedAspe
1320: 63 74 58 3b 0d 0a 20 20 20 20 4c 4f 4e 47 20 20  ctX;..    LONG  
1330: 20 20 20 20 20 20 74 6d 44 69 67 69 74 69 7a 65        tmDigitize
1340: 64 41 73 70 65 63 74 59 3b 0d 0a 20 20 20 20 57  dAspectY;..    W
1350: 43 48 41 52 20 20 20 20 20 20 20 74 6d 46 69 72  CHAR       tmFir
1360: 73 74 43 68 61 72 3b 0d 0a 20 20 20 20 57 43 48  stChar;..    WCH
1370: 41 52 20 20 20 20 20 20 20 74 6d 4c 61 73 74 43  AR       tmLastC
1380: 68 61 72 3b 0d 0a 20 20 20 20 57 43 48 41 52 20  har;..    WCHAR 
1390: 20 20 20 20 20 20 74 6d 44 65 66 61 75 6c 74 43        tmDefaultC
13a0: 68 61 72 3b 0d 0a 20 20 20 20 57 43 48 41 52 20  har;..    WCHAR 
13b0: 20 20 20 20 20 20 74 6d 42 72 65 61 6b 43 68 61        tmBreakCha
13c0: 72 3b 0d 0a 20 20 20 20 42 59 54 45 20 20 20 20  r;..    BYTE    
13d0: 20 20 20 20 74 6d 49 74 61 6c 69 63 3b 0d 0a 20      tmItalic;.. 
13e0: 20 20 20 42 59 54 45 20 20 20 20 20 20 20 20 74     BYTE        t
13f0: 6d 55 6e 64 65 72 6c 69 6e 65 64 3b 0d 0a 20 20  mUnderlined;..  
1400: 20 20 42 59 54 45 20 20 20 20 20 20 20 20 74 6d    BYTE        tm
1410: 53 74 72 75 63 6b 4f 75 74 3b 0d 0a 20 20 20 20  StruckOut;..    
1420: 42 59 54 45 20 20 20 20 20 20 20 20 74 6d 50 69  BYTE        tmPi
1430: 74 63 68 41 6e 64 46 61 6d 69 6c 79 3b 0d 0a 20  tchAndFamily;.. 
1440: 20 20 20 42 59 54 45 20 20 20 20 20 20 20 20 74     BYTE        t
1450: 6d 43 68 61 72 53 65 74 3b 0d 0a 7d 0d 0a 0d 0a  mCharSet;..}....
1460: 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63 74 20  align(4) struct 
1470: 44 33 44 58 45 46 46 45 43 54 5f 44 45 53 43 0d  D3DXEFFECT_DESC.
1480: 0a 7b 0d 0a 20 20 20 20 4c 50 43 53 54 52 20 43  .{..    LPCSTR C
1490: 72 65 61 74 6f 72 3b 20 20 20 20 20 20 20 20 20  reator;         
14a0: 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43              // C
14b0: 72 65 61 74 6f 72 20 73 74 72 69 6e 67 0d 0a 20  reator string.. 
14c0: 20 20 20 55 49 4e 54 20 50 61 72 61 6d 65 74 65     UINT Paramete
14d0: 72 73 3b 20 20 20 20 20 20 20 20 20 20 20 20 20  rs;             
14e0: 20 20 20 20 20 20 20 2f 2f 20 4e 75 6d 62 65 72         // Number
14f0: 20 6f 66 20 70 61 72 61 6d 65 74 65 72 73 0d 0a   of parameters..
1500: 20 20 20 20 55 49 4e 54 20 54 65 63 68 6e 69 71      UINT Techniq
1510: 75 65 73 3b 20 20 20 20 20 20 20 20 20 20 20 20  ues;            
1520: 20 20 20 20 20 20 20 20 2f 2f 20 4e 75 6d 62 65          // Numbe
1530: 72 20 6f 66 20 74 65 63 68 6e 69 71 75 65 73 0d  r of techniques.
1540: 0a 20 20 20 20 55 49 4e 54 20 46 75 6e 63 74 69  .    UINT Functi
1550: 6f 6e 73 3b 20 20 20 20 20 20 20 20 20 20 20 20  ons;            
1560: 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 75 6d 62           // Numb
1570: 65 72 20 6f 66 20 66 75 6e 63 74 69 6f 6e 20 65  er of function e
1580: 6e 74 72 79 70 6f 69 6e 74 73 0d 0a 7d 0d 0a 0d  ntrypoints..}...
1590: 0a 61 6c 69 61 73 20 63 68 61 72 2a 20 44 33 44  .alias char* D3D
15a0: 58 48 41 4e 44 4c 45 3b 0d 0a 0d 0a 61 6c 69 67  XHANDLE;....alig
15b0: 6e 28 34 29 20 73 74 72 75 63 74 20 44 33 44 58  n(4) struct D3DX
15c0: 50 41 52 41 4d 45 54 45 52 5f 44 45 53 43 0d 0a  PARAMETER_DESC..
15d0: 7b 0d 0a 20 20 20 20 4c 50 43 53 54 52 20 4e 61  {..    LPCSTR Na
15e0: 6d 65 3b 20 20 20 20 20 20 20 20 20 20 20 20 20  me;             
15f0: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 61             // Pa
1600: 72 61 6d 65 74 65 72 20 6e 61 6d 65 0d 0a 20 20  rameter name..  
1610: 20 20 4c 50 43 53 54 52 20 53 65 6d 61 6e 74 69    LPCSTR Semanti
1620: 63 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20  c;              
1630: 20 20 20 20 20 20 2f 2f 20 50 61 72 61 6d 65 74        // Paramet
1640: 65 72 20 73 65 6d 61 6e 74 69 63 0d 0a 20 20 20  er semantic..   
1650: 20 44 33 44 58 50 41 52 41 4d 45 54 45 52 5f 43   D3DXPARAMETER_C
1660: 4c 41 53 53 20 43 6c 61 73 73 3b 20 20 20 20 20  LASS Class;     
1670: 20 20 20 20 20 2f 2f 20 43 6c 61 73 73 0d 0a 20       // Class.. 
1680: 20 20 20 44 33 44 58 50 41 52 41 4d 45 54 45 52     D3DXPARAMETER
1690: 5f 54 59 50 45 20 54 79 70 65 3b 20 20 20 20 20  _TYPE Type;     
16a0: 20 20 20 20 20 20 20 2f 2f 20 43 6f 6d 70 6f 6e         // Compon
16b0: 65 6e 74 20 74 79 70 65 0d 0a 20 20 20 20 55 49  ent type..    UI
16c0: 4e 54 20 52 6f 77 73 3b 20 20 20 20 20 20 20 20  NT Rows;        
16d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
16e0: 20 20 2f 2f 20 4e 75 6d 62 65 72 20 6f 66 20 72    // Number of r
16f0: 6f 77 73 0d 0a 20 20 20 20 55 49 4e 54 20 43 6f  ows..    UINT Co
1700: 6c 75 6d 6e 73 3b 20 20 20 20 20 20 20 20 20 20  lumns;          
1710: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
1720: 4e 75 6d 62 65 72 20 6f 66 20 63 6f 6c 75 6d 6e  Number of column
1730: 73 0d 0a 20 20 20 20 55 49 4e 54 20 45 6c 65 6d  s..    UINT Elem
1740: 65 6e 74 73 3b 20 20 20 20 20 20 20 20 20 20 20  ents;           
1750: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 75             // Nu
1760: 6d 62 65 72 20 6f 66 20 61 72 72 61 79 20 65 6c  mber of array el
1770: 65 6d 65 6e 74 73 0d 0a 20 20 20 20 55 49 4e 54  ements..    UINT
1780: 20 41 6e 6e 6f 74 61 74 69 6f 6e 73 3b 20 20 20   Annotations;   
1790: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
17a0: 2f 2f 20 4e 75 6d 62 65 72 20 6f 66 20 61 6e 6e  // Number of ann
17b0: 6f 74 61 74 69 6f 6e 73 0d 0a 20 20 20 20 55 49  otations..    UI
17c0: 4e 54 20 53 74 72 75 63 74 4d 65 6d 62 65 72 73  NT StructMembers
17d0: 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ;               
17e0: 20 20 2f 2f 20 4e 75 6d 62 65 72 20 6f 66 20 73    // Number of s
17f0: 74 72 75 63 74 75 72 65 20 6d 65 6d 62 65 72 20  tructure member 
1800: 73 75 62 2d 70 61 72 61 6d 65 74 65 72 73 0d 0a  sub-parameters..
1810: 20 20 20 20 44 57 4f 52 44 20 46 6c 61 67 73 3b      DWORD Flags;
1820: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1830: 20 20 20 20 20 20 20 20 2f 2f 20 44 33 44 58 5f          // D3DX_
1840: 50 41 52 41 4d 45 54 45 52 5f 2a 20 66 6c 61 67  PARAMETER_* flag
1850: 73 0d 0a 20 20 20 20 55 49 4e 54 20 42 79 74 65  s..    UINT Byte
1860: 73 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20  s;              
1870: 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 61             // Pa
1880: 72 61 6d 65 74 65 72 20 73 69 7a 65 2c 20 69 6e  rameter size, in
1890: 20 62 79 74 65 73 0d 0a 7d 0d 0a 0d 0a 61 6c 69   bytes..}....ali
18a0: 61 73 20 75 69 6e 74 20 44 33 44 58 50 41 52 41  as uint D3DXPARA
18b0: 4d 45 54 45 52 5f 43 4c 41 53 53 3b 0d 0a 65 6e  METER_CLASS;..en
18c0: 75 6d 20 3a 20 75 69 6e 74 0d 0a 7b 0d 0a 20 20  um : uint..{..  
18d0: 20 20 44 33 44 58 50 43 5f 53 43 41 4c 41 52 2c    D3DXPC_SCALAR,
18e0: 0d 0a 20 20 20 20 44 33 44 58 50 43 5f 56 45 43  ..    D3DXPC_VEC
18f0: 54 4f 52 2c 0d 0a 20 20 20 20 44 33 44 58 50 43  TOR,..    D3DXPC
1900: 5f 4d 41 54 52 49 58 5f 52 4f 57 53 2c 0d 0a 20  _MATRIX_ROWS,.. 
1910: 20 20 20 44 33 44 58 50 43 5f 4d 41 54 52 49 58     D3DXPC_MATRIX
1920: 5f 43 4f 4c 55 4d 4e 53 2c 0d 0a 20 20 20 20 44  _COLUMNS,..    D
1930: 33 44 58 50 43 5f 4f 42 4a 45 43 54 2c 0d 0a 20  3DXPC_OBJECT,.. 
1940: 20 20 20 44 33 44 58 50 43 5f 53 54 52 55 43 54     D3DXPC_STRUCT
1950: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 75 69 6e  ..}....alias uin
1960: 74 20 44 33 44 58 50 41 52 41 4d 45 54 45 52 5f  t D3DXPARAMETER_
1970: 54 59 50 45 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69  TYPE;..enum : ui
1980: 6e 74 0d 0a 7b 0d 0a 20 20 20 20 44 33 44 58 50  nt..{..    D3DXP
1990: 54 5f 56 4f 49 44 2c 0d 0a 20 20 20 20 44 33 44  T_VOID,..    D3D
19a0: 58 50 54 5f 42 4f 4f 4c 2c 0d 0a 20 20 20 20 44  XPT_BOOL,..    D
19b0: 33 44 58 50 54 5f 49 4e 54 2c 0d 0a 20 20 20 20  3DXPT_INT,..    
19c0: 44 33 44 58 50 54 5f 46 4c 4f 41 54 2c 0d 0a 20  D3DXPT_FLOAT,.. 
19d0: 20 20 20 44 33 44 58 50 54 5f 53 54 52 49 4e 47     D3DXPT_STRING
19e0: 2c 0d 0a 20 20 20 20 44 33 44 58 50 54 5f 54 45  ,..    D3DXPT_TE
19f0: 58 54 55 52 45 2c 0d 0a 20 20 20 20 44 33 44 58  XTURE,..    D3DX
1a00: 50 54 5f 54 45 58 54 55 52 45 31 44 2c 0d 0a 20  PT_TEXTURE1D,.. 
1a10: 20 20 20 44 33 44 58 50 54 5f 54 45 58 54 55 52     D3DXPT_TEXTUR
1a20: 45 32 44 2c 0d 0a 20 20 20 20 44 33 44 58 50 54  E2D,..    D3DXPT
1a30: 5f 54 45 58 54 55 52 45 33 44 2c 0d 0a 20 20 20  _TEXTURE3D,..   
1a40: 20 44 33 44 58 50 54 5f 54 45 58 54 55 52 45 43   D3DXPT_TEXTUREC
1a50: 55 42 45 2c 0d 0a 20 20 20 20 44 33 44 58 50 54  UBE,..    D3DXPT
1a60: 5f 53 41 4d 50 4c 45 52 2c 0d 0a 20 20 20 20 44  _SAMPLER,..    D
1a70: 33 44 58 50 54 5f 53 41 4d 50 4c 45 52 31 44 2c  3DXPT_SAMPLER1D,
1a80: 0d 0a 20 20 20 20 44 33 44 58 50 54 5f 53 41 4d  ..    D3DXPT_SAM
1a90: 50 4c 45 52 32 44 2c 0d 0a 20 20 20 20 44 33 44  PLER2D,..    D3D
1aa0: 58 50 54 5f 53 41 4d 50 4c 45 52 33 44 2c 0d 0a  XPT_SAMPLER3D,..
1ab0: 20 20 20 20 44 33 44 58 50 54 5f 53 41 4d 50 4c      D3DXPT_SAMPL
1ac0: 45 52 43 55 42 45 2c 0d 0a 20 20 20 20 44 33 44  ERCUBE,..    D3D
1ad0: 58 50 54 5f 50 49 58 45 4c 53 48 41 44 45 52 2c  XPT_PIXELSHADER,
1ae0: 0d 0a 20 20 20 20 44 33 44 58 50 54 5f 56 45 52  ..    D3DXPT_VER
1af0: 54 45 58 53 48 41 44 45 52 2c 0d 0a 20 20 20 20  TEXSHADER,..    
1b00: 44 33 44 58 50 54 5f 50 49 58 45 4c 46 52 41 47  D3DXPT_PIXELFRAG
1b10: 4d 45 4e 54 2c 0d 0a 20 20 20 20 44 33 44 58 50  MENT,..    D3DXP
1b20: 54 5f 56 45 52 54 45 58 46 52 41 47 4d 45 4e 54  T_VERTEXFRAGMENT
1b30: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29 20  ..}....align(4) 
1b40: 73 74 72 75 63 74 20 44 33 44 58 54 45 43 48 4e  struct D3DXTECHN
1b50: 49 51 55 45 5f 44 45 53 43 0d 0a 7b 0d 0a 20 20  IQUE_DESC..{..  
1b60: 20 20 4c 50 43 53 54 52 20 4e 61 6d 65 3b 20 20    LPCSTR Name;  
1b70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1b80: 20 20 20 20 20 20 2f 2f 20 54 65 63 68 6e 69 71        // Techniq
1b90: 75 65 20 6e 61 6d 65 0d 0a 20 20 20 20 55 49 4e  ue name..    UIN
1ba0: 54 20 50 61 73 73 65 73 3b 20 20 20 20 20 20 20  T Passes;       
1bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1bc0: 20 2f 2f 20 4e 75 6d 62 65 72 20 6f 66 20 70 61   // Number of pa
1bd0: 73 73 65 73 0d 0a 20 20 20 20 55 49 4e 54 20 41  sses..    UINT A
1be0: 6e 6e 6f 74 61 74 69 6f 6e 73 3b 20 20 20 20 20  nnotations;     
1bf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f                //
1c00: 20 4e 75 6d 62 65 72 20 6f 66 20 61 6e 6e 6f 74   Number of annot
1c10: 61 74 69 6f 6e 73 0d 0a 7d 0d 0a 0d 0a 61 6c 69  ations..}....ali
1c20: 67 6e 28 34 29 20 73 74 72 75 63 74 20 44 33 44  gn(4) struct D3D
1c30: 58 50 41 53 53 5f 44 45 53 43 0d 0a 7b 0d 0a 20  XPASS_DESC..{.. 
1c40: 20 20 20 4c 50 43 53 54 52 20 4e 61 6d 65 3b 20     LPCSTR Name; 
1c50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1c60: 20 20 20 20 20 20 20 2f 2f 20 50 61 73 73 20 6e         // Pass n
1c70: 61 6d 65 0d 0a 20 20 20 20 55 49 4e 54 20 41 6e  ame..    UINT An
1c80: 6e 6f 74 61 74 69 6f 6e 73 3b 20 20 20 20 20 20  notations;      
1c90: 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20               // 
1ca0: 4e 75 6d 62 65 72 20 6f 66 20 61 6e 6e 6f 74 61  Number of annota
1cb0: 74 69 6f 6e 73 0d 0a 0d 0a 20 20 20 20 44 57 4f  tions....    DWO
1cc0: 52 44 20 2a 70 56 65 72 74 65 78 53 68 61 64 65  RD *pVertexShade
1cd0: 72 46 75 6e 63 74 69 6f 6e 3b 20 2f 2f 20 56 65  rFunction; // Ve
1ce0: 72 74 65 78 20 73 68 61 64 65 72 20 66 75 6e 63  rtex shader func
1cf0: 74 69 6f 6e 0d 0a 20 20 20 20 44 57 4f 52 44 20  tion..    DWORD 
1d00: 2a 70 50 69 78 65 6c 53 68 61 64 65 72 46 75 6e  *pPixelShaderFun
1d10: 63 74 69 6f 6e 3b 20 20 2f 2f 20 50 69 78 65 6c  ction;  // Pixel
1d20: 20 73 68 61 64 65 72 20 66 75 6e 63 74 69 6f 6e   shader function
1d30: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29 20  ..}....align(4) 
1d40: 73 74 72 75 63 74 20 44 33 44 58 46 55 4e 43 54  struct D3DXFUNCT
1d50: 49 4f 4e 5f 44 45 53 43 0d 0a 7b 0d 0a 20 20 20  ION_DESC..{..   
1d60: 20 4c 50 43 53 54 52 20 4e 61 6d 65 3b 20 20 20   LPCSTR Name;   
1d70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
1d80: 20 20 20 20 20 2f 2f 20 46 75 6e 63 74 69 6f 6e       // Function
1d90: 20 6e 61 6d 65 0d 0a 20 20 20 20 55 49 4e 54 20   name..    UINT 
1da0: 41 6e 6e 6f 74 61 74 69 6f 6e 73 3b 20 20 20 20  Annotations;    
1db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f                 /
1dc0: 2f 20 4e 75 6d 62 65 72 20 6f 66 20 61 6e 6e 6f  / Number of anno
1dd0: 74 61 74 69 6f 6e 73 0d 0a 7d 0d 0a 0d 0a 73 74  tations..}....st
1de0: 72 75 63 74 20 44 33 44 58 54 52 41 43 4b 5f 44  ruct D3DXTRACK_D
1df0: 45 53 43 0d 0a 7b 0d 0a 20 20 20 20 44 57 4f 52  ESC..{..    DWOR
1e00: 44 20 50 72 69 6f 72 69 74 79 3b 0d 0a 20 20 20  D Priority;..   
1e10: 20 46 4c 4f 41 54 20 57 65 69 67 68 74 20 3d 20   FLOAT Weight = 
1e20: 30 3b 0d 0a 20 20 20 20 46 4c 4f 41 54 20 53 70  0;..    FLOAT Sp
1e30: 65 65 64 20 3d 20 30 3b 0d 0a 20 20 20 20 64 6f  eed = 0;..    do
1e40: 75 62 6c 65 20 50 6f 73 69 74 69 6f 6e 20 3d 20  uble Position = 
1e50: 30 3b 0d 0a 20 20 20 20 42 4f 4f 4c 20 45 6e 61  0;..    BOOL Ena
1e60: 62 6c 65 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e  ble;..}....align
1e70: 28 34 29 20 73 74 72 75 63 74 20 44 33 44 58 45  (4) struct D3DXE
1e80: 56 45 4e 54 5f 44 45 53 43 0d 0a 7b 0d 0a 20 20  VENT_DESC..{..  
1e90: 20 20 44 57 4f 52 44 20 20 20 20 20 20 54 79 70    DWORD      Typ
1ea0: 65 3b 0d 0a 20 20 20 20 55 49 4e 54 20 20 20 20  e;..    UINT    
1eb0: 20 20 20 20 20 20 20 20 20 20 20 20 54 72 61 63              Trac
1ec0: 6b 3b 0d 0a 20 20 20 20 64 6f 75 62 6c 65 20 20  k;..    double  
1ed0: 20 20 20 20 20 20 20 20 20 20 20 20 53 74 61 72              Star
1ee0: 74 54 69 6d 65 20 3d 20 30 3b 0d 0a 20 20 20 20  tTime = 0;..    
1ef0: 64 6f 75 62 6c 65 20 20 20 20 20 20 20 20 20 20  double          
1f00: 20 20 20 20 44 75 72 61 74 69 6f 6e 20 3d 20 30      Duration = 0
1f10: 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 54 72 61  ;..    DWORD Tra
1f20: 6e 73 69 74 69 6f 6e 3b 0d 0a 20 20 20 20 75 6e  nsition;..    un
1f30: 69 6f 6e 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20  ion..    {..    
1f40: 20 20 20 20 46 4c 4f 41 54 20 20 20 20 20 20 20      FLOAT       
1f50: 20 20 20 20 57 65 69 67 68 74 20 3d 20 30 3b 0d      Weight = 0;.
1f60: 0a 20 20 20 20 20 20 20 20 46 4c 4f 41 54 20 20  .        FLOAT  
1f70: 20 20 20 20 20 20 20 20 20 53 70 65 65 64 3b 0d           Speed;.
1f80: 0a 20 20 20 20 20 20 20 20 64 6f 75 62 6c 65 20  .        double 
1f90: 20 20 20 20 20 20 20 20 20 50 6f 73 69 74 69 6f           Positio
1fa0: 6e 3b 0d 0a 20 20 20 20 20 20 20 20 42 4f 4f 4c  n;..        BOOL
1fb0: 20 20 20 20 20 20 20 20 20 20 20 20 45 6e 61 62              Enab
1fc0: 6c 65 3b 0d 0a 20 20 20 20 7d 3b 0d 0a 7d 0d 0a  le;..    };..}..
1fd0: 0d 0a 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63  ..align(4) struc
1fe0: 74 20 44 33 44 58 4b 45 59 5f 56 45 43 54 4f 52  t D3DXKEY_VECTOR
1ff0: 33 0d 0a 7b 0d 0a 20 20 20 20 46 4c 4f 41 54 20  3..{..    FLOAT 
2000: 54 69 6d 65 20 3d 20 30 3b 0d 0a 20 20 20 20 44  Time = 0;..    D
2010: 33 44 58 56 45 43 54 4f 52 33 20 56 61 6c 75 65  3DXVECTOR3 Value
2020: 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29  ;..}....align(4)
2030: 20 73 74 72 75 63 74 20 44 33 44 58 4b 45 59 5f   struct D3DXKEY_
2040: 51 55 41 54 45 52 4e 49 4f 4e 0d 0a 7b 0d 0a 20  QUATERNION..{.. 
2050: 20 20 20 46 4c 4f 41 54 20 54 69 6d 65 20 3d 20     FLOAT Time = 
2060: 30 3b 0d 0a 20 20 20 20 44 33 44 58 51 55 41 54  0;..    D3DXQUAT
2070: 45 52 4e 49 4f 4e 20 56 61 6c 75 65 3b 0d 0a 7d  ERNION Value;..}
2080: 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29 20 73 74 72  ....align(4) str
2090: 75 63 74 20 44 33 44 58 4b 45 59 5f 43 41 4c 4c  uct D3DXKEY_CALL
20a0: 42 41 43 4b 0d 0a 7b 0d 0a 20 20 20 20 46 4c 4f  BACK..{..    FLO
20b0: 41 54 20 54 69 6d 65 20 3d 20 30 3b 0d 0a 20 20  AT Time = 0;..  
20c0: 20 20 4c 50 56 4f 49 44 20 70 43 61 6c 6c 62 61    LPVOID pCallba
20d0: 63 6b 44 61 74 61 3b 0d 0a 7d 0d 0a 0d 0a 61 6c  ckData;..}....al
20e0: 69 67 6e 28 34 29 20 73 74 72 75 63 74 20 44 33  ign(4) struct D3
20f0: 44 58 49 4d 41 47 45 5f 49 4e 46 4f 0d 0a 7b 0d  DXIMAGE_INFO..{.
2100: 0a 20 20 20 20 55 49 4e 54 20 20 20 20 20 20 20  .    UINT       
2110: 20 20 20 20 20 20 20 20 20 20 20 20 20 57 69 64               Wid
2120: 74 68 3b 0d 0a 20 20 20 20 55 49 4e 54 20 20 20  th;..    UINT   
2130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2140: 20 48 65 69 67 68 74 3b 0d 0a 20 20 20 20 55 49   Height;..    UI
2150: 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20  NT              
2160: 20 20 20 20 20 20 44 65 70 74 68 3b 0d 0a 20 20        Depth;..  
2170: 20 20 55 49 4e 54 20 20 20 20 20 20 20 20 20 20    UINT          
2180: 20 20 20 20 20 20 20 20 20 20 4d 69 70 4c 65 76            MipLev
2190: 65 6c 73 3b 0d 0a 20 20 20 20 44 33 44 46 4f 52  els;..    D3DFOR
21a0: 4d 41 54 20 20 20 20 20 20 20 20 20 20 20 20 20  MAT             
21b0: 20 20 46 6f 72 6d 61 74 3b 0d 0a 20 20 20 20 44    Format;..    D
21c0: 33 44 52 45 53 4f 55 52 43 45 54 59 50 45 20 20  3DRESOURCETYPE  
21d0: 20 20 20 20 20 20 20 52 65 73 6f 75 72 63 65 54         ResourceT
21e0: 79 70 65 3b 0d 0a 20 20 20 20 44 33 44 58 49 4d  ype;..    D3DXIM
21f0: 41 47 45 5f 46 49 4c 45 46 4f 52 4d 41 54 20 20  AGE_FILEFORMAT  
2200: 20 20 49 6d 61 67 65 46 69 6c 65 46 6f 72 6d 61    ImageFileForma
2210: 74 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 75  t;..}....alias u
2220: 69 6e 74 20 44 33 44 58 49 4d 41 47 45 5f 46 49  int D3DXIMAGE_FI
2230: 4c 45 46 4f 52 4d 41 54 3b 0d 0a 65 6e 75 6d 20  LEFORMAT;..enum 
2240: 3a 20 75 69 6e 74 0d 0a 7b 0d 0a 20 20 20 20 44  : uint..{..    D
2250: 33 44 58 49 46 46 5f 42 4d 50 20 20 20 20 20 20  3DXIFF_BMP      
2260: 20 20 20 3d 20 30 2c 0d 0a 20 20 20 20 44 33 44     = 0,..    D3D
2270: 58 49 46 46 5f 4a 50 47 20 20 20 20 20 20 20 20  XIFF_JPG        
2280: 20 3d 20 31 2c 0d 0a 20 20 20 20 44 33 44 58 49   = 1,..    D3DXI
2290: 46 46 5f 54 47 41 20 20 20 20 20 20 20 20 20 3d  FF_TGA         =
22a0: 20 32 2c 0d 0a 20 20 20 20 44 33 44 58 49 46 46   2,..    D3DXIFF
22b0: 5f 50 4e 47 20 20 20 20 20 20 20 20 20 3d 20 33  _PNG         = 3
22c0: 2c 0d 0a 20 20 20 20 44 33 44 58 49 46 46 5f 44  ,..    D3DXIFF_D
22d0: 44 53 20 20 20 20 20 20 20 20 20 3d 20 34 2c 0d  DS         = 4,.
22e0: 0a 20 20 20 20 44 33 44 58 49 46 46 5f 50 50 4d  .    D3DXIFF_PPM
22f0: 20 20 20 20 20 20 20 20 20 3d 20 35 2c 0d 0a 20           = 5,.. 
2300: 20 20 20 44 33 44 58 49 46 46 5f 44 49 42 20 20     D3DXIFF_DIB  
2310: 20 20 20 20 20 20 20 3d 20 36 2c 0d 0a 7d 0d 0a         = 6,..}..
2320: 0d 0a 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63  ..align(4) struc
2330: 74 20 44 33 44 58 41 54 54 52 49 42 55 54 45 57  t D3DXATTRIBUTEW
2340: 45 49 47 48 54 53 0d 0a 7b 0d 0a 20 20 20 20 46  EIGHTS..{..    F
2350: 4c 4f 41 54 20 50 6f 73 69 74 69 6f 6e 20 3d 20  LOAT Position = 
2360: 30 3b 0d 0a 20 20 20 20 46 4c 4f 41 54 20 42 6f  0;..    FLOAT Bo
2370: 75 6e 64 61 72 79 20 3d 20 30 3b 0d 0a 20 20 20  undary = 0;..   
2380: 20 46 4c 4f 41 54 20 4e 6f 72 6d 61 6c 20 3d 20   FLOAT Normal = 
2390: 30 3b 0d 0a 20 20 20 20 46 4c 4f 41 54 20 44 69  0;..    FLOAT Di
23a0: 66 66 75 73 65 20 3d 20 30 3b 0d 0a 20 20 20 20  ffuse = 0;..    
23b0: 46 4c 4f 41 54 20 53 70 65 63 75 6c 61 72 20 3d  FLOAT Specular =
23c0: 20 30 3b 0d 0a 20 20 20 20 46 4c 4f 41 54 5b 38   0;..    FLOAT[8
23d0: 5d 20 54 65 78 63 6f 6f 72 64 20 3d 20 30 3b 0d  ] Texcoord = 0;.
23e0: 0a 20 20 20 20 46 4c 4f 41 54 20 54 61 6e 67 65  .    FLOAT Tange
23f0: 6e 74 20 3d 20 30 3b 0d 0a 20 20 20 20 46 4c 4f  nt = 0;..    FLO
2400: 41 54 20 42 69 6e 6f 72 6d 61 6c 20 3d 20 30 3b  AT Binormal = 0;
2410: 0d 0a 7d 0d 0a 0d 0a 61 6c 69 67 6e 28 34 29 20  ..}....align(4) 
2420: 73 74 72 75 63 74 20 44 33 44 58 50 4c 41 4e 45  struct D3DXPLANE
2430: 0d 0a 7b 0d 0a 09 46 4c 4f 41 54 20 61 20 3d 20  ..{...FLOAT a = 
2440: 30 2c 20 62 20 3d 20 30 2c 20 63 20 3d 20 30 2c  0, b = 0, c = 0,
2450: 20 64 20 3d 20 30 3b 0d 0a 7d 0d 0a 0d 0a 61 6c   d = 0;..}....al
2460: 69 61 73 20 75 69 6e 74 20 44 33 44 58 4d 45 53  ias uint D3DXMES
2470: 48 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 0d  H;..enum : uint.
2480: 0a 7b 0d 0a 20 20 20 20 44 33 44 58 4d 45 53 48  .{..    D3DXMESH
2490: 5f 33 32 42 49 54 20 20 20 20 20 20 20 20 20 20  _32BIT          
24a0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 31 2c          = 0x001,
24b0: 0d 0a 20 20 20 20 44 33 44 58 4d 45 53 48 5f 44  ..    D3DXMESH_D
24c0: 4f 4e 4f 54 43 4c 49 50 20 20 20 20 20 20 20 20  ONOTCLIP        
24d0: 20 20 20 20 20 20 3d 20 30 78 30 30 32 2c 0d 0a        = 0x002,..
24e0: 20 20 20 20 44 33 44 58 4d 45 53 48 5f 50 4f 49      D3DXMESH_POI
24f0: 4e 54 53 20 20 20 20 20 20 20 20 20 20 20 20 20  NTS             
2500: 20 20 20 20 3d 20 30 78 30 30 34 2c 0d 0a 20 20      = 0x004,..  
2510: 20 20 44 33 44 58 4d 45 53 48 5f 52 54 50 41 54    D3DXMESH_RTPAT
2520: 43 48 45 53 20 20 20 20 20 20 20 20 20 20 20 20  CHES            
2530: 20 20 3d 20 30 78 30 30 38 2c 0d 0a 20 20 20 20    = 0x008,..    
2540: 44 33 44 58 4d 45 53 48 5f 4e 50 41 54 43 48 45  D3DXMESH_NPATCHE
2550: 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  S               
2560: 3d 20 30 78 34 30 30 30 2c 0d 0a 20 20 20 20 44  = 0x4000,..    D
2570: 33 44 58 4d 45 53 48 5f 56 42 5f 53 59 53 54 45  3DXMESH_VB_SYSTE
2580: 4d 4d 45 4d 20 20 20 20 20 20 20 20 20 20 20 3d  MMEM           =
2590: 20 30 78 30 31 30 2c 0d 0a 20 20 20 20 44 33 44   0x010,..    D3D
25a0: 58 4d 45 53 48 5f 56 42 5f 4d 41 4e 41 47 45 44  XMESH_VB_MANAGED
25b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30               = 0
25c0: 78 30 32 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d  x020,..    D3DXM
25d0: 45 53 48 5f 56 42 5f 57 52 49 54 45 4f 4e 4c 59  ESH_VB_WRITEONLY
25e0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30             = 0x0
25f0: 34 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d 45 53  40,..    D3DXMES
2600: 48 5f 56 42 5f 44 59 4e 41 4d 49 43 20 20 20 20  H_VB_DYNAMIC    
2610: 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 38 30           = 0x080
2620: 2c 0d 0a 20 20 20 20 44 33 44 58 4d 45 53 48 5f  ,..    D3DXMESH_
2630: 56 42 5f 53 4f 46 54 57 41 52 45 50 52 4f 43 45  VB_SOFTWAREPROCE
2640: 53 53 49 4e 47 20 3d 20 30 78 38 30 30 30 2c 0d  SSING = 0x8000,.
2650: 0a 20 20 20 20 44 33 44 58 4d 45 53 48 5f 49 42  .    D3DXMESH_IB
2660: 5f 53 59 53 54 45 4d 4d 45 4d 20 20 20 20 20 20  _SYSTEMMEM      
2670: 20 20 20 20 20 3d 20 30 78 31 30 30 2c 0d 0a 20       = 0x100,.. 
2680: 20 20 20 44 33 44 58 4d 45 53 48 5f 49 42 5f 4d     D3DXMESH_IB_M
2690: 41 4e 41 47 45 44 20 20 20 20 20 20 20 20 20 20  ANAGED          
26a0: 20 20 20 3d 20 30 78 32 30 30 2c 0d 0a 20 20 20     = 0x200,..   
26b0: 20 44 33 44 58 4d 45 53 48 5f 49 42 5f 57 52 49   D3DXMESH_IB_WRI
26c0: 54 45 4f 4e 4c 59 20 20 20 20 20 20 20 20 20 20  TEONLY          
26d0: 20 3d 20 30 78 34 30 30 2c 0d 0a 20 20 20 20 44   = 0x400,..    D
26e0: 33 44 58 4d 45 53 48 5f 49 42 5f 44 59 4e 41 4d  3DXMESH_IB_DYNAM
26f0: 49 43 20 20 20 20 20 20 20 20 20 20 20 20 20 3d  IC             =
2700: 20 30 78 38 30 30 2c 0d 0a 20 20 20 20 44 33 44   0x800,..    D3D
2710: 58 4d 45 53 48 5f 49 42 5f 53 4f 46 54 57 41 52  XMESH_IB_SOFTWAR
2720: 45 50 52 4f 43 45 53 53 49 4e 47 3d 20 30 78 31  EPROCESSING= 0x1
2730: 30 30 30 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d  0000,..    D3DXM
2740: 45 53 48 5f 56 42 5f 53 48 41 52 45 20 20 20 20  ESH_VB_SHARE    
2750: 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 31             = 0x1
2760: 30 30 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d 45  000,..    D3DXME
2770: 53 48 5f 55 53 45 48 57 4f 4e 4c 59 20 20 20 20  SH_USEHWONLY    
2780: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 32 30            = 0x20
2790: 30 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d 45 53  00,..    D3DXMES
27a0: 48 5f 53 59 53 54 45 4d 4d 45 4d 20 20 20 20 20  H_SYSTEMMEM     
27b0: 20 20 20 20 20 20 20 20 20 3d 20 30 78 31 31 30           = 0x110
27c0: 2c 0d 0a 20 20 20 20 44 33 44 58 4d 45 53 48 5f  ,..    D3DXMESH_
27d0: 4d 41 4e 41 47 45 44 20 20 20 20 20 20 20 20 20  MANAGED         
27e0: 20 20 20 20 20 20 20 3d 20 30 78 32 32 30 2c 0d         = 0x220,.
27f0: 0a 20 20 20 20 44 33 44 58 4d 45 53 48 5f 57 52  .    D3DXMESH_WR
2800: 49 54 45 4f 4e 4c 59 20 20 20 20 20 20 20 20 20  ITEONLY         
2810: 20 20 20 20 20 3d 20 30 78 34 34 30 2c 0d 0a 20       = 0x440,.. 
2820: 20 20 20 44 33 44 58 4d 45 53 48 5f 44 59 4e 41     D3DXMESH_DYNA
2830: 4d 49 43 20 20 20 20 20 20 20 20 20 20 20 20 20  MIC             
2840: 20 20 20 3d 20 30 78 38 38 30 2c 0d 0a 20 20 20     = 0x880,..   
2850: 20 44 33 44 58 4d 45 53 48 5f 53 4f 46 54 57 41   D3DXMESH_SOFTWA
2860: 52 45 50 52 4f 43 45 53 53 49 4e 47 20 20 20 3d  REPROCESSING   =
2870: 20 30 78 31 38 30 30 30 2c 0d 0a 7d 0d 0a 0d 0a   0x18000,..}....
2880: 61 6c 69 67 6e 28 34 29 20 73 74 72 75 63 74 20  align(4) struct 
2890: 44 33 44 58 4d 41 43 52 4f 0d 0a 7b 0d 0a 20 20  D3DXMACRO..{..  
28a0: 20 20 4c 50 43 53 54 52 20 4e 61 6d 65 3b 0d 0a    LPCSTR Name;..
28b0: 20 20 20 20 4c 50 43 53 54 52 20 44 65 66 69 6e      LPCSTR Defin
28c0: 69 74 69 6f 6e 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69  ition;..}....ali
28d0: 67 6e 28 34 29 20 73 74 72 75 63 74 20 44 33 44  gn(4) struct D3D
28e0: 58 53 45 4d 41 4e 54 49 43 0d 0a 7b 0d 0a 20 20  XSEMANTIC..{..  
28f0: 20 20 55 49 4e 54 20 55 73 61 67 65 3b 0d 0a 20    UINT Usage;.. 
2900: 20 20 20 55 49 4e 54 20 55 73 61 67 65 49 6e 64     UINT UsageInd
2910: 65 78 3b 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20  ex;..}....alias 
2920: 75 69 6e 74 20 44 33 44 58 49 4e 43 4c 55 44 45  uint D3DXINCLUDE
2930: 5f 54 59 50 45 3b 0d 0a 65 6e 75 6d 20 3a 20 75  _TYPE;..enum : u
2940: 69 6e 74 0d 0a 7b 0d 0a 20 20 20 20 44 33 44 58  int..{..    D3DX
2950: 49 4e 43 5f 4c 4f 43 41 4c 2c 0d 0a 20 20 20 20  INC_LOCAL,..    
2960: 44 33 44 58 49 4e 43 5f 53 59 53 54 45 4d 2c 0d  D3DXINC_SYSTEM,.
2970: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e  .}....enum : uin
2980: 74 0d 0a 7b 0d 0a 09 44 33 44 58 46 58 5f 44 4f  t..{...D3DXFX_DO
2990: 4e 4f 54 53 41 56 45 53 54 41 54 45 20 20 20 20  NOTSAVESTATE    
29a0: 20 20 20 20 20 3d 20 28 31 20 3c 3c 20 30 29 2c       = (1 << 0),
29b0: 0d 0a 09 44 33 44 58 46 58 5f 44 4f 4e 4f 54 53  ...D3DXFX_DONOTS
29c0: 41 56 45 53 48 41 44 45 52 53 54 41 54 45 20 20  AVESHADERSTATE  
29d0: 20 3d 20 28 31 20 3c 3c 20 31 29 2c 0d 0a 09 44   = (1 << 1),...D
29e0: 33 44 58 46 58 5f 44 4f 4e 4f 54 53 41 56 45 53  3DXFX_DONOTSAVES
29f0: 41 4d 50 4c 45 52 53 54 41 54 45 20 20 3d 20 28  AMPLERSTATE  = (
2a00: 31 20 3c 3c 20 32 29 2c 0d 0a 09 44 33 44 58 46  1 << 2),...D3DXF
2a10: 58 5f 4e 4f 54 5f 43 4c 4f 4e 45 41 42 4c 45 20  X_NOT_CLONEABLE 
2a20: 20 20 20 20 20 20 20 20 20 3d 20 28 31 20 3c 3c           = (1 <<
2a30: 20 31 31 29 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73   11)..}....alias
2a40: 20 75 69 6e 74 20 44 33 44 58 4d 45 53 48 53 49   uint D3DXMESHSI
2a50: 4d 50 3b 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74  MP;..enum : uint
2a60: 0d 0a 7b 0d 0a 20 20 20 20 44 33 44 58 4d 45 53  ..{..    D3DXMES
2a70: 48 53 49 4d 50 5f 56 45 52 54 45 58 20 20 20 3d  HSIMP_VERTEX   =
2a80: 20 30 78 31 2c 0d 0a 20 20 20 20 44 33 44 58 4d   0x1,..    D3DXM
2a90: 45 53 48 53 49 4d 50 5f 46 41 43 45 20 20 20 20  ESHSIMP_FACE    
2aa0: 20 3d 20 30 78 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75   = 0x2..}....enu
2ab0: 6d 20 3a 20 75 69 6e 74 0d 0a 7b 0d 0a 09 44 54  m : uint..{...DT
2ac0: 5f 54 4f 50 20 20 20 20 20 20 20 20 20 20 20 20  _TOP            
2ad0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
2ae0: 30 30 30 30 30 30 2c 0d 0a 09 44 54 5f 4c 45 46  000000,...DT_LEF
2af0: 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  T               
2b00: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
2b10: 30 30 2c 0d 0a 09 44 54 5f 43 45 4e 54 45 52 20  00,...DT_CENTER 
2b20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2b30: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d    = 0x00000001,.
2b40: 0a 09 44 54 5f 52 49 47 48 54 20 20 20 20 20 20  ..DT_RIGHT      
2b50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
2b60: 30 78 30 30 30 30 30 30 30 32 2c 0d 0a 09 44 54  0x00000002,...DT
2b70: 5f 56 43 45 4e 54 45 52 20 20 20 20 20 20 20 20  _VCENTER        
2b80: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
2b90: 30 30 30 30 30 34 2c 0d 0a 09 44 54 5f 42 4f 54  000004,...DT_BOT
2ba0: 54 4f 4d 20 20 20 20 20 20 20 20 20 20 20 20 20  TOM             
2bb0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
2bc0: 30 38 2c 0d 0a 09 44 54 5f 57 4f 52 44 42 52 45  08,...DT_WORDBRE
2bd0: 41 4b 20 20 20 20 20 20 20 20 20 20 20 20 20 20  AK              
2be0: 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0d    = 0x00000010,.
2bf0: 0a 09 44 54 5f 53 49 4e 47 4c 45 4c 49 4e 45 20  ..DT_SINGLELINE 
2c00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
2c10: 30 78 30 30 30 30 30 30 32 30 2c 0d 0a 09 44 54  0x00000020,...DT
2c20: 5f 45 58 50 41 4e 44 54 41 42 53 20 20 20 20 20  _EXPANDTABS     
2c30: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
2c40: 30 30 30 30 34 30 2c 0d 0a 09 44 54 5f 54 41 42  000040,...DT_TAB
2c50: 53 54 4f 50 20 20 20 20 20 20 20 20 20 20 20 20  STOP            
2c60: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30        = 0x000000
2c70: 38 30 2c 0d 0a 09 44 54 5f 4e 4f 43 4c 49 50 20  80,...DT_NOCLIP 
2c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2c90: 20 20 3d 20 30 78 30 30 30 30 30 31 30 30 2c 0d    = 0x00000100,.
2ca0: 0a 09 44 54 5f 45 58 54 45 52 4e 41 4c 4c 45 41  ..DT_EXTERNALLEA
2cb0: 44 49 4e 47 20 20 20 20 20 20 20 20 20 20 3d 20  DING          = 
2cc0: 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09 44 54  0x00000200,...DT
2cd0: 5f 43 41 4c 43 52 45 43 54 20 20 20 20 20 20 20  _CALCRECT       
2ce0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30            = 0x00
2cf0: 30 30 30 34 30 30 2c 0d 0a 09 44 54 5f 4e 4f 50  000400,...DT_NOP
2d00: 52 45 46 49 58 20 20 20 20 20 20 20 20 20 20 20  REFIX           
2d10: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 38        = 0x000008
2d20: 30 30 2c 0d 0a 09 44 54 5f 49 4e 54 45 52 4e 41  00,...DT_INTERNA
2d30: 4c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  L               
2d40: 20 20 3d 20 30 78 30 30 30 30 31 30 30 30 0d 0a    = 0x00001000..
2d50: 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74  }....enum : uint
2d60: 0d 0a 7b 0d 0a 09 44 33 44 58 53 50 52 49 54 45  ..{...D3DXSPRITE
2d70: 5f 44 4f 4e 4f 54 53 41 56 45 53 54 41 54 45 20  _DONOTSAVESTATE 
2d80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20                = 
2d90: 28 31 20 3c 3c 20 30 29 2c 0d 0a 09 44 33 44 58  (1 << 0),...D3DX
2da0: 53 50 52 49 54 45 5f 44 4f 4e 4f 54 4d 4f 44 49  SPRITE_DONOTMODI
2db0: 46 59 5f 52 45 4e 44 45 52 53 54 41 54 45 20 20  FY_RENDERSTATE  
2dc0: 20 20 20 20 3d 20 28 31 20 3c 3c 20 31 29 2c 0d      = (1 << 1),.
2dd0: 0a 09 44 33 44 58 53 50 52 49 54 45 5f 4f 42 4a  ..D3DXSPRITE_OBJ
2de0: 45 43 54 53 50 41 43 45 20 20 20 20 20 20 20 20  ECTSPACE        
2df0: 20 20 20 20 20 20 20 20 20 20 3d 20 28 31 20 3c            = (1 <
2e00: 3c 20 32 29 2c 0d 0a 09 44 33 44 58 53 50 52 49  < 2),...D3DXSPRI
2e10: 54 45 5f 42 49 4c 4c 42 4f 41 52 44 20 20 20 20  TE_BILLBOARD    
2e20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
2e30: 3d 20 28 31 20 3c 3c 20 33 29 2c 0d 0a 09 44 33  = (1 << 3),...D3
2e40: 44 58 53 50 52 49 54 45 5f 41 4c 50 48 41 42 4c  DXSPRITE_ALPHABL
2e50: 45 4e 44 20 20 20 20 20 20 20 20 20 20 20 20 20  END             
2e60: 20 20 20 20 20 20 3d 20 28 31 20 3c 3c 20 34 29        = (1 << 4)
2e70: 2c 0d 0a 09 44 33 44 58 53 50 52 49 54 45 5f 53  ,...D3DXSPRITE_S
2e80: 4f 52 54 5f 54 45 58 54 55 52 45 20 20 20 20 20  ORT_TEXTURE     
2e90: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 28 31              = (1
2ea0: 20 3c 3c 20 35 29 2c 0d 0a 09 44 33 44 58 53 50   << 5),...D3DXSP
2eb0: 52 49 54 45 5f 53 4f 52 54 5f 44 45 50 54 48 5f  RITE_SORT_DEPTH_
2ec0: 46 52 4f 4e 54 54 4f 42 41 43 4b 20 20 20 20 20  FRONTTOBACK     
2ed0: 20 20 3d 20 28 31 20 3c 3c 20 36 29 2c 0d 0a 09    = (1 << 6),...
2ee0: 44 33 44 58 53 50 52 49 54 45 5f 53 4f 52 54 5f  D3DXSPRITE_SORT_
2ef0: 44 45 50 54 48 5f 42 41 43 4b 54 4f 46 52 4f 4e  DEPTH_BACKTOFRON
2f00: 54 20 20 20 20 20 20 20 3d 20 28 31 20 3c 3c 20  T       = (1 << 
2f10: 37 29 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20  7)..}....enum : 
2f20: 75 69 6e 74 0d 0a 7b 0d 0a 09 44 33 44 58 5f 46  uint..{...D3DX_F
2f30: 49 4c 54 45 52 5f 4e 4f 4e 45 20 20 20 20 20 20  ILTER_NONE      
2f40: 20 20 20 20 20 20 20 3d 20 28 31 20 3c 3c 20 30         = (1 << 0
2f50: 29 2c 0d 0a 09 44 33 44 58 5f 46 49 4c 54 45 52  ),...D3DX_FILTER
2f60: 5f 50 4f 49 4e 54 20 20 20 20 20 20 20 20 20 20  _POINT          
2f70: 20 20 3d 20 28 32 20 3c 3c 20 30 29 2c 0d 0a 09    = (2 << 0),...
2f80: 44 33 44 58 5f 46 49 4c 54 45 52 5f 4c 49 4e 45  D3DX_FILTER_LINE
2f90: 41 52 20 20 20 20 20 20 20 20 20 20 20 3d 20 28  AR           = (
2fa0: 33 20 3c 3c 20 30 29 2c 0d 0a 09 44 33 44 58 5f  3 << 0),...D3DX_
2fb0: 46 49 4c 54 45 52 5f 54 52 49 41 4e 47 4c 45 20  FILTER_TRIANGLE 
2fc0: 20 20 20 20 20 20 20 20 3d 20 28 34 20 3c 3c 20          = (4 << 
2fd0: 30 29 2c 0d 0a 09 44 33 44 58 5f 46 49 4c 54 45  0),...D3DX_FILTE
2fe0: 52 5f 42 4f 58 20 20 20 20 20 20 20 20 20 20 20  R_BOX           
2ff0: 20 20 20 3d 20 28 35 20 3c 3c 20 30 29 2c 0d 0a     = (5 << 0),..
3000: 09 44 33 44 58 5f 46 49 4c 54 45 52 5f 4d 49 52  .D3DX_FILTER_MIR
3010: 52 4f 52 5f 55 20 20 20 20 20 20 20 20 20 3d 20  ROR_U         = 
3020: 28 31 20 3c 3c 20 31 36 29 2c 0d 0a 09 44 33 44  (1 << 16),...D3D
3030: 58 5f 46 49 4c 54 45 52 5f 4d 49 52 52 4f 52 5f  X_FILTER_MIRROR_
3040: 56 20 20 20 20 20 20 20 20 20 3d 20 28 32 20 3c  V         = (2 <
3050: 3c 20 31 36 29 2c 0d 0a 09 44 33 44 58 5f 46 49  < 16),...D3DX_FI
3060: 4c 54 45 52 5f 4d 49 52 52 4f 52 5f 57 20 20 20  LTER_MIRROR_W   
3070: 20 20 20 20 20 20 3d 20 28 34 20 3c 3c 20 31 36        = (4 << 16
3080: 29 2c 0d 0a 09 44 33 44 58 5f 46 49 4c 54 45 52  ),...D3DX_FILTER
3090: 5f 4d 49 52 52 4f 52 20 20 20 20 20 20 20 20 20  _MIRROR         
30a0: 20 20 3d 20 28 37 20 3c 3c 20 31 36 29 2c 0d 0a    = (7 << 16),..
30b0: 09 44 33 44 58 5f 46 49 4c 54 45 52 5f 44 49 54  .D3DX_FILTER_DIT
30c0: 48 45 52 20 20 20 20 20 20 20 20 20 20 20 3d 20  HER           = 
30d0: 28 31 20 3c 3c 20 31 39 29 2c 0d 0a 09 44 33 44  (1 << 19),...D3D
30e0: 58 5f 46 49 4c 54 45 52 5f 44 49 54 48 45 52 5f  X_FILTER_DITHER_
30f0: 44 49 46 46 55 53 49 4f 4e 20 3d 20 28 32 20 3c  DIFFUSION = (2 <
3100: 3c 20 31 39 29 2c 0d 0a 09 44 33 44 58 5f 46 49  < 19),...D3DX_FI
3110: 4c 54 45 52 5f 53 52 47 42 5f 49 4e 20 20 20 20  LTER_SRGB_IN    
3120: 20 20 20 20 20 20 3d 20 28 31 20 3c 3c 20 32 31        = (1 << 21
3130: 29 2c 0d 0a 09 44 33 44 58 5f 46 49 4c 54 45 52  ),...D3DX_FILTER
3140: 5f 53 52 47 42 5f 4f 55 54 20 20 20 20 20 20 20  _SRGB_OUT       
3150: 20 20 3d 20 28 32 20 3c 3c 20 32 31 29 2c 0d 0a    = (2 << 21),..
3160: 09 44 33 44 58 5f 46 49 4c 54 45 52 5f 53 52 47  .D3DX_FILTER_SRG
3170: 42 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20  B             = 
3180: 28 33 20 3c 3c 20 32 31 29 0d 0a 7d 0d 0a 0d 0a  (3 << 21)..}....
3190: 63 6f 6e 73 74 20 75 69 6e 74 20 44 33 44 58 5f  const uint D3DX_
31a0: 44 45 46 41 55 4c 54 20 20 20 20 20 20 20 20 20  DEFAULT         
31b0: 20 20 20 3d 20 63 61 73 74 28 55 49 4e 54 29 20     = cast(UINT) 
31c0: 2d 31 3b 0d 0a 0d 0a 61 6c 69 61 73 20 75 69 6e  -1;....alias uin
31d0: 74 20 44 33 44 58 4d 45 53 48 4f 50 54 3b 0d 0a  t D3DXMESHOPT;..
31e0: 65 6e 75 6d 20 3a 20 75 69 6e 74 0d 0a 7b 0d 0a  enum : uint..{..
31f0: 20 20 20 20 44 33 44 58 4d 45 53 48 4f 50 54 5f      D3DXMESHOPT_
3200: 43 4f 4d 50 41 43 54 20 20 20 20 20 20 20 3d 20  COMPACT       = 
3210: 30 78 30 31 30 30 30 30 30 30 2c 0d 0a 20 20 20  0x01000000,..   
3220: 20 44 33 44 58 4d 45 53 48 4f 50 54 5f 41 54 54   D3DXMESHOPT_ATT
3230: 52 53 4f 52 54 20 20 20 20 20 20 3d 20 30 78 30  RSORT      = 0x0
3240: 32 30 30 30 30 30 30 2c 0d 0a 20 20 20 20 44 33  2000000,..    D3
3250: 44 58 4d 45 53 48 4f 50 54 5f 56 45 52 54 45 58  DXMESHOPT_VERTEX
3260: 43 41 43 48 45 20 20 20 3d 20 30 78 30 34 30 30  CACHE   = 0x0400
3270: 30 30 30 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d  0000,..    D3DXM
3280: 45 53 48 4f 50 54 5f 53 54 52 49 50 52 45 4f 52  ESHOPT_STRIPREOR
3290: 44 45 52 20 20 3d 20 30 78 30 38 30 30 30 30 30  DER  = 0x0800000
32a0: 30 2c 0d 0a 20 20 20 20 44 33 44 58 4d 45 53 48  0,..    D3DXMESH
32b0: 4f 50 54 5f 49 47 4e 4f 52 45 56 45 52 54 53 20  OPT_IGNOREVERTS 
32c0: 20 20 3d 20 30 78 31 30 30 30 30 30 30 30 2c 20    = 0x10000000, 
32d0: 20 2f 2f 20 6f 70 74 69 6d 69 7a 65 20 66 61 63   // optimize fac
32e0: 65 73 20 6f 6e 6c 79 2c 20 64 6f 6e 27 74 20 74  es only, don't t
32f0: 6f 75 63 68 20 76 65 72 74 69 63 65 73 0d 0a 20  ouch vertices.. 
3300: 20 20 20 44 33 44 58 4d 45 53 48 4f 50 54 5f 44     D3DXMESHOPT_D
3310: 4f 4e 4f 54 53 50 4c 49 54 20 20 20 20 3d 20 30  ONOTSPLIT    = 0
3320: 78 32 30 30 30 30 30 30 30 2c 20 20 2f 2f 20 64  x20000000,  // d
3330: 6f 20 6e 6f 74 20 73 70 6c 69 74 20 76 65 72 74  o not split vert
3340: 69 63 65 73 20 73 68 61 72 65 64 20 62 65 74 77  ices shared betw
3350: 65 65 6e 20 61 74 74 72 69 62 75 74 65 20 67 72  een attribute gr
3360: 6f 75 70 73 20 77 68 65 6e 20 61 74 74 72 69 62  oups when attrib
3370: 75 74 65 20 73 6f 72 74 69 6e 67 0d 0a 20 20 20  ute sorting..   
3380: 20 44 33 44 58 4d 45 53 48 4f 50 54 5f 44 45 56   D3DXMESHOPT_DEV
3390: 49 43 45 49 4e 44 45 50 45 4e 44 45 4e 54 20 3d  ICEINDEPENDENT =
33a0: 20 30 78 30 30 34 30 30 30 30 30 20 20 2f 2f 20   0x00400000  // 
33b0: 4f 6e 6c 79 20 61 66 66 65 63 74 73 20 56 43 61  Only affects VCa
33c0: 63 68 65 2e 20 20 75 73 65 73 20 61 20 73 74 61  che.  uses a sta
33d0: 74 69 63 20 6b 6e 6f 77 6e 20 67 6f 6f 64 20 63  tic known good c
33e0: 61 63 68 65 20 73 69 7a 65 20 66 6f 72 20 61 6c  ache size for al
33f0: 6c 20 63 61 72 64 73 0d 0a 7d 0d 0a 0d 0a 65 6e  l cards..}....en
3400: 75 6d 20 3a 20 75 69 6e 74 0d 0a 7b 0d 0a 20 20  um : uint..{..  
3410: 20 20 44 33 44 58 50 4c 41 59 5f 4c 4f 4f 50 20    D3DXPLAY_LOOP 
3420: 3d 20 30 2c 0d 0a 20 20 20 20 44 33 44 58 50 4c  = 0,..    D3DXPL
3430: 41 59 5f 4f 4e 43 45 20 3d 20 31 2c 0d 0a 20 20  AY_ONCE = 1,..  
3440: 20 20 44 33 44 58 50 4c 41 59 5f 50 49 4e 47 50    D3DXPLAY_PINGP
3450: 4f 4e 47 20 3d 20 32 0d 0a 7d 0d 0a 61 6c 69 61  ONG = 2..}..alia
3460: 73 20 75 69 6e 74 20 44 33 44 58 50 4c 41 59 42  s uint D3DXPLAYB
3470: 41 43 4b 5f 54 59 50 45 3b 0d 0a 0d 0a 0d 0a 2f  ACK_TYPE;....../
3480: 2f 20 44 33 44 58 20 49 6e 74 65 72 66 61 63 65  / D3DX Interface
3490: 73 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  s --------------
34a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
34e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 0d 0a 69 6e 74  ---------....int
34f0: 65 72 66 61 63 65 20 49 44 33 44 58 53 6b 69 6e  erface ID3DXSkin
3500: 49 6e 66 6f 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d  Info : IUnknown.
3510: 0a 7b 0d 0a 09 65 78 74 65 72 6e 28 57 69 6e 64  .{...extern(Wind
3520: 6f 77 73 29 3a 0d 0a 0d 0a 20 20 20 20 2f 2f 20  ows):....    // 
3530: 53 70 65 63 69 66 79 20 74 68 65 20 77 68 69 63  Specify the whic
3540: 68 20 76 65 72 74 69 63 65 73 20 64 6f 20 65 61  h vertices do ea
3550: 63 68 20 62 6f 6e 65 73 20 69 6e 66 6c 75 65 6e  ch bones influen
3560: 63 65 20 61 6e 64 20 62 79 20 68 6f 77 20 6d 75  ce and by how mu
3570: 63 68 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20  ch..    HRESULT 
3580: 53 65 74 42 6f 6e 65 49 6e 66 6c 75 65 6e 63 65  SetBoneInfluence
3590: 28 44 57 4f 52 44 20 62 6f 6e 65 2c 20 44 57 4f  (DWORD bone, DWO
35a0: 52 44 20 6e 75 6d 49 6e 66 6c 75 65 6e 63 65 73  RD numInfluences
35b0: 2c 20 44 57 4f 52 44 2a 20 76 65 72 74 69 63 65  , DWORD* vertice
35c0: 73 2c 20 46 4c 4f 41 54 2a 20 77 65 69 67 68 74  s, FLOAT* weight
35d0: 73 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 53 65  s);...HRESULT Se
35e0: 74 42 6f 6e 65 56 65 72 74 65 78 49 6e 66 6c 75  tBoneVertexInflu
35f0: 65 6e 63 65 28 44 57 4f 52 44 20 62 6f 6e 65 4e  ence(DWORD boneN
3600: 75 6d 2c 20 44 57 4f 52 44 20 69 6e 66 6c 75 65  um, DWORD influe
3610: 6e 63 65 4e 75 6d 2c 20 66 6c 6f 61 74 20 77 65  nceNum, float we
3620: 69 67 68 74 29 3b 0d 0a 20 20 20 20 44 57 4f 52  ight);..    DWOR
3630: 44 20 47 65 74 4e 75 6d 42 6f 6e 65 49 6e 66 6c  D GetNumBoneInfl
3640: 75 65 6e 63 65 73 28 44 57 4f 52 44 20 62 6f 6e  uences(DWORD bon
3650: 65 29 3b 0d 0a 09 48 52 45 53 55 4c 54 20 47 65  e);...HRESULT Ge
3660: 74 42 6f 6e 65 49 6e 66 6c 75 65 6e 63 65 28 44  tBoneInfluence(D
3670: 57 4f 52 44 20 62 6f 6e 65 2c 20 44 57 4f 52 44  WORD bone, DWORD
3680: 2a 20 76 65 72 74 69 63 65 73 2c 20 46 4c 4f 41  * vertices, FLOA
3690: 54 2a 20 77 65 69 67 68 74 73 29 3b 0d 0a 09 48  T* weights);...H
36a0: 52 45 53 55 4c 54 20 47 65 74 42 6f 6e 65 56 65  RESULT GetBoneVe
36b0: 72 74 65 78 49 6e 66 6c 75 65 6e 63 65 28 44 57  rtexInfluence(DW
36c0: 4f 52 44 20 62 6f 6e 65 4e 75 6d 2c 20 44 57 4f  ORD boneNum, DWO
36d0: 52 44 20 69 6e 66 6c 75 65 6e 63 65 4e 75 6d 2c  RD influenceNum,
36e0: 20 66 6c 6f 61 74 20 2a 70 57 65 69 67 68 74 2c   float *pWeight,
36f0: 20 44 57 4f 52 44 20 2a 70 56 65 72 74 65 78 4e   DWORD *pVertexN
3700: 75 6d 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  um);..    HRESUL
3710: 54 20 47 65 74 4d 61 78 56 65 72 74 65 78 49 6e  T GetMaxVertexIn
3720: 66 6c 75 65 6e 63 65 73 28 44 57 4f 52 44 2a 20  fluences(DWORD* 
3730: 6d 61 78 56 65 72 74 65 78 49 6e 66 6c 75 65 6e  maxVertexInfluen
3740: 63 65 73 29 3b 0d 0a 20 20 20 20 44 57 4f 52 44  ces);..    DWORD
3750: 20 47 65 74 4e 75 6d 42 6f 6e 65 73 28 29 3b 0d   GetNumBones();.
3760: 0a 09 48 52 45 53 55 4c 54 20 46 69 6e 64 42 6f  ..HRESULT FindBo
3770: 6e 65 56 65 72 74 65 78 49 6e 66 6c 75 65 6e 63  neVertexInfluenc
3780: 65 49 6e 64 65 78 28 44 57 4f 52 44 20 62 6f 6e  eIndex(DWORD bon
3790: 65 4e 75 6d 2c 20 44 57 4f 52 44 20 76 65 72 74  eNum, DWORD vert
37a0: 65 78 4e 75 6d 2c 20 44 57 4f 52 44 20 2a 70 49  exNum, DWORD *pI
37b0: 6e 66 6c 75 65 6e 63 65 49 6e 64 65 78 29 3b 0d  nfluenceIndex);.
37c0: 0a 0d 0a 20 20 20 20 2f 2f 20 54 68 69 73 20 67  ...    // This g
37d0: 65 74 73 20 74 68 65 20 6d 61 78 20 66 61 63 65  ets the max face
37e0: 20 69 6e 66 6c 75 65 6e 63 65 73 20 62 61 73 65   influences base
37f0: 64 20 6f 6e 20 61 20 74 72 69 61 6e 67 6c 65 20  d on a triangle 
3800: 6d 65 73 68 20 77 69 74 68 20 74 68 65 20 73 70  mesh with the sp
3810: 65 63 69 66 69 65 64 20 69 6e 64 65 78 20 62 75  ecified index bu
3820: 66 66 65 72 0d 0a 20 20 20 20 48 52 45 53 55 4c  ffer..    HRESUL
3830: 54 20 47 65 74 4d 61 78 46 61 63 65 49 6e 66 6c  T GetMaxFaceInfl
3840: 75 65 6e 63 65 73 28 49 44 69 72 65 63 74 33 44  uences(IDirect3D
3850: 49 6e 64 65 78 42 75 66 66 65 72 39 20 70 49 42  IndexBuffer9 pIB
3860: 2c 20 44 57 4f 52 44 20 4e 75 6d 46 61 63 65 73  , DWORD NumFaces
3870: 2c 20 44 57 4f 52 44 2a 20 6d 61 78 46 61 63 65  , DWORD* maxFace
3880: 49 6e 66 6c 75 65 6e 63 65 73 29 3b 0d 0a 0d 0a  Influences);....
3890: 20 20 20 20 2f 2f 20 53 65 74 20 6d 69 6e 20 62      // Set min b
38a0: 6f 6e 65 20 69 6e 66 6c 75 65 6e 63 65 2e 20 42  one influence. B
38b0: 6f 6e 65 20 69 6e 66 6c 75 65 6e 63 65 73 20 74  one influences t
38c0: 68 61 74 20 61 72 65 20 73 6d 61 6c 6c 65 72 20  hat are smaller 
38d0: 74 68 61 6e 20 74 68 69 73 20 61 72 65 20 69 67  than this are ig
38e0: 6e 6f 72 65 64 0d 0a 20 20 20 20 48 52 45 53 55  nored..    HRESU
38f0: 4c 54 20 53 65 74 4d 69 6e 42 6f 6e 65 49 6e 66  LT SetMinBoneInf
3900: 6c 75 65 6e 63 65 28 46 4c 4f 41 54 20 4d 69 6e  luence(FLOAT Min
3910: 49 6e 66 6c 29 3b 0d 0a 20 20 20 20 2f 2f 20 47  Infl);..    // G
3920: 65 74 20 6d 69 6e 20 62 6f 6e 65 20 69 6e 66 6c  et min bone infl
3930: 75 65 6e 63 65 2e 0d 0a 20 20 20 20 46 4c 4f 41  uence...    FLOA
3940: 54 20 47 65 74 4d 69 6e 42 6f 6e 65 49 6e 66 6c  T GetMinBoneInfl
3950: 75 65 6e 63 65 28 29 3b 0d 0a 0d 0a 20 20 20 20  uence();....    
3960: 2f 2f 20 42 6f 6e 65 20 6e 61 6d 65 73 20 61 72  // Bone names ar
3970: 65 20 72 65 74 75 72 6e 65 64 20 62 79 20 44 33  e returned by D3
3980: 44 58 4c 6f 61 64 53 6b 69 6e 4d 65 73 68 46 72  DXLoadSkinMeshFr
3990: 6f 6d 58 6f 66 2e 20 54 68 65 79 20 61 72 65 20  omXof. They are 
39a0: 6e 6f 74 20 75 73 65 64 20 62 79 20 61 6e 79 20  not used by any 
39b0: 6f 74 68 65 72 20 6d 65 74 68 6f 64 20 6f 66 20  other method of 
39c0: 74 68 69 73 20 6f 62 6a 65 63 74 0d 0a 20 20 20  this object..   
39d0: 20 48 52 45 53 55 4c 54 20 53 65 74 42 6f 6e 65   HRESULT SetBone
39e0: 4e 61 6d 65 28 44 57 4f 52 44 20 42 6f 6e 65 2c  Name(DWORD Bone,
39f0: 20 4c 50 43 53 54 52 20 70 4e 61 6d 65 29 3b 20   LPCSTR pName); 
3a00: 2f 2f 20 70 4e 61 6d 65 20 69 73 20 63 6f 70 69  // pName is copi
3a10: 65 64 20 74 6f 20 61 6e 20 69 6e 74 65 72 6e 61  ed to an interna
3a20: 6c 20 73 74 72 69 6e 67 20 62 75 66 66 65 72 0d  l string buffer.
3a30: 0a 20 20 20 20 4c 50 43 53 54 52 20 47 65 74 42  .    LPCSTR GetB
3a40: 6f 6e 65 4e 61 6d 65 28 44 57 4f 52 44 20 42 6f  oneName(DWORD Bo
3a50: 6e 65 29 3b 20 2f 2f 20 41 20 70 6f 69 6e 74 65  ne); // A pointe
3a60: 72 20 74 6f 20 61 6e 20 69 6e 74 65 72 6e 61 6c  r to an internal
3a70: 20 73 74 72 69 6e 67 20 62 75 66 66 65 72 20 69   string buffer i
3a80: 73 20 72 65 74 75 72 6e 65 64 2e 20 44 6f 20 6e  s returned. Do n
3a90: 6f 74 20 66 72 65 65 20 74 68 69 73 2e 0d 0a 0d  ot free this....
3aa0: 0a 20 20 20 20 2f 2f 20 42 6f 6e 65 20 6f 66 66  .    // Bone off
3ab0: 73 65 74 20 6d 61 74 72 69 63 65 73 20 61 72 65  set matrices are
3ac0: 20 72 65 74 75 72 6e 65 64 20 62 79 20 44 33 44   returned by D3D
3ad0: 58 4c 6f 61 64 53 6b 69 6e 4d 65 73 68 46 72 6f  XLoadSkinMeshFro
3ae0: 6d 58 6f 66 2e 20 54 68 65 79 20 61 72 65 20 6e  mXof. They are n
3af0: 6f 74 20 75 73 65 64 20 62 79 20 61 6e 79 20 6f  ot used by any o
3b00: 74 68 65 72 20 6d 65 74 68 6f 64 20 6f 66 20 74  ther method of t
3b10: 68 69 73 20 6f 62 6a 65 63 74 0d 0a 20 20 20 20  his object..    
3b20: 48 52 45 53 55 4c 54 20 53 65 74 42 6f 6e 65 4f  HRESULT SetBoneO
3b30: 66 66 73 65 74 4d 61 74 72 69 78 28 44 57 4f 52  ffsetMatrix(DWOR
3b40: 44 20 42 6f 6e 65 2c 20 44 33 44 58 4d 41 54 52  D Bone, D3DXMATR
3b50: 49 58 20 2a 70 42 6f 6e 65 54 72 61 6e 73 66 6f  IX *pBoneTransfo
3b60: 72 6d 29 3b 20 2f 2f 20 70 42 6f 6e 65 54 72 61  rm); // pBoneTra
3b70: 6e 73 66 6f 72 6d 20 69 73 20 63 6f 70 69 65 64  nsform is copied
3b80: 20 74 6f 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20   to an internal 
3b90: 62 75 66 66 65 72 0d 0a 20 20 20 20 44 33 44 58  buffer..    D3DX
3ba0: 4d 41 54 52 49 58 2a 20 47 65 74 42 6f 6e 65 4f  MATRIX* GetBoneO
3bb0: 66 66 73 65 74 4d 61 74 72 69 78 28 44 57 4f 52  ffsetMatrix(DWOR
3bc0: 44 20 42 6f 6e 65 29 3b 20 2f 2f 20 41 20 70 6f  D Bone); // A po
3bd0: 69 6e 74 65 72 20 74 6f 20 61 6e 20 69 6e 74 65  inter to an inte
3be0: 72 6e 61 6c 20 6d 61 74 72 69 78 20 69 73 20 72  rnal matrix is r
3bf0: 65 74 75 72 6e 65 64 2e 20 44 6f 20 6e 6f 74 20  eturned. Do not 
3c00: 66 72 65 65 20 74 68 69 73 2e 0d 0a 0d 0a 20 20  free this.....  
3c10: 20 20 2f 2f 20 43 6c 6f 6e 65 20 61 20 73 6b 69    // Clone a ski
3c20: 6e 20 69 6e 66 6f 20 6f 62 6a 65 63 74 0d 0a 20  n info object.. 
3c30: 20 20 20 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65     HRESULT Clone
3c40: 28 49 44 33 44 58 53 6b 69 6e 49 6e 66 6f 2a 20  (ID3DXSkinInfo* 
3c50: 70 70 53 6b 69 6e 49 6e 66 6f 29 3b 0d 0a 0d 0a  ppSkinInfo);....
3c60: 20 20 20 20 2f 2f 20 55 70 64 61 74 65 20 62 6f      // Update bo
3c70: 6e 65 20 69 6e 66 6c 75 65 6e 63 65 20 69 6e 66  ne influence inf
3c80: 6f 72 6d 61 74 69 6f 6e 20 74 6f 20 6d 61 74 63  ormation to matc
3c90: 68 20 76 65 72 74 69 63 65 73 20 61 66 74 65 72  h vertices after
3ca0: 20 74 68 65 79 20 61 72 65 20 72 65 6f 72 64 65   they are reorde
3cb0: 72 65 64 2e 20 54 68 69 73 20 73 68 6f 75 6c 64  red. This should
3cc0: 20 62 65 20 63 61 6c 6c 65 64 0d 0a 20 20 20 20   be called..    
3cd0: 2f 2f 20 69 66 20 74 68 65 20 74 61 72 67 65 74  // if the target
3ce0: 20 76 65 72 74 65 78 20 62 75 66 66 65 72 20 68   vertex buffer h
3cf0: 61 73 20 62 65 65 6e 20 72 65 6f 72 64 65 72 65  as been reordere
3d00: 64 20 65 78 74 65 72 6e 61 6c 6c 79 2e 0d 0a 20  d externally... 
3d10: 20 20 20 48 52 45 53 55 4c 54 20 52 65 6d 61 70     HRESULT Remap
3d20: 28 44 57 4f 52 44 20 4e 75 6d 56 65 72 74 69 63  (DWORD NumVertic
3d30: 65 73 2c 20 44 57 4f 52 44 2a 20 70 56 65 72 74  es, DWORD* pVert
3d40: 65 78 52 65 6d 61 70 29 3b 0d 0a 0d 0a 20 20 20  exRemap);....   
3d50: 20 2f 2f 20 54 68 65 73 65 20 6d 65 74 68 6f 64   // These method
3d60: 73 20 65 6e 61 62 6c 65 20 74 68 65 20 6d 6f 64  s enable the mod
3d70: 69 66 69 63 61 74 69 6f 6e 20 6f 66 20 74 68 65  ification of the
3d80: 20 76 65 72 74 65 78 20 6c 61 79 6f 75 74 20 6f   vertex layout o
3d90: 66 20 74 68 65 20 76 65 72 74 69 63 65 73 20 74  f the vertices t
3da0: 68 61 74 20 77 69 6c 6c 20 62 65 20 73 6b 69 6e  hat will be skin
3db0: 6e 65 64 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ned..    HRESULT
3dc0: 20 53 65 74 46 56 46 28 44 57 4f 52 44 20 46 56   SetFVF(DWORD FV
3dd0: 46 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  F);..    HRESULT
3de0: 20 53 65 74 44 65 63 6c 61 72 61 74 69 6f 6e 28   SetDeclaration(
3df0: 44 33 44 56 45 52 54 45 58 45 4c 45 4d 45 4e 54  D3DVERTEXELEMENT
3e00: 39 20 2a 70 44 65 63 6c 61 72 61 74 69 6f 6e 29  9 *pDeclaration)
3e10: 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74  ;..    DWORD Get
3e20: 46 56 46 28 29 3b 0d 0a 20 20 20 20 48 52 45 53  FVF();..    HRES
3e30: 55 4c 54 20 47 65 74 44 65 63 6c 61 72 61 74 69  ULT GetDeclarati
3e40: 6f 6e 28 44 33 44 56 45 52 54 45 58 45 4c 45 4d  on(D3DVERTEXELEM
3e50: 45 4e 54 39 5b 4d 41 58 5f 46 56 46 5f 44 45 43  ENT9[MAX_FVF_DEC
3e60: 4c 5f 53 49 5a 45 5d 20 44 65 63 6c 61 72 61 74  L_SIZE] Declarat
3e70: 69 6f 6e 29 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20  ion);....    // 
3e80: 41 70 70 6c 79 20 53 57 20 73 6b 69 6e 6e 69 6e  Apply SW skinnin
3e90: 67 20 62 61 73 65 64 20 6f 6e 20 63 75 72 72 65  g based on curre
3ea0: 6e 74 20 70 6f 73 65 20 6d 61 74 72 69 63 65 73  nt pose matrices
3eb0: 20 74 6f 20 74 68 65 20 74 61 72 67 65 74 20 76   to the target v
3ec0: 65 72 74 69 63 65 73 2e 0d 0a 20 20 20 20 48 52  ertices...    HR
3ed0: 45 53 55 4c 54 20 55 70 64 61 74 65 53 6b 69 6e  ESULT UpdateSkin
3ee0: 6e 65 64 4d 65 73 68 28 0d 0a 20 20 20 20 20 20  nedMesh(..      
3ef0: 20 20 44 33 44 58 4d 41 54 52 49 58 2a 20 70 42    D3DXMATRIX* pB
3f00: 6f 6e 65 54 72 61 6e 73 66 6f 72 6d 73 2c 0d 0a  oneTransforms,..
3f10: 20 20 20 20 20 20 20 20 44 33 44 58 4d 41 54 52          D3DXMATR
3f20: 49 58 2a 20 70 42 6f 6e 65 49 6e 76 54 72 61 6e  IX* pBoneInvTran
3f30: 73 70 6f 73 65 54 72 61 6e 73 66 6f 72 6d 73 2c  sposeTransforms,
3f40: 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 56 4f 49  ..        LPCVOI
3f50: 44 20 70 56 65 72 74 69 63 65 73 53 72 63 2c 0d  D pVerticesSrc,.
3f60: 0a 20 20 20 20 20 20 20 20 50 56 4f 49 44 20 70  .        PVOID p
3f70: 56 65 72 74 69 63 65 73 44 73 74 29 3b 0d 0a 0d  VerticesDst);...
3f80: 0a 20 20 20 20 2f 2f 20 54 61 6b 65 73 20 61 20  .    // Takes a 
3f90: 6d 65 73 68 20 61 6e 64 20 72 65 74 75 72 6e 73  mesh and returns
3fa0: 20 61 20 6e 65 77 20 6d 65 73 68 20 77 69 74 68   a new mesh with
3fb0: 20 70 65 72 20 76 65 72 74 65 78 20 62 6c 65 6e   per vertex blen
3fc0: 64 20 77 65 69 67 68 74 73 20 61 6e 64 20 61 20  d weights and a 
3fd0: 62 6f 6e 65 20 63 6f 6d 62 69 6e 61 74 69 6f 6e  bone combination
3fe0: 0d 0a 20 20 20 20 2f 2f 20 74 61 62 6c 65 20 74  ..    // table t
3ff0: 68 61 74 20 64 65 73 63 72 69 62 65 73 20 77 68  hat describes wh
4000: 69 63 68 20 62 6f 6e 65 73 20 61 66 66 65 63 74  ich bones affect
4010: 20 77 68 69 63 68 20 73 75 62 73 65 74 73 20 6f   which subsets o
4020: 66 20 74 68 65 20 6d 65 73 68 0d 0a 20 20 20 20  f the mesh..    
4030: 48 52 45 53 55 4c 54 20 43 6f 6e 76 65 72 74 54  HRESULT ConvertT
4040: 6f 42 6c 65 6e 64 65 64 4d 65 73 68 28 0d 0a 20  oBlendedMesh(.. 
4050: 20 20 20 20 20 20 20 49 44 33 44 58 4d 65 73 68         ID3DXMesh
4060: 20 70 4d 65 73 68 2c 0d 0a 20 20 20 20 20 20 20   pMesh,..       
4070: 20 44 57 4f 52 44 20 4f 70 74 69 6f 6e 73 2c 0d   DWORD Options,.
4080: 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 2a  .        DWORD *
4090: 70 41 64 6a 61 63 65 6e 63 79 49 6e 2c 0d 0a 20  pAdjacencyIn,.. 
40a0: 20 20 20 20 20 20 20 4c 50 44 57 4f 52 44 20 70         LPDWORD p
40b0: 41 64 6a 61 63 65 6e 63 79 4f 75 74 2c 0d 0a 20  AdjacencyOut,.. 
40c0: 20 20 20 20 20 20 20 44 57 4f 52 44 2a 20 70 46         DWORD* pF
40d0: 61 63 65 52 65 6d 61 70 2c 0d 0a 20 20 20 20 20  aceRemap,..     
40e0: 20 20 20 49 44 33 44 58 42 75 66 66 65 72 2a 20     ID3DXBuffer* 
40f0: 70 70 56 65 72 74 65 78 52 65 6d 61 70 2c 0d 0a  ppVertexRemap,..
4100: 20 20 20 20 20 20 20 20 44 57 4f 52 44 2a 20 70          DWORD* p
4110: 4d 61 78 46 61 63 65 49 6e 66 6c 2c 0d 0a 20 20  MaxFaceInfl,..  
4120: 20 20 20 20 20 20 44 57 4f 52 44 2a 20 70 4e 75        DWORD* pNu
4130: 6d 42 6f 6e 65 43 6f 6d 62 69 6e 61 74 69 6f 6e  mBoneCombination
4140: 73 2c 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44  s,..        ID3D
4150: 58 42 75 66 66 65 72 2a 20 70 70 42 6f 6e 65 43  XBuffer* ppBoneC
4160: 6f 6d 62 69 6e 61 74 69 6f 6e 54 61 62 6c 65 2c  ombinationTable,
4170: 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44 58 4d  ..        ID3DXM
4180: 65 73 68 2a 20 70 70 4d 65 73 68 29 3b 0d 0a 0d  esh* ppMesh);...
4190: 0a 20 20 20 20 2f 2f 20 54 61 6b 65 73 20 61 20  .    // Takes a 
41a0: 6d 65 73 68 20 61 6e 64 20 72 65 74 75 72 6e 73  mesh and returns
41b0: 20 61 20 6e 65 77 20 6d 65 73 68 20 77 69 74 68   a new mesh with
41c0: 20 70 65 72 20 76 65 72 74 65 78 20 62 6c 65 6e   per vertex blen
41d0: 64 20 77 65 69 67 68 74 73 20 61 6e 64 20 69 6e  d weights and in
41e0: 64 69 63 65 73 0d 0a 20 20 20 20 2f 2f 20 61 6e  dices..    // an
41f0: 64 20 61 20 62 6f 6e 65 20 63 6f 6d 62 69 6e 61  d a bone combina
4200: 74 69 6f 6e 20 74 61 62 6c 65 20 74 68 61 74 20  tion table that 
4210: 64 65 73 63 72 69 62 65 73 20 77 68 69 63 68 20  describes which 
4220: 62 6f 6e 65 73 20 70 61 6c 65 74 74 65 73 20 61  bones palettes a
4230: 66 66 65 63 74 20 77 68 69 63 68 20 73 75 62 73  ffect which subs
4240: 65 74 73 20 6f 66 20 74 68 65 20 6d 65 73 68 0d  ets of the mesh.
4250: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43 6f 6e  .    HRESULT Con
4260: 76 65 72 74 54 6f 49 6e 64 65 78 65 64 42 6c 65  vertToIndexedBle
4270: 6e 64 65 64 4d 65 73 68 28 0d 0a 20 20 20 20 20  ndedMesh(..     
4280: 20 20 20 49 44 33 44 58 4d 65 73 68 20 70 4d 65     ID3DXMesh pMe
4290: 73 68 2c 0d 0a 20 20 20 20 20 20 20 20 44 57 4f  sh,..        DWO
42a0: 52 44 20 4f 70 74 69 6f 6e 73 2c 0d 0a 20 20 20  RD Options,..   
42b0: 20 20 20 20 20 44 57 4f 52 44 20 70 61 6c 65 74       DWORD palet
42c0: 74 65 53 69 7a 65 2c 0d 0a 20 20 20 20 20 20 20  teSize,..       
42d0: 20 44 57 4f 52 44 20 2a 70 41 64 6a 61 63 65 6e   DWORD *pAdjacen
42e0: 63 79 49 6e 2c 0d 0a 20 20 20 20 20 20 20 20 4c  cyIn,..        L
42f0: 50 44 57 4f 52 44 20 70 41 64 6a 61 63 65 6e 63  PDWORD pAdjacenc
4300: 79 4f 75 74 2c 0d 0a 20 20 20 20 20 20 20 20 44  yOut,..        D
4310: 57 4f 52 44 2a 20 70 46 61 63 65 52 65 6d 61 70  WORD* pFaceRemap
4320: 2c 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44 58  ,..        ID3DX
4330: 42 75 66 66 65 72 2a 20 70 70 56 65 72 74 65 78  Buffer* ppVertex
4340: 52 65 6d 61 70 2c 0d 0a 20 20 20 20 20 20 20 20  Remap,..        
4350: 44 57 4f 52 44 2a 20 70 4d 61 78 56 65 72 74 65  DWORD* pMaxVerte
4360: 78 49 6e 66 6c 2c 0d 0a 09 09 44 57 4f 52 44 20  xInfl,....DWORD 
4370: 2a 70 4e 75 6d 42 6f 6e 65 43 6f 6d 62 69 6e 61  *pNumBoneCombina
4380: 74 69 6f 6e 73 2c 0d 0a 20 20 20 20 20 20 20 20  tions,..        
4390: 49 44 33 44 58 42 75 66 66 65 72 2a 20 70 70 42  ID3DXBuffer* ppB
43a0: 6f 6e 65 43 6f 6d 62 69 6e 61 74 69 6f 6e 54 61  oneCombinationTa
43b0: 62 6c 65 2c 0d 0a 20 20 20 20 20 20 20 20 49 44  ble,..        ID
43c0: 33 44 58 4d 65 73 68 2a 20 70 70 4d 65 73 68 29  3DXMesh* ppMesh)
43d0: 3b 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 63  ;..}....interfac
43e0: 65 20 49 44 33 44 58 42 61 73 65 4d 65 73 68 20  e ID3DXBaseMesh 
43f0: 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20  : IUnknown..{.. 
4400: 20 20 20 65 78 74 65 72 6e 28 57 69 6e 64 6f 77     extern(Window
4410: 73 29 3a 0d 0a 0d 0a 20 20 20 20 2f 2f 20 49 44  s):....    // ID
4420: 33 44 58 42 61 73 65 4d 65 73 68 0d 0a 20 20 20  3DXBaseMesh..   
4430: 20 48 52 45 53 55 4c 54 20 44 72 61 77 53 75 62   HRESULT DrawSub
4440: 73 65 74 28 20 44 57 4f 52 44 20 41 74 74 72 69  set( DWORD Attri
4450: 62 49 64 29 20 3b 0d 0a 20 20 20 20 44 57 4f 52  bId) ;..    DWOR
4460: 44 20 47 65 74 4e 75 6d 46 61 63 65 73 28 29 20  D GetNumFaces() 
4470: 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74  ;..    DWORD Get
4480: 4e 75 6d 56 65 72 74 69 63 65 73 28 29 20 3b 0d  NumVertices() ;.
4490: 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74 46 56  .    DWORD GetFV
44a0: 46 28 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55  F() ;..    HRESU
44b0: 4c 54 20 47 65 74 44 65 63 6c 61 72 61 74 69 6f  LT GetDeclaratio
44c0: 6e 28 20 44 33 44 56 45 52 54 45 58 45 4c 45 4d  n( D3DVERTEXELEM
44d0: 45 4e 54 39 5b 4d 41 58 5f 46 56 46 5f 44 45 43  ENT9[MAX_FVF_DEC
44e0: 4c 5f 53 49 5a 45 5d 20 44 65 63 6c 61 72 61 74  L_SIZE] Declarat
44f0: 69 6f 6e 29 20 3b 0d 0a 20 20 20 20 44 57 4f 52  ion) ;..    DWOR
4500: 44 20 47 65 74 4e 75 6d 42 79 74 65 73 50 65 72  D GetNumBytesPer
4510: 56 65 72 74 65 78 28 29 20 3b 0d 0a 20 20 20 20  Vertex() ;..    
4520: 44 57 4f 52 44 20 47 65 74 4f 70 74 69 6f 6e 73  DWORD GetOptions
4530: 28 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  () ;..    HRESUL
4540: 54 20 47 65 74 44 65 76 69 63 65 28 20 49 44 69  T GetDevice( IDi
4550: 72 65 63 74 33 44 44 65 76 69 63 65 39 2a 20 70  rect3DDevice9* p
4560: 70 44 65 76 69 63 65 29 20 3b 0d 0a 20 20 20 20  pDevice) ;..    
4570: 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65 4d 65 73  HRESULT CloneMes
4580: 68 46 56 46 28 20 44 57 4f 52 44 20 4f 70 74 69  hFVF( DWORD Opti
4590: 6f 6e 73 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  ons,..          
45a0: 20 20 20 20 20 20 44 57 4f 52 44 20 46 56 46 2c        DWORD FVF,
45b0: 20 49 44 69 72 65 63 74 33 44 44 65 76 69 63 65   IDirect3DDevice
45c0: 39 20 70 44 33 44 44 65 76 69 63 65 2c 20 49 44  9 pD3DDevice, ID
45d0: 33 44 58 4d 65 73 68 2a 20 70 70 43 6c 6f 6e 65  3DXMesh* ppClone
45e0: 4d 65 73 68 29 20 3b 0d 0a 20 20 20 20 48 52 45  Mesh) ;..    HRE
45f0: 53 55 4c 54 20 43 6c 6f 6e 65 4d 65 73 68 28 20  SULT CloneMesh( 
4600: 44 57 4f 52 44 20 4f 70 74 69 6f 6e 73 2c 0d 0a  DWORD Options,..
4610: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4620: 20 44 33 44 56 45 52 54 45 58 45 4c 45 4d 45 4e   D3DVERTEXELEMEN
4630: 54 39 20 2a 70 44 65 63 6c 61 72 61 74 69 6f 6e  T9 *pDeclaration
4640: 2c 20 49 44 69 72 65 63 74 33 44 44 65 76 69 63  , IDirect3DDevic
4650: 65 39 20 70 44 33 44 44 65 76 69 63 65 2c 20 49  e9 pD3DDevice, I
4660: 44 33 44 58 4d 65 73 68 2a 20 70 70 43 6c 6f 6e  D3DXMesh* ppClon
4670: 65 4d 65 73 68 29 20 3b 0d 0a 20 20 20 20 48 52  eMesh) ;..    HR
4680: 45 53 55 4c 54 20 47 65 74 56 65 72 74 65 78 42  ESULT GetVertexB
4690: 75 66 66 65 72 28 20 49 44 69 72 65 63 74 33 44  uffer( IDirect3D
46a0: 56 65 72 74 65 78 42 75 66 66 65 72 39 2a 20 70  VertexBuffer9* p
46b0: 70 56 42 29 20 3b 0d 0a 20 20 20 20 48 52 45 53  pVB) ;..    HRES
46c0: 55 4c 54 20 47 65 74 49 6e 64 65 78 42 75 66 66  ULT GetIndexBuff
46d0: 65 72 28 20 49 44 69 72 65 63 74 33 44 49 6e 64  er( IDirect3DInd
46e0: 65 78 42 75 66 66 65 72 39 2a 20 70 70 49 42 29  exBuffer9* ppIB)
46f0: 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20   ;..    HRESULT 
4700: 4c 6f 63 6b 56 65 72 74 65 78 42 75 66 66 65 72  LockVertexBuffer
4710: 28 20 44 57 4f 52 44 20 46 6c 61 67 73 2c 20 4c  ( DWORD Flags, L
4720: 50 56 4f 49 44 20 2a 70 70 44 61 74 61 29 20 3b  PVOID *ppData) ;
4730: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 55 6e  ..    HRESULT Un
4740: 6c 6f 63 6b 56 65 72 74 65 78 42 75 66 66 65 72  lockVertexBuffer
4750: 28 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  () ;..    HRESUL
4760: 54 20 4c 6f 63 6b 49 6e 64 65 78 42 75 66 66 65  T LockIndexBuffe
4770: 72 28 20 44 57 4f 52 44 20 46 6c 61 67 73 2c 20  r( DWORD Flags, 
4780: 4c 50 56 4f 49 44 20 2a 70 70 44 61 74 61 29 20  LPVOID *ppData) 
4790: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 55  ;..    HRESULT U
47a0: 6e 6c 6f 63 6b 49 6e 64 65 78 42 75 66 66 65 72  nlockIndexBuffer
47b0: 28 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  () ;..    HRESUL
47c0: 54 20 47 65 74 41 74 74 72 69 62 75 74 65 54 61  T GetAttributeTa
47d0: 62 6c 65 28 0d 0a 20 20 20 20 20 20 20 20 20 20  ble(..          
47e0: 20 20 20 20 20 20 20 44 33 44 58 41 54 54 52 49         D3DXATTRI
47f0: 42 55 54 45 52 41 4e 47 45 20 2a 70 41 74 74 72  BUTERANGE *pAttr
4800: 69 62 54 61 62 6c 65 2c 20 44 57 4f 52 44 2a 20  ibTable, DWORD* 
4810: 70 41 74 74 72 69 62 54 61 62 6c 65 53 69 7a 65  pAttribTableSize
4820: 29 20 3b 0d 0a 0d 0a 20 20 20 20 48 52 45 53 55  ) ;....    HRESU
4830: 4c 54 20 43 6f 6e 76 65 72 74 50 6f 69 6e 74 52  LT ConvertPointR
4840: 65 70 73 54 6f 41 64 6a 61 63 65 6e 63 79 28 20  epsToAdjacency( 
4850: 20 44 57 4f 52 44 2a 20 70 50 52 65 70 2c 20 44   DWORD* pPRep, D
4860: 57 4f 52 44 2a 20 70 41 64 6a 61 63 65 6e 63 79  WORD* pAdjacency
4870: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
4880: 20 43 6f 6e 76 65 72 74 41 64 6a 61 63 65 6e 63   ConvertAdjacenc
4890: 79 54 6f 50 6f 69 6e 74 52 65 70 73 28 20 20 44  yToPointReps(  D
48a0: 57 4f 52 44 2a 20 70 41 64 6a 61 63 65 6e 63 79  WORD* pAdjacency
48b0: 2c 20 44 57 4f 52 44 2a 20 70 50 52 65 70 29 20  , DWORD* pPRep) 
48c0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47  ;..    HRESULT G
48d0: 65 6e 65 72 61 74 65 41 64 6a 61 63 65 6e 63 79  enerateAdjacency
48e0: 28 20 46 4c 4f 41 54 20 45 70 73 69 6c 6f 6e 2c  ( FLOAT Epsilon,
48f0: 20 44 57 4f 52 44 2a 20 70 41 64 6a 61 63 65 6e   DWORD* pAdjacen
4900: 63 79 29 20 3b 0d 0a 0d 0a 20 20 20 20 48 52 45  cy) ;....    HRE
4910: 53 55 4c 54 20 55 70 64 61 74 65 53 65 6d 61 6e  SULT UpdateSeman
4920: 74 69 63 73 28 20 44 33 44 56 45 52 54 45 58 45  tics( D3DVERTEXE
4930: 4c 45 4d 45 4e 54 39 5b 4d 41 58 5f 46 56 46 5f  LEMENT9[MAX_FVF_
4940: 44 45 43 4c 5f 53 49 5a 45 5d 20 44 65 63 6c 61  DECL_SIZE] Decla
4950: 72 61 74 69 6f 6e 29 20 3b 0d 0a 7d 0d 0a 0d 0a  ration) ;..}....
4960: 69 6e 74 65 72 66 61 63 65 20 49 44 33 44 58 4d  interface ID3DXM
4970: 65 73 68 20 3a 20 49 44 33 44 58 42 61 73 65 4d  esh : ID3DXBaseM
4980: 65 73 68 0d 0a 7b 0d 0a 20 20 20 20 65 78 74 65  esh..{..    exte
4990: 72 6e 28 57 69 6e 64 6f 77 73 29 3a 0d 0a 0d 0a  rn(Windows):....
49a0: 20 20 20 20 2f 2f 20 49 44 33 44 58 4d 65 73 68      // ID3DXMesh
49b0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4c 6f  ..    HRESULT Lo
49c0: 63 6b 41 74 74 72 69 62 75 74 65 42 75 66 66 65  ckAttributeBuffe
49d0: 72 28 20 44 57 4f 52 44 20 46 6c 61 67 73 2c 20  r( DWORD Flags, 
49e0: 44 57 4f 52 44 2a 2a 20 70 70 44 61 74 61 29 20  DWORD** ppData) 
49f0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 55  ;..    HRESULT U
4a00: 6e 6c 6f 63 6b 41 74 74 72 69 62 75 74 65 42 75  nlockAttributeBu
4a10: 66 66 65 72 28 29 20 3b 0d 0a 20 20 20 20 48 52  ffer() ;..    HR
4a20: 45 53 55 4c 54 20 4f 70 74 69 6d 69 7a 65 28 20  ESULT Optimize( 
4a30: 44 57 4f 52 44 20 46 6c 61 67 73 2c 20 20 44 57  DWORD Flags,  DW
4a40: 4f 52 44 2a 20 70 41 64 6a 61 63 65 6e 63 79 49  ORD* pAdjacencyI
4a50: 6e 2c 20 44 57 4f 52 44 2a 20 70 41 64 6a 61 63  n, DWORD* pAdjac
4a60: 65 6e 63 79 4f 75 74 2c 0d 0a 20 20 20 20 20 20  encyOut,..      
4a70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44                 D
4a80: 57 4f 52 44 2a 20 70 46 61 63 65 52 65 6d 61 70  WORD* pFaceRemap
4a90: 2c 20 49 44 33 44 58 42 75 66 66 65 72 20 2a 70  , ID3DXBuffer *p
4aa0: 70 56 65 72 74 65 78 52 65 6d 61 70 2c 0d 0a 20  pVertexRemap,.. 
4ab0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
4ac0: 20 20 20 20 49 44 33 44 58 4d 65 73 68 2a 20 70      ID3DXMesh* p
4ad0: 70 4f 70 74 4d 65 73 68 29 20 3b 0d 0a 20 20 20  pOptMesh) ;..   
4ae0: 20 48 52 45 53 55 4c 54 20 4f 70 74 69 6d 69 7a   HRESULT Optimiz
4af0: 65 49 6e 70 6c 61 63 65 28 20 44 57 4f 52 44 20  eInplace( DWORD 
4b00: 46 6c 61 67 73 2c 20 20 44 57 4f 52 44 2a 20 70  Flags,  DWORD* p
4b10: 41 64 6a 61 63 65 6e 63 79 49 6e 2c 20 44 57 4f  AdjacencyIn, DWO
4b20: 52 44 2a 20 70 41 64 6a 61 63 65 6e 63 79 4f 75  RD* pAdjacencyOu
4b30: 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  t,..            
4b40: 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 2a 20           DWORD* 
4b50: 70 46 61 63 65 52 65 6d 61 70 2c 20 49 44 33 44  pFaceRemap, ID3D
4b60: 58 42 75 66 66 65 72 20 2a 70 70 56 65 72 74 65  XBuffer *ppVerte
4b70: 78 52 65 6d 61 70 29 20 3b 0d 0a 20 20 20 20 48  xRemap) ;..    H
4b80: 52 45 53 55 4c 54 20 53 65 74 41 74 74 72 69 62  RESULT SetAttrib
4b90: 75 74 65 54 61 62 6c 65 28 20 20 44 33 44 58 41  uteTable(  D3DXA
4ba0: 54 54 52 49 42 55 54 45 52 41 4e 47 45 20 2a 70  TTRIBUTERANGE *p
4bb0: 41 74 74 72 69 62 54 61 62 6c 65 2c 20 44 57 4f  AttribTable, DWO
4bc0: 52 44 20 63 41 74 74 72 69 62 54 61 62 6c 65 53  RD cAttribTableS
4bd0: 69 7a 65 29 20 3b 0d 0a 7d 0d 0a 0d 0a 69 6e 74  ize) ;..}....int
4be0: 65 72 66 61 63 65 20 49 44 33 44 58 42 75 66 66  erface ID3DXBuff
4bf0: 65 72 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b  er : IUnknown..{
4c00: 0d 0a 20 20 20 20 65 78 74 65 72 6e 28 57 69 6e  ..    extern(Win
4c10: 64 6f 77 73 29 3a 0d 0a 0d 0a 20 20 20 20 2f 2f  dows):....    //
4c20: 20 49 44 33 44 58 42 75 66 66 65 72 0d 0a 20 20   ID3DXBuffer..  
4c30: 20 20 4c 50 56 4f 49 44 20 47 65 74 42 75 66 66    LPVOID GetBuff
4c40: 65 72 50 6f 69 6e 74 65 72 28 29 3b 0d 0a 20 20  erPointer();..  
4c50: 20 20 44 57 4f 52 44 20 47 65 74 42 75 66 66 65    DWORD GetBuffe
4c60: 72 53 69 7a 65 28 29 3b 0d 0a 7d 0d 0a 0d 0a 69  rSize();..}....i
4c70: 6e 74 65 72 66 61 63 65 20 49 44 33 44 58 50 4d  nterface ID3DXPM
4c80: 65 73 68 20 3a 20 49 44 33 44 58 42 61 73 65 4d  esh : ID3DXBaseM
4c90: 65 73 68 0d 0a 7b 0d 0a 20 20 20 20 65 78 74 65  esh..{..    exte
4ca0: 72 6e 28 57 69 6e 64 6f 77 73 29 3a 0d 0a 0d 0a  rn(Windows):....
4cb0: 20 20 20 20 2f 2f 20 49 44 33 44 58 50 4d 65 73      // ID3DXPMes
4cc0: 68 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43  h..    HRESULT C
4cd0: 6c 6f 6e 65 50 4d 65 73 68 46 56 46 28 20 44 57  lonePMeshFVF( DW
4ce0: 4f 52 44 20 4f 70 74 69 6f 6e 73 2c 0d 0a 20 20  ORD Options,..  
4cf0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 57                DW
4d00: 4f 52 44 20 46 56 46 2c 20 49 44 69 72 65 63 74  ORD FVF, IDirect
4d10: 33 44 44 65 76 69 63 65 39 20 70 44 33 44 44 65  3DDevice9 pD3DDe
4d20: 76 69 63 65 2c 20 49 44 33 44 58 50 4d 65 73 68  vice, ID3DXPMesh
4d30: 2a 20 70 70 43 6c 6f 6e 65 4d 65 73 68 29 20 3b  * ppCloneMesh) ;
4d40: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43 6c  ..    HRESULT Cl
4d50: 6f 6e 65 50 4d 65 73 68 28 20 44 57 4f 52 44 20  onePMesh( DWORD 
4d60: 4f 70 74 69 6f 6e 73 2c 0d 0a 20 20 20 20 20 20  Options,..      
4d70: 20 20 20 20 20 20 20 20 20 20 20 44 33 44 56 45             D3DVE
4d80: 52 54 45 58 45 4c 45 4d 45 4e 54 39 20 2a 70 44  RTEXELEMENT9 *pD
4d90: 65 63 6c 61 72 61 74 69 6f 6e 2c 20 49 44 69 72  eclaration, IDir
4da0: 65 63 74 33 44 44 65 76 69 63 65 39 20 70 44 33  ect3DDevice9 pD3
4db0: 44 44 65 76 69 63 65 2c 20 49 44 33 44 58 50 4d  DDevice, ID3DXPM
4dc0: 65 73 68 2a 20 70 70 43 6c 6f 6e 65 4d 65 73 68  esh* ppCloneMesh
4dd0: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
4de0: 20 53 65 74 4e 75 6d 46 61 63 65 73 28 20 44 57   SetNumFaces( DW
4df0: 4f 52 44 20 46 61 63 65 73 29 20 3b 0d 0a 20 20  ORD Faces) ;..  
4e00: 20 20 48 52 45 53 55 4c 54 20 53 65 74 4e 75 6d    HRESULT SetNum
4e10: 56 65 72 74 69 63 65 73 28 20 44 57 4f 52 44 20  Vertices( DWORD 
4e20: 56 65 72 74 69 63 65 73 29 20 3b 0d 0a 20 20 20  Vertices) ;..   
4e30: 20 44 57 4f 52 44 20 47 65 74 4d 61 78 46 61 63   DWORD GetMaxFac
4e40: 65 73 28 29 20 3b 0d 0a 20 20 20 20 44 57 4f 52  es() ;..    DWOR
4e50: 44 20 47 65 74 4d 69 6e 46 61 63 65 73 28 29 20  D GetMinFaces() 
4e60: 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74  ;..    DWORD Get
4e70: 4d 61 78 56 65 72 74 69 63 65 73 28 29 20 3b 0d  MaxVertices() ;.
4e80: 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74 4d 69  .    DWORD GetMi
4e90: 6e 56 65 72 74 69 63 65 73 28 29 20 3b 0d 0a 20  nVertices() ;.. 
4ea0: 20 20 20 48 52 45 53 55 4c 54 20 53 61 76 65 28     HRESULT Save(
4eb0: 20 76 6f 69 64 20 2a 70 53 74 72 65 61 6d 2c 20   void *pStream, 
4ec0: 20 44 33 44 58 4d 41 54 45 52 49 41 4c 2a 20 70   D3DXMATERIAL* p
4ed0: 4d 61 74 65 72 69 61 6c 73 2c 20 20 44 33 44 58  Materials,  D3DX
4ee0: 45 46 46 45 43 54 49 4e 53 54 41 4e 43 45 2a 20  EFFECTINSTANCE* 
4ef0: 70 45 66 66 65 63 74 49 6e 73 74 61 6e 63 65 73  pEffectInstances
4f00: 2c 20 44 57 4f 52 44 20 4e 75 6d 4d 61 74 65 72  , DWORD NumMater
4f10: 69 61 6c 73 29 20 3b 0d 0a 0d 0a 20 20 20 20 48  ials) ;....    H
4f20: 52 45 53 55 4c 54 20 4f 70 74 69 6d 69 7a 65 28  RESULT Optimize(
4f30: 20 44 57 4f 52 44 20 46 6c 61 67 73 2c 20 44 57   DWORD Flags, DW
4f40: 4f 52 44 2a 20 70 41 64 6a 61 63 65 6e 63 79 4f  ORD* pAdjacencyO
4f50: 75 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ut,..           
4f60: 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 2a            DWORD*
4f70: 20 70 46 61 63 65 52 65 6d 61 70 2c 20 49 44 33   pFaceRemap, ID3
4f80: 44 58 42 75 66 66 65 72 20 2a 70 70 56 65 72 74  DXBuffer *ppVert
4f90: 65 78 52 65 6d 61 70 2c 0d 0a 20 20 20 20 20 20  exRemap,..      
4fa0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49                 I
4fb0: 44 33 44 58 4d 65 73 68 2a 20 70 70 4f 70 74 4d  D3DXMesh* ppOptM
4fc0: 65 73 68 29 20 3b 0d 0a 0d 0a 20 20 20 20 48 52  esh) ;....    HR
4fd0: 45 53 55 4c 54 20 4f 70 74 69 6d 69 7a 65 42 61  ESULT OptimizeBa
4fe0: 73 65 4c 4f 44 28 20 44 57 4f 52 44 20 46 6c 61  seLOD( DWORD Fla
4ff0: 67 73 2c 20 44 57 4f 52 44 2a 20 70 46 61 63 65  gs, DWORD* pFace
5000: 52 65 6d 61 70 29 20 3b 0d 0a 20 20 20 20 48 52  Remap) ;..    HR
5010: 45 53 55 4c 54 20 54 72 69 6d 42 79 46 61 63 65  ESULT TrimByFace
5020: 73 28 20 44 57 4f 52 44 20 4e 65 77 46 61 63 65  s( DWORD NewFace
5030: 73 4d 69 6e 2c 20 44 57 4f 52 44 20 4e 65 77 46  sMin, DWORD NewF
5040: 61 63 65 73 4d 61 78 2c 20 44 57 4f 52 44 20 2a  acesMax, DWORD *
5050: 72 67 69 46 61 63 65 52 65 6d 61 70 2c 20 44 57  rgiFaceRemap, DW
5060: 4f 52 44 20 2a 72 67 69 56 65 72 74 52 65 6d 61  ORD *rgiVertRema
5070: 70 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  p) ;..    HRESUL
5080: 54 20 54 72 69 6d 42 79 56 65 72 74 69 63 65 73  T TrimByVertices
5090: 28 20 44 57 4f 52 44 20 4e 65 77 56 65 72 74 69  ( DWORD NewVerti
50a0: 63 65 73 4d 69 6e 2c 20 44 57 4f 52 44 20 4e 65  cesMin, DWORD Ne
50b0: 77 56 65 72 74 69 63 65 73 4d 61 78 2c 20 44 57  wVerticesMax, DW
50c0: 4f 52 44 20 2a 72 67 69 46 61 63 65 52 65 6d 61  ORD *rgiFaceRema
50d0: 70 2c 20 44 57 4f 52 44 20 2a 72 67 69 56 65 72  p, DWORD *rgiVer
50e0: 74 52 65 6d 61 70 29 20 3b 0d 0a 0d 0a 20 20 20  tRemap) ;....   
50f0: 20 48 52 45 53 55 4c 54 20 47 65 74 41 64 6a 61   HRESULT GetAdja
5100: 63 65 6e 63 79 28 20 44 57 4f 52 44 2a 20 70 41  cency( DWORD* pA
5110: 64 6a 61 63 65 6e 63 79 29 20 3b 0d 0a 0d 0a 20  djacency) ;.... 
5120: 20 20 20 2f 2f 20 20 55 73 65 64 20 74 6f 20 67     //  Used to g
5130: 65 6e 65 72 61 74 65 20 74 68 65 20 69 6d 6d 65  enerate the imme
5140: 64 69 61 74 65 20 22 61 6e 63 65 73 74 6f 72 22  diate "ancestor"
5150: 20 66 6f 72 20 65 61 63 68 20 76 65 72 74 65 78   for each vertex
5160: 20 77 68 65 6e 20 69 74 20 69 73 20 72 65 6d 6f   when it is remo
5170: 76 65 64 20 62 79 20 61 20 76 73 70 6c 69 74 2e  ved by a vsplit.
5180: 20 20 41 6c 6c 6f 77 73 20 67 65 6e 65 72 61 74    Allows generat
5190: 69 6f 6e 20 6f 66 20 67 65 6f 6d 6f 72 70 68 73  ion of geomorphs
51a0: 0d 0a 20 20 20 20 2f 2f 20 20 20 20 20 56 65 72  ..    //     Ver
51b0: 74 65 78 20 62 75 66 66 65 72 20 6d 75 73 74 20  tex buffer must 
51c0: 62 65 20 65 71 75 61 6c 20 74 6f 20 6f 72 20 67  be equal to or g
51d0: 72 65 61 74 65 72 20 74 68 61 6e 20 74 68 65 20  reater than the 
51e0: 6d 61 78 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f  maximum number o
51f0: 66 20 76 65 72 74 69 63 65 73 20 69 6e 20 74 68  f vertices in th
5200: 65 20 70 6d 65 73 68 0d 0a 20 20 20 20 48 52 45  e pmesh..    HRE
5210: 53 55 4c 54 20 47 65 6e 65 72 61 74 65 56 65 72  SULT GenerateVer
5220: 74 65 78 48 69 73 74 6f 72 79 28 20 44 57 4f 52  texHistory( DWOR
5230: 44 2a 20 70 56 65 72 74 65 78 48 69 73 74 6f 72  D* pVertexHistor
5240: 79 29 20 3b 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72  y) ;..}....inter
5250: 66 61 63 65 20 49 44 33 44 58 50 61 74 63 68 4d  face ID3DXPatchM
5260: 65 73 68 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a  esh : IUnknown..
5270: 7b 0d 0a 20 20 20 20 65 78 74 65 72 6e 28 57 69  {..    extern(Wi
5280: 6e 64 6f 77 73 29 3a 0d 0a 0d 0a 20 20 20 20 2f  ndows):....    /
5290: 2f 20 49 44 33 44 58 50 61 74 63 68 4d 65 73 68  / ID3DXPatchMesh
52a0: 0d 0a 0d 0a 20 20 20 20 2f 2f 20 52 65 74 75 72  ....    // Retur
52b0: 6e 20 63 72 65 61 74 69 6f 6e 20 70 61 72 61 6d  n creation param
52c0: 65 74 65 72 73 0d 0a 20 20 20 20 44 57 4f 52 44  eters..    DWORD
52d0: 20 47 65 74 4e 75 6d 50 61 74 63 68 65 73 28 29   GetNumPatches()
52e0: 20 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 47 65   ;..    DWORD Ge
52f0: 74 4e 75 6d 56 65 72 74 69 63 65 73 28 29 20 3b  tNumVertices() ;
5300: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65  ..    HRESULT Ge
5310: 74 44 65 63 6c 61 72 61 74 69 6f 6e 28 20 44 33  tDeclaration( D3
5320: 44 56 45 52 54 45 58 45 4c 45 4d 45 4e 54 39 5b  DVERTEXELEMENT9[
5330: 4d 41 58 5f 46 56 46 5f 44 45 43 4c 5f 53 49 5a  MAX_FVF_DECL_SIZ
5340: 45 5d 20 44 65 63 6c 61 72 61 74 69 6f 6e 29 20  E] Declaration) 
5350: 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 47 65 74  ;..    DWORD Get
5360: 43 6f 6e 74 72 6f 6c 56 65 72 74 69 63 65 73 50  ControlVerticesP
5370: 65 72 50 61 74 63 68 28 29 20 3b 0d 0a 20 20 20  erPatch() ;..   
5380: 20 44 57 4f 52 44 20 47 65 74 4f 70 74 69 6f 6e   DWORD GetOption
5390: 73 28 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55  s() ;..    HRESU
53a0: 4c 54 20 47 65 74 44 65 76 69 63 65 28 20 49 44  LT GetDevice( ID
53b0: 69 72 65 63 74 33 44 44 65 76 69 63 65 39 20 2a  irect3DDevice9 *
53c0: 70 70 44 65 76 69 63 65 29 20 3b 0d 0a 20 20 20  ppDevice) ;..   
53d0: 20 48 52 45 53 55 4c 54 20 47 65 74 50 61 74 63   HRESULT GetPatc
53e0: 68 49 6e 66 6f 28 20 44 33 44 58 50 41 54 43 48  hInfo( D3DXPATCH
53f0: 49 4e 46 4f 2a 20 50 61 74 63 68 49 6e 66 6f 29  INFO* PatchInfo)
5400: 20 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 43 6f 6e   ;....    // Con
5410: 74 72 6f 6c 20 6d 65 73 68 20 61 63 63 65 73 73  trol mesh access
5420: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65  ..    HRESULT Ge
5430: 74 56 65 72 74 65 78 42 75 66 66 65 72 28 20 49  tVertexBuffer( I
5440: 44 69 72 65 63 74 33 44 56 65 72 74 65 78 42 75  Direct3DVertexBu
5450: 66 66 65 72 39 2a 20 70 70 56 42 29 20 3b 0d 0a  ffer9* ppVB) ;..
5460: 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 49      HRESULT GetI
5470: 6e 64 65 78 42 75 66 66 65 72 28 20 49 44 69 72  ndexBuffer( IDir
5480: 65 63 74 33 44 49 6e 64 65 78 42 75 66 66 65 72  ect3DIndexBuffer
5490: 39 2a 20 70 70 49 42 29 20 3b 0d 0a 20 20 20 20  9* ppIB) ;..    
54a0: 48 52 45 53 55 4c 54 20 4c 6f 63 6b 56 65 72 74  HRESULT LockVert
54b0: 65 78 42 75 66 66 65 72 28 20 44 57 4f 52 44 20  exBuffer( DWORD 
54c0: 66 6c 61 67 73 2c 20 4c 50 56 4f 49 44 20 2a 70  flags, LPVOID *p
54d0: 70 44 61 74 61 29 20 3b 0d 0a 20 20 20 20 48 52  pData) ;..    HR
54e0: 45 53 55 4c 54 20 55 6e 6c 6f 63 6b 56 65 72 74  ESULT UnlockVert
54f0: 65 78 42 75 66 66 65 72 28 29 20 3b 0d 0a 20 20  exBuffer() ;..  
5500: 20 20 48 52 45 53 55 4c 54 20 4c 6f 63 6b 49 6e    HRESULT LockIn
5510: 64 65 78 42 75 66 66 65 72 28 20 44 57 4f 52 44  dexBuffer( DWORD
5520: 20 66 6c 61 67 73 2c 20 4c 50 56 4f 49 44 20 2a   flags, LPVOID *
5530: 70 70 44 61 74 61 29 20 3b 0d 0a 20 20 20 20 48  ppData) ;..    H
5540: 52 45 53 55 4c 54 20 55 6e 6c 6f 63 6b 49 6e 64  RESULT UnlockInd
5550: 65 78 42 75 66 66 65 72 28 29 20 3b 0d 0a 20 20  exBuffer() ;..  
5560: 20 20 48 52 45 53 55 4c 54 20 4c 6f 63 6b 41 74    HRESULT LockAt
5570: 74 72 69 62 75 74 65 42 75 66 66 65 72 28 20 44  tributeBuffer( D
5580: 57 4f 52 44 20 66 6c 61 67 73 2c 20 44 57 4f 52  WORD flags, DWOR
5590: 44 2a 2a 20 70 70 44 61 74 61 29 20 3b 0d 0a 20  D** ppData) ;.. 
55a0: 20 20 20 48 52 45 53 55 4c 54 20 55 6e 6c 6f 63     HRESULT Unloc
55b0: 6b 41 74 74 72 69 62 75 74 65 42 75 66 66 65 72  kAttributeBuffer
55c0: 28 29 20 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 20  () ;....    //  
55d0: 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73  function returns
55e0: 20 74 68 65 20 73 69 7a 65 20 6f 66 20 74 68 65   the size of the
55f0: 20 74 65 73 73 65 6c 6c 61 74 65 64 20 6d 65 73   tessellated mes
5600: 68 20 67 69 76 65 6e 20 61 20 74 65 73 73 65 6c  h given a tessel
5610: 6c 61 74 69 6f 6e 20 6c 65 76 65 6c 2e 0d 0a 20  lation level... 
5620: 20 20 20 2f 2f 20 20 61 73 73 75 6d 65 73 20 75     //  assumes u
5630: 6e 69 66 6f 72 6d 20 74 65 73 73 65 6c 6c 61 74  niform tessellat
5640: 69 6f 6e 2e 20 46 6f 72 20 61 64 61 70 74 69 76  ion. For adaptiv
5650: 65 20 74 65 73 73 65 6c 6c 61 74 69 6f 6e 20 74  e tessellation t
5660: 68 65 20 41 64 61 70 74 69 76 65 20 70 61 72 61  he Adaptive para
5670: 6d 65 74 65 72 20 6d 75 73 74 0d 0a 20 20 20 20  meter must..    
5680: 2f 2f 20 62 65 20 73 65 74 20 74 6f 20 54 52 55  // be set to TRU
5690: 45 20 61 6e 64 20 54 65 73 73 65 6c 6c 61 74 69  E and Tessellati
56a0: 6f 6e 4c 65 76 65 6c 20 73 68 6f 75 6c 64 20 62  onLevel should b
56b0: 65 20 74 68 65 20 6d 61 78 20 74 65 73 73 65 6c  e the max tessel
56c0: 6c 61 74 69 6f 6e 2e 0d 0a 20 20 20 20 2f 2f 20  lation...    // 
56d0: 20 77 69 6c 6c 20 72 65 73 75 6c 74 20 69 6e 20   will result in 
56e0: 74 68 65 20 6d 61 78 20 6d 65 73 68 20 73 69 7a  the max mesh siz
56f0: 65 20 6e 65 63 65 73 73 61 72 79 20 66 6f 72 20  e necessary for 
5700: 61 64 61 70 74 69 76 65 20 74 65 73 73 65 6c 6c  adaptive tessell
5710: 61 74 69 6f 6e 2e 0d 0a 20 20 20 20 48 52 45 53  ation...    HRES
5720: 55 4c 54 20 47 65 74 54 65 73 73 53 69 7a 65 28  ULT GetTessSize(
5730: 20 46 4c 4f 41 54 20 66 54 65 73 73 4c 65 76 65   FLOAT fTessLeve
5740: 6c 2c 44 57 4f 52 44 20 41 64 61 70 74 69 76 65  l,DWORD Adaptive
5750: 2c 20 44 57 4f 52 44 20 2a 4e 75 6d 54 72 69 61  , DWORD *NumTria
5760: 6e 67 6c 65 73 2c 44 57 4f 52 44 20 2a 4e 75 6d  ngles,DWORD *Num
5770: 56 65 72 74 69 63 65 73 29 20 3b 0d 0a 0d 0a 20  Vertices) ;.... 
5780: 20 20 20 2f 2f 47 65 6e 65 72 61 74 65 41 64 6a     //GenerateAdj
5790: 61 63 65 6e 63 79 20 64 65 74 65 72 6d 69 6e 65  acency determine
57a0: 73 20 77 68 69 63 68 20 70 61 74 63 68 65 73 20  s which patches 
57b0: 61 72 65 20 61 64 6a 61 63 65 6e 74 20 77 69 74  are adjacent wit
57c0: 68 20 70 72 6f 76 69 64 65 64 20 74 6f 6c 65 72  h provided toler
57d0: 61 6e 63 65 0d 0a 20 20 20 20 2f 2f 20 69 6e 66  ance..    // inf
57e0: 6f 72 6d 61 74 69 6f 6e 20 69 73 20 75 73 65 64  ormation is used
57f0: 20 69 6e 74 65 72 6e 61 6c 6c 79 20 74 6f 20 6f   internally to o
5800: 70 74 69 6d 69 7a 65 20 74 65 73 73 65 6c 6c 61  ptimize tessella
5810: 74 69 6f 6e 0d 0a 20 20 20 20 48 52 45 53 55 4c  tion..    HRESUL
5820: 54 20 47 65 6e 65 72 61 74 65 41 64 6a 61 63 65  T GenerateAdjace
5830: 6e 63 79 28 20 46 4c 4f 41 54 20 54 6f 6c 65 72  ncy( FLOAT Toler
5840: 61 6e 63 65 29 20 3b 0d 0a 0d 0a 20 20 20 20 2f  ance) ;....    /
5850: 2f 43 6c 6f 6e 65 4d 65 73 68 20 43 72 65 61 74  /CloneMesh Creat
5860: 65 73 20 61 20 6e 65 77 20 70 61 74 63 68 6d 65  es a new patchme
5870: 73 68 20 77 69 74 68 20 74 68 65 20 73 70 65 63  sh with the spec
5880: 69 66 69 65 64 20 64 65 63 6c 2c 20 61 6e 64 20  ified decl, and 
5890: 63 6f 6e 76 65 72 74 73 20 74 68 65 20 76 65 72  converts the ver
58a0: 74 65 78 20 62 75 66 66 65 72 0d 0a 20 20 20 20  tex buffer..    
58b0: 2f 2f 74 6f 20 74 68 65 20 6e 65 77 20 64 65 63  //to the new dec
58c0: 6c 2e 20 45 6e 74 72 69 65 73 20 69 6e 20 74 68  l. Entries in th
58d0: 65 20 6e 65 77 20 64 65 63 6c 20 77 68 69 63 68  e new decl which
58e0: 20 61 72 65 20 6e 65 77 20 61 72 65 20 73 65 74   are new are set
58f0: 20 74 6f 20 30 2e 20 49 66 20 74 68 65 20 63 75   to 0. If the cu
5900: 72 72 65 6e 74 20 6d 65 73 68 0d 0a 20 20 20 20  rrent mesh..    
5910: 2f 2f 68 61 73 20 61 64 6a 61 63 65 6e 63 79 2c  //has adjacency,
5920: 20 74 68 65 20 6e 65 77 20 6d 65 73 68 20 77 69   the new mesh wi
5930: 6c 6c 20 61 6c 73 6f 20 68 61 76 65 20 61 64 6a  ll also have adj
5940: 61 63 65 6e 63 79 0d 0a 20 20 20 20 48 52 45 53  acency..    HRES
5950: 55 4c 54 20 43 6c 6f 6e 65 4d 65 73 68 28 20 44  ULT CloneMesh( D
5960: 57 4f 52 44 20 4f 70 74 69 6f 6e 73 2c 20 20 44  WORD Options,  D
5970: 33 44 56 45 52 54 45 58 45 4c 45 4d 45 4e 54 39  3DVERTEXELEMENT9
5980: 20 2a 70 44 65 63 6c 2c 20 49 44 33 44 58 50 61   *pDecl, ID3DXPa
5990: 74 63 68 4d 65 73 68 20 2a 70 4d 65 73 68 29 20  tchMesh *pMesh) 
59a0: 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 4f 70 74 69  ;....    // Opti
59b0: 6d 69 7a 65 73 20 74 68 65 20 70 61 74 63 68 6d  mizes the patchm
59c0: 65 73 68 20 66 6f 72 20 65 66 66 69 63 69 65 6e  esh for efficien
59d0: 74 20 74 65 73 73 65 6c 6c 61 74 69 6f 6e 2e 20  t tessellation. 
59e0: 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 64 65 73   function is des
59f0: 69 67 6e 65 64 0d 0a 20 20 20 20 2f 2f 20 74 6f  igned..    // to
5a00: 20 70 65 72 66 6f 72 6d 20 6f 6e 65 20 74 69 6d   perform one tim
5a10: 65 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 20 66  e optimization f
5a20: 6f 72 20 70 61 74 63 68 20 6d 65 73 68 65 73 20  or patch meshes 
5a30: 74 68 61 74 20 6e 65 65 64 20 74 6f 20 62 65 20  that need to be 
5a40: 74 65 73 73 65 6c 6c 61 74 65 64 0d 0a 20 20 20  tessellated..   
5a50: 20 2f 2f 20 72 65 70 65 61 74 65 64 6c 79 20 62   // repeatedly b
5a60: 79 20 63 61 6c 6c 69 6e 67 20 74 68 65 20 54 65  y calling the Te
5a70: 73 73 65 6c 6c 61 74 65 28 29 20 6d 65 74 68 6f  ssellate() metho
5a80: 64 2e 20 54 68 65 20 6f 70 74 69 6d 69 7a 61 74  d. The optimizat
5a90: 69 6f 6e 20 70 65 72 66 6f 72 6d 65 64 20 69 73  ion performed is
5aa0: 0d 0a 20 20 20 20 2f 2f 20 69 6e 64 65 70 65 6e  ..    // indepen
5ab0: 64 65 6e 74 20 6f 66 20 74 68 65 20 61 63 74 75  dent of the actu
5ac0: 61 6c 20 74 65 73 73 65 6c 6c 61 74 69 6f 6e 20  al tessellation 
5ad0: 6c 65 76 65 6c 20 75 73 65 64 2e 0d 0a 20 20 20  level used...   
5ae0: 20 2f 2f 20 43 75 72 72 65 6e 74 6c 79 20 46 6c   // Currently Fl
5af0: 61 67 73 20 69 73 20 75 6e 75 73 65 64 2e 0d 0a  ags is unused...
5b00: 20 20 20 20 2f 2f 20 49 66 20 76 65 72 74 69 63      // If vertic
5b10: 65 73 20 61 72 65 20 63 68 61 6e 67 65 64 2c 20  es are changed, 
5b20: 4f 70 74 69 6d 69 7a 65 20 6d 75 73 74 20 62 65  Optimize must be
5b30: 20 63 61 6c 6c 65 64 20 61 67 61 69 6e 0d 0a 20   called again.. 
5b40: 20 20 20 48 52 45 53 55 4c 54 20 4f 70 74 69 6d     HRESULT Optim
5b50: 69 7a 65 28 20 44 57 4f 52 44 20 66 6c 61 67 73  ize( DWORD flags
5b60: 29 20 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 67 65 74  ) ;....    //get
5b70: 73 20 61 6e 64 20 73 65 74 73 20 64 69 73 70 6c  s and sets displ
5b80: 61 63 65 6d 65 6e 74 20 70 61 72 61 6d 65 74 65  acement paramete
5b90: 72 73 0d 0a 20 20 20 20 2f 2f 64 69 73 70 6c 61  rs..    //displa
5ba0: 63 65 6d 65 6e 74 20 6d 61 70 73 20 63 61 6e 20  cement maps can 
5bb0: 6f 6e 6c 79 20 62 65 20 32 44 20 74 65 78 74 75  only be 2D textu
5bc0: 72 65 73 20 4d 49 50 2d 4d 41 50 50 49 4e 47 20  res MIP-MAPPING 
5bd0: 69 73 20 69 67 6e 6f 72 65 64 20 66 6f 72 20 6e  is ignored for n
5be0: 6f 6e 20 61 64 61 70 61 74 69 76 65 20 74 65 73  on adapative tes
5bf0: 73 65 6c 6c 61 74 69 6f 6e 0d 0a 20 20 20 20 48  sellation..    H
5c00: 52 45 53 55 4c 54 20 53 65 74 44 69 73 70 6c 61  RESULT SetDispla
5c10: 63 65 50 61 72 61 6d 28 20 49 44 69 72 65 63 74  ceParam( IDirect
5c20: 33 44 42 61 73 65 54 65 78 74 75 72 65 39 20 54  3DBaseTexture9 T
5c30: 65 78 74 75 72 65 2c 0d 0a 20 20 20 20 20 20 20  exture,..       
5c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5c50: 20 20 20 20 20 20 20 44 33 44 54 45 58 54 55 52         D3DTEXTUR
5c60: 45 46 49 4c 54 45 52 54 59 50 45 20 4d 69 6e 46  EFILTERTYPE MinF
5c70: 69 6c 74 65 72 2c 0d 0a 20 20 20 20 20 20 20 20  ilter,..        
5c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5c90: 20 20 20 20 20 20 44 33 44 54 45 58 54 55 52 45        D3DTEXTURE
5ca0: 46 49 4c 54 45 52 54 59 50 45 20 4d 61 67 46 69  FILTERTYPE MagFi
5cb0: 6c 74 65 72 2c 0d 0a 20 20 20 20 20 20 20 20 20  lter,..         
5cc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5cd0: 20 20 20 20 20 44 33 44 54 45 58 54 55 52 45 46       D3DTEXTUREF
5ce0: 49 4c 54 45 52 54 59 50 45 20 4d 69 70 46 69 6c  ILTERTYPE MipFil
5cf0: 74 65 72 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  ter,..          
5d00: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5d10: 20 20 20 20 44 33 44 54 45 58 54 55 52 45 41 44      D3DTEXTUREAD
5d20: 44 52 45 53 53 20 57 72 61 70 2c 0d 0a 20 20 20  DRESS Wrap,..   
5d30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5d40: 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44             DWORD
5d50: 20 64 77 4c 4f 44 42 69 61 73 29 20 3b 0d 0a 0d   dwLODBias) ;...
5d60: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74  .    HRESULT Get
5d70: 44 69 73 70 6c 61 63 65 50 61 72 61 6d 28 20 49  DisplaceParam( I
5d80: 44 69 72 65 63 74 33 44 42 61 73 65 54 65 78 74  Direct3DBaseText
5d90: 75 72 65 39 20 2a 54 65 78 74 75 72 65 2c 0d 0a  ure9 *Texture,..
5da0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5dc0: 44 33 44 54 45 58 54 55 52 45 46 49 4c 54 45 52  D3DTEXTUREFILTER
5dd0: 54 59 50 45 20 2a 4d 69 6e 46 69 6c 74 65 72 2c  TYPE *MinFilter,
5de0: 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ..              
5df0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5e00: 20 20 44 33 44 54 45 58 54 55 52 45 46 49 4c 54    D3DTEXTUREFILT
5e10: 45 52 54 59 50 45 20 2a 4d 61 67 46 69 6c 74 65  ERTYPE *MagFilte
5e20: 72 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  r,..            
5e30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5e40: 20 20 20 20 44 33 44 54 45 58 54 55 52 45 46 49      D3DTEXTUREFI
5e50: 4c 54 45 52 54 59 50 45 20 2a 4d 69 70 46 69 6c  LTERTYPE *MipFil
5e60: 74 65 72 2c 0d 0a 20 20 20 20 20 20 20 20 20 20  ter,..          
5e70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5e80: 20 20 20 20 20 20 44 33 44 54 45 58 54 55 52 45        D3DTEXTURE
5e90: 41 44 44 52 45 53 53 20 2a 57 72 61 70 2c 0d 0a  ADDRESS *Wrap,..
5ea0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5eb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
5ec0: 44 57 4f 52 44 20 2a 64 77 4c 4f 44 42 69 61 73  DWORD *dwLODBias
5ed0: 29 20 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 50 65  ) ;....    // Pe
5ee0: 72 66 6f 72 6d 73 20 74 68 65 20 75 6e 69 66 6f  rforms the unifo
5ef0: 72 6d 20 74 65 73 73 65 6c 6c 61 74 69 6f 6e 20  rm tessellation 
5f00: 62 61 73 65 64 20 6f 6e 20 74 68 65 20 74 65 73  based on the tes
5f10: 73 65 6c 6c 61 74 69 6f 6e 20 6c 65 76 65 6c 2e  sellation level.
5f20: 0d 0a 20 20 20 20 2f 2f 20 20 66 75 6e 63 74 69  ..    //  functi
5f30: 6f 6e 20 77 69 6c 6c 20 70 65 72 66 6f 72 6d 20  on will perform 
5f40: 6d 6f 72 65 20 65 66 66 69 63 69 65 6e 74 6c 79  more efficiently
5f50: 20 69 66 20 74 68 65 20 70 61 74 63 68 20 6d 65   if the patch me
5f60: 73 68 20 68 61 73 20 62 65 65 6e 20 6f 70 74 69  sh has been opti
5f70: 6d 69 7a 65 64 20 75 73 69 6e 67 20 74 68 65 20  mized using the 
5f80: 4f 70 74 69 6d 69 7a 65 28 29 20 63 61 6c 6c 2e  Optimize() call.
5f90: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 54 65  ..    HRESULT Te
5fa0: 73 73 65 6c 6c 61 74 65 28 20 46 4c 4f 41 54 20  ssellate( FLOAT 
5fb0: 66 54 65 73 73 4c 65 76 65 6c 2c 49 44 33 44 58  fTessLevel,ID3DX
5fc0: 4d 65 73 68 20 70 4d 65 73 68 29 20 3b 0d 0a 0d  Mesh pMesh) ;...
5fd0: 0a 20 20 20 20 2f 2f 20 50 65 72 66 6f 72 6d 73  .    // Performs
5fe0: 20 61 64 61 70 74 69 76 65 20 74 65 73 73 65 6c   adaptive tessel
5ff0: 6c 61 74 69 6f 6e 20 62 61 73 65 64 20 6f 6e 20  lation based on 
6000: 74 68 65 20 5a 20 62 61 73 65 64 20 61 64 61 70  the Z based adap
6010: 74 69 76 65 20 74 65 73 73 65 6c 6c 61 74 69 6f  tive tessellatio
6020: 6e 20 63 72 69 74 65 72 69 6f 6e 2e 0d 0a 20 20  n criterion...  
6030: 20 20 2f 2f 20 70 54 72 61 6e 73 20 73 70 65 63    // pTrans spec
6040: 69 66 69 65 73 20 61 20 34 44 20 76 65 63 74 6f  ifies a 4D vecto
6050: 72 20 74 68 61 74 20 69 73 20 64 6f 74 74 65 64  r that is dotted
6060: 20 77 69 74 68 20 74 68 65 20 76 65 72 74 69 63   with the vertic
6070: 65 73 20 74 6f 20 67 65 74 20 74 68 65 20 70 65  es to get the pe
6080: 72 20 76 65 72 74 65 78 0d 0a 20 20 20 20 2f 2f  r vertex..    //
6090: 20 61 64 61 70 74 69 76 65 20 74 65 73 73 65 6c   adaptive tessel
60a0: 6c 61 74 69 6f 6e 20 61 6d 6f 75 6e 74 2e 20 45  lation amount. E
60b0: 61 63 68 20 65 64 67 65 20 69 73 20 74 65 73 73  ach edge is tess
60c0: 65 6c 6c 61 74 65 64 20 74 6f 20 74 68 65 20 61  ellated to the a
60d0: 76 65 72 61 67 65 20 6f 66 20 74 68 65 20 63 72  verage of the cr
60e0: 69 74 65 72 69 6f 6e 0d 0a 20 20 20 20 2f 2f 20  iterion..    // 
60f0: 61 74 20 74 68 65 20 32 20 76 65 72 74 69 63 65  at the 2 vertice
6100: 73 20 69 74 20 63 6f 6e 6e 65 63 74 73 2e 0d 0a  s it connects...
6110: 20 20 20 20 2f 2f 20 4d 61 78 54 65 73 73 4c 65      // MaxTessLe
6120: 76 65 6c 20 73 70 65 63 69 66 69 65 73 20 74 68  vel specifies th
6130: 65 20 75 70 70 65 72 20 6c 69 6d 69 74 20 66 6f  e upper limit fo
6140: 72 20 61 64 61 70 74 69 76 65 20 74 65 73 73 65  r adaptive tesse
6150: 6c 61 74 69 6f 6e 2e 0d 0a 20 20 20 20 2f 2f 20  lation...    // 
6160: 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 70   function will p
6170: 65 72 66 6f 72 6d 20 6d 6f 72 65 20 65 66 66 69  erform more effi
6180: 63 69 65 6e 74 6c 79 20 69 66 20 74 68 65 20 70  ciently if the p
6190: 61 74 63 68 20 6d 65 73 68 20 68 61 73 20 62 65  atch mesh has be
61a0: 65 6e 20 6f 70 74 69 6d 69 7a 65 64 20 75 73 69  en optimized usi
61b0: 6e 67 20 74 68 65 20 4f 70 74 69 6d 69 7a 65 28  ng the Optimize(
61c0: 29 20 63 61 6c 6c 2e 0d 0a 20 20 20 20 48 52 45  ) call...    HRE
61d0: 53 55 4c 54 20 54 65 73 73 65 6c 6c 61 74 65 41  SULT TessellateA
61e0: 64 61 70 74 69 76 65 28 0d 0a 20 20 20 20 20 20  daptive(..      
61f0: 20 20 20 44 33 44 58 56 45 43 54 4f 52 34 20 2a     D3DXVECTOR4 *
6200: 70 54 72 61 6e 73 2c 0d 0a 20 20 20 20 20 20 20  pTrans,..       
6210: 20 44 57 4f 52 44 20 64 77 4d 61 78 54 65 73 73   DWORD dwMaxTess
6220: 4c 65 76 65 6c 2c 0d 0a 20 20 20 20 20 20 20 20  Level,..        
6230: 44 57 4f 52 44 20 64 77 4d 69 6e 54 65 73 73 4c  DWORD dwMinTessL
6240: 65 76 65 6c 2c 0d 0a 20 20 20 20 20 20 20 20 49  evel,..        I
6250: 44 33 44 58 4d 65 73 68 20 70 4d 65 73 68 29 20  D3DXMesh pMesh) 
6260: 3b 0d 0a 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66  ;....}....interf
6270: 61 63 65 20 49 44 33 44 58 46 6f 6e 74 20 3a 20  ace ID3DXFont : 
6280: 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20  IUnknown..{..   
6290: 20 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29   extern(Windows)
62a0: 3a 0d 0a 0d 0a 20 20 20 20 2f 2f 20 49 44 33 44  :....    // ID3D
62b0: 58 46 6f 6e 74 0d 0a 20 20 20 20 48 52 45 53 55  XFont..    HRESU
62c0: 4c 54 20 47 65 74 44 65 76 69 63 65 28 20 49 44  LT GetDevice( ID
62d0: 69 72 65 63 74 33 44 44 65 76 69 63 65 39 20 2a  irect3DDevice9 *
62e0: 70 70 44 65 76 69 63 65 29 20 3b 0d 0a 20 20 20  ppDevice) ;..   
62f0: 20 48 52 45 53 55 4c 54 20 47 65 74 44 65 73 63   HRESULT GetDesc
6300: 41 28 20 44 33 44 58 46 4f 4e 54 5f 44 45 53 43  A( D3DXFONT_DESC
6310: 41 20 2a 70 44 65 73 63 29 20 3b 0d 0a 20 20 20  A *pDesc) ;..   
6320: 20 48 52 45 53 55 4c 54 20 47 65 74 44 65 73 63   HRESULT GetDesc
6330: 57 28 20 44 33 44 58 46 4f 4e 54 5f 44 45 53 43  W( D3DXFONT_DESC
6340: 57 20 2a 70 44 65 73 63 29 20 3b 0d 0a 20 20 20  W *pDesc) ;..   
6350: 20 42 4f 4f 4c 20 47 65 74 54 65 78 74 4d 65 74   BOOL GetTextMet
6360: 72 69 63 73 41 28 20 54 45 58 54 4d 45 54 52 49  ricsA( TEXTMETRI
6370: 43 41 20 2a 70 54 65 78 74 4d 65 74 72 69 63 73  CA *pTextMetrics
6380: 29 20 3b 0d 0a 20 20 20 20 42 4f 4f 4c 20 47 65  ) ;..    BOOL Ge
6390: 74 54 65 78 74 4d 65 74 72 69 63 73 57 28 20 54  tTextMetricsW( T
63a0: 45 58 54 4d 45 54 52 49 43 57 20 2a 70 54 65 78  EXTMETRICW *pTex
63b0: 74 4d 65 74 72 69 63 73 29 20 3b 0d 0a 0d 0a 20  tMetrics) ;.... 
63c0: 20 20 20 48 44 43 20 47 65 74 44 43 28 29 20 3b     HDC GetDC() ;
63d0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65  ..    HRESULT Ge
63e0: 74 47 6c 79 70 68 44 61 74 61 28 20 55 49 4e 54  tGlyphData( UINT
63f0: 20 47 6c 79 70 68 2c 20 49 44 69 72 65 63 74 33   Glyph, IDirect3
6400: 44 54 65 78 74 75 72 65 39 20 2a 70 70 54 65 78  DTexture9 *ppTex
6410: 74 75 72 65 2c 20 52 45 43 54 20 2a 70 42 6c 61  ture, RECT *pBla
6420: 63 6b 42 6f 78 2c 20 50 4f 49 4e 54 20 2a 70 43  ckBox, POINT *pC
6430: 65 6c 6c 49 6e 63 29 20 3b 0d 0a 0d 0a 20 20 20  ellInc) ;....   
6440: 20 48 52 45 53 55 4c 54 20 50 72 65 6c 6f 61 64   HRESULT Preload
6450: 43 68 61 72 61 63 74 65 72 73 28 20 55 49 4e 54  Characters( UINT
6460: 20 46 69 72 73 74 2c 20 55 49 4e 54 20 4c 61 73   First, UINT Las
6470: 74 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  t) ;..    HRESUL
6480: 54 20 50 72 65 6c 6f 61 64 47 6c 79 70 68 73 28  T PreloadGlyphs(
6490: 20 55 49 4e 54 20 46 69 72 73 74 2c 20 55 49 4e   UINT First, UIN
64a0: 54 20 4c 61 73 74 29 20 3b 0d 0a 20 20 20 20 48  T Last) ;..    H
64b0: 52 45 53 55 4c 54 20 50 72 65 6c 6f 61 64 54 65  RESULT PreloadTe
64c0: 78 74 41 28 20 4c 50 43 53 54 52 20 70 53 74 72  xtA( LPCSTR pStr
64d0: 69 6e 67 2c 20 49 4e 54 20 43 6f 75 6e 74 29 20  ing, INT Count) 
64e0: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 50  ;..    HRESULT P
64f0: 72 65 6c 6f 61 64 54 65 78 74 57 28 20 4c 50 43  reloadTextW( LPC
6500: 57 53 54 52 20 70 53 74 72 69 6e 67 2c 20 49 4e  WSTR pString, IN
6510: 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 0d 0a 20 20  T Count) ;....  
6520: 20 20 49 4e 54 20 44 72 61 77 54 65 78 74 41 28    INT DrawTextA(
6530: 20 49 44 33 44 58 53 70 72 69 74 65 20 70 53 70   ID3DXSprite pSp
6540: 72 69 74 65 2c 20 4c 50 43 53 54 52 20 70 53 74  rite, LPCSTR pSt
6550: 72 69 6e 67 2c 20 49 4e 54 20 43 6f 75 6e 74 2c  ring, INT Count,
6560: 20 4c 50 52 45 43 54 20 70 52 65 63 74 2c 20 44   LPRECT pRect, D
6570: 57 4f 52 44 20 46 6f 72 6d 61 74 2c 20 44 33 44  WORD Format, D3D
6580: 43 4f 4c 4f 52 20 43 6f 6c 6f 72 29 20 3b 0d 0a  COLOR Color) ;..
6590: 20 20 20 20 49 4e 54 20 44 72 61 77 54 65 78 74      INT DrawText
65a0: 57 28 20 49 44 33 44 58 53 70 72 69 74 65 20 70  W( ID3DXSprite p
65b0: 53 70 72 69 74 65 2c 20 4c 50 43 57 53 54 52 20  Sprite, LPCWSTR 
65c0: 70 53 74 72 69 6e 67 2c 20 49 4e 54 20 43 6f 75  pString, INT Cou
65d0: 6e 74 2c 20 4c 50 52 45 43 54 20 70 52 65 63 74  nt, LPRECT pRect
65e0: 2c 20 44 57 4f 52 44 20 46 6f 72 6d 61 74 2c 20  , DWORD Format, 
65f0: 44 33 44 43 4f 4c 4f 52 20 43 6f 6c 6f 72 29 20  D3DCOLOR Color) 
6600: 3b 0d 0a 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ;....    HRESULT
6610: 20 4f 6e 4c 6f 73 74 44 65 76 69 63 65 28 29 20   OnLostDevice() 
6620: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4f  ;..    HRESULT O
6630: 6e 52 65 73 65 74 44 65 76 69 63 65 28 29 20 3b  nResetDevice() ;
6640: 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65  ..}....interface
6650: 20 49 44 33 44 58 53 70 72 69 74 65 20 3a 20 49   ID3DXSprite : I
6660: 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20  Unknown..{..    
6670: 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 3a  extern(Windows):
6680: 0d 0a 0d 0a 20 20 20 20 2f 2f 20 49 44 33 44 58  ....    // ID3DX
6690: 53 70 72 69 74 65 0d 0a 20 20 20 20 48 52 45 53  Sprite..    HRES
66a0: 55 4c 54 20 47 65 74 44 65 76 69 63 65 28 20 49  ULT GetDevice( I
66b0: 44 69 72 65 63 74 33 44 44 65 76 69 63 65 39 2a  Direct3DDevice9*
66c0: 20 70 70 44 65 76 69 63 65 29 20 3b 0d 0a 0d 0a   ppDevice) ;....
66d0: 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 54      HRESULT GetT
66e0: 72 61 6e 73 66 6f 72 6d 28 20 44 33 44 58 4d 41  ransform( D3DXMA
66f0: 54 52 49 58 20 2a 70 54 72 61 6e 73 66 6f 72 6d  TRIX *pTransform
6700: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
6710: 20 53 65 74 54 72 61 6e 73 66 6f 72 6d 28 20 20   SetTransform(  
6720: 44 33 44 58 4d 41 54 52 49 58 20 2a 70 54 72 61  D3DXMATRIX *pTra
6730: 6e 73 66 6f 72 6d 29 20 3b 0d 0a 0d 0a 20 20 20  nsform) ;....   
6740: 20 48 52 45 53 55 4c 54 20 53 65 74 57 6f 72 6c   HRESULT SetWorl
6750: 64 56 69 65 77 52 48 28 20 20 44 33 44 58 4d 41  dViewRH(  D3DXMA
6760: 54 52 49 58 20 2a 70 57 6f 72 6c 64 2c 20 20 44  TRIX *pWorld,  D
6770: 33 44 58 4d 41 54 52 49 58 20 2a 70 56 69 65 77  3DXMATRIX *pView
6780: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
6790: 20 53 65 74 57 6f 72 6c 64 56 69 65 77 4c 48 28   SetWorldViewLH(
67a0: 20 20 44 33 44 58 4d 41 54 52 49 58 20 2a 70 57    D3DXMATRIX *pW
67b0: 6f 72 6c 64 2c 20 20 44 33 44 58 4d 41 54 52 49  orld,  D3DXMATRI
67c0: 58 20 2a 70 56 69 65 77 29 20 3b 0d 0a 0d 0a 20  X *pView) ;.... 
67d0: 20 20 20 48 52 45 53 55 4c 54 20 42 65 67 69 6e     HRESULT Begin
67e0: 28 20 44 57 4f 52 44 20 46 6c 61 67 73 29 20 3b  ( DWORD Flags) ;
67f0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 44 72  ..    HRESULT Dr
6800: 61 77 28 20 49 44 69 72 65 63 74 33 44 54 65 78  aw( IDirect3DTex
6810: 74 75 72 65 39 20 70 54 65 78 74 75 72 65 2c 20  ture9 pTexture, 
6820: 20 52 45 43 54 20 2a 70 53 72 63 52 65 63 74 2c   RECT *pSrcRect,
6830: 20 20 44 33 44 58 56 45 43 54 4f 52 33 20 2a 70    D3DXVECTOR3 *p
6840: 43 65 6e 74 65 72 2c 20 20 44 33 44 58 56 45 43  Center,  D3DXVEC
6850: 54 4f 52 33 20 2a 70 50 6f 73 69 74 69 6f 6e 2c  TOR3 *pPosition,
6860: 20 44 33 44 43 4f 4c 4f 52 20 43 6f 6c 6f 72 29   D3DCOLOR Color)
6870: 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20   ;..    HRESULT 
6880: 46 6c 75 73 68 28 29 20 3b 0d 0a 20 20 20 20 48  Flush() ;..    H
6890: 52 45 53 55 4c 54 20 45 6e 64 28 29 20 3b 0d 0a  RESULT End() ;..
68a0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4f 6e  ..    HRESULT On
68b0: 4c 6f 73 74 44 65 76 69 63 65 28 29 20 3b 0d 0a  LostDevice() ;..
68c0: 20 20 20 20 48 52 45 53 55 4c 54 20 4f 6e 52 65      HRESULT OnRe
68d0: 73 65 74 44 65 76 69 63 65 28 29 20 3b 0d 0a 7d  setDevice() ;..}
68e0: 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 49 44  ....interface ID
68f0: 33 44 58 42 61 73 65 45 66 66 65 63 74 20 3a 20  3DXBaseEffect : 
6900: 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20  IUnknown..{..   
6910: 20 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29   extern(Windows)
6920: 3a 0d 0a 0d 0a 20 20 20 20 2f 2f 20 44 65 73 63  :....    // Desc
6930: 73 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47  s..    HRESULT G
6940: 65 74 44 65 73 63 28 20 44 33 44 58 45 46 46 45  etDesc( D3DXEFFE
6950: 43 54 5f 44 45 53 43 2a 20 70 44 65 73 63 29 20  CT_DESC* pDesc) 
6960: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47  ;..    HRESULT G
6970: 65 74 50 61 72 61 6d 65 74 65 72 44 65 73 63 28  etParameterDesc(
6980: 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72   D3DXHANDLE hPar
6990: 61 6d 65 74 65 72 2c 20 44 33 44 58 50 41 52 41  ameter, D3DXPARA
69a0: 4d 45 54 45 52 5f 44 45 53 43 2a 20 70 44 65 73  METER_DESC* pDes
69b0: 63 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  c) ;..    HRESUL
69c0: 54 20 47 65 74 54 65 63 68 6e 69 71 75 65 44 65  T GetTechniqueDe
69d0: 73 63 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68  sc( D3DXHANDLE h
69e0: 54 65 63 68 6e 69 71 75 65 2c 20 44 33 44 58 54  Technique, D3DXT
69f0: 45 43 48 4e 49 51 55 45 5f 44 45 53 43 2a 20 70  ECHNIQUE_DESC* p
6a00: 44 65 73 63 29 20 3b 0d 0a 20 20 20 20 48 52 45  Desc) ;..    HRE
6a10: 53 55 4c 54 20 47 65 74 50 61 73 73 44 65 73 63  SULT GetPassDesc
6a20: 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61  ( D3DXHANDLE hPa
6a30: 73 73 2c 20 44 33 44 58 50 41 53 53 5f 44 45 53  ss, D3DXPASS_DES
6a40: 43 2a 20 70 44 65 73 63 29 20 3b 0d 0a 20 20 20  C* pDesc) ;..   
6a50: 20 48 52 45 53 55 4c 54 20 47 65 74 46 75 6e 63   HRESULT GetFunc
6a60: 74 69 6f 6e 44 65 73 63 28 20 44 33 44 58 48 41  tionDesc( D3DXHA
6a70: 4e 44 4c 45 20 68 53 68 61 64 65 72 2c 20 44 33  NDLE hShader, D3
6a80: 44 58 46 55 4e 43 54 49 4f 4e 5f 44 45 53 43 2a  DXFUNCTION_DESC*
6a90: 20 70 44 65 73 63 29 20 3b 0d 0a 0d 0a 20 20 20   pDesc) ;....   
6aa0: 20 2f 2f 20 48 61 6e 64 6c 65 20 6f 70 65 72 61   // Handle opera
6ab0: 74 69 6f 6e 73 0d 0a 20 20 20 20 44 33 44 58 48  tions..    D3DXH
6ac0: 41 4e 44 4c 45 20 47 65 74 50 61 72 61 6d 65 74  ANDLE GetParamet
6ad0: 65 72 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68  er( D3DXHANDLE h
6ae0: 50 61 72 61 6d 65 74 65 72 2c 20 55 49 4e 54 20  Parameter, UINT 
6af0: 49 6e 64 65 78 29 20 3b 0d 0a 20 20 20 20 44 33  Index) ;..    D3
6b00: 44 58 48 41 4e 44 4c 45 20 47 65 74 50 61 72 61  DXHANDLE GetPara
6b10: 6d 65 74 65 72 42 79 4e 61 6d 65 28 20 44 33 44  meterByName( D3D
6b20: 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74  XHANDLE hParamet
6b30: 65 72 2c 20 4c 50 43 53 54 52 20 70 4e 61 6d 65  er, LPCSTR pName
6b40: 29 20 3b 0d 0a 20 20 20 20 44 33 44 58 48 41 4e  ) ;..    D3DXHAN
6b50: 44 4c 45 20 47 65 74 50 61 72 61 6d 65 74 65 72  DLE GetParameter
6b60: 42 79 53 65 6d 61 6e 74 69 63 28 20 44 33 44 58  BySemantic( D3DX
6b70: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
6b80: 72 2c 20 4c 50 43 53 54 52 20 70 53 65 6d 61 6e  r, LPCSTR pSeman
6b90: 74 69 63 29 20 3b 0d 0a 20 20 20 20 44 33 44 58  tic) ;..    D3DX
6ba0: 48 41 4e 44 4c 45 20 47 65 74 50 61 72 61 6d 65  HANDLE GetParame
6bb0: 74 65 72 45 6c 65 6d 65 6e 74 28 20 44 33 44 58  terElement( D3DX
6bc0: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
6bd0: 72 2c 20 55 49 4e 54 20 49 6e 64 65 78 29 20 3b  r, UINT Index) ;
6be0: 0d 0a 20 20 20 20 44 33 44 58 48 41 4e 44 4c 45  ..    D3DXHANDLE
6bf0: 20 47 65 74 54 65 63 68 6e 69 71 75 65 28 20 55   GetTechnique( U
6c00: 49 4e 54 20 49 6e 64 65 78 29 20 3b 0d 0a 20 20  INT Index) ;..  
6c10: 20 20 44 33 44 58 48 41 4e 44 4c 45 20 47 65 74    D3DXHANDLE Get
6c20: 54 65 63 68 6e 69 71 75 65 42 79 4e 61 6d 65 28  TechniqueByName(
6c30: 20 4c 50 43 53 54 52 20 70 4e 61 6d 65 29 20 3b   LPCSTR pName) ;
6c40: 0d 0a 20 20 20 20 44 33 44 58 48 41 4e 44 4c 45  ..    D3DXHANDLE
6c50: 20 47 65 74 50 61 73 73 28 20 44 33 44 58 48 41   GetPass( D3DXHA
6c60: 4e 44 4c 45 20 68 54 65 63 68 6e 69 71 75 65 2c  NDLE hTechnique,
6c70: 20 55 49 4e 54 20 49 6e 64 65 78 29 20 3b 0d 0a   UINT Index) ;..
6c80: 20 20 20 20 44 33 44 58 48 41 4e 44 4c 45 20 47      D3DXHANDLE G
6c90: 65 74 50 61 73 73 42 79 4e 61 6d 65 28 20 44 33  etPassByName( D3
6ca0: 44 58 48 41 4e 44 4c 45 20 68 54 65 63 68 6e 69  DXHANDLE hTechni
6cb0: 71 75 65 2c 20 4c 50 43 53 54 52 20 70 4e 61 6d  que, LPCSTR pNam
6cc0: 65 29 20 3b 0d 0a 20 20 20 20 44 33 44 58 48 41  e) ;..    D3DXHA
6cd0: 4e 44 4c 45 20 47 65 74 46 75 6e 63 74 69 6f 6e  NDLE GetFunction
6ce0: 28 20 55 49 4e 54 20 49 6e 64 65 78 29 20 3b 0d  ( UINT Index) ;.
6cf0: 0a 20 20 20 20 44 33 44 58 48 41 4e 44 4c 45 20  .    D3DXHANDLE 
6d00: 47 65 74 46 75 6e 63 74 69 6f 6e 42 79 4e 61 6d  GetFunctionByNam
6d10: 65 28 20 4c 50 43 53 54 52 20 70 4e 61 6d 65 29  e( LPCSTR pName)
6d20: 20 3b 0d 0a 20 20 20 20 44 33 44 58 48 41 4e 44   ;..    D3DXHAND
6d30: 4c 45 20 47 65 74 41 6e 6e 6f 74 61 74 69 6f 6e  LE GetAnnotation
6d40: 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68 4f 62  ( D3DXHANDLE hOb
6d50: 6a 65 63 74 2c 20 55 49 4e 54 20 49 6e 64 65 78  ject, UINT Index
6d60: 29 20 3b 0d 0a 20 20 20 20 44 33 44 58 48 41 4e  ) ;..    D3DXHAN
6d70: 44 4c 45 20 47 65 74 41 6e 6e 6f 74 61 74 69 6f  DLE GetAnnotatio
6d80: 6e 42 79 4e 61 6d 65 28 20 44 33 44 58 48 41 4e  nByName( D3DXHAN
6d90: 44 4c 45 20 68 4f 62 6a 65 63 74 2c 20 4c 50 43  DLE hObject, LPC
6da0: 53 54 52 20 70 4e 61 6d 65 29 20 3b 0d 0a 0d 0a  STR pName) ;....
6db0: 20 20 20 20 2f 2f 20 47 65 74 2f 53 65 74 20 50      // Get/Set P
6dc0: 61 72 61 6d 65 74 65 72 73 0d 0a 20 20 20 20 48  arameters..    H
6dd0: 52 45 53 55 4c 54 20 53 65 74 56 61 6c 75 65 28  RESULT SetValue(
6de0: 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72   D3DXHANDLE hPar
6df0: 61 6d 65 74 65 72 2c 20 4c 50 43 56 4f 49 44 20  ameter, LPCVOID 
6e00: 70 44 61 74 61 2c 20 55 49 4e 54 20 42 79 74 65  pData, UINT Byte
6e10: 73 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  s) ;..    HRESUL
6e20: 54 20 47 65 74 56 61 6c 75 65 28 20 44 33 44 58  T GetValue( D3DX
6e30: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
6e40: 72 2c 20 4c 50 56 4f 49 44 20 70 44 61 74 61 2c  r, LPVOID pData,
6e50: 20 55 49 4e 54 20 42 79 74 65 73 29 20 3b 0d 0a   UINT Bytes) ;..
6e60: 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 42      HRESULT SetB
6e70: 6f 6f 6c 28 20 44 33 44 58 48 41 4e 44 4c 45 20  ool( D3DXHANDLE 
6e80: 68 50 61 72 61 6d 65 74 65 72 2c 20 42 4f 4f 4c  hParameter, BOOL
6e90: 20 62 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55   b) ;..    HRESU
6ea0: 4c 54 20 47 65 74 42 6f 6f 6c 28 20 44 33 44 58  LT GetBool( D3DX
6eb0: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
6ec0: 72 2c 20 42 4f 4f 4c 2a 20 70 62 29 20 3b 0d 0a  r, BOOL* pb) ;..
6ed0: 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 42      HRESULT SetB
6ee0: 6f 6f 6c 41 72 72 61 79 28 20 44 33 44 58 48 41  oolArray( D3DXHA
6ef0: 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c  NDLE hParameter,
6f00: 20 20 42 4f 4f 4c 2a 20 70 62 2c 20 55 49 4e 54    BOOL* pb, UINT
6f10: 20 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20 48   Count) ;..    H
6f20: 52 45 53 55 4c 54 20 47 65 74 42 6f 6f 6c 41 72  RESULT GetBoolAr
6f30: 72 61 79 28 20 44 33 44 58 48 41 4e 44 4c 45 20  ray( D3DXHANDLE 
6f40: 68 50 61 72 61 6d 65 74 65 72 2c 20 42 4f 4f 4c  hParameter, BOOL
6f50: 2a 20 70 62 2c 20 55 49 4e 54 20 43 6f 75 6e 74  * pb, UINT Count
6f60: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
6f70: 20 53 65 74 49 6e 74 28 20 44 33 44 58 48 41 4e   SetInt( D3DXHAN
6f80: 44 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c 20  DLE hParameter, 
6f90: 49 4e 54 20 6e 29 20 3b 0d 0a 20 20 20 20 48 52  INT n) ;..    HR
6fa0: 45 53 55 4c 54 20 47 65 74 49 6e 74 28 20 44 33  ESULT GetInt( D3
6fb0: 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65  DXHANDLE hParame
6fc0: 74 65 72 2c 20 49 4e 54 2a 20 70 6e 29 20 3b 0d  ter, INT* pn) ;.
6fd0: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74  .    HRESULT Set
6fe0: 49 6e 74 41 72 72 61 79 28 20 44 33 44 58 48 41  IntArray( D3DXHA
6ff0: 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c  NDLE hParameter,
7000: 20 20 49 4e 54 2a 20 70 6e 2c 20 55 49 4e 54 20    INT* pn, UINT 
7010: 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20 48 52  Count) ;..    HR
7020: 45 53 55 4c 54 20 47 65 74 49 6e 74 41 72 72 61  ESULT GetIntArra
7030: 79 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50  y( D3DXHANDLE hP
7040: 61 72 61 6d 65 74 65 72 2c 20 49 4e 54 2a 20 70  arameter, INT* p
7050: 6e 2c 20 55 49 4e 54 20 43 6f 75 6e 74 29 20 3b  n, UINT Count) ;
7060: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65  ..    HRESULT Se
7070: 74 46 6c 6f 61 74 28 20 44 33 44 58 48 41 4e 44  tFloat( D3DXHAND
7080: 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c 20 46  LE hParameter, F
7090: 4c 4f 41 54 20 66 29 20 3b 0d 0a 20 20 20 20 48  LOAT f) ;..    H
70a0: 52 45 53 55 4c 54 20 47 65 74 46 6c 6f 61 74 28  RESULT GetFloat(
70b0: 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72   D3DXHANDLE hPar
70c0: 61 6d 65 74 65 72 2c 20 46 4c 4f 41 54 2a 20 70  ameter, FLOAT* p
70d0: 66 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  f) ;..    HRESUL
70e0: 54 20 53 65 74 46 6c 6f 61 74 41 72 72 61 79 28  T SetFloatArray(
70f0: 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72   D3DXHANDLE hPar
7100: 61 6d 65 74 65 72 2c 20 20 46 4c 4f 41 54 2a 20  ameter,  FLOAT* 
7110: 70 66 2c 20 55 49 4e 54 20 43 6f 75 6e 74 29 20  pf, UINT Count) 
7120: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47  ;..    HRESULT G
7130: 65 74 46 6c 6f 61 74 41 72 72 61 79 28 20 44 33  etFloatArray( D3
7140: 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65  DXHANDLE hParame
7150: 74 65 72 2c 20 46 4c 4f 41 54 2a 20 70 66 2c 20  ter, FLOAT* pf, 
7160: 55 49 4e 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20  UINT Count) ;.. 
7170: 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 56 65     HRESULT SetVe
7180: 63 74 6f 72 28 20 44 33 44 58 48 41 4e 44 4c 45  ctor( D3DXHANDLE
7190: 20 68 50 61 72 61 6d 65 74 65 72 2c 20 20 44 33   hParameter,  D3
71a0: 44 58 56 45 43 54 4f 52 34 2a 20 70 56 65 63 74  DXVECTOR4* pVect
71b0: 6f 72 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55  or) ;..    HRESU
71c0: 4c 54 20 47 65 74 56 65 63 74 6f 72 28 20 44 33  LT GetVector( D3
71d0: 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65  DXHANDLE hParame
71e0: 74 65 72 2c 20 44 33 44 58 56 45 43 54 4f 52 34  ter, D3DXVECTOR4
71f0: 2a 20 70 56 65 63 74 6f 72 29 20 3b 0d 0a 20 20  * pVector) ;..  
7200: 20 20 48 52 45 53 55 4c 54 20 53 65 74 56 65 63    HRESULT SetVec
7210: 74 6f 72 41 72 72 61 79 28 20 44 33 44 58 48 41  torArray( D3DXHA
7220: 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c  NDLE hParameter,
7230: 20 20 44 33 44 58 56 45 43 54 4f 52 34 2a 20 70    D3DXVECTOR4* p
7240: 56 65 63 74 6f 72 2c 20 55 49 4e 54 20 43 6f 75  Vector, UINT Cou
7250: 6e 74 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55  nt) ;..    HRESU
7260: 4c 54 20 47 65 74 56 65 63 74 6f 72 41 72 72 61  LT GetVectorArra
7270: 79 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50  y( D3DXHANDLE hP
7280: 61 72 61 6d 65 74 65 72 2c 20 44 33 44 58 56 45  arameter, D3DXVE
7290: 43 54 4f 52 34 2a 20 70 56 65 63 74 6f 72 2c 20  CTOR4* pVector, 
72a0: 55 49 4e 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20  UINT Count) ;.. 
72b0: 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 4d 61     HRESULT SetMa
72c0: 74 72 69 78 28 20 44 33 44 58 48 41 4e 44 4c 45  trix( D3DXHANDLE
72d0: 20 68 50 61 72 61 6d 65 74 65 72 2c 20 20 44 33   hParameter,  D3
72e0: 44 58 4d 41 54 52 49 58 2a 20 70 4d 61 74 72 69  DXMATRIX* pMatri
72f0: 78 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  x) ;..    HRESUL
7300: 54 20 47 65 74 4d 61 74 72 69 78 28 20 44 33 44  T GetMatrix( D3D
7310: 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74  XHANDLE hParamet
7320: 65 72 2c 20 44 33 44 58 4d 41 54 52 49 58 2a 20  er, D3DXMATRIX* 
7330: 70 4d 61 74 72 69 78 29 20 3b 0d 0a 20 20 20 20  pMatrix) ;..    
7340: 48 52 45 53 55 4c 54 20 53 65 74 4d 61 74 72 69  HRESULT SetMatri
7350: 78 41 72 72 61 79 28 20 44 33 44 58 48 41 4e 44  xArray( D3DXHAND
7360: 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c 20 20  LE hParameter,  
7370: 44 33 44 58 4d 41 54 52 49 58 2a 20 70 4d 61 74  D3DXMATRIX* pMat
7380: 72 69 78 2c 20 55 49 4e 54 20 43 6f 75 6e 74 29  rix, UINT Count)
7390: 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20   ;..    HRESULT 
73a0: 47 65 74 4d 61 74 72 69 78 41 72 72 61 79 28 20  GetMatrixArray( 
73b0: 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61  D3DXHANDLE hPara
73c0: 6d 65 74 65 72 2c 20 44 33 44 58 4d 41 54 52 49  meter, D3DXMATRI
73d0: 58 2a 20 70 4d 61 74 72 69 78 2c 20 55 49 4e 54  X* pMatrix, UINT
73e0: 20 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20 48   Count) ;..    H
73f0: 52 45 53 55 4c 54 20 53 65 74 4d 61 74 72 69 78  RESULT SetMatrix
7400: 50 6f 69 6e 74 65 72 41 72 72 61 79 28 20 44 33  PointerArray( D3
7410: 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65  DXHANDLE hParame
7420: 74 65 72 2c 20 20 44 33 44 58 4d 41 54 52 49 58  ter,  D3DXMATRIX
7430: 2a 2a 20 70 70 4d 61 74 72 69 78 2c 20 55 49 4e  ** ppMatrix, UIN
7440: 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20  T Count) ;..    
7450: 48 52 45 53 55 4c 54 20 47 65 74 4d 61 74 72 69  HRESULT GetMatri
7460: 78 50 6f 69 6e 74 65 72 41 72 72 61 79 28 20 44  xPointerArray( D
7470: 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d  3DXHANDLE hParam
7480: 65 74 65 72 2c 20 44 33 44 58 4d 41 54 52 49 58  eter, D3DXMATRIX
7490: 2a 2a 20 70 70 4d 61 74 72 69 78 2c 20 55 49 4e  ** ppMatrix, UIN
74a0: 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20  T Count) ;..    
74b0: 48 52 45 53 55 4c 54 20 53 65 74 4d 61 74 72 69  HRESULT SetMatri
74c0: 78 54 72 61 6e 73 70 6f 73 65 28 20 44 33 44 58  xTranspose( D3DX
74d0: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
74e0: 72 2c 20 20 44 33 44 58 4d 41 54 52 49 58 2a 20  r,  D3DXMATRIX* 
74f0: 70 4d 61 74 72 69 78 29 20 3b 0d 0a 20 20 20 20  pMatrix) ;..    
7500: 48 52 45 53 55 4c 54 20 47 65 74 4d 61 74 72 69  HRESULT GetMatri
7510: 78 54 72 61 6e 73 70 6f 73 65 28 20 44 33 44 58  xTranspose( D3DX
7520: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
7530: 72 2c 20 44 33 44 58 4d 41 54 52 49 58 2a 20 70  r, D3DXMATRIX* p
7540: 4d 61 74 72 69 78 29 20 3b 0d 0a 20 20 20 20 48  Matrix) ;..    H
7550: 52 45 53 55 4c 54 20 53 65 74 4d 61 74 72 69 78  RESULT SetMatrix
7560: 54 72 61 6e 73 70 6f 73 65 41 72 72 61 79 28 20  TransposeArray( 
7570: 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61  D3DXHANDLE hPara
7580: 6d 65 74 65 72 2c 20 20 44 33 44 58 4d 41 54 52  meter,  D3DXMATR
7590: 49 58 2a 20 70 4d 61 74 72 69 78 2c 20 55 49 4e  IX* pMatrix, UIN
75a0: 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20  T Count) ;..    
75b0: 48 52 45 53 55 4c 54 20 47 65 74 4d 61 74 72 69  HRESULT GetMatri
75c0: 78 54 72 61 6e 73 70 6f 73 65 41 72 72 61 79 28  xTransposeArray(
75d0: 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72   D3DXHANDLE hPar
75e0: 61 6d 65 74 65 72 2c 20 44 33 44 58 4d 41 54 52  ameter, D3DXMATR
75f0: 49 58 2a 20 70 4d 61 74 72 69 78 2c 20 55 49 4e  IX* pMatrix, UIN
7600: 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20  T Count) ;..    
7610: 48 52 45 53 55 4c 54 20 53 65 74 4d 61 74 72 69  HRESULT SetMatri
7620: 78 54 72 61 6e 73 70 6f 73 65 50 6f 69 6e 74 65  xTransposePointe
7630: 72 41 72 72 61 79 28 20 44 33 44 58 48 41 4e 44  rArray( D3DXHAND
7640: 4c 45 20 68 50 61 72 61 6d 65 74 65 72 2c 20 20  LE hParameter,  
7650: 44 33 44 58 4d 41 54 52 49 58 2a 2a 20 70 70 4d  D3DXMATRIX** ppM
7660: 61 74 72 69 78 2c 20 55 49 4e 54 20 43 6f 75 6e  atrix, UINT Coun
7670: 74 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  t) ;..    HRESUL
7680: 54 20 47 65 74 4d 61 74 72 69 78 54 72 61 6e 73  T GetMatrixTrans
7690: 70 6f 73 65 50 6f 69 6e 74 65 72 41 72 72 61 79  posePointerArray
76a0: 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61  ( D3DXHANDLE hPa
76b0: 72 61 6d 65 74 65 72 2c 20 44 33 44 58 4d 41 54  rameter, D3DXMAT
76c0: 52 49 58 2a 2a 20 70 70 4d 61 74 72 69 78 2c 20  RIX** ppMatrix, 
76d0: 55 49 4e 54 20 43 6f 75 6e 74 29 20 3b 0d 0a 20  UINT Count) ;.. 
76e0: 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 53 74     HRESULT SetSt
76f0: 72 69 6e 67 28 20 44 33 44 58 48 41 4e 44 4c 45  ring( D3DXHANDLE
7700: 20 68 50 61 72 61 6d 65 74 65 72 2c 20 4c 50 43   hParameter, LPC
7710: 53 54 52 20 70 53 74 72 69 6e 67 29 20 3b 0d 0a  STR pString) ;..
7720: 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 53      HRESULT GetS
7730: 74 72 69 6e 67 28 20 44 33 44 58 48 41 4e 44 4c  tring( D3DXHANDL
7740: 45 20 68 50 61 72 61 6d 65 74 65 72 2c 20 4c 50  E hParameter, LP
7750: 43 53 54 52 2a 20 70 70 53 74 72 69 6e 67 29 20  CSTR* ppString) 
7760: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53  ;..    HRESULT S
7770: 65 74 54 65 78 74 75 72 65 28 20 44 33 44 58 48  etTexture( D3DXH
7780: 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65 72  ANDLE hParameter
7790: 2c 20 49 44 69 72 65 63 74 33 44 42 61 73 65 54  , IDirect3DBaseT
77a0: 65 78 74 75 72 65 39 20 70 54 65 78 74 75 72 65  exture9 pTexture
77b0: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
77c0: 20 47 65 74 54 65 78 74 75 72 65 28 20 44 33 44   GetTexture( D3D
77d0: 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74  XHANDLE hParamet
77e0: 65 72 2c 20 49 44 69 72 65 63 74 33 44 42 61 73  er, IDirect3DBas
77f0: 65 54 65 78 74 75 72 65 39 20 2a 70 70 54 65 78  eTexture9 *ppTex
7800: 74 75 72 65 29 20 3b 0d 0a 20 20 20 20 48 52 45  ture) ;..    HRE
7810: 53 55 4c 54 20 47 65 74 50 69 78 65 6c 53 68 61  SULT GetPixelSha
7820: 64 65 72 28 20 44 33 44 58 48 41 4e 44 4c 45 20  der( D3DXHANDLE 
7830: 68 50 61 72 61 6d 65 74 65 72 2c 20 49 44 69 72  hParameter, IDir
7840: 65 63 74 33 44 50 69 78 65 6c 53 68 61 64 65 72  ect3DPixelShader
7850: 39 20 2a 70 70 50 53 68 61 64 65 72 29 20 3b 0d  9 *ppPShader) ;.
7860: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74  .    HRESULT Get
7870: 56 65 72 74 65 78 53 68 61 64 65 72 28 20 44 33  VertexShader( D3
7880: 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65  DXHANDLE hParame
7890: 74 65 72 2c 20 49 44 69 72 65 63 74 33 44 56 65  ter, IDirect3DVe
78a0: 72 74 65 78 53 68 61 64 65 72 39 20 2a 70 70 56  rtexShader9 *ppV
78b0: 53 68 61 64 65 72 29 20 3b 0d 0a 0d 0a 20 20 20  Shader) ;....   
78c0: 20 2f 2f 53 65 74 20 52 61 6e 67 65 20 6f 66 20   //Set Range of 
78d0: 61 6e 20 41 72 72 61 79 20 74 6f 20 70 61 73 73  an Array to pass
78e0: 20 74 6f 20 64 65 76 69 63 65 0d 0a 20 20 20 20   to device..    
78f0: 2f 2f 55 73 65 66 75 6c 20 66 6f 72 20 73 65 6e  //Useful for sen
7900: 64 69 6e 67 20 6f 6e 6c 79 20 61 20 73 75 62 72  ding only a subr
7910: 61 6e 67 65 20 6f 66 20 61 6e 20 61 72 72 61 79  ange of an array
7920: 20 64 6f 77 6e 20 74 6f 20 74 68 65 20 64 65 76   down to the dev
7930: 69 63 65 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ice..    HRESULT
7940: 20 53 65 74 41 72 72 61 79 52 61 6e 67 65 28 20   SetArrayRange( 
7950: 44 33 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61  D3DXHANDLE hPara
7960: 6d 65 74 65 72 2c 20 55 49 4e 54 20 75 53 74 61  meter, UINT uSta
7970: 72 74 2c 20 55 49 4e 54 20 75 45 6e 64 29 20 3b  rt, UINT uEnd) ;
7980: 0d 0a 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61  ....}....interfa
7990: 63 65 20 49 44 33 44 58 45 66 66 65 63 74 20 3a  ce ID3DXEffect :
79a0: 20 49 44 33 44 58 42 61 73 65 45 66 66 65 63 74   ID3DXBaseEffect
79b0: 0d 0a 7b 0d 0a 20 20 20 20 65 78 74 65 72 6e 28  ..{..    extern(
79c0: 57 69 6e 64 6f 77 73 29 3a 0d 0a 0d 0a 20 20 20  Windows):....   
79d0: 20 2f 2f 20 50 6f 6f 6c 0d 0a 20 20 20 20 48 52   // Pool..    HR
79e0: 45 53 55 4c 54 20 47 65 74 50 6f 6f 6c 28 20 49  ESULT GetPool( I
79f0: 44 33 44 58 45 66 66 65 63 74 50 6f 6f 6c 2a 20  D3DXEffectPool* 
7a00: 70 70 50 6f 6f 6c 29 20 3b 0d 0a 0d 0a 20 20 20  ppPool) ;....   
7a10: 20 2f 2f 20 53 65 6c 65 63 74 69 6e 67 20 61 6e   // Selecting an
7a20: 64 20 73 65 74 74 69 6e 67 20 61 20 74 65 63 68  d setting a tech
7a30: 6e 69 71 75 65 0d 0a 20 20 20 20 48 52 45 53 55  nique..    HRESU
7a40: 4c 54 20 53 65 74 54 65 63 68 6e 69 71 75 65 28  LT SetTechnique(
7a50: 20 44 33 44 58 48 41 4e 44 4c 45 20 68 54 65 63   D3DXHANDLE hTec
7a60: 68 6e 69 71 75 65 29 20 3b 0d 0a 20 20 20 20 44  hnique) ;..    D
7a70: 33 44 58 48 41 4e 44 4c 45 20 47 65 74 43 75 72  3DXHANDLE GetCur
7a80: 72 65 6e 74 54 65 63 68 6e 69 71 75 65 28 29 20  rentTechnique() 
7a90: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 56  ;..    HRESULT V
7aa0: 61 6c 69 64 61 74 65 54 65 63 68 6e 69 71 75 65  alidateTechnique
7ab0: 28 20 44 33 44 58 48 41 4e 44 4c 45 20 68 54 65  ( D3DXHANDLE hTe
7ac0: 63 68 6e 69 71 75 65 29 20 3b 0d 0a 20 20 20 20  chnique) ;..    
7ad0: 48 52 45 53 55 4c 54 20 46 69 6e 64 4e 65 78 74  HRESULT FindNext
7ae0: 56 61 6c 69 64 54 65 63 68 6e 69 71 75 65 28 20  ValidTechnique( 
7af0: 44 33 44 58 48 41 4e 44 4c 45 20 68 54 65 63 68  D3DXHANDLE hTech
7b00: 6e 69 71 75 65 2c 20 44 33 44 58 48 41 4e 44 4c  nique, D3DXHANDL
7b10: 45 20 2a 70 54 65 63 68 6e 69 71 75 65 29 20 3b  E *pTechnique) ;
7b20: 0d 0a 20 20 20 20 42 4f 4f 4c 20 49 73 50 61 72  ..    BOOL IsPar
7b30: 61 6d 65 74 65 72 55 73 65 64 28 20 44 33 44 58  ameterUsed( D3DX
7b40: 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74 65  HANDLE hParamete
7b50: 72 2c 20 44 33 44 58 48 41 4e 44 4c 45 20 68 54  r, D3DXHANDLE hT
7b60: 65 63 68 6e 69 71 75 65 29 20 3b 0d 0a 0d 0a 20  echnique) ;.... 
7b70: 20 20 20 2f 2f 20 55 73 69 6e 67 20 63 75 72 72     // Using curr
7b80: 65 6e 74 20 74 65 63 68 6e 69 71 75 65 0d 0a 20  ent technique.. 
7b90: 20 20 20 2f 2f 20 42 65 67 69 6e 20 20 20 20 20     // Begin     
7ba0: 20 20 20 20 20 20 73 74 61 72 74 73 20 61 63 74        starts act
7bb0: 69 76 65 20 74 65 63 68 6e 69 71 75 65 0d 0a 20  ive technique.. 
7bc0: 20 20 20 2f 2f 20 42 65 67 69 6e 50 61 73 73 20     // BeginPass 
7bd0: 20 20 20 20 20 20 62 65 67 69 6e 73 20 61 20 70        begins a p
7be0: 61 73 73 0d 0a 20 20 20 20 2f 2f 20 43 6f 6d 6d  ass..    // Comm
7bf0: 69 74 43 68 61 6e 67 65 73 20 20 20 75 70 64 61  itChanges   upda
7c00: 74 65 73 20 63 68 61 6e 67 65 73 20 74 6f 20 61  tes changes to a
7c10: 6e 79 20 73 65 74 20 63 61 6c 6c 73 20 69 6e 20  ny set calls in 
7c20: 74 68 65 20 70 61 73 73 2e 20 20 73 68 6f 75 6c  the pass.  shoul
7c30: 64 20 62 65 20 63 61 6c 6c 65 64 20 62 65 66 6f  d be called befo
7c40: 72 65 0d 0a 20 20 20 20 2f 2f 20 20 20 20 20 20  re..    //      
7c50: 20 20 20 20 20 20 20 20 20 20 20 61 6e 79 20 44             any D
7c60: 72 61 77 50 72 69 6d 69 74 69 76 65 20 63 61 6c  rawPrimitive cal
7c70: 6c 20 74 6f 20 64 33 64 0d 0a 20 20 20 20 2f 2f  l to d3d..    //
7c80: 20 45 6e 64 50 61 73 73 20 20 20 20 20 20 20 20   EndPass        
7c90: 20 65 6e 64 73 20 61 20 70 61 73 73 0d 0a 20 20   ends a pass..  
7ca0: 20 20 2f 2f 20 45 6e 64 20 20 20 20 20 20 20 20    // End        
7cb0: 20 20 20 20 20 65 6e 64 73 20 61 63 74 69 76 65       ends active
7cc0: 20 74 65 63 68 6e 69 71 75 65 0d 0a 20 20 20 20   technique..    
7cd0: 48 52 45 53 55 4c 54 20 42 65 67 69 6e 28 20 55  HRESULT Begin( U
7ce0: 49 4e 54 20 2a 70 50 61 73 73 65 73 2c 20 44 57  INT *pPasses, DW
7cf0: 4f 52 44 20 46 6c 61 67 73 29 20 3b 0d 0a 20 20  ORD Flags) ;..  
7d00: 20 20 48 52 45 53 55 4c 54 20 42 65 67 69 6e 50    HRESULT BeginP
7d10: 61 73 73 28 20 55 49 4e 54 20 50 61 73 73 29 20  ass( UINT Pass) 
7d20: 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 43  ;..    HRESULT C
7d30: 6f 6d 6d 69 74 43 68 61 6e 67 65 73 28 29 20 3b  ommitChanges() ;
7d40: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 45 6e  ..    HRESULT En
7d50: 64 50 61 73 73 28 29 20 3b 0d 0a 20 20 20 20 48  dPass() ;..    H
7d60: 52 45 53 55 4c 54 20 45 6e 64 28 29 20 3b 0d 0a  RESULT End() ;..
7d70: 0d 0a 20 20 20 20 2f 2f 20 4d 61 6e 61 67 69 6e  ..    // Managin
7d80: 67 20 44 33 44 20 44 65 76 69 63 65 0d 0a 20 20  g D3D Device..  
7d90: 20 20 48 52 45 53 55 4c 54 20 47 65 74 44 65 76    HRESULT GetDev
7da0: 69 63 65 28 20 49 44 69 72 65 63 74 33 44 44 65  ice( IDirect3DDe
7db0: 76 69 63 65 39 2a 20 70 70 44 65 76 69 63 65 29  vice9* ppDevice)
7dc0: 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20   ;..    HRESULT 
7dd0: 4f 6e 4c 6f 73 74 44 65 76 69 63 65 28 29 20 3b  OnLostDevice() ;
7de0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4f 6e  ..    HRESULT On
7df0: 52 65 73 65 74 44 65 76 69 63 65 28 29 20 3b 0d  ResetDevice() ;.
7e00: 0a 0d 0a 20 20 20 20 2f 2f 20 4c 6f 67 67 69 6e  ...    // Loggin
7e10: 67 20 64 65 76 69 63 65 20 63 61 6c 6c 73 0d 0a  g device calls..
7e20: 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 53      HRESULT SetS
7e30: 74 61 74 65 4d 61 6e 61 67 65 72 28 20 49 44 33  tateManager( ID3
7e40: 44 58 45 66 66 65 63 74 53 74 61 74 65 4d 61 6e  DXEffectStateMan
7e50: 61 67 65 72 20 70 4d 61 6e 61 67 65 72 29 20 3b  ager pManager) ;
7e60: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65  ..    HRESULT Ge
7e70: 74 53 74 61 74 65 4d 61 6e 61 67 65 72 28 20 49  tStateManager( I
7e80: 44 33 44 58 45 66 66 65 63 74 53 74 61 74 65 4d  D3DXEffectStateM
7e90: 61 6e 61 67 65 72 20 2a 70 70 4d 61 6e 61 67 65  anager *ppManage
7ea0: 72 29 20 3b 0d 0a 0d 0a 20 20 20 20 2f 2f 20 50  r) ;....    // P
7eb0: 61 72 61 6d 65 74 65 72 20 62 6c 6f 63 6b 73 0d  arameter blocks.
7ec0: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 42 65 67  .    HRESULT Beg
7ed0: 69 6e 50 61 72 61 6d 65 74 65 72 42 6c 6f 63 6b  inParameterBlock
7ee0: 28 29 20 3b 0d 0a 20 20 20 20 44 33 44 58 48 41  () ;..    D3DXHA
7ef0: 4e 44 4c 45 20 45 6e 64 50 61 72 61 6d 65 74 65  NDLE EndParamete
7f00: 72 42 6c 6f 63 6b 28 29 20 3b 0d 0a 20 20 20 20  rBlock() ;..    
7f10: 48 52 45 53 55 4c 54 20 41 70 70 6c 79 50 61 72  HRESULT ApplyPar
7f20: 61 6d 65 74 65 72 42 6c 6f 63 6b 28 20 44 33 44  ameterBlock( D3D
7f30: 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65 74  XHANDLE hParamet
7f40: 65 72 42 6c 6f 63 6b 29 20 3b 0d 0a 20 20 20 20  erBlock) ;..    
7f50: 48 52 45 53 55 4c 54 20 44 65 6c 65 74 65 50 61  HRESULT DeletePa
7f60: 72 61 6d 65 74 65 72 42 6c 6f 63 6b 28 20 44 33  rameterBlock( D3
7f70: 44 58 48 41 4e 44 4c 45 20 68 50 61 72 61 6d 65  DXHANDLE hParame
7f80: 74 65 72 42 6c 6f 63 6b 29 20 3b 0d 0a 0d 0a 20  terBlock) ;.... 
7f90: 20 20 20 2f 2f 20 43 6c 6f 6e 69 6e 67 0d 0a 20     // Cloning.. 
7fa0: 20 20 20 48 52 45 53 55 4c 54 20 43 6c 6f 6e 65     HRESULT Clone
7fb0: 45 66 66 65 63 74 28 20 49 44 69 72 65 63 74 33  Effect( IDirect3
7fc0: 44 44 65 76 69 63 65 39 20 70 44 65 76 69 63 65  DDevice9 pDevice
7fd0: 2c 20 49 44 33 44 58 45 66 66 65 63 74 2a 20 70  , ID3DXEffect* p
7fe0: 70 45 66 66 65 63 74 29 20 3b 0d 0a 7d 0d 0a 0d  pEffect) ;..}...
7ff0: 0a 69 6e 74 65 72 66 61 63 65 20 49 44 33 44 58  .interface ID3DX
8000: 45 66 66 65 63 74 50 6f 6f 6c 20 3a 20 49 55 6e  EffectPool : IUn
8010: 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 65 78  known..{..    ex
8020: 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 3a 0d 0a  tern(Windows):..
8030: 0d 0a 20 20 20 20 2f 2f 20 4e 6f 20 70 75 62 6c  ..    // No publ
8040: 69 63 20 6d 65 74 68 6f 64 73 0d 0a 7d 0d 0a 0d  ic methods..}...
8050: 0a 69 6e 74 65 72 66 61 63 65 20 49 44 33 44 58  .interface ID3DX
8060: 45 66 66 65 63 74 53 74 61 74 65 4d 61 6e 61 67  EffectStateManag
8070: 65 72 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b  er : IUnknown..{
8080: 0d 0a 20 20 20 20 65 78 74 65 72 6e 28 57 69 6e  ..    extern(Win
8090: 64 6f 77 73 29 3a 0d 0a 0d 0a 20 20 20 20 2f 2f  dows):....    //
80a0: 20 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6d   The following m
80b0: 65 74 68 6f 64 73 20 61 72 65 20 63 61 6c 6c 65  ethods are calle
80c0: 64 20 62 79 20 74 68 65 20 45 66 66 65 63 74 20  d by the Effect 
80d0: 77 68 65 6e 20 69 74 20 77 61 6e 74 73 20 74 6f  when it wants to
80e0: 20 6d 61 6b 65 0d 0a 20 20 20 20 2f 2f 20 74 68   make..    // th
80f0: 65 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20  e corresponding 
8100: 64 65 76 69 63 65 20 63 61 6c 6c 2e 20 20 4e 6f  device call.  No
8110: 74 65 20 74 68 61 74 3a 0d 0a 20 20 20 20 2f 2f  te that:..    //
8120: 20 31 2e 20 55 73 65 72 73 20 6d 61 6e 61 67 65   1. Users manage
8130: 20 74 68 65 20 73 74 61 74 65 20 61 6e 64 20 61   the state and a
8140: 72 65 20 74 68 65 72 65 66 6f 72 65 20 72 65 73  re therefore res
8150: 70 6f 6e 73 69 62 6c 65 20 66 6f 72 20 6d 61 6b  ponsible for mak
8160: 69 6e 67 20 74 68 65 0d 0a 20 20 20 20 2f 2f 20  ing the..    // 
8170: 20 20 20 74 68 65 20 63 6f 72 72 65 73 70 6f 6e     the correspon
8180: 64 69 6e 67 20 64 65 76 69 63 65 20 63 61 6c 6c  ding device call
8190: 73 20 74 68 65 6d 73 65 6c 76 65 73 20 69 6e 73  s themselves ins
81a0: 69 64 65 20 74 68 65 69 72 20 63 61 6c 6c 62 61  ide their callba
81b0: 63 6b 73 2e 0d 0a 20 20 20 20 2f 2f 20 32 2e 20  cks...    // 2. 
81c0: 45 66 66 65 63 74 73 20 70 61 79 20 61 74 74 65  Effects pay atte
81d0: 6e 74 69 6f 6e 20 74 6f 20 74 68 65 20 72 65 74  ntion to the ret
81e0: 75 72 6e 20 76 61 6c 75 65 73 20 6f 66 20 74 68  urn values of th
81f0: 65 20 63 61 6c 6c 62 61 63 6b 73 2c 20 61 6e 64  e callbacks, and
8200: 20 73 6f 0d 0a 20 20 20 20 2f 2f 20 20 20 20 75   so..    //    u
8210: 73 65 72 73 20 6d 75 73 74 20 70 61 79 20 61 74  sers must pay at
8220: 74 65 6e 74 69 6f 6e 20 74 6f 20 77 68 61 74 20  tention to what 
8230: 74 68 65 79 20 72 65 74 75 72 6e 20 69 6e 20 74  they return in t
8240: 68 65 69 72 20 63 61 6c 6c 62 61 63 6b 73 2e 0d  heir callbacks..
8250: 0a 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53  ...    HRESULT S
8260: 65 74 54 72 61 6e 73 66 6f 72 6d 28 20 44 33 44  etTransform( D3D
8270: 54 52 41 4e 53 46 4f 52 4d 53 54 41 54 45 54 59  TRANSFORMSTATETY
8280: 50 45 20 53 74 61 74 65 2c 20 20 44 33 44 4d 41  PE State,  D3DMA
8290: 54 52 49 58 20 2a 70 4d 61 74 72 69 78 29 20 3b  TRIX *pMatrix) ;
82a0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65  ..    HRESULT Se
82b0: 74 4d 61 74 65 72 69 61 6c 28 20 20 44 33 44 4d  tMaterial(  D3DM
82c0: 41 54 45 52 49 41 4c 39 20 2a 70 4d 61 74 65 72  ATERIAL9 *pMater
82d0: 69 61 6c 29 20 3b 0d 0a 20 20 20 20 48 52 45 53  ial) ;..    HRES
82e0: 55 4c 54 20 53 65 74 4c 69 67 68 74 28 20 44 57  ULT SetLight( DW
82f0: 4f 52 44 20 49 6e 64 65 78 2c 20 20 44 33 44 4c  ORD Index,  D3DL
8300: 49 47 48 54 39 20 2a 70 4c 69 67 68 74 29 20 3b  IGHT9 *pLight) ;
8310: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4c 69  ..    HRESULT Li
8320: 67 68 74 45 6e 61 62 6c 65 28 20 44 57 4f 52 44  ghtEnable( DWORD
8330: 20 49 6e 64 65 78 2c 20 42 4f 4f 4c 20 45 6e 61   Index, BOOL Ena
8340: 62 6c 65 29 20 3b 0d 0a 20 20 20 20 48 52 45 53  ble) ;..    HRES
8350: 55 4c 54 20 53 65 74 52 65 6e 64 65 72 53 74 61  ULT SetRenderSta
8360: 74 65 28 20 44 33 44 52 45 4e 44 45 52 53 54 41  te( D3DRENDERSTA
8370: 54 45 54 59 50 45 20 53 74 61 74 65 2c 20 44 57  TETYPE State, DW
8380: 4f 52 44 20 56 61 6c 75 65 29 20 3b 0d 0a 20 20  ORD Value) ;..  
8390: 20 20 48 52 45 53 55 4c 54 20 53 65 74 54 65 78    HRESULT SetTex
83a0: 74 75 72 65 28 20 44 57 4f 52 44 20 53 74 61 67  ture( DWORD Stag
83b0: 65 2c 20 49 44 69 72 65 63 74 33 44 42 61 73 65  e, IDirect3DBase
83c0: 54 65 78 74 75 72 65 39 20 70 54 65 78 74 75 72  Texture9 pTextur
83d0: 65 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  e) ;..    HRESUL
83e0: 54 20 53 65 74 54 65 78 74 75 72 65 53 74 61 67  T SetTextureStag
83f0: 65 53 74 61 74 65 28 20 44 57 4f 52 44 20 53 74  eState( DWORD St
8400: 61 67 65 2c 20 44 33 44 54 45 58 54 55 52 45 53  age, D3DTEXTURES
8410: 54 41 47 45 53 54 41 54 45 54 59 50 45 20 54 79  TAGESTATETYPE Ty
8420: 70 65 2c 20 44 57 4f 52 44 20 56 61 6c 75 65 29  pe, DWORD Value)
8430: 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20   ;..    HRESULT 
8440: 53 65 74 53 61 6d 70 6c 65 72 53 74 61 74 65 28  SetSamplerState(
8450: 20 44 57 4f 52 44 20 53 61 6d 70 6c 65 72 2c 20   DWORD Sampler, 
8460: 44 33 44 53 41 4d 50 4c 45 52 53 54 41 54 45 54  D3DSAMPLERSTATET
8470: 59 50 45 20 54 79 70 65 2c 20 44 57 4f 52 44 20  YPE Type, DWORD 
8480: 56 61 6c 75 65 29 20 3b 0d 0a 20 20 20 20 48 52  Value) ;..    HR
8490: 45 53 55 4c 54 20 53 65 74 4e 50 61 74 63 68 4d  ESULT SetNPatchM
84a0: 6f 64 65 28 20 46 4c 4f 41 54 20 4e 75 6d 53 65  ode( FLOAT NumSe
84b0: 67 6d 65 6e 74 73 29 20 3b 0d 0a 20 20 20 20 48  gments) ;..    H
84c0: 52 45 53 55 4c 54 20 53 65 74 46 56 46 28 20 44  RESULT SetFVF( D
84d0: 57 4f 52 44 20 46 56 46 29 20 3b 0d 0a 20 20 20  WORD FVF) ;..   
84e0: 20 48 52 45 53 55 4c 54 20 53 65 74 56 65 72 74   HRESULT SetVert
84f0: 65 78 53 68 61 64 65 72 28 20 49 44 69 72 65 63  exShader( IDirec
8500: 74 33 44 56 65 72 74 65 78 53 68 61 64 65 72 39  t3DVertexShader9
8510: 20 70 53 68 61 64 65 72 29 20 3b 0d 0a 20 20 20   pShader) ;..   
8520: 20 48 52 45 53 55 4c 54 20 53 65 74 56 65 72 74   HRESULT SetVert
8530: 65 78 53 68 61 64 65 72 43 6f 6e 73 74 61 6e 74  exShaderConstant
8540: 46 28 20 55 49 4e 54 20 52 65 67 69 73 74 65 72  F( UINT Register
8550: 49 6e 64 65 78 2c 20 20 46 4c 4f 41 54 20 2a 70  Index,  FLOAT *p
8560: 43 6f 6e 73 74 61 6e 74 44 61 74 61 2c 20 55 49  ConstantData, UI
8570: 4e 54 20 52 65 67 69 73 74 65 72 43 6f 75 6e 74  NT RegisterCount
8580: 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  ) ;..    HRESULT
8590: 20 53 65 74 56 65 72 74 65 78 53 68 61 64 65 72   SetVertexShader
85a0: 43 6f 6e 73 74 61 6e 74 49 28 20 55 49 4e 54 20  ConstantI( UINT 
85b0: 52 65 67 69 73 74 65 72 49 6e 64 65 78 2c 20 20  RegisterIndex,  
85c0: 49 4e 54 20 2a 70 43 6f 6e 73 74 61 6e 74 44 61  INT *pConstantDa
85d0: 74 61 2c 20 55 49 4e 54 20 52 65 67 69 73 74 65  ta, UINT Registe
85e0: 72 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20 48  rCount) ;..    H
85f0: 52 45 53 55 4c 54 20 53 65 74 56 65 72 74 65 78  RESULT SetVertex
8600: 53 68 61 64 65 72 43 6f 6e 73 74 61 6e 74 42 28  ShaderConstantB(
8610: 20 55 49 4e 54 20 52 65 67 69 73 74 65 72 49 6e   UINT RegisterIn
8620: 64 65 78 2c 20 20 42 4f 4f 4c 20 2a 70 43 6f 6e  dex,  BOOL *pCon
8630: 73 74 61 6e 74 44 61 74 61 2c 20 55 49 4e 54 20  stantData, UINT 
8640: 52 65 67 69 73 74 65 72 43 6f 75 6e 74 29 20 3b  RegisterCount) ;
8650: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 53 65  ..    HRESULT Se
8660: 74 50 69 78 65 6c 53 68 61 64 65 72 28 20 49 44  tPixelShader( ID
8670: 69 72 65 63 74 33 44 50 69 78 65 6c 53 68 61 64  irect3DPixelShad
8680: 65 72 39 20 70 53 68 61 64 65 72 29 20 3b 0d 0a  er9 pShader) ;..
8690: 20 20 20 20 48 52 45 53 55 4c 54 20 53 65 74 50      HRESULT SetP
86a0: 69 78 65 6c 53 68 61 64 65 72 43 6f 6e 73 74 61  ixelShaderConsta
86b0: 6e 74 46 28 20 55 49 4e 54 20 52 65 67 69 73 74  ntF( UINT Regist
86c0: 65 72 49 6e 64 65 78 2c 20 20 46 4c 4f 41 54 20  erIndex,  FLOAT 
86d0: 2a 70 43 6f 6e 73 74 61 6e 74 44 61 74 61 2c 20  *pConstantData, 
86e0: 55 49 4e 54 20 52 65 67 69 73 74 65 72 43 6f 75  UINT RegisterCou
86f0: 6e 74 29 20 3b 0d 0a 20 20 20 20 48 52 45 53 55  nt) ;..    HRESU
8700: 4c 54 20 53 65 74 50 69 78 65 6c 53 68 61 64 65  LT SetPixelShade
8710: 72 43 6f 6e 73 74 61 6e 74 49 28 20 55 49 4e 54  rConstantI( UINT
8720: 20 52 65 67 69 73 74 65 72 49 6e 64 65 78 2c 20   RegisterIndex, 
8730: 20 49 4e 54 20 2a 70 43 6f 6e 73 74 61 6e 74 44   INT *pConstantD
8740: 61 74 61 2c 20 55 49 4e 54 20 52 65 67 69 73 74  ata, UINT Regist
8750: 65 72 43 6f 75 6e 74 29 20 3b 0d 0a 20 20 20 20  erCount) ;..    
8760: 48 52 45 53 55 4c 54 20 53 65 74 50 69 78 65 6c  HRESULT SetPixel
8770: 53 68 61 64 65 72 43 6f 6e 73 74 61 6e 74 42 28  ShaderConstantB(
8780: 20 55 49 4e 54 20 52 65 67 69 73 74 65 72 49 6e   UINT RegisterIn
8790: 64 65 78 2c 20 20 42 4f 4f 4c 20 2a 70 43 6f 6e  dex,  BOOL *pCon
87a0: 73 74 61 6e 74 44 61 74 61 2c 20 55 49 4e 54 20  stantData, UINT 
87b0: 52 65 67 69 73 74 65 72 43 6f 75 6e 74 29 20 3b  RegisterCount) ;
87c0: 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65  ..}....interface
87d0: 20 49 44 33 44 58 49 6e 63 6c 75 64 65 0d 0a 7b   ID3DXInclude..{
87e0: 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 4f 70  ..    HRESULT Op
87f0: 65 6e 28 44 33 44 58 49 4e 43 4c 55 44 45 5f 54  en(D3DXINCLUDE_T
8800: 59 50 45 20 49 6e 63 6c 75 64 65 54 79 70 65 2c  YPE IncludeType,
8810: 20 4c 50 43 53 54 52 20 70 46 69 6c 65 4e 61 6d   LPCSTR pFileNam
8820: 65 2c 20 4c 50 43 56 4f 49 44 20 70 50 61 72 65  e, LPCVOID pPare
8830: 6e 74 44 61 74 61 2c 20 4c 50 43 56 4f 49 44 20  ntData, LPCVOID 
8840: 2a 70 70 44 61 74 61 2c 20 55 49 4e 54 20 2a 70  *ppData, UINT *p
8850: 42 79 74 65 73 29 3b 0d 0a 20 20 20 20 48 52 45  Bytes);..    HRE
8860: 53 55 4c 54 20 43 6c 6f 73 65 28 4c 50 43 56 4f  SULT Close(LPCVO
8870: 49 44 20 70 44 61 74 61 29 3b 0d 0a 7d 0d 0a 0d  ID pData);..}...
8880: 0a 2f 2f 20 44 33 44 58 20 46 75 6e 63 74 69 6f  .// D3DX Functio
8890: 6e 73 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ns -------------
88a0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
88b0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
88c0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
88d0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  ----------------
88e0: 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0d 0a 65 78 74 65  ----------..exte
88f0: 72 6e 28 57 69 6e 64 6f 77 73 29 0d 0a 7b 0d 0a  rn(Windows)..{..
8900: 09 75 69 6e 74 20 44 33 44 58 47 65 74 53 68 61  .uint D3DXGetSha
8910: 64 65 72 56 65 72 73 69 6f 6e 28 75 69 6e 74 2a  derVersion(uint*
8920: 20 70 46 75 6e 63 74 69 6f 6e 29 3b 0d 0a 0d 0a   pFunction);....
8930: 09 48 52 45 53 55 4c 54 20 44 33 44 58 43 68 65  .HRESULT D3DXChe
8940: 63 6b 54 65 78 74 75 72 65 52 65 71 75 69 72 65  ckTextureRequire
8950: 6d 65 6e 74 73 28 0d 0a 09 20 20 20 20 20 20 20  ments(...       
8960: 20 49 44 69 72 65 63 74 33 44 44 65 76 69 63 65   IDirect3DDevice
8970: 39 20 20 20 20 20 20 20 20 20 70 44 65 76 69 63  9         pDevic
8980: 65 2c 0d 0a 09 20 20 20 20 20 20 20 20 55 49 4e  e,...        UIN
8990: 54 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  T*              
89a0: 20 20 20 20 20 20 20 70 57 69 64 74 68 2c 0d 0a         pWidth,..
89b0: 09 20 20 20 20 20 20 20 20 55 49 4e 54 2a 20 20  .        UINT*  
89c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
89d0: 20 20 20 70 48 65 69 67 68 74 2c 0d 0a 09 20 20     pHeight,...  
89e0: 20 20 20 20 20 20 55 49 4e 54 2a 20 20 20 20 20        UINT*     
89f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8a00: 70 4e 75 6d 4d 69 70 4c 65 76 65 6c 73 2c 0d 0a  pNumMipLevels,..
8a10: 09 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 20  .        DWORD  
8a20: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8a30: 20 20 20 55 73 61 67 65 2c 0d 0a 09 20 20 20 20     Usage,...    
8a40: 20 20 20 20 44 33 44 46 4f 52 4d 41 54 2a 20 20      D3DFORMAT*  
8a50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 46                pF
8a60: 6f 72 6d 61 74 2c 0d 0a 09 20 20 20 20 20 20 20  ormat,...       
8a70: 20 44 33 44 50 4f 4f 4c 20 20 20 20 20 20 20 20   D3DPOOL        
8a80: 20 20 20 20 20 20 20 20 20 20 20 50 6f 6f 6c 29             Pool)
8a90: 20 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20 44   ;.....HRESULT D
8aa0: 33 44 58 43 72 65 61 74 65 54 65 78 74 75 72 65  3DXCreateTexture
8ab0: 28 0d 0a 09 20 20 20 20 20 20 20 20 49 44 69 72  (...        IDir
8ac0: 65 63 74 33 44 44 65 76 69 63 65 39 20 20 20 20  ect3DDevice9    
8ad0: 20 20 20 20 20 70 44 65 76 69 63 65 2c 0d 0a 09       pDevice,...
8ae0: 20 20 20 20 20 20 20 20 55 49 4e 54 20 20 20 20          UINT    
8af0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8b00: 20 20 57 69 64 74 68 2c 0d 0a 09 20 20 20 20 20    Width,...     
8b10: 20 20 20 55 49 4e 54 20 20 20 20 20 20 20 20 20     UINT         
8b20: 20 20 20 20 20 20 20 20 20 20 20 20 20 48 65 69               Hei
8b30: 67 68 74 2c 0d 0a 09 20 20 20 20 20 20 20 20 55  ght,...        U
8b40: 49 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20  INT             
8b50: 20 20 20 20 20 20 20 20 20 4d 69 70 4c 65 76 65           MipLeve
8b60: 6c 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 44 57  ls,...        DW
8b70: 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20  ORD             
8b80: 20 20 20 20 20 20 20 20 55 73 61 67 65 2c 0d 0a          Usage,..
8b90: 09 20 20 20 20 20 20 20 20 44 33 44 46 4f 52 4d  .        D3DFORM
8ba0: 41 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20  AT              
8bb0: 20 20 20 46 6f 72 6d 61 74 2c 0d 0a 09 20 20 20     Format,...   
8bc0: 20 20 20 20 20 44 33 44 50 4f 4f 4c 20 20 20 20       D3DPOOL    
8bd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 50                 P
8be0: 6f 6f 6c 2c 0d 0a 09 20 20 20 20 20 20 20 20 49  ool,...        I
8bf0: 44 69 72 65 63 74 33 44 54 65 78 74 75 72 65 39  Direct3DTexture9
8c00: 2a 20 20 20 20 20 20 20 70 70 54 65 78 74 75 72  *       ppTextur
8c10: 65 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20  e);.....HRESULT 
8c20: 44 33 44 58 43 72 65 61 74 65 43 75 62 65 54 65  D3DXCreateCubeTe
8c30: 78 74 75 72 65 28 0d 0a 09 20 20 20 20 20 20 20  xture(...       
8c40: 20 49 44 69 72 65 63 74 33 44 44 65 76 69 63 65   IDirect3DDevice
8c50: 39 20 20 20 20 20 20 20 20 20 70 44 65 76 69 63  9         pDevic
8c60: 65 2c 0d 0a 09 20 20 20 20 20 20 20 20 55 49 4e  e,...        UIN
8c70: 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  T               
8c80: 20 20 20 20 20 20 20 53 69 7a 65 2c 0d 0a 09 20         Size,... 
8c90: 20 20 20 20 20 20 20 55 49 4e 54 20 20 20 20 20         UINT     
8ca0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8cb0: 20 4d 69 70 4c 65 76 65 6c 73 2c 0d 0a 09 20 20   MipLevels,...  
8cc0: 20 20 20 20 20 20 44 57 4f 52 44 20 20 20 20 20        DWORD     
8cd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8ce0: 55 73 61 67 65 2c 0d 0a 09 20 20 20 20 20 20 20  Usage,...       
8cf0: 20 44 33 44 46 4f 52 4d 41 54 20 20 20 20 20 20   D3DFORMAT      
8d00: 20 20 20 20 20 20 20 20 20 20 20 46 6f 72 6d 61             Forma
8d10: 74 2c 0d 0a 09 20 20 20 20 20 20 20 20 44 33 44  t,...        D3D
8d20: 50 4f 4f 4c 20 20 20 20 20 20 20 20 20 20 20 20  POOL            
8d30: 20 20 20 20 20 20 20 50 6f 6f 6c 2c 0d 0a 09 20         Pool,... 
8d40: 20 20 20 20 20 20 20 49 44 69 72 65 63 74 33 44         IDirect3D
8d50: 43 75 62 65 54 65 78 74 75 72 65 39 2a 20 20 20  CubeTexture9*   
8d60: 70 70 43 75 62 65 54 65 78 74 75 72 65 29 3b 0d  ppCubeTexture);.
8d70: 0a 09 09 09 0d 0a 09 48 52 45 53 55 4c 54 20 44  .......HRESULT D
8d80: 33 44 58 43 72 65 61 74 65 54 65 78 74 75 72 65  3DXCreateTexture
8d90: 46 72 6f 6d 46 69 6c 65 41 28 0d 0a 09 09 09 4c  FromFileA(.....L
8da0: 50 44 49 52 45 43 54 33 44 44 45 56 49 43 45 39  PDIRECT3DDEVICE9
8db0: 20 70 44 65 76 69 63 65 2c 0d 0a 09 09 09 4c 50   pDevice,.....LP
8dc0: 43 54 53 54 52 20 70 53 72 63 46 69 6c 65 2c 0d  CTSTR pSrcFile,.
8dd0: 0a 09 09 09 4c 50 44 49 52 45 43 54 33 44 54 45  ....LPDIRECT3DTE
8de0: 58 54 55 52 45 39 20 2a 20 70 70 54 65 78 74 75  XTURE9 * ppTextu
8df0: 72 65 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54  re);.....HRESULT
8e00: 20 44 33 44 58 43 72 65 61 74 65 54 65 78 74 75   D3DXCreateTextu
8e10: 72 65 46 72 6f 6d 46 69 6c 65 45 78 41 28 0d 0a  reFromFileExA(..
8e20: 09 20 20 20 20 20 20 20 20 49 44 69 72 65 63 74  .        IDirect
8e30: 33 44 44 65 76 69 63 65 39 20 20 20 20 20 20 20  3DDevice9       
8e40: 20 20 70 44 65 76 69 63 65 2c 0d 0a 09 20 20 20    pDevice,...   
8e50: 20 20 20 20 20 4c 50 43 53 54 52 20 20 20 20 20       LPCSTR     
8e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70                 p
8e70: 53 72 63 46 69 6c 65 2c 0d 0a 09 20 20 20 20 20  SrcFile,...     
8e80: 20 20 20 55 49 4e 54 20 20 20 20 20 20 20 20 20     UINT         
8e90: 20 20 20 20 20 20 20 20 20 20 20 20 20 57 69 64               Wid
8ea0: 74 68 2c 0d 0a 09 20 20 20 20 20 20 20 20 55 49  th,...        UI
8eb0: 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20  NT              
8ec0: 20 20 20 20 20 20 20 20 48 65 69 67 68 74 2c 0d          Height,.
8ed0: 0a 09 20 20 20 20 20 20 20 20 55 49 4e 54 20 20  ..        UINT  
8ee0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8ef0: 20 20 20 20 4d 69 70 4c 65 76 65 6c 73 2c 0d 0a      MipLevels,..
8f00: 09 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 20  .        DWORD  
8f10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8f20: 20 20 20 55 73 61 67 65 2c 0d 0a 09 20 20 20 20     Usage,...    
8f30: 20 20 20 20 44 33 44 46 4f 52 4d 41 54 20 20 20      D3DFORMAT   
8f40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6f                Fo
8f50: 72 6d 61 74 2c 0d 0a 09 20 20 20 20 20 20 20 20  rmat,...        
8f60: 44 33 44 50 4f 4f 4c 20 20 20 20 20 20 20 20 20  D3DPOOL         
8f70: 20 20 20 20 20 20 20 20 20 20 50 6f 6f 6c 2c 0d            Pool,.
8f80: 0a 09 20 20 20 20 20 20 20 20 44 57 4f 52 44 20  ..        DWORD 
8f90: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8fa0: 20 20 20 20 46 69 6c 74 65 72 2c 0d 0a 09 20 20      Filter,...  
8fb0: 20 20 20 20 20 20 44 57 4f 52 44 20 20 20 20 20        DWORD     
8fc0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
8fd0: 4d 69 70 46 69 6c 74 65 72 2c 0d 0a 09 20 20 20  MipFilter,...   
8fe0: 20 20 20 20 20 44 33 44 43 4f 4c 4f 52 20 20 20       D3DCOLOR   
8ff0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43                 C
9000: 6f 6c 6f 72 4b 65 79 2c 0d 0a 09 20 20 20 20 20  olorKey,...     
9010: 20 20 20 44 33 44 58 49 4d 41 47 45 5f 49 4e 46     D3DXIMAGE_INF
9020: 4f 2a 20 20 20 20 20 20 20 20 20 20 20 70 53 72  O*           pSr
9030: 63 49 6e 66 6f 2c 0d 0a 09 20 20 20 20 20 20 20  cInfo,...       
9040: 20 50 41 4c 45 54 54 45 45 4e 54 52 59 2a 20 20   PALETTEENTRY*  
9050: 20 20 20 20 20 20 20 20 20 20 20 70 50 61 6c 65             pPale
9060: 74 74 65 2c 0d 0a 09 20 20 20 20 20 20 20 20 49  tte,...        I
9070: 44 69 72 65 63 74 33 44 54 65 78 74 75 72 65 39  Direct3DTexture9
9080: 2a 20 20 20 20 20 20 20 70 70 54 65 78 74 75 72  *       ppTextur
9090: 65 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20  e);.....HRESULT 
90a0: 44 33 44 58 43 72 65 61 74 65 43 75 62 65 54 65  D3DXCreateCubeTe
90b0: 78 74 75 72 65 46 72 6f 6d 46 69 6c 65 45 78 41  xtureFromFileExA
90c0: 28 0d 0a 09 20 20 20 20 20 20 20 20 49 44 69 72  (...        IDir
90d0: 65 63 74 33 44 44 65 76 69 63 65 39 20 20 20 20  ect3DDevice9    
90e0: 20 20 20 20 20 70 44 65 76 69 63 65 2c 0d 0a 09       pDevice,...
90f0: 20 20 20 20 20 20 20 20 4c 50 43 53 54 52 20 20          LPCSTR  
9100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9110: 20 20 70 53 72 63 46 69 6c 65 2c 0d 0a 09 20 20    pSrcFile,...  
9120: 20 20 20 20 20 20 55 49 4e 54 20 20 20 20 20 20        UINT      
9130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9140: 53 69 7a 65 2c 0d 0a 09 20 20 20 20 20 20 20 20  Size,...        
9150: 55 49 4e 54 20 20 20 20 20 20 20 20 20 20 20 20  UINT            
9160: 20 20 20 20 20 20 20 20 20 20 4d 69 70 4c 65 76            MipLev
9170: 65 6c 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 44  els,...        D
9180: 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 20  WORD            
9190: 20 20 20 20 20 20 20 20 20 55 73 61 67 65 2c 0d           Usage,.
91a0: 0a 09 20 20 20 20 20 20 20 20 44 33 44 46 4f 52  ..        D3DFOR
91b0: 4d 41 54 20 20 20 20 20 20 20 20 20 20 20 20 20  MAT             
91c0: 20 20 20 20 46 6f 72 6d 61 74 2c 0d 0a 09 20 20      Format,...  
91d0: 20 20 20 20 20 20 44 33 44 50 4f 4f 4c 20 20 20        D3DPOOL   
91e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
91f0: 50 6f 6f 6c 2c 0d 0a 09 20 20 20 20 20 20 20 20  Pool,...        
9200: 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20  DWORD           
9210: 20 20 20 20 20 20 20 20 20 20 46 69 6c 74 65 72            Filter
9220: 2c 0d 0a 09 20 20 20 20 20 20 20 20 44 57 4f 52  ,...        DWOR
9230: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  D               
9240: 20 20 20 20 20 20 4d 69 70 46 69 6c 74 65 72 2c        MipFilter,
9250: 0d 0a 09 20 20 20 20 20 20 20 20 44 33 44 43 4f  ...        D3DCO
9260: 4c 4f 52 20 20 20 20 20 20 20 20 20 20 20 20 20  LOR             
9270: 20 20 20 20 20 43 6f 6c 6f 72 4b 65 79 2c 0d 0a       ColorKey,..
9280: 09 20 20 20 20 20 20 20 20 44 33 44 58 49 4d 41  .        D3DXIMA
9290: 47 45 5f 49 4e 46 4f 2a 20 20 20 20 20 20 20 20  GE_INFO*        
92a0: 20 20 20 70 53 72 63 49 6e 66 6f 2c 0d 0a 09 20     pSrcInfo,... 
92b0: 20 20 20 20 20 20 20 50 41 4c 45 54 54 45 45 4e         PALETTEEN
92c0: 54 52 59 2a 20 20 20 20 20 20 20 20 20 20 20 20  TRY*            
92d0: 20 70 50 61 6c 65 74 74 65 2c 0d 0a 09 20 20 20   pPalette,...   
92e0: 20 20 20 20 20 49 44 69 72 65 63 74 33 44 43 75       IDirect3DCu
92f0: 62 65 54 65 78 74 75 72 65 39 2a 20 20 20 70 70  beTexture9*   pp
9300: 43 75 62 65 54 65 78 74 75 72 65 29 3b 0d 0a 0d  CubeTexture);...
9310: 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 53 69  ..HRESULT D3DXSi
9320: 6d 70 6c 69 66 79 4d 65 73 68 28 0d 0a 09 20 20  mplifyMesh(...  
9330: 20 20 20 20 20 20 49 44 33 44 58 4d 65 73 68 20        ID3DXMesh 
9340: 70 4d 65 73 68 2c 0d 0a 09 20 20 20 20 20 20 20  pMesh,...       
9350: 20 20 44 57 4f 52 44 2a 20 70 41 64 6a 61 63 65    DWORD* pAdjace
9360: 6e 63 79 2c 0d 0a 09 20 20 20 20 20 20 20 20 20  ncy,...         
9370: 44 33 44 58 41 54 54 52 49 42 55 54 45 57 45 49  D3DXATTRIBUTEWEI
9380: 47 48 54 53 20 2a 70 56 65 72 74 65 78 41 74 74  GHTS *pVertexAtt
9390: 72 69 62 75 74 65 57 65 69 67 68 74 73 2c 0d 0a  ributeWeights,..
93a0: 09 20 20 20 20 20 20 20 20 20 46 4c 4f 41 54 20  .         FLOAT 
93b0: 2a 70 56 65 72 74 65 78 57 65 69 67 68 74 73 2c  *pVertexWeights,
93c0: 0d 0a 09 20 20 20 20 20 20 20 20 44 57 4f 52 44  ...        DWORD
93d0: 20 4d 69 6e 56 61 6c 75 65 2c 0d 0a 09 20 20 20   MinValue,...   
93e0: 20 20 20 20 20 44 57 4f 52 44 20 4f 70 74 69 6f       DWORD Optio
93f0: 6e 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 49 44  ns,...        ID
9400: 33 44 58 4d 65 73 68 2a 20 70 70 4d 65 73 68 29  3DXMesh* ppMesh)
9410: 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20 44 33  ;.....HRESULT D3
9420: 44 58 43 72 65 61 74 65 53 6b 69 6e 49 6e 66 6f  DXCreateSkinInfo
9430: 46 56 46 28 0d 0a 09 20 20 20 20 20 20 20 20 44  FVF(...        D
9440: 57 4f 52 44 20 4e 75 6d 56 65 72 74 69 63 65 73  WORD NumVertices
9450: 2c 0d 0a 09 20 20 20 20 20 20 20 20 44 57 4f 52  ,...        DWOR
9460: 44 20 46 56 46 2c 0d 0a 09 20 20 20 20 20 20 20  D FVF,...       
9470: 20 44 57 4f 52 44 20 4e 75 6d 42 6f 6e 65 73 2c   DWORD NumBones,
9480: 0d 0a 09 20 20 20 20 20 20 20 20 49 44 33 44 58  ...        ID3DX
9490: 53 6b 69 6e 49 6e 66 6f 2a 20 70 70 53 6b 69 6e  SkinInfo* ppSkin
94a0: 49 6e 66 6f 29 3b 0d 0a 0d 0a 09 44 33 44 58 56  Info);.....D3DXV
94b0: 45 43 54 4f 52 32 2a 20 44 33 44 58 56 65 63 32  ECTOR2* D3DXVec2
94c0: 54 72 61 6e 73 66 6f 72 6d 43 6f 6f 72 64 28 20  TransformCoord( 
94d0: 44 33 44 58 56 45 43 54 4f 52 32 20 2a 70 4f 75  D3DXVECTOR2 *pOu
94e0: 74 2c 20 44 33 44 58 56 45 43 54 4f 52 32 20 2a  t, D3DXVECTOR2 *
94f0: 70 56 2c 20 44 33 44 58 4d 41 54 52 49 58 20 2a  pV, D3DXMATRIX *
9500: 70 4d 20 29 3b 0d 0a 0d 0a 09 44 33 44 58 56 45  pM );.....D3DXVE
9510: 43 54 4f 52 34 2a 20 44 33 44 58 56 65 63 33 54  CTOR4* D3DXVec3T
9520: 72 61 6e 73 66 6f 72 6d 28 20 44 33 44 58 56 45  ransform( D3DXVE
9530: 43 54 4f 52 34 20 2a 70 4f 75 74 2c 20 44 33 44  CTOR4 *pOut, D3D
9540: 58 56 45 43 54 4f 52 33 20 2a 70 56 2c 20 44 33  XVECTOR3 *pV, D3
9550: 44 58 4d 41 54 52 49 58 20 2a 70 4d 20 29 3b 0d  DXMATRIX *pM );.
9560: 0a 0d 0a 09 44 33 44 58 56 45 43 54 4f 52 33 2a  ....D3DXVECTOR3*
9570: 20 44 33 44 58 56 65 63 33 54 72 61 6e 73 66 6f   D3DXVec3Transfo
9580: 72 6d 43 6f 6f 72 64 28 20 44 33 44 58 56 45 43  rmCoord( D3DXVEC
9590: 54 4f 52 33 20 2a 70 4f 75 74 2c 20 44 33 44 58  TOR3 *pOut, D3DX
95a0: 56 45 43 54 4f 52 33 20 2a 70 56 2c 20 44 33 44  VECTOR3 *pV, D3D
95b0: 58 4d 41 54 52 49 58 20 2a 70 4d 20 29 3b 0d 0a  XMATRIX *pM );..
95c0: 0d 0a 09 44 33 44 58 56 45 43 54 4f 52 34 2a 20  ...D3DXVECTOR4* 
95d0: 44 33 44 58 56 65 63 34 54 72 61 6e 73 66 6f 72  D3DXVec4Transfor
95e0: 6d 28 20 44 33 44 58 56 45 43 54 4f 52 34 20 2a  m( D3DXVECTOR4 *
95f0: 70 4f 75 74 2c 20 44 33 44 58 56 45 43 54 4f 52  pOut, D3DXVECTOR
9600: 34 20 2a 70 56 2c 20 44 33 44 58 4d 41 54 52 49  4 *pV, D3DXMATRI
9610: 58 20 2a 70 4d 20 29 3b 0d 0a 0d 0a 09 44 33 44  X *pM );.....D3D
9620: 58 4d 41 54 52 49 58 2a 20 44 33 44 58 4d 61 74  XMATRIX* D3DXMat
9630: 72 69 78 54 72 61 6e 73 70 6f 73 65 28 20 44 33  rixTranspose( D3
9640: 44 58 4d 41 54 52 49 58 20 2a 70 4f 75 74 2c 20  DXMATRIX *pOut, 
9650: 44 33 44 58 4d 41 54 52 49 58 20 2a 70 4d 20 29  D3DXMATRIX *pM )
9660: 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41 54 52 49 58  ;.....D3DXMATRIX
9670: 2a 20 44 33 44 58 4d 61 74 72 69 78 4d 75 6c 74  * D3DXMatrixMult
9680: 69 70 6c 79 28 20 44 33 44 58 4d 41 54 52 49 58  iply( D3DXMATRIX
9690: 20 2a 70 4f 75 74 2c 20 44 33 44 58 4d 41 54 52   *pOut, D3DXMATR
96a0: 49 58 20 2a 70 4d 31 2c 20 44 33 44 58 4d 41 54  IX *pM1, D3DXMAT
96b0: 52 49 58 20 2a 70 4d 32 20 29 3b 0d 0a 0d 0a 09  RIX *pM2 );.....
96c0: 44 33 44 58 4d 41 54 52 49 58 2a 20 44 33 44 58  D3DXMATRIX* D3DX
96d0: 4d 61 74 72 69 78 49 6e 76 65 72 73 65 28 20 44  MatrixInverse( D
96e0: 33 44 58 4d 41 54 52 49 58 20 2a 70 4f 75 74 2c  3DXMATRIX *pOut,
96f0: 20 46 4c 4f 41 54 20 2a 70 44 65 74 65 72 6d 69   FLOAT *pDetermi
9700: 6e 61 6e 74 2c 20 44 33 44 58 4d 41 54 52 49 58  nant, D3DXMATRIX
9710: 20 2a 70 4d 20 29 3b 0d 0a 0d 0a 09 44 33 44 58   *pM );.....D3DX
9720: 4d 41 54 52 49 58 2a 20 44 33 44 58 4d 61 74 72  MATRIX* D3DXMatr
9730: 69 78 53 63 61 6c 69 6e 67 28 20 44 33 44 58 4d  ixScaling( D3DXM
9740: 41 54 52 49 58 20 2a 70 4f 75 74 2c 20 46 4c 4f  ATRIX *pOut, FLO
9750: 41 54 20 73 78 2c 20 46 4c 4f 41 54 20 73 79 2c  AT sx, FLOAT sy,
9760: 20 46 4c 4f 41 54 20 73 7a 20 29 3b 0d 0a 0d 0a   FLOAT sz );....
9770: 09 44 33 44 58 4d 41 54 52 49 58 2a 20 44 33 44  .D3DXMATRIX* D3D
9780: 58 4d 61 74 72 69 78 54 72 61 6e 73 6c 61 74 69  XMatrixTranslati
9790: 6f 6e 28 20 44 33 44 58 4d 41 54 52 49 58 20 2a  on( D3DXMATRIX *
97a0: 70 4f 75 74 2c 20 46 4c 4f 41 54 20 78 2c 20 46  pOut, FLOAT x, F
97b0: 4c 4f 41 54 20 79 2c 20 46 4c 4f 41 54 20 7a 20  LOAT y, FLOAT z 
97c0: 29 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41 54 52 49  );.....D3DXMATRI
97d0: 58 2a 20 44 33 44 58 4d 61 74 72 69 78 52 6f 74  X* D3DXMatrixRot
97e0: 61 74 69 6f 6e 58 28 20 44 33 44 58 4d 41 54 52  ationX( D3DXMATR
97f0: 49 58 20 2a 70 4f 75 74 2c 20 46 4c 4f 41 54 20  IX *pOut, FLOAT 
9800: 41 6e 67 6c 65 20 29 3b 0d 0a 0d 0a 09 44 33 44  Angle );.....D3D
9810: 58 4d 41 54 52 49 58 2a 20 44 33 44 58 4d 61 74  XMATRIX* D3DXMat
9820: 72 69 78 52 6f 74 61 74 69 6f 6e 59 28 20 44 33  rixRotationY( D3
9830: 44 58 4d 41 54 52 49 58 20 2a 70 4f 75 74 2c 20  DXMATRIX *pOut, 
9840: 46 4c 4f 41 54 20 41 6e 67 6c 65 20 29 3b 0d 0a  FLOAT Angle );..
9850: 0d 0a 09 44 33 44 58 4d 41 54 52 49 58 2a 20 44  ...D3DXMATRIX* D
9860: 33 44 58 4d 61 74 72 69 78 52 6f 74 61 74 69 6f  3DXMatrixRotatio
9870: 6e 5a 28 20 44 33 44 58 4d 41 54 52 49 58 20 2a  nZ( D3DXMATRIX *
9880: 70 4f 75 74 2c 20 46 4c 4f 41 54 20 41 6e 67 6c  pOut, FLOAT Angl
9890: 65 20 29 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41 54  e );.....D3DXMAT
98a0: 52 49 58 2a 20 44 33 44 58 4d 61 74 72 69 78 52  RIX* D3DXMatrixR
98b0: 6f 74 61 74 69 6f 6e 51 75 61 74 65 72 6e 69 6f  otationQuaternio
98c0: 6e 28 20 44 33 44 58 4d 41 54 52 49 58 20 2a 70  n( D3DXMATRIX *p
98d0: 4f 75 74 2c 20 44 33 44 58 51 55 41 54 45 52 4e  Out, D3DXQUATERN
98e0: 49 4f 4e 20 2a 70 51 29 3b 0d 0a 0d 0a 09 44 33  ION *pQ);.....D3
98f0: 44 58 4d 41 54 52 49 58 2a 20 44 33 44 58 4d 61  DXMATRIX* D3DXMa
9900: 74 72 69 78 52 6f 74 61 74 69 6f 6e 59 61 77 50  trixRotationYawP
9910: 69 74 63 68 52 6f 6c 6c 28 20 44 33 44 58 4d 41  itchRoll( D3DXMA
9920: 54 52 49 58 20 2a 70 4f 75 74 2c 20 46 4c 4f 41  TRIX *pOut, FLOA
9930: 54 20 59 61 77 2c 20 46 4c 4f 41 54 20 50 69 74  T Yaw, FLOAT Pit
9940: 63 68 2c 20 46 4c 4f 41 54 20 52 6f 6c 6c 20 29  ch, FLOAT Roll )
9950: 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41 54 52 49 58  ;.....D3DXMATRIX
9960: 2a 20 44 33 44 58 4d 61 74 72 69 78 41 66 66 69  * D3DXMatrixAffi
9970: 6e 65 54 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e  neTransformation
9980: 32 44 28 20 44 33 44 58 4d 41 54 52 49 58 20 2a  2D( D3DXMATRIX *
9990: 70 4f 75 74 2c 20 46 4c 4f 41 54 20 53 63 61 6c  pOut, FLOAT Scal
99a0: 69 6e 67 2c 20 44 33 44 58 56 45 43 54 4f 52 32  ing, D3DXVECTOR2
99b0: 20 2a 70 52 6f 74 61 74 69 6f 6e 43 65 6e 74 65   *pRotationCente
99c0: 72 2c 0d 0a 09 20 20 20 20 20 20 66 6c 6f 61 74  r,...      float
99d0: 20 52 6f 74 61 74 69 6f 6e 2c 20 44 33 44 58 56   Rotation, D3DXV
99e0: 45 43 54 4f 52 32 20 2a 70 54 72 61 6e 73 6c 61  ECTOR2 *pTransla
99f0: 74 69 6f 6e 29 3b 0d 0a 0d 0a 09 44 33 44 58 4d  tion);.....D3DXM
9a00: 41 54 52 49 58 2a 20 44 33 44 58 4d 61 74 72 69  ATRIX* D3DXMatri
9a10: 78 50 65 72 73 70 65 63 74 69 76 65 46 6f 76 4c  xPerspectiveFovL
9a20: 48 28 20 44 33 44 58 4d 41 54 52 49 58 20 2a 70  H( D3DXMATRIX *p
9a30: 4f 75 74 2c 20 46 4c 4f 41 54 20 66 6f 76 79 2c  Out, FLOAT fovy,
9a40: 20 46 4c 4f 41 54 20 41 73 70 65 63 74 2c 20 46   FLOAT Aspect, F
9a50: 4c 4f 41 54 20 7a 6e 2c 20 46 4c 4f 41 54 20 7a  LOAT zn, FLOAT z
9a60: 66 20 29 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41 54  f );.....D3DXMAT
9a70: 52 49 58 2a 20 44 33 44 58 4d 61 74 72 69 78 4f  RIX* D3DXMatrixO
9a80: 72 74 68 6f 4c 48 28 20 44 33 44 58 4d 41 54 52  rthoLH( D3DXMATR
9a90: 49 58 20 2a 70 4f 75 74 2c 20 46 4c 4f 41 54 20  IX *pOut, FLOAT 
9aa0: 77 2c 20 46 4c 4f 41 54 20 68 2c 20 46 4c 4f 41  w, FLOAT h, FLOA
9ab0: 54 20 7a 6e 2c 20 46 4c 4f 41 54 20 7a 66 20 29  T zn, FLOAT zf )
9ac0: 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41 54 52 49 58  ;.....D3DXMATRIX
9ad0: 2a 20 44 33 44 58 4d 61 74 72 69 78 4f 72 74 68  * D3DXMatrixOrth
9ae0: 6f 4f 66 66 43 65 6e 74 65 72 4c 48 28 20 44 33  oOffCenterLH( D3
9af0: 44 58 4d 41 54 52 49 58 20 2a 70 4f 75 74 2c 20  DXMATRIX *pOut, 
9b00: 46 4c 4f 41 54 20 6c 2c 20 46 4c 4f 41 54 20 72  FLOAT l, FLOAT r
9b10: 2c 20 46 4c 4f 41 54 20 62 2c 20 46 4c 4f 41 54  , FLOAT b, FLOAT
9b20: 20 74 2c 20 46 4c 4f 41 54 20 7a 6e 2c 0d 0a 09   t, FLOAT zn,...
9b30: 20 20 20 20 20 20 46 4c 4f 41 54 20 7a 66 20 29        FLOAT zf )
9b40: 3b 0d 0a 0d 0a 09 76 6f 69 64 20 44 33 44 58 51  ;.....void D3DXQ
9b50: 75 61 74 65 72 6e 69 6f 6e 54 6f 41 78 69 73 41  uaternionToAxisA
9b60: 6e 67 6c 65 28 20 44 33 44 58 51 55 41 54 45 52  ngle( D3DXQUATER
9b70: 4e 49 4f 4e 20 2a 70 51 2c 20 44 33 44 58 56 45  NION *pQ, D3DXVE
9b80: 43 54 4f 52 33 20 2a 70 41 78 69 73 2c 20 46 4c  CTOR3 *pAxis, FL
9b90: 4f 41 54 20 2a 70 41 6e 67 6c 65 20 29 3b 0d 0a  OAT *pAngle );..
9ba0: 0d 0a 09 44 33 44 58 51 55 41 54 45 52 4e 49 4f  ...D3DXQUATERNIO
9bb0: 4e 2a 20 44 33 44 58 51 75 61 74 65 72 6e 69 6f  N* D3DXQuaternio
9bc0: 6e 52 6f 74 61 74 69 6f 6e 4d 61 74 72 69 78 28  nRotationMatrix(
9bd0: 20 44 33 44 58 51 55 41 54 45 52 4e 49 4f 4e 20   D3DXQUATERNION 
9be0: 2a 70 4f 75 74 2c 20 44 33 44 58 4d 41 54 52 49  *pOut, D3DXMATRI
9bf0: 58 20 2a 70 4d 29 3b 0d 0a 0d 0a 09 44 33 44 58  X *pM);.....D3DX
9c00: 51 55 41 54 45 52 4e 49 4f 4e 2a 20 44 33 44 58  QUATERNION* D3DX
9c10: 51 75 61 74 65 72 6e 69 6f 6e 4e 6f 72 6d 61 6c  QuaternionNormal
9c20: 69 7a 65 28 20 44 33 44 58 51 55 41 54 45 52 4e  ize( D3DXQUATERN
9c30: 49 4f 4e 20 2a 70 4f 75 74 2c 20 44 33 44 58 51  ION *pOut, D3DXQ
9c40: 55 41 54 45 52 4e 49 4f 4e 20 2a 70 51 20 29 3b  UATERNION *pQ );
9c50: 0d 0a 0d 0a 09 44 33 44 58 50 4c 41 4e 45 2a 20  .....D3DXPLANE* 
9c60: 44 33 44 58 50 6c 61 6e 65 4e 6f 72 6d 61 6c 69  D3DXPlaneNormali
9c70: 7a 65 28 20 44 33 44 58 50 4c 41 4e 45 20 2a 70  ze( D3DXPLANE *p
9c80: 4f 75 74 2c 20 44 33 44 58 50 4c 41 4e 45 20 2a  Out, D3DXPLANE *
9c90: 70 50 29 3b 0d 0a 0d 0a 09 63 68 61 72 2a 20 44  pP);.....char* D
9ca0: 58 47 65 74 45 72 72 6f 72 44 65 73 63 72 69 70  XGetErrorDescrip
9cb0: 74 69 6f 6e 39 41 28 48 52 45 53 55 4c 54 20 68  tion9A(HRESULT h
9cc0: 72 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20  r);.....HRESULT 
9cd0: 44 33 44 58 43 72 65 61 74 65 45 66 66 65 63 74  D3DXCreateEffect
9ce0: 46 72 6f 6d 46 69 6c 65 41 28 0d 0a 09 20 20 20  FromFileA(...   
9cf0: 20 20 20 20 20 49 44 69 72 65 63 74 33 44 44 65       IDirect3DDe
9d00: 76 69 63 65 39 20 20 20 20 20 20 20 20 20 20 20  vice9           
9d10: 20 20 20 20 70 44 65 76 69 63 65 2c 0d 0a 09 20      pDevice,... 
9d20: 20 20 20 20 20 20 20 4c 50 43 53 54 52 20 20 20         LPCSTR   
9d30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9d40: 20 20 20 20 20 20 20 70 53 72 63 46 69 6c 65 2c         pSrcFile,
9d50: 0d 0a 09 20 20 20 20 20 20 20 20 20 44 33 44 58  ...         D3DX
9d60: 4d 41 43 52 4f 2a 20 20 20 20 20 20 20 20 20 20  MACRO*          
9d70: 20 20 20 20 20 20 70 44 65 66 69 6e 65 73 2c 0d        pDefines,.
9d80: 0a 09 20 20 20 20 20 20 20 20 49 44 33 44 58 49  ..        ID3DXI
9d90: 6e 63 6c 75 64 65 20 20 20 20 20 20 20 20 20 20  nclude          
9da0: 20 20 20 20 20 20 20 20 20 70 49 6e 63 6c 75 64           pInclud
9db0: 65 2c 0d 0a 09 20 20 20 20 20 20 20 20 44 57 4f  e,...        DWO
9dc0: 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20  RD              
9dd0: 20 20 20 20 20 20 20 20 20 20 20 20 20 46 6c 61               Fla
9de0: 67 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 49 44  gs,...        ID
9df0: 33 44 58 45 66 66 65 63 74 50 6f 6f 6c 20 20 20  3DXEffectPool   
9e00: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 50 6f               pPo
9e10: 6f 6c 2c 0d 0a 09 20 20 20 20 20 20 20 20 49 44  ol,...        ID
9e20: 33 44 58 45 66 66 65 63 74 2a 20 20 20 20 20 20  3DXEffect*      
9e30: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 70 45               ppE
9e40: 66 66 65 63 74 2c 0d 0a 09 20 20 20 20 20 20 20  ffect,...       
9e50: 20 49 44 33 44 58 42 75 66 66 65 72 2a 20 20 20   ID3DXBuffer*   
9e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
9e70: 70 70 43 6f 6d 70 69 6c 61 74 69 6f 6e 45 72 72  ppCompilationErr
9e80: 6f 72 73 29 3b 0d 0a 0d 0a 09 44 33 44 58 4d 41  ors);.....D3DXMA
9e90: 54 52 49 58 2a 20 44 33 44 58 4d 61 74 72 69 78  TRIX* D3DXMatrix
9ea0: 54 72 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 32 44  Transformation2D
9eb0: 28 20 44 33 44 58 4d 41 54 52 49 58 20 2a 70 4f  ( D3DXMATRIX *pO
9ec0: 75 74 2c 20 44 33 44 58 56 45 43 54 4f 52 32 20  ut, D3DXVECTOR2 
9ed0: 2a 70 53 63 61 6c 69 6e 67 43 65 6e 74 65 72 2c  *pScalingCenter,
9ee0: 0d 0a 20 20 20 20 20 20 66 6c 6f 61 74 20 2a 70  ..      float *p
9ef0: 53 63 61 6c 69 6e 67 52 6f 74 61 74 69 6f 6e 2c  ScalingRotation,
9f00: 20 44 33 44 58 56 45 43 54 4f 52 32 20 2a 70 53   D3DXVECTOR2 *pS
9f10: 63 61 6c 69 6e 67 2c 0d 0a 20 20 20 20 20 20 44  caling,..      D
9f20: 33 44 58 56 45 43 54 4f 52 32 20 2a 70 52 6f 74  3DXVECTOR2 *pRot
9f30: 61 74 69 6f 6e 43 65 6e 74 65 72 2c 20 66 6c 6f  ationCenter, flo
9f40: 61 74 20 52 6f 74 61 74 69 6f 6e 2c 0d 0a 20 20  at Rotation,..  
9f50: 20 20 20 20 44 33 44 58 56 45 43 54 4f 52 32 20      D3DXVECTOR2 
9f60: 2a 70 54 72 61 6e 73 6c 61 74 69 6f 6e 29 3b 0d  *pTranslation);.
9f70: 0a 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 44  ...    HRESULT D
9f80: 33 44 58 4c 6f 61 64 4d 65 73 68 46 72 6f 6d 58  3DXLoadMeshFromX
9f90: 41 28 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 53  A(..        LPCS
9fa0: 54 52 20 70 46 69 6c 65 6e 61 6d 65 2c 0d 0a 20  TR pFilename,.. 
9fb0: 20 20 20 20 20 20 20 44 57 4f 52 44 20 4f 70 74         DWORD Opt
9fc0: 69 6f 6e 73 2c 0d 0a 20 20 20 20 20 20 20 20 49  ions,..        I
9fd0: 44 69 72 65 63 74 33 44 44 65 76 69 63 65 39 20  Direct3DDevice9 
9fe0: 70 44 33 44 2c 0d 0a 20 20 20 20 20 20 20 20 49  pD3D,..        I
9ff0: 44 33 44 58 42 75 66 66 65 72 20 2a 70 70 41 64  D3DXBuffer *ppAd
a000: 6a 61 63 65 6e 63 79 2c 0d 0a 20 20 20 20 20 20  jacency,..      
a010: 20 20 49 44 33 44 58 42 75 66 66 65 72 20 2a 70    ID3DXBuffer *p
a020: 70 4d 61 74 65 72 69 61 6c 73 2c 0d 0a 20 20 20  pMaterials,..   
a030: 20 20 20 20 20 49 44 33 44 58 42 75 66 66 65 72       ID3DXBuffer
a040: 20 2a 70 70 45 66 66 65 63 74 49 6e 73 74 61 6e   *ppEffectInstan
a050: 63 65 73 2c 0d 0a 20 20 20 20 20 20 20 20 44 57  ces,..        DW
a060: 4f 52 44 20 2a 70 4e 75 6d 4d 61 74 65 72 69 61  ORD *pNumMateria
a070: 6c 73 2c 0d 0a 20 20 20 20 20 20 20 20 49 44 33  ls,..        ID3
a080: 44 58 4d 65 73 68 20 2a 70 70 4d 65 73 68 29 3b  DXMesh *ppMesh);
a090: 0d 0a 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20  ....    HRESULT 
a0a0: 44 33 44 58 43 72 65 61 74 65 50 6f 6c 79 67 6f  D3DXCreatePolygo
a0b0: 6e 28 0d 0a 20 20 20 20 20 20 20 20 49 44 69 72  n(..        IDir
a0c0: 65 63 74 33 44 44 65 76 69 63 65 39 20 20 20 70  ect3DDevice9   p
a0d0: 44 65 76 69 63 65 2c 0d 0a 20 20 20 20 20 20 20  Device,..       
a0e0: 20 46 4c 4f 41 54 20 20 20 20 20 20 20 20 20 20   FLOAT          
a0f0: 20 20 20 20 20 4c 65 6e 67 74 68 2c 0d 0a 20 20       Length,..  
a100: 20 20 20 20 20 20 55 49 4e 54 20 20 20 20 20 20        UINT      
a110: 20 20 20 20 20 20 20 20 20 20 53 69 64 65 73 2c            Sides,
a120: 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44 58 4d  ..        ID3DXM
a130: 65 73 68 2a 20 20 20 20 20 20 20 20 20 70 70 4d  esh*         ppM
a140: 65 73 68 2c 0d 0a 20 20 20 20 20 20 20 20 49 44  esh,..        ID
a150: 33 44 58 42 75 66 66 65 72 2a 20 20 20 20 20 20  3DXBuffer*      
a160: 20 70 70 41 64 6a 61 63 65 6e 63 79 29 3b 0d 0a   ppAdjacency);..
a170: 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 43  ...HRESULT D3DXC
a180: 72 65 61 74 65 42 6f 78 28 0d 0a 09 20 20 20 20  reateBox(...    
a190: 20 20 20 20 49 44 69 72 65 63 74 33 44 44 65 76      IDirect3DDev
a1a0: 69 63 65 39 20 20 20 70 44 65 76 69 63 65 2c 0d  ice9   pDevice,.
a1b0: 0a 09 20 20 20 20 20 20 20 20 46 4c 4f 41 54 20  ..        FLOAT 
a1c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 57 69                Wi
a1d0: 64 74 68 2c 0d 0a 09 20 20 20 20 20 20 20 20 46  dth,...        F
a1e0: 4c 4f 41 54 20 20 20 20 20 20 20 20 20 20 20 20  LOAT            
a1f0: 20 20 20 48 65 69 67 68 74 2c 0d 0a 09 20 20 20     Height,...   
a200: 20 20 20 20 20 46 4c 4f 41 54 20 20 20 20 20 20       FLOAT      
a210: 20 20 20 20 20 20 20 20 20 44 65 70 74 68 2c 0d           Depth,.
a220: 0a 09 20 20 20 20 20 20 20 20 49 44 33 44 58 4d  ..        ID3DXM
a230: 65 73 68 2a 20 20 20 20 20 20 20 20 20 70 70 4d  esh*         ppM
a240: 65 73 68 2c 0d 0a 09 20 20 20 20 20 20 20 20 49  esh,...        I
a250: 44 33 44 58 42 75 66 66 65 72 2a 20 20 20 20 20  D3DXBuffer*     
a260: 20 20 70 70 41 64 6a 61 63 65 6e 63 79 29 3b 0d    ppAdjacency);.
a270: 0a 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58  ....HRESULT D3DX
a280: 43 72 65 61 74 65 43 79 6c 69 6e 64 65 72 28 0d  CreateCylinder(.
a290: 0a 09 20 20 20 20 20 20 20 20 49 44 69 72 65 63  ..        IDirec
a2a0: 74 33 44 44 65 76 69 63 65 39 20 20 20 70 44 65  t3DDevice9   pDe
a2b0: 76 69 63 65 2c 0d 0a 09 20 20 20 20 20 20 20 20  vice,...        
a2c0: 46 4c 4f 41 54 20 20 20 20 20 20 20 20 20 20 20  FLOAT           
a2d0: 20 20 20 20 52 61 64 69 75 73 31 2c 0d 0a 09 20      Radius1,... 
a2e0: 20 20 20 20 20 20 20 46 4c 4f 41 54 20 20 20 20         FLOAT    
a2f0: 20 20 20 20 20 20 20 20 20 20 20 52 61 64 69 75             Radiu
a300: 73 32 2c 0d 0a 09 20 20 20 20 20 20 20 20 46 4c  s2,...        FL
a310: 4f 41 54 20 20 20 20 20 20 20 20 20 20 20 20 20  OAT             
a320: 20 20 4c 65 6e 67 74 68 2c 0d 0a 09 20 20 20 20    Length,...    
a330: 20 20 20 20 55 49 4e 54 20 20 20 20 20 20 20 20      UINT        
a340: 20 20 20 20 20 20 20 20 53 6c 69 63 65 73 2c 0d          Slices,.
a350: 0a 09 20 20 20 20 20 20 20 20 55 49 4e 54 20 20  ..        UINT  
a360: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 74                St
a370: 61 63 6b 73 2c 0d 0a 09 20 20 20 20 20 20 20 20  acks,...        
a380: 49 44 33 44 58 4d 65 73 68 2a 20 20 20 20 20 20  ID3DXMesh*      
a390: 20 20 20 70 70 4d 65 73 68 2c 0d 0a 09 20 20 20     ppMesh,...   
a3a0: 20 20 20 20 20 49 44 33 44 58 42 75 66 66 65 72       ID3DXBuffer
a3b0: 2a 20 20 20 20 20 20 20 70 70 41 64 6a 61 63 65  *       ppAdjace
a3c0: 6e 63 79 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c  ncy);.....HRESUL
a3d0: 54 20 44 33 44 58 43 72 65 61 74 65 53 70 68 65  T D3DXCreateSphe
a3e0: 72 65 28 0d 0a 09 20 20 20 20 20 20 20 20 49 44  re(...        ID
a3f0: 69 72 65 63 74 33 44 44 65 76 69 63 65 39 20 20  irect3DDevice9  
a400: 70 44 65 76 69 63 65 2c 0d 0a 09 20 20 20 20 20  pDevice,...     
a410: 20 20 20 46 4c 4f 41 54 20 20 20 20 20 20 20 20     FLOAT        
a420: 20 20 20 20 20 20 52 61 64 69 75 73 2c 0d 0a 09        Radius,...
a430: 20 20 20 20 20 20 20 20 55 49 4e 54 20 20 20 20          UINT    
a440: 20 20 20 20 20 20 20 20 20 20 20 53 6c 69 63 65             Slice
a450: 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 55 49 4e  s,...        UIN
a460: 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  T               
a470: 53 74 61 63 6b 73 2c 0d 0a 09 20 20 20 20 20 20  Stacks,...      
a480: 20 20 49 44 33 44 58 4d 65 73 68 2a 20 20 20 20    ID3DXMesh*    
a490: 20 20 20 20 70 70 4d 65 73 68 2c 0d 0a 09 20 20      ppMesh,...  
a4a0: 20 20 20 20 20 20 49 44 33 44 58 42 75 66 66 65        ID3DXBuffe
a4b0: 72 2a 20 20 20 20 20 20 70 70 41 64 6a 61 63 65  r*      ppAdjace
a4c0: 6e 63 79 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c  ncy);.....HRESUL
a4d0: 54 20 44 33 44 58 43 72 65 61 74 65 54 6f 72 75  T D3DXCreateToru
a4e0: 73 28 0d 0a 09 20 20 20 20 20 20 20 20 49 44 69  s(...        IDi
a4f0: 72 65 63 74 33 44 44 65 76 69 63 65 39 20 20 20  rect3DDevice9   
a500: 70 44 65 76 69 63 65 2c 0d 0a 09 20 20 20 20 20  pDevice,...     
a510: 20 20 20 46 4c 4f 41 54 20 20 20 20 20 20 20 20     FLOAT        
a520: 20 20 20 20 20 20 20 49 6e 6e 65 72 52 61 64 69         InnerRadi
a530: 75 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 46 4c  us,...        FL
a540: 4f 41 54 20 20 20 20 20 20 20 20 20 20 20 20 20  OAT             
a550: 20 20 4f 75 74 65 72 52 61 64 69 75 73 2c 0d 0a    OuterRadius,..
a560: 09 20 20 20 20 20 20 20 20 55 49 4e 54 20 20 20  .        UINT   
a570: 20 20 20 20 20 20 20 20 20 20 20 20 20 53 69 64               Sid
a580: 65 73 2c 0d 0a 09 20 20 20 20 20 20 20 20 55 49  es,...        UI
a590: 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20  NT              
a5a0: 20 20 52 69 6e 67 73 2c 0d 0a 09 20 20 20 20 20    Rings,...     
a5b0: 20 20 20 49 44 33 44 58 4d 65 73 68 2a 20 20 20     ID3DXMesh*   
a5c0: 20 20 20 20 20 20 70 70 4d 65 73 68 2c 0d 0a 09        ppMesh,...
a5d0: 20 20 20 20 20 20 20 20 49 44 33 44 58 42 75 66          ID3DXBuf
a5e0: 66 65 72 2a 20 20 20 20 20 20 20 70 70 41 64 6a  fer*       ppAdj
a5f0: 61 63 65 6e 63 79 29 3b 0d 0a 0d 0a 09 48 52 45  acency);.....HRE
a600: 53 55 4c 54 20 44 33 44 58 43 72 65 61 74 65 54  SULT D3DXCreateT
a610: 65 61 70 6f 74 28 0d 0a 09 20 20 20 20 20 20 20  eapot(...       
a620: 20 49 44 69 72 65 63 74 33 44 44 65 76 69 63 65   IDirect3DDevice
a630: 39 20 20 20 70 44 65 76 69 63 65 2c 0d 0a 09 20  9   pDevice,... 
a640: 20 20 20 20 20 20 20 49 44 33 44 58 4d 65 73 68         ID3DXMesh
a650: 2a 20 20 20 20 20 20 20 20 20 70 70 4d 65 73 68  *         ppMesh
a660: 2c 0d 0a 09 20 20 20 20 20 20 20 20 49 44 33 44  ,...        ID3D
a670: 58 42 75 66 66 65 72 2a 20 20 20 20 20 20 20 70  XBuffer*       p
a680: 70 41 64 6a 61 63 65 6e 63 79 29 3b 0d 0a 0d 0a  pAdjacency);....
a690: 09 48 52 45 53 55 4c 54 20 44 33 44 58 43 72 65  .HRESULT D3DXCre
a6a0: 61 74 65 46 6f 6e 74 41 28 0d 0a 20 20 20 20 20  ateFontA(..     
a6b0: 20 20 20 49 44 69 72 65 63 74 33 44 44 65 76 69     IDirect3DDevi
a6c0: 63 65 39 20 70 44 65 76 69 63 65 2c 0d 0a 09 09  ce9 pDevice,....
a6d0: 55 49 4e 54 20 48 65 69 67 68 74 2c 0d 0a 09 09  UINT Height,....
a6e0: 55 49 4e 54 20 57 69 64 74 68 2c 0d 0a 09 09 55  UINT Width,....U
a6f0: 49 4e 54 20 57 65 69 67 68 74 2c 0d 0a 09 09 55  INT Weight,....U
a700: 49 4e 54 20 4d 69 70 4c 65 76 65 6c 73 2c 0d 0a  INT MipLevels,..
a710: 09 09 42 4f 4f 4c 20 49 74 61 6c 69 63 2c 0d 0a  ..BOOL Italic,..
a720: 09 09 44 57 4f 52 44 20 43 68 61 72 53 65 74 2c  ..DWORD CharSet,
a730: 0d 0a 09 09 44 57 4f 52 44 20 4f 75 74 70 75 74  ....DWORD Output
a740: 50 72 65 63 69 73 69 6f 6e 2c 0d 0a 09 09 44 57  Precision,....DW
a750: 4f 52 44 20 51 75 61 6c 69 74 79 2c 0d 0a 09 09  ORD Quality,....
a760: 44 57 4f 52 44 20 50 69 74 63 68 41 6e 64 46 61  DWORD PitchAndFa
a770: 6d 69 6c 79 2c 0d 0a 09 09 4c 50 43 54 53 54 52  mily,....LPCTSTR
a780: 20 70 46 61 63 65 6e 61 6d 65 2c 0d 0a 09 09 49   pFacename,....I
a790: 44 33 44 58 46 6f 6e 74 20 2a 70 70 46 6f 6e 74  D3DXFont *ppFont
a7a0: 29 3b 0d 0a 0d 0a 09 48 52 45 53 55 4c 54 20 44  );.....HRESULT D
a7b0: 33 44 58 43 72 65 61 74 65 53 70 72 69 74 65 28  3DXCreateSprite(
a7c0: 0d 0a 20 20 20 20 20 20 20 20 49 44 69 72 65 63  ..        IDirec
a7d0: 74 33 44 44 65 76 69 63 65 39 20 20 20 70 44 65  t3DDevice9   pDe
a7e0: 76 69 63 65 2c 0d 0a 20 20 20 20 20 20 20 20 49  vice,..        I
a7f0: 44 33 44 58 53 70 72 69 74 65 2a 20 20 20 20 20  D3DXSprite*     
a800: 20 20 70 70 53 70 72 69 74 65 29 20 3b 0d 0a 0d    ppSprite) ;...
a810: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 44 33 44  .    HRESULT D3D
a820: 58 43 72 65 61 74 65 45 66 66 65 63 74 28 0d 0a  XCreateEffect(..
a830: 20 20 20 20 20 20 20 20 49 44 69 72 65 63 74 33          IDirect3
a840: 44 44 65 76 69 63 65 39 20 20 20 20 20 20 20 20  DDevice9        
a850: 20 20 20 20 20 20 20 20 70 44 65 76 69 63 65 2c          pDevice,
a860: 0d 0a 20 20 20 20 20 20 20 20 4c 50 43 56 4f 49  ..        LPCVOI
a870: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  D               
a880: 20 20 20 20 20 20 20 20 20 20 70 53 72 63 44 61            pSrcDa
a890: 74 61 2c 0d 0a 20 20 20 20 20 20 20 20 55 49 4e  ta,..        UIN
a8a0: 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  T               
a8b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 53 72 63               Src
a8c0: 44 61 74 61 4c 65 6e 2c 0d 0a 20 20 20 20 20 20  DataLen,..      
a8d0: 20 20 44 33 44 58 4d 41 43 52 4f 2a 20 20 20 20    D3DXMACRO*    
a8e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a8f0: 20 20 70 44 65 66 69 6e 65 73 2c 0d 0a 20 20 20    pDefines,..   
a900: 20 20 20 20 20 49 44 33 44 58 49 6e 63 6c 75 64       ID3DXInclud
a910: 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  e               
a920: 20 20 20 20 20 70 49 6e 63 6c 75 64 65 2c 0d 0a       pInclude,..
a930: 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 20 20          DWORD   
a940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
a950: 20 20 20 20 20 20 20 20 46 6c 61 67 73 2c 0d 0a          Flags,..
a960: 20 20 20 20 20 20 20 20 49 44 33 44 58 45 66 66          ID3DXEff
a970: 65 63 74 50 6f 6f 6c 20 20 20 20 20 20 20 20 20  ectPool         
a980: 20 20 20 20 20 20 20 20 70 50 6f 6f 6c 2c 0d 0a          pPool,..
a990: 20 20 20 20 20 20 20 20 49 44 33 44 58 45 66 66          ID3DXEff
a9a0: 65 63 74 2a 20 20 20 20 20 20 20 20 20 20 20 20  ect*            
a9b0: 20 20 20 20 20 20 20 20 70 70 45 66 66 65 63 74          ppEffect
a9c0: 2c 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44 58  ,..        ID3DX
a9d0: 42 75 66 66 65 72 2a 20 20 20 20 20 20 20 20 20  Buffer*         
a9e0: 20 20 20 20 20 20 20 20 20 20 20 70 70 43 6f 6d             ppCom
a9f0: 70 69 6c 61 74 69 6f 6e 45 72 72 6f 72 73 29 3b  pilationErrors);
aa00: 0d 0a 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20  ....    HRESULT 
aa10: 44 33 44 58 43 72 65 61 74 65 45 66 66 65 63 74  D3DXCreateEffect
aa20: 50 6f 6f 6c 28 0d 0a 20 20 20 20 20 20 20 20 49  Pool(..        I
aa30: 44 33 44 58 45 66 66 65 63 74 50 6f 6f 6c 2a 20  D3DXEffectPool* 
aa40: 70 45 66 66 65 63 74 50 6f 6f 6c 29 3b 0d 0a 0d  pEffectPool);...
aa50: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 44 33 44  .    HRESULT D3D
aa60: 58 47 65 74 53 68 61 64 65 72 49 6e 70 75 74 53  XGetShaderInputS
aa70: 65 6d 61 6e 74 69 63 73 28 0d 0a 09 09 44 57 4f  emantics(....DWO
aa80: 52 44 2a 20 70 46 75 6e 63 74 69 6f 6e 2c 0d 0a  RD* pFunction,..
aa90: 09 09 44 33 44 58 53 45 4d 41 4e 54 49 43 2a 20  ..D3DXSEMANTIC* 
aaa0: 70 53 65 6d 61 6e 74 69 63 73 2c 0d 0a 09 09 55  pSemantics,....U
aab0: 49 4e 54 2a 20 70 43 6f 75 6e 74 29 3b 0d 0a 0d  INT* pCount);...
aac0: 0a 09 48 52 45 53 55 4c 54 0d 0a 20 20 20 20 44  ..HRESULT..    D
aad0: 33 44 58 43 72 65 61 74 65 4d 65 73 68 46 56 46  3DXCreateMeshFVF
aae0: 28 0d 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44  (..        DWORD
aaf0: 20 4e 75 6d 46 61 63 65 73 2c 0d 0a 20 20 20 20   NumFaces,..    
ab00: 20 20 20 20 44 57 4f 52 44 20 4e 75 6d 56 65 72      DWORD NumVer
ab10: 74 69 63 65 73 2c 0d 0a 20 20 20 20 20 20 20 20  tices,..        
ab20: 44 57 4f 52 44 20 4f 70 74 69 6f 6e 73 2c 0d 0a  DWORD Options,..
ab30: 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 46 56          DWORD FV
ab40: 46 2c 0d 0a 20 20 20 20 20 20 20 20 49 44 69 72  F,..        IDir
ab50: 65 63 74 33 44 44 65 76 69 63 65 39 20 70 44 33  ect3DDevice9 pD3
ab60: 44 44 65 76 69 63 65 2c 0d 0a 20 20 20 20 20 20  DDevice,..      
ab70: 20 20 49 44 33 44 58 4d 65 73 68 2a 20 70 70 4d    ID3DXMesh* ppM
ab80: 65 73 68 29 3b 0d 0a 0d 0a 20 20 20 20 55 49 4e  esh);....    UIN
ab90: 54 20 44 33 44 58 47 65 74 46 56 46 56 65 72 74  T D3DXGetFVFVert
aba0: 65 78 53 69 7a 65 28 44 57 4f 52 44 20 46 56 46  exSize(DWORD FVF
abb0: 29 3b 0d 0a 0d 0a 20 20 20 20 48 52 45 53 55 4c  );....    HRESUL
abc0: 54 20 44 33 44 58 46 69 6c 65 43 72 65 61 74 65  T D3DXFileCreate
abd0: 28 49 44 33 44 58 46 69 6c 65 2a 20 6c 70 6c 70  (ID3DXFile* lplp
abe0: 44 69 72 65 63 74 58 46 69 6c 65 29 3b 0d 0a 0d  DirectXFile);...
abf0: 0a 20 20 20 20 48 52 45 53 55 4c 54 20 44 33 44  .    HRESULT D3D
ac00: 58 4c 6f 61 64 4d 65 73 68 46 72 6f 6d 58 6f 66  XLoadMeshFromXof
ac10: 28 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44 58  (..        ID3DX
ac20: 46 69 6c 65 44 61 74 61 20 70 78 6f 66 4d 65 73  FileData pxofMes
ac30: 68 2c 0d 0a 20 20 20 20 20 20 20 20 44 57 4f 52  h,..        DWOR
ac40: 44 20 4f 70 74 69 6f 6e 73 2c 0d 0a 20 20 20 20  D Options,..    
ac50: 20 20 20 20 49 44 69 72 65 63 74 33 44 44 65 76      IDirect3DDev
ac60: 69 63 65 39 20 70 44 33 44 44 65 76 69 63 65 2c  ice9 pD3DDevice,
ac70: 0d 0a 20 20 20 20 20 20 20 20 49 44 33 44 58 42  ..        ID3DXB
ac80: 75 66 66 65 72 20 2a 70 70 41 64 6a 61 63 65 6e  uffer *ppAdjacen
ac90: 63 79 2c 0d 0a 20 20 20 20 20 20 20 20 49 44 33  cy,..        ID3
aca0: 44 58 42 75 66 66 65 72 20 2a 70 70 4d 61 74 65  DXBuffer *ppMate
acb0: 72 69 61 6c 73 2c 0d 0a 20 20 20 20 20 20 20 20  rials,..        
acc0: 49 44 33 44 58 42 75 66 66 65 72 20 2a 70 70 45  ID3DXBuffer *ppE
acd0: 66 66 65 63 74 49 6e 73 74 61 6e 63 65 73 2c 0d  ffectInstances,.
ace0: 0a 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 2a  .        DWORD *
acf0: 70 4e 75 6d 4d 61 74 65 72 69 61 6c 73 2c 0d 0a  pNumMaterials,..
ad00: 20 20 20 20 20 20 20 20 49 44 33 44 58 4d 65 73          ID3DXMes
ad10: 68 20 2a 70 70 4d 65 73 68 29 3b 0d 0a 0d 0a 20  h *ppMesh);.... 
ad20: 20 20 20 48 52 45 53 55 4c 54 20 44 33 44 58 43     HRESULT D3DXC
ad30: 6f 6e 63 61 74 65 6e 61 74 65 4d 65 73 68 65 73  oncatenateMeshes
ad40: 28 0d 0a 09 09 49 44 33 44 58 4d 65 73 68 20 2a  (....ID3DXMesh *
ad50: 20 70 70 4d 65 73 68 65 73 2c 0d 0a 09 20 20 20   ppMeshes,...   
ad60: 20 55 49 4e 54 20 4e 75 6d 4d 65 73 68 65 73 2c   UINT NumMeshes,
ad70: 0d 0a 09 20 20 20 20 44 57 4f 52 44 20 4f 70 74  ...    DWORD Opt
ad80: 69 6f 6e 73 2c 0d 0a 09 20 20 20 20 44 33 44 58  ions,...    D3DX
ad90: 4d 41 54 52 49 58 20 2a 20 70 47 65 6f 6d 58 46  MATRIX * pGeomXF
ada0: 6f 72 6d 73 2c 0d 0a 09 20 20 20 20 44 33 44 58  orms,...    D3DX
adb0: 4d 41 54 52 49 58 20 2a 20 70 54 65 78 74 75 72  MATRIX * pTextur
adc0: 65 58 46 6f 72 6d 73 2c 0d 0a 09 20 20 20 20 44  eXForms,...    D
add0: 33 44 56 45 52 54 45 58 45 4c 45 4d 45 4e 54 39  3DVERTEXELEMENT9
ade0: 20 2a 20 70 44 65 63 6c 2c 0d 0a 09 20 20 20 20   * pDecl,...    
adf0: 49 44 69 72 65 63 74 33 44 44 65 76 69 63 65 39  IDirect3DDevice9
ae00: 20 70 44 33 44 44 65 76 69 63 65 2c 0d 0a 09 20   pD3DDevice,... 
ae10: 20 20 20 49 44 33 44 58 4d 65 73 68 20 2a 20 70     ID3DXMesh * p
ae20: 70 4d 65 73 68 4f 75 74 29 3b 0d 0a 0d 0a 09 48  pMeshOut);.....H
ae30: 52 45 53 55 4c 54 20 44 33 44 58 44 65 63 6c 61  RESULT D3DXDecla
ae40: 72 61 74 6f 72 46 72 6f 6d 46 56 46 28 44 57 4f  ratorFromFVF(DWO
ae50: 52 44 20 46 56 46 2c 20 44 33 44 56 45 52 54 45  RD FVF, D3DVERTE
ae60: 58 45 4c 45 4d 45 4e 54 39 2a 20 44 65 63 6c 61  XELEMENT9* Decla
ae70: 72 61 74 69 6f 6e 29 3b 0d 0a 0d 0a 09 44 33 44  ration);.....D3D
ae80: 58 51 55 41 54 45 52 4e 49 4f 4e 2a 20 44 33 44  XQUATERNION* D3D
ae90: 58 51 75 61 74 65 72 6e 69 6f 6e 53 6c 65 72 70  XQuaternionSlerp
aea0: 28 44 33 44 58 51 55 41 54 45 52 4e 49 4f 4e 2a  (D3DXQUATERNION*
aeb0: 20 70 4f 75 74 2c 20 44 33 44 58 51 55 41 54 45   pOut, D3DXQUATE
aec0: 52 4e 49 4f 4e 2a 20 70 51 31 2c 20 44 33 44 58  RNION* pQ1, D3DX
aed0: 51 55 41 54 45 52 4e 49 4f 4e 2a 20 70 51 32 2c  QUATERNION* pQ2,
aee0: 20 66 6c 6f 61 74 20 74 29 3b 0d 0a 0d 0a 09 44   float t);.....D
aef0: 33 44 58 56 45 43 54 4f 52 33 2a 20 44 33 44 58  3DXVECTOR3* D3DX
af00: 56 65 63 33 43 61 74 6d 75 6c 6c 52 6f 6d 28 44  Vec3CatmullRom(D
af10: 33 44 58 56 45 43 54 4f 52 33 20 2a 70 4f 75 74  3DXVECTOR3 *pOut
af20: 2c 20 44 33 44 58 56 45 43 54 4f 52 33 20 2a 70  , D3DXVECTOR3 *p
af30: 56 30 2c 20 44 33 44 58 56 45 43 54 4f 52 33 20  V0, D3DXVECTOR3 
af40: 2a 70 56 31 2c 20 44 33 44 58 56 45 43 54 4f 52  *pV1, D3DXVECTOR
af50: 33 20 2a 70 56 32 2c 20 44 33 44 58 56 45 43 54  3 *pV2, D3DXVECT
af60: 4f 52 33 20 2a 70 56 33 2c 20 66 6c 6f 61 74 20  OR3 *pV3, float 
af70: 73 29 3b 0d 0a 0d 0a 09 76 6f 69 64 20 44 33 44  s);.....void D3D
af80: 58 51 75 61 74 65 72 6e 69 6f 6e 53 71 75 61 64  XQuaternionSquad
af90: 53 65 74 75 70 28 20 20 44 33 44 58 51 55 41 54  Setup(  D3DXQUAT
afa0: 45 52 4e 49 4f 4e 20 2a 70 41 4f 75 74 2c 0d 0a  ERNION *pAOut,..
afb0: 09 09 09 09 09 09 09 09 20 20 20 20 44 33 44 58  ........    D3DX
afc0: 51 55 41 54 45 52 4e 49 4f 4e 20 2a 70 42 4f 75  QUATERNION *pBOu
afd0: 74 2c 0d 0a 09 09 09 09 09 09 09 09 20 20 20 20  t,..........    
afe0: 44 33 44 58 51 55 41 54 45 52 4e 49 4f 4e 20 2a  D3DXQUATERNION *
aff0: 70 43 4f 75 74 2c 0d 0a 09 09 09 09 09 09 09 09  pCOut,..........
b000: 20 20 20 20 44 33 44 58 51 55 41 54 45 52 4e 49      D3DXQUATERNI
b010: 4f 4e 20 2a 70 51 30 2c 0d 0a 09 09 09 09 09 09  ON *pQ0,........
b020: 09 09 20 20 20 20 44 33 44 58 51 55 41 54 45 52  ..    D3DXQUATER
b030: 4e 49 4f 4e 20 2a 70 51 31 2c 0d 0a 09 09 09 09  NION *pQ1,......
b040: 09 09 09 09 20 20 20 20 44 33 44 58 51 55 41 54  ....    D3DXQUAT
b050: 45 52 4e 49 4f 4e 20 2a 70 51 32 2c 0d 0a 09 09  ERNION *pQ2,....
b060: 09 09 09 09 09 09 20 20 20 20 44 33 44 58 51 55  ......    D3DXQU
b070: 41 54 45 52 4e 49 4f 4e 20 2a 70 51 33 29 3b 0d  ATERNION *pQ3);.
b080: 0a 0d 0a 09 44 33 44 58 51 55 41 54 45 52 4e 49  ....D3DXQUATERNI
b090: 4f 4e 2a 20 44 33 44 58 51 75 61 74 65 72 6e 69  ON* D3DXQuaterni
b0a0: 6f 6e 53 71 75 61 64 28 44 33 44 58 51 55 41 54  onSquad(D3DXQUAT
b0b0: 45 52 4e 49 4f 4e 20 2a 70 4f 75 74 2c 0d 0a 09  ERNION *pOut,...
b0c0: 09 09 09 09 09 09 09 09 20 20 20 20 44 33 44 58  ........    D3DX
b0d0: 51 55 41 54 45 52 4e 49 4f 4e 20 2a 70 51 31 2c  QUATERNION *pQ1,
b0e0: 0d 0a 09 09 09 09 09 09 09 09 09 20 20 20 20 44  ...........    D
b0f0: 33 44 58 51 55 41 54 45 52 4e 49 4f 4e 20 2a 70  3DXQUATERNION *p
b100: 41 2c 0d 0a 09 09 09 09 09 09 09 09 09 20 20 20  A,...........   
b110: 20 44 33 44 58 51 55 41 54 45 52 4e 49 4f 4e 20   D3DXQUATERNION 
b120: 2a 70 42 2c 0d 0a 09 09 09 09 09 09 09 09 09 20  *pB,........... 
b130: 20 20 20 44 33 44 58 51 55 41 54 45 52 4e 49 4f     D3DXQUATERNIO
b140: 4e 20 2a 70 43 2c 0d 0a 09 09 09 09 09 09 09 09  N *pC,..........
b150: 09 20 20 20 20 66 6c 6f 61 74 20 74 29 3b 0d 0a  .    float t);..
b160: 0d 0a 09 48 52 45 53 55 4c 54 20 44 33 44 58 4d  ...HRESULT D3DXM
b170: 61 74 72 69 78 44 65 63 6f 6d 70 6f 73 65 28 44  atrixDecompose(D
b180: 33 44 58 56 45 43 54 4f 52 33 20 2a 70 4f 75 74  3DXVECTOR3 *pOut
b190: 53 63 61 6c 65 2c 0d 0a 09 09 09 09 09 09 09 20  Scale,......... 
b1a0: 20 20 20 44 33 44 58 51 55 41 54 45 52 4e 49 4f     D3DXQUATERNIO
b1b0: 4e 20 2a 70 4f 75 74 52 6f 74 61 74 69 6f 6e 2c  N *pOutRotation,
b1c0: 0d 0a 09 09 09 09 09 09 09 20 20 20 20 44 33 44  .........    D3D
b1d0: 58 56 45 43 54 4f 52 33 20 2a 70 4f 75 74 54 72  XVECTOR3 *pOutTr
b1e0: 61 6e 73 6c 61 74 69 6f 6e 2c 0d 0a 09 09 09 09  anslation,......
b1f0: 09 09 09 20 20 20 20 44 33 44 58 4d 41 54 52 49  ...    D3DXMATRI
b200: 58 20 2a 70 4d 0d 0a 09 09 09 09 09 09 09 09 29  X *pM..........)
b210: 3b 0d 0a 0d 0a 09 44 33 44 58 51 55 41 54 45 52  ;.....D3DXQUATER
b220: 4e 49 4f 4e 2a 20 44 33 44 58 51 75 61 74 65 72  NION* D3DXQuater
b230: 6e 69 6f 6e 52 6f 74 61 74 69 6f 6e 59 61 77 50  nionRotationYawP
b240: 69 74 63 68 52 6f 6c 6c 28 44 33 44 58 51 55 41  itchRoll(D3DXQUA
b250: 54 45 52 4e 49 4f 4e 20 2a 70 4f 75 74 2c 0d 0a  TERNION *pOut,..
b260: 09 09 09 09 09 09 09 09 09 09 09 09 09 09 20 20  ..............  
b270: 20 20 46 4c 4f 41 54 20 59 61 77 2c 0d 0a 09 09    FLOAT Yaw,....
b280: 09 09 09 09 09 09 09 09 09 09 09 09 20 20 20 20  ............    
b290: 46 4c 4f 41 54 20 50 69 74 63 68 2c 0d 0a 09 09  FLOAT Pitch,....
b2a0: 09 09 09 09 09 09 09 09 09 09 09 09 20 20 20 20  ............    
b2b0: 46 4c 4f 41 54 20 52 6f 6c 6c 0d 0a 09 09 09 09  FLOAT Roll......
b2c0: 09 09 09 09 09 09 09 09 09 09 29 3b 0d 0a 0d 0a  ..........);....
b2d0: 09 55 49 4e 54 20 44 33 44 58 47 65 74 44 65 63  .UINT D3DXGetDec
b2e0: 6c 56 65 72 74 65 78 53 69 7a 65 28 44 33 44 56  lVertexSize(D3DV
b2f0: 45 52 54 45 58 45 4c 45 4d 45 4e 54 39 20 2a 70  ERTEXELEMENT9 *p
b300: 44 65 63 6c 2c 20 44 57 4f 52 44 20 53 74 72 65  Decl, DWORD Stre
b310: 61 6d 20 29 3b 0d 0a 7d 20 2f 2f 20 65 78 74 65  am );..} // exte
b320: 72 6e 28 57 69 6e 64 6f 77 73 29 0d 0a 0d 0a 44  rn(Windows)....D
b330: 33 44 58 4d 41 54 52 49 58 2a 20 44 33 44 58 4d  3DXMATRIX* D3DXM
b340: 61 74 72 69 78 49 64 65 6e 74 69 74 79 28 20 44  atrixIdentity( D
b350: 33 44 58 4d 41 54 52 49 58 20 2a 70 4f 75 74 20  3DXMATRIX *pOut 
b360: 29 0d 0a 7b 0d 0a 20 20 20 20 70 4f 75 74 2e 6d  )..{..    pOut.m
b370: 5b 30 5d 5b 31 5d 20 3d 20 70 4f 75 74 2e 6d 5b  [0][1] = pOut.m[
b380: 30 5d 5b 32 5d 20 3d 20 70 4f 75 74 2e 6d 5b 30  0][2] = pOut.m[0
b390: 5d 5b 33 5d 20 3d 0d 0a 20 20 20 20 70 4f 75 74  ][3] =..    pOut
b3a0: 2e 6d 5b 31 5d 5b 30 5d 20 3d 20 70 4f 75 74 2e  .m[1][0] = pOut.
b3b0: 6d 5b 31 5d 5b 32 5d 20 3d 20 70 4f 75 74 2e 6d  m[1][2] = pOut.m
b3c0: 5b 31 5d 5b 33 5d 20 3d 0d 0a 20 20 20 20 70 4f  [1][3] =..    pO
b3d0: 75 74 2e 6d 5b 32 5d 5b 30 5d 20 3d 20 70 4f 75  ut.m[2][0] = pOu
b3e0: 74 2e 6d 5b 32 5d 5b 31 5d 20 3d 20 70 4f 75 74  t.m[2][1] = pOut
b3f0: 2e 6d 5b 32 5d 5b 33 5d 20 3d 0d 0a 20 20 20 20  .m[2][3] =..    
b400: 70 4f 75 74 2e 6d 5b 33 5d 5b 30 5d 20 3d 20 70  pOut.m[3][0] = p
b410: 4f 75 74 2e 6d 5b 33 5d 5b 31 5d 20 3d 20 70 4f  Out.m[3][1] = pO
b420: 75 74 2e 6d 5b 33 5d 5b 32 5d 20 3d 20 30 2e 30  ut.m[3][2] = 0.0
b430: 66 3b 0d 0a 0d 0a 20 20 20 20 70 4f 75 74 2e 6d  f;....    pOut.m
b440: 5b 30 5d 5b 30 5d 20 3d 20 70 4f 75 74 2e 6d 5b  [0][0] = pOut.m[
b450: 31 5d 5b 31 5d 20 3d 20 70 4f 75 74 2e 6d 5b 32  1][1] = pOut.m[2
b460: 5d 5b 32 5d 20 3d 20 70 4f 75 74 2e 6d 5b 33 5d  ][2] = pOut.m[3]
b470: 5b 33 5d 20 3d 20 31 2e 30 66 3b 0d 0a 20 20 20  [3] = 1.0f;..   
b480: 20 72 65 74 75 72 6e 20 70 4f 75 74 3b 0d 0a 7d   return pOut;..}
b490: 0d 0a 0d 0a 46 4c 4f 41 54 20 44 33 44 58 56 65  ....FLOAT D3DXVe
b4a0: 63 33 4c 65 6e 67 74 68 53 71 28 44 33 44 58 56  c3LengthSq(D3DXV
b4b0: 45 43 54 4f 52 33 2a 20 76 29 0d 0a 7b 0d 0a 09  ECTOR3* v)..{...
b4c0: 72 65 74 75 72 6e 20 28 76 2e 78 20 2a 20 76 2e  return (v.x * v.
b4d0: 78 29 20 2b 20 28 76 2e 79 20 2a 20 76 2e 79 29  x) + (v.y * v.y)
b4e0: 20 2b 20 28 76 2e 7a 20 2a 20 76 2e 7a 29 3b 0d   + (v.z * v.z);.
b4f0: 0a 7d 0d 0a 0d 0a 74 65 6d 70 6c 61 74 65 20 44  .}....template D
b500: 45 46 49 4e 45 5f 47 55 49 44 28 75 69 6e 74 20  EFINE_GUID(uint 
b510: 64 31 2c 20 75 73 68 6f 72 74 20 64 32 2c 20 75  d1, ushort d2, u
b520: 73 68 6f 72 74 20 64 33 2c 20 75 62 79 74 65 20  short d3, ubyte 
b530: 64 34 2c 20 75 62 79 74 65 20 64 35 2c 20 75 62  d4, ubyte d5, ub
b540: 79 74 65 20 64 36 2c 20 75 62 79 74 65 20 64 37  yte d6, ubyte d7
b550: 2c 20 75 62 79 74 65 20 64 38 2c 20 75 62 79 74  , ubyte d8, ubyt
b560: 65 20 64 39 2c 20 75 62 79 74 65 20 64 31 30 2c  e d9, ubyte d10,
b570: 20 75 62 79 74 65 20 64 31 31 29 0d 0a 7b 0d 0a   ubyte d11)..{..
b580: 09 63 6f 6e 73 74 20 47 55 49 44 20 44 45 46 49  .const GUID DEFI
b590: 4e 45 5f 47 55 49 44 20 3d 20 7b 64 31 2c 20 64  NE_GUID = {d1, d
b5a0: 32 2c 20 64 33 2c 20 5b 64 34 2c 20 64 35 2c 20  2, d3, [d4, d5, 
b5b0: 64 36 2c 20 64 37 2c 20 64 38 2c 20 64 39 2c 20  d6, d7, d8, d9, 
b5c0: 64 31 30 2c 20 64 31 31 5d 7d 3b 0d 0a 7d 0d 0a  d10, d11]};..}..
b5d0: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
b5e0: 5f 44 33 44 52 4d 49 6e 66 6f 20 3d 20 44 45 46  _D3DRMInfo = DEF
b5f0: 49 4e 45 5f 47 55 49 44 21 28 30 78 32 62 39 35  INE_GUID!(0x2b95
b600: 37 31 30 30 2c 20 30 78 39 65 39 61 2c 20 30 78  7100, 0x9e9a, 0x
b610: 31 31 63 66 2c 20 30 78 61 62 2c 20 30 78 33 39  11cf, 0xab, 0x39
b620: 2c 20 30 78 30 2c 20 30 78 32 30 2c 20 30 78 61  , 0x0, 0x20, 0xa
b630: 66 2c 20 30 78 37 31 2c 20 30 78 65 34 2c 20 30  f, 0x71, 0xe4, 0
b640: 78 33 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49  x33);..const GUI
b650: 44 20 54 49 44 5f 44 33 44 52 4d 4d 65 73 68 20  D TID_D3DRMMesh 
b660: 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30  = DEFINE_GUID!(0
b670: 78 33 64 38 32 61 62 34 34 2c 20 30 78 36 32 64  x3d82ab44, 0x62d
b680: 61 2c 20 30 78 31 31 63 66 2c 20 30 78 61 62 2c  a, 0x11cf, 0xab,
b690: 20 30 78 33 39 2c 20 30 78 30 2c 20 30 78 32 30   0x39, 0x0, 0x20
b6a0: 2c 20 30 78 61 66 2c 20 30 78 37 31 2c 20 30 78  , 0xaf, 0x71, 0x
b6b0: 65 34 2c 20 30 78 33 33 29 3b 0d 0a 63 6f 6e 73  e4, 0x33);..cons
b6c0: 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d  t GUID TID_D3DRM
b6d0: 56 65 63 74 6f 72 20 3d 20 44 45 46 49 4e 45 5f  Vector = DEFINE_
b6e0: 47 55 49 44 21 28 30 78 33 64 38 32 61 62 35 65  GUID!(0x3d82ab5e
b6f0: 2c 20 30 78 36 32 64 61 2c 20 30 78 31 31 63 66  , 0x62da, 0x11cf
b700: 2c 20 30 78 61 62 2c 20 30 78 33 39 2c 20 30 78  , 0xab, 0x39, 0x
b710: 30 2c 20 30 78 32 30 2c 20 30 78 61 66 2c 20 30  0, 0x20, 0xaf, 0
b720: 78 37 31 2c 20 30 78 65 34 2c 20 30 78 33 33 29  x71, 0xe4, 0x33)
b730: 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49  ;..const GUID TI
b740: 44 5f 44 33 44 52 4d 4d 65 73 68 46 61 63 65 20  D_D3DRMMeshFace 
b750: 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30  = DEFINE_GUID!(0
b760: 78 33 64 38 32 61 62 35 66 2c 20 30 78 36 32 64  x3d82ab5f, 0x62d
b770: 61 2c 20 30 78 31 31 63 66 2c 20 30 78 61 62 2c  a, 0x11cf, 0xab,
b780: 20 30 78 33 39 2c 20 30 78 30 2c 20 30 78 32 30   0x39, 0x0, 0x20
b790: 2c 20 30 78 61 66 2c 20 30 78 37 31 2c 20 30 78  , 0xaf, 0x71, 0x
b7a0: 65 34 2c 20 30 78 33 33 29 3b 0d 0a 63 6f 6e 73  e4, 0x33);..cons
b7b0: 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d  t GUID TID_D3DRM
b7c0: 4d 61 74 65 72 69 61 6c 20 3d 20 44 45 46 49 4e  Material = DEFIN
b7d0: 45 5f 47 55 49 44 21 28 30 78 33 64 38 32 61 62  E_GUID!(0x3d82ab
b7e0: 34 64 2c 20 30 78 36 32 64 61 2c 20 30 78 31 31  4d, 0x62da, 0x11
b7f0: 63 66 2c 20 30 78 61 62 2c 20 30 78 33 39 2c 20  cf, 0xab, 0x39, 
b800: 30 78 30 2c 20 30 78 32 30 2c 20 30 78 61 66 2c  0x0, 0x20, 0xaf,
b810: 20 30 78 37 31 2c 20 30 78 65 34 2c 20 30 78 33   0x71, 0xe4, 0x3
b820: 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20  3);..const GUID 
b830: 54 49 44 5f 44 33 44 52 4d 4d 61 74 65 72 69 61  TID_D3DRMMateria
b840: 6c 41 72 72 61 79 20 3d 20 44 45 46 49 4e 45 5f  lArray = DEFINE_
b850: 47 55 49 44 21 28 30 78 33 35 66 66 34 34 65 31  GUID!(0x35ff44e1
b860: 2c 20 30 78 36 63 37 63 2c 20 30 78 31 31 63 66  , 0x6c7c, 0x11cf
b870: 2c 20 30 78 38 46 2c 20 30 78 35 32 2c 20 30 78  , 0x8F, 0x52, 0x
b880: 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30  0, 0x40, 0x33, 0
b890: 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33 29  x35, 0x94, 0xa3)
b8a0: 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49  ;..const GUID TI
b8b0: 44 5f 44 33 44 52 4d 46 72 61 6d 65 20 3d 20 44  D_D3DRMFrame = D
b8c0: 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 33 64  EFINE_GUID!(0x3d
b8d0: 38 32 61 62 34 36 2c 20 30 78 36 32 64 61 2c 20  82ab46, 0x62da, 
b8e0: 30 78 31 31 63 66 2c 20 30 78 61 62 2c 20 30 78  0x11cf, 0xab, 0x
b8f0: 33 39 2c 20 30 78 30 2c 20 30 78 32 30 2c 20 30  39, 0x0, 0x20, 0
b900: 78 61 66 2c 20 30 78 37 31 2c 20 30 78 65 34 2c  xaf, 0x71, 0xe4,
b910: 20 30 78 33 33 29 3b 0d 0a 63 6f 6e 73 74 20 47   0x33);..const G
b920: 55 49 44 20 54 49 44 5f 44 33 44 52 4d 46 72 61  UID TID_D3DRMFra
b930: 6d 65 54 72 61 6e 73 66 6f 72 6d 4d 61 74 72 69  meTransformMatri
b940: 78 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21  x = DEFINE_GUID!
b950: 28 30 78 66 36 66 32 33 66 34 31 2c 20 30 78 37  (0xf6f23f41, 0x7
b960: 36 38 36 2c 20 30 78 31 31 63 66 2c 20 30 78 38  686, 0x11cf, 0x8
b970: 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20 30 78  f, 0x52, 0x0, 0x
b980: 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20  40, 0x33, 0x35, 
b990: 30 78 39 34 2c 20 30 78 61 33 29 3b 0d 0a 63 6f  0x94, 0xa3);..co
b9a0: 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44  nst GUID TID_D3D
b9b0: 52 4d 4d 65 73 68 4d 61 74 65 72 69 61 6c 4c 69  RMMeshMaterialLi
b9c0: 73 74 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44  st = DEFINE_GUID
b9d0: 21 28 30 78 66 36 66 32 33 66 34 32 2c 20 30 78  !(0xf6f23f42, 0x
b9e0: 37 36 38 36 2c 20 30 78 31 31 63 66 2c 20 30 78  7686, 0x11cf, 0x
b9f0: 38 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20 30  8f, 0x52, 0x0, 0
ba00: 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c  x40, 0x33, 0x35,
ba10: 20 30 78 39 34 2c 20 30 78 61 33 29 3b 0d 0a 63   0x94, 0xa3);..c
ba20: 6f 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44 33  onst GUID TID_D3
ba30: 44 52 4d 4d 65 73 68 54 65 78 74 75 72 65 43 6f  DRMMeshTextureCo
ba40: 6f 72 64 73 20 3d 20 44 45 46 49 4e 45 5f 47 55  ords = DEFINE_GU
ba50: 49 44 21 28 30 78 66 36 66 32 33 66 34 30 2c 20  ID!(0xf6f23f40, 
ba60: 30 78 37 36 38 36 2c 20 30 78 31 31 63 66 2c 20  0x7686, 0x11cf, 
ba70: 30 78 38 66 2c 20 30 78 35 32 2c 20 30 78 30 2c  0x8f, 0x52, 0x0,
ba80: 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33   0x40, 0x33, 0x3
ba90: 35 2c 20 30 78 39 34 2c 20 30 78 61 33 29 3b 0d  5, 0x94, 0xa3);.
baa0: 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44 5f  .const GUID TID_
bab0: 44 33 44 52 4d 4d 65 73 68 4e 6f 72 6d 61 6c 73  D3DRMMeshNormals
bac0: 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28   = DEFINE_GUID!(
bad0: 30 78 66 36 66 32 33 66 34 33 2c 20 30 78 37 36  0xf6f23f43, 0x76
bae0: 38 36 2c 20 30 78 31 31 63 66 2c 20 30 78 38 66  86, 0x11cf, 0x8f
baf0: 2c 20 30 78 35 32 2c 20 30 78 30 2c 20 30 78 34  , 0x52, 0x0, 0x4
bb00: 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30  0, 0x33, 0x35, 0
bb10: 78 39 34 2c 20 30 78 61 33 29 3b 0d 0a 63 6f 6e  x94, 0xa3);..con
bb20: 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52  st GUID TID_D3DR
bb30: 4d 43 6f 6f 72 64 73 32 64 20 3d 20 44 45 46 49  MCoords2d = DEFI
bb40: 4e 45 5f 47 55 49 44 21 28 30 78 66 36 66 32 33  NE_GUID!(0xf6f23
bb50: 66 34 34 2c 20 30 78 37 36 38 36 2c 20 30 78 31  f44, 0x7686, 0x1
bb60: 31 63 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c  1cf, 0x8f, 0x52,
bb70: 20 30 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33   0x0, 0x40, 0x33
bb80: 2c 20 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78  , 0x35, 0x94, 0x
bb90: 61 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44  a3);..const GUID
bba0: 20 54 49 44 5f 44 33 44 52 4d 4d 61 74 72 69 78   TID_D3DRMMatrix
bbb0: 34 78 34 20 3d 20 44 45 46 49 4e 45 5f 47 55 49  4x4 = DEFINE_GUI
bbc0: 44 21 28 30 78 66 36 66 32 33 66 34 35 2c 20 30  D!(0xf6f23f45, 0
bbd0: 78 37 36 38 36 2c 20 30 78 31 31 63 66 2c 20 30  x7686, 0x11cf, 0
bbe0: 78 38 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20  x8f, 0x52, 0x0, 
bbf0: 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35  0x40, 0x33, 0x35
bc00: 2c 20 30 78 39 34 2c 20 30 78 61 33 29 3b 0d 0a  , 0x94, 0xa3);..
bc10: 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44  const GUID TID_D
bc20: 33 44 52 4d 41 6e 69 6d 61 74 69 6f 6e 20 3d 20  3DRMAnimation = 
bc30: 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 33  DEFINE_GUID!(0x3
bc40: 64 38 32 61 62 34 66 2c 20 30 78 36 32 64 61 2c  d82ab4f, 0x62da,
bc50: 20 30 78 31 31 63 66 2c 20 30 78 61 62 2c 20 30   0x11cf, 0xab, 0
bc60: 78 33 39 2c 20 30 78 30 2c 20 30 78 32 30 2c 20  x39, 0x0, 0x20, 
bc70: 30 78 61 66 2c 20 30 78 37 31 2c 20 30 78 65 34  0xaf, 0x71, 0xe4
bc80: 2c 20 30 78 33 33 29 3b 0d 0a 63 6f 6e 73 74 20  , 0x33);..const 
bc90: 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d 41 6e  GUID TID_D3DRMAn
bca0: 69 6d 61 74 69 6f 6e 53 65 74 20 3d 20 44 45 46  imationSet = DEF
bcb0: 49 4e 45 5f 47 55 49 44 21 28 30 78 33 64 38 32  INE_GUID!(0x3d82
bcc0: 61 62 35 30 2c 20 30 78 36 32 64 61 2c 20 30 78  ab50, 0x62da, 0x
bcd0: 31 31 63 66 2c 20 30 78 61 62 2c 20 30 78 33 39  11cf, 0xab, 0x39
bce0: 2c 20 30 78 30 2c 20 30 78 32 30 2c 20 30 78 61  , 0x0, 0x20, 0xa
bcf0: 66 2c 20 30 78 37 31 2c 20 30 78 65 34 2c 20 30  f, 0x71, 0xe4, 0
bd00: 78 33 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49  x33);..const GUI
bd10: 44 20 54 49 44 5f 44 33 44 52 4d 41 6e 69 6d 61  D TID_D3DRMAnima
bd20: 74 69 6f 6e 4b 65 79 20 3d 20 44 45 46 49 4e 45  tionKey = DEFINE
bd30: 5f 47 55 49 44 21 28 30 78 31 30 64 64 34 36 61  _GUID!(0x10dd46a
bd40: 38 2c 20 30 78 37 37 35 62 2c 20 30 78 31 31 63  8, 0x775b, 0x11c
bd50: 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30  f, 0x8f, 0x52, 0
bd60: 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20  x0, 0x40, 0x33, 
bd70: 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78 41 33  0x35, 0x94, 0xA3
bd80: 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54  );..const GUID T
bd90: 49 44 5f 44 33 44 52 4d 46 6c 6f 61 74 4b 65 79  ID_D3DRMFloatKey
bda0: 73 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21  s = DEFINE_GUID!
bdb0: 28 30 78 31 30 64 64 34 36 61 39 2c 20 30 78 37  (0x10dd46a9, 0x7
bdc0: 37 35 62 2c 20 30 78 31 31 63 66 2c 20 30 78 38  75b, 0x11cf, 0x8
bdd0: 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20 30 78  f, 0x52, 0x0, 0x
bde0: 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20  40, 0x33, 0x35, 
bdf0: 30 78 39 34 2c 20 30 78 41 33 29 3b 0d 0a 63 6f  0x94, 0xA3);..co
be00: 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44  nst GUID TID_D3D
be10: 52 4d 4d 61 74 65 72 69 61 6c 41 6d 62 69 65 6e  RMMaterialAmbien
be20: 74 43 6f 6c 6f 72 20 3d 20 44 45 46 49 4e 45 5f  tColor = DEFINE_
be30: 47 55 49 44 21 28 30 78 30 31 34 31 31 38 34 30  GUID!(0x01411840
be40: 2c 20 30 78 37 37 38 36 2c 20 30 78 31 31 63 66  , 0x7786, 0x11cf
be50: 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 78  , 0x8f, 0x52, 0x
be60: 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30  0, 0x40, 0x33, 0
be70: 78 33 35 2c 20 30 78 39 34 2c 20 30 78 41 33 29  x35, 0x94, 0xA3)
be80: 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49  ;..const GUID TI
be90: 44 5f 44 33 44 52 4d 4d 61 74 65 72 69 61 6c 44  D_D3DRMMaterialD
bea0: 69 66 66 75 73 65 43 6f 6c 6f 72 20 3d 20 44 45  iffuseColor = DE
beb0: 46 49 4e 45 5f 47 55 49 44 21 28 30 78 30 31 34  FINE_GUID!(0x014
bec0: 31 31 38 34 31 2c 20 30 78 37 37 38 36 2c 20 30  11841, 0x7786, 0
bed0: 78 31 31 63 66 2c 20 30 78 38 66 2c 20 30 78 35  x11cf, 0x8f, 0x5
bee0: 32 2c 20 30 78 30 2c 20 30 78 34 30 2c 20 30 78  2, 0x0, 0x40, 0x
bef0: 33 33 2c 20 30 78 33 35 2c 20 30 78 39 34 2c 20  33, 0x35, 0x94, 
bf00: 30 78 41 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55  0xA3);..const GU
bf10: 49 44 20 54 49 44 5f 44 33 44 52 4d 4d 61 74 65  ID TID_D3DRMMate
bf20: 72 69 61 6c 53 70 65 63 75 6c 61 72 43 6f 6c 6f  rialSpecularColo
bf30: 72 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21  r = DEFINE_GUID!
bf40: 28 30 78 30 31 34 31 31 38 34 32 2c 20 30 78 37  (0x01411842, 0x7
bf50: 37 38 36 2c 20 30 78 31 31 63 66 2c 20 30 78 38  786, 0x11cf, 0x8
bf60: 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20 30 78  f, 0x52, 0x0, 0x
bf70: 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20  40, 0x33, 0x35, 
bf80: 30 78 39 34 2c 20 30 78 41 33 29 3b 0d 0a 63 6f  0x94, 0xA3);..co
bf90: 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44  nst GUID TID_D3D
bfa0: 52 4d 4d 61 74 65 72 69 61 6c 45 6d 69 73 73 69  RMMaterialEmissi
bfb0: 76 65 43 6f 6c 6f 72 20 3d 20 44 45 46 49 4e 45  veColor = DEFINE
bfc0: 5f 47 55 49 44 21 28 30 78 64 33 65 31 36 65 38  _GUID!(0xd3e16e8
bfd0: 30 2c 20 30 78 37 38 33 35 2c 20 30 78 31 31 63  0, 0x7835, 0x11c
bfe0: 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30  f, 0x8f, 0x52, 0
bff0: 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20  x0, 0x40, 0x33, 
c000: 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33  0x35, 0x94, 0xa3
c010: 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54  );..const GUID T
c020: 49 44 5f 44 33 44 52 4d 4d 61 74 65 72 69 61 6c  ID_D3DRMMaterial
c030: 50 6f 77 65 72 20 3d 20 44 45 46 49 4e 45 5f 47  Power = DEFINE_G
c040: 55 49 44 21 28 30 78 30 31 34 31 31 38 34 33 2c  UID!(0x01411843,
c050: 20 30 78 37 37 38 36 2c 20 30 78 31 31 63 66 2c   0x7786, 0x11cf,
c060: 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 78 30   0x8f, 0x52, 0x0
c070: 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78  , 0x40, 0x33, 0x
c080: 33 35 2c 20 30 78 39 34 2c 20 30 78 41 33 29 3b  35, 0x94, 0xA3);
c090: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
c0a0: 5f 44 33 44 52 4d 43 6f 6c 6f 72 52 47 42 41 20  _D3DRMColorRGBA 
c0b0: 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30  = DEFINE_GUID!(0
c0c0: 78 33 35 66 66 34 34 65 30 2c 20 30 78 36 63 37  x35ff44e0, 0x6c7
c0d0: 63 2c 20 30 78 31 31 63 66 2c 20 30 78 38 66 2c  c, 0x11cf, 0x8f,
c0e0: 20 30 78 35 32 2c 20 30 78 30 2c 20 30 78 34 30   0x52, 0x0, 0x40
c0f0: 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78  , 0x33, 0x35, 0x
c100: 39 34 2c 20 30 78 41 33 29 3b 0d 0a 63 6f 6e 73  94, 0xA3);..cons
c110: 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d  t GUID TID_D3DRM
c120: 43 6f 6c 6f 72 52 47 42 20 3d 20 44 45 46 49 4e  ColorRGB = DEFIN
c130: 45 5f 47 55 49 44 21 28 30 78 64 33 65 31 36 65  E_GUID!(0xd3e16e
c140: 38 31 2c 20 30 78 37 38 33 35 2c 20 30 78 31 31  81, 0x7835, 0x11
c150: 63 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20  cf, 0x8f, 0x52, 
c160: 30 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c  0x0, 0x40, 0x33,
c170: 20 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61   0x35, 0x94, 0xa
c180: 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20  3);..const GUID 
c190: 54 49 44 5f 44 33 44 52 4d 47 75 69 64 20 3d 20  TID_D3DRMGuid = 
c1a0: 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 61  DEFINE_GUID!(0xa
c1b0: 34 32 37 39 30 65 30 2c 20 30 78 37 38 31 30 2c  42790e0, 0x7810,
c1c0: 20 30 78 31 31 63 66 2c 20 30 78 38 66 2c 20 30   0x11cf, 0x8f, 0
c1d0: 78 35 32 2c 20 30 78 30 2c 20 30 78 34 30 2c 20  x52, 0x0, 0x40, 
c1e0: 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39 34  0x33, 0x35, 0x94
c1f0: 2c 20 30 78 61 33 29 3b 0d 0a 63 6f 6e 73 74 20  , 0xa3);..const 
c200: 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d 54 65  GUID TID_D3DRMTe
c210: 78 74 75 72 65 46 69 6c 65 6e 61 6d 65 20 3d 20  xtureFilename = 
c220: 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 61  DEFINE_GUID!(0xa
c230: 34 32 37 39 30 65 31 2c 20 30 78 37 38 31 30 2c  42790e1, 0x7810,
c240: 20 30 78 31 31 63 66 2c 20 30 78 38 66 2c 20 30   0x11cf, 0x8f, 0
c250: 78 35 32 2c 20 30 78 30 2c 20 30 78 34 30 2c 20  x52, 0x0, 0x40, 
c260: 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39 34  0x33, 0x35, 0x94
c270: 2c 20 30 78 61 33 29 3b 0d 0a 63 6f 6e 73 74 20  , 0xa3);..const 
c280: 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d 54 65  GUID TID_D3DRMTe
c290: 78 74 75 72 65 52 65 66 65 72 65 6e 63 65 20 3d  xtureReference =
c2a0: 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78   DEFINE_GUID!(0x
c2b0: 61 34 32 37 39 30 65 32 2c 20 30 78 37 38 31 30  a42790e2, 0x7810
c2c0: 2c 20 30 78 31 31 63 66 2c 20 30 78 38 66 2c 20  , 0x11cf, 0x8f, 
c2d0: 30 78 35 32 2c 20 30 78 30 2c 20 30 78 34 30 2c  0x52, 0x0, 0x40,
c2e0: 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39   0x33, 0x35, 0x9
c2f0: 34 2c 20 30 78 61 33 29 3b 0d 0a 63 6f 6e 73 74  4, 0xa3);..const
c300: 20 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d 49   GUID TID_D3DRMI
c310: 6e 64 65 78 65 64 43 6f 6c 6f 72 20 3d 20 44 45  ndexedColor = DE
c320: 46 49 4e 45 5f 47 55 49 44 21 28 30 78 31 36 33  FINE_GUID!(0x163
c330: 30 62 38 32 30 2c 20 30 78 37 38 34 32 2c 20 30  0b820, 0x7842, 0
c340: 78 31 31 63 66 2c 20 30 78 38 66 2c 20 30 78 35  x11cf, 0x8f, 0x5
c350: 32 2c 20 30 78 30 2c 20 30 78 34 30 2c 20 30 78  2, 0x0, 0x40, 0x
c360: 33 33 2c 20 30 78 33 35 2c 20 30 78 39 34 2c 20  33, 0x35, 0x94, 
c370: 30 78 61 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55  0xa3);..const GU
c380: 49 44 20 54 49 44 5f 44 33 44 52 4d 4d 65 73 68  ID TID_D3DRMMesh
c390: 56 65 72 74 65 78 43 6f 6c 6f 72 73 20 3d 20 44  VertexColors = D
c3a0: 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 31 36  EFINE_GUID!(0x16
c3b0: 33 30 62 38 32 31 2c 20 30 78 37 38 34 32 2c 20  30b821, 0x7842, 
c3c0: 30 78 31 31 63 66 2c 20 30 78 38 66 2c 20 30 78  0x11cf, 0x8f, 0x
c3d0: 35 32 2c 20 30 78 30 2c 20 30 78 34 30 2c 20 30  52, 0x0, 0x40, 0
c3e0: 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39 34 2c  x33, 0x35, 0x94,
c3f0: 20 30 78 61 33 29 3b 0d 0a 63 6f 6e 73 74 20 47   0xa3);..const G
c400: 55 49 44 20 54 49 44 5f 44 33 44 52 4d 4d 61 74  UID TID_D3DRMMat
c410: 65 72 69 61 6c 57 72 61 70 20 3d 20 44 45 46 49  erialWrap = DEFI
c420: 4e 45 5f 47 55 49 44 21 28 30 78 34 38 38 35 61  NE_GUID!(0x4885a
c430: 65 36 30 2c 20 30 78 37 38 65 38 2c 20 30 78 31  e60, 0x78e8, 0x1
c440: 31 63 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c  1cf, 0x8f, 0x52,
c450: 20 30 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33   0x0, 0x40, 0x33
c460: 2c 20 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78  , 0x35, 0x94, 0x
c470: 61 33 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44  a3);..const GUID
c480: 20 54 49 44 5f 44 33 44 52 4d 42 6f 6f 6c 65 61   TID_D3DRMBoolea
c490: 6e 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21  n = DEFINE_GUID!
c4a0: 28 30 78 35 33 37 64 61 36 61 30 2c 20 30 78 63  (0x537da6a0, 0xc
c4b0: 61 33 37 2c 20 30 78 31 31 64 30 2c 20 30 78 39  a37, 0x11d0, 0x9
c4c0: 34 2c 20 30 78 31 63 2c 20 30 78 30 2c 20 30 78  4, 0x1c, 0x0, 0x
c4d0: 38 30 2c 20 30 78 63 38 2c 20 30 78 63 2c 20 30  80, 0xc8, 0xc, 0
c4e0: 78 66 61 2c 20 30 78 37 62 29 3b 0d 0a 63 6f 6e  xfa, 0x7b);..con
c4f0: 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52  st GUID TID_D3DR
c500: 4d 4d 65 73 68 46 61 63 65 57 72 61 70 73 20 3d  MMeshFaceWraps =
c510: 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78   DEFINE_GUID!(0x
c520: 65 64 31 65 63 35 63 30 2c 20 30 78 63 30 61 38  ed1ec5c0, 0xc0a8
c530: 2c 20 30 78 31 31 64 30 2c 20 30 78 39 34 2c 20  , 0x11d0, 0x94, 
c540: 30 78 31 63 2c 20 30 78 30 2c 20 30 78 38 30 2c  0x1c, 0x0, 0x80,
c550: 20 30 78 63 38 2c 20 30 78 63 2c 20 30 78 66 61   0xc8, 0xc, 0xfa
c560: 2c 20 30 78 37 62 29 3b 0d 0a 63 6f 6e 73 74 20  , 0x7b);..const 
c570: 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d 42 6f  GUID TID_D3DRMBo
c580: 6f 6c 65 61 6e 32 64 20 3d 20 44 45 46 49 4e 45  olean2d = DEFINE
c590: 5f 47 55 49 44 21 28 30 78 34 38 38 35 61 65 36  _GUID!(0x4885ae6
c5a0: 33 2c 20 30 78 37 38 65 38 2c 20 30 78 31 31 63  3, 0x78e8, 0x11c
c5b0: 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30  f, 0x8f, 0x52, 0
c5c0: 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20  x0, 0x40, 0x33, 
c5d0: 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33  0x35, 0x94, 0xa3
c5e0: 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54  );..const GUID T
c5f0: 49 44 5f 44 33 44 52 4d 54 69 6d 65 64 46 6c 6f  ID_D3DRMTimedFlo
c600: 61 74 4b 65 79 73 20 3d 20 44 45 46 49 4e 45 5f  atKeys = DEFINE_
c610: 47 55 49 44 21 28 30 78 66 34 30 36 62 31 38 30  GUID!(0xf406b180
c620: 2c 20 30 78 37 62 33 62 2c 20 30 78 31 31 63 66  , 0x7b3b, 0x11cf
c630: 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 78  , 0x8f, 0x52, 0x
c640: 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30  0, 0x40, 0x33, 0
c650: 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33 29  x35, 0x94, 0xa3)
c660: 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49  ;..const GUID TI
c670: 44 5f 44 33 44 52 4d 41 6e 69 6d 61 74 69 6f 6e  D_D3DRMAnimation
c680: 4f 70 74 69 6f 6e 73 20 3d 20 44 45 46 49 4e 45  Options = DEFINE
c690: 5f 47 55 49 44 21 28 30 78 65 32 62 66 35 36 63  _GUID!(0xe2bf56c
c6a0: 30 2c 20 30 78 38 34 30 66 2c 20 30 78 31 31 63  0, 0x840f, 0x11c
c6b0: 66 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30  f, 0x8f, 0x52, 0
c6c0: 78 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20  x0, 0x40, 0x33, 
c6d0: 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33  0x35, 0x94, 0xa3
c6e0: 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54  );..const GUID T
c6f0: 49 44 5f 44 33 44 52 4d 46 72 61 6d 65 50 6f 73  ID_D3DRMFramePos
c700: 69 74 69 6f 6e 20 3d 20 44 45 46 49 4e 45 5f 47  ition = DEFINE_G
c710: 55 49 44 21 28 30 78 65 32 62 66 35 36 63 31 2c  UID!(0xe2bf56c1,
c720: 20 30 78 38 34 30 66 2c 20 30 78 31 31 63 66 2c   0x840f, 0x11cf,
c730: 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 78 30   0x8f, 0x52, 0x0
c740: 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78  , 0x40, 0x33, 0x
c750: 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33 29 3b  35, 0x94, 0xa3);
c760: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
c770: 5f 44 33 44 52 4d 46 72 61 6d 65 56 65 6c 6f 63  _D3DRMFrameVeloc
c780: 69 74 79 20 3d 20 44 45 46 49 4e 45 5f 47 55 49  ity = DEFINE_GUI
c790: 44 21 28 30 78 65 32 62 66 35 36 63 32 2c 20 30  D!(0xe2bf56c2, 0
c7a0: 78 38 34 30 66 2c 20 30 78 31 31 63 66 2c 20 30  x840f, 0x11cf, 0
c7b0: 78 38 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20  x8f, 0x52, 0x0, 
c7c0: 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35  0x40, 0x33, 0x35
c7d0: 2c 20 30 78 39 34 2c 20 30 78 61 33 29 3b 0d 0a  , 0x94, 0xa3);..
c7e0: 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44  const GUID TID_D
c7f0: 33 44 52 4d 46 72 61 6d 65 52 6f 74 61 74 69 6f  3DRMFrameRotatio
c800: 6e 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21  n = DEFINE_GUID!
c810: 28 30 78 65 32 62 66 35 36 63 33 2c 20 30 78 38  (0xe2bf56c3, 0x8
c820: 34 30 66 2c 20 30 78 31 31 63 66 2c 20 30 78 38  40f, 0x11cf, 0x8
c830: 66 2c 20 30 78 35 32 2c 20 30 78 30 2c 20 30 78  f, 0x52, 0x0, 0x
c840: 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20  40, 0x33, 0x35, 
c850: 30 78 39 34 2c 20 30 78 61 33 29 3b 0d 0a 63 6f  0x94, 0xa3);..co
c860: 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44  nst GUID TID_D3D
c870: 52 4d 4c 69 67 68 74 20 3d 20 44 45 46 49 4e 45  RMLight = DEFINE
c880: 5f 47 55 49 44 21 28 30 78 33 64 38 32 61 62 34  _GUID!(0x3d82ab4
c890: 61 2c 20 30 78 36 32 64 61 2c 20 30 78 31 31 63  a, 0x62da, 0x11c
c8a0: 66 2c 20 30 78 61 62 2c 20 30 78 33 39 2c 20 30  f, 0xab, 0x39, 0
c8b0: 78 30 2c 20 30 78 32 30 2c 20 30 78 61 66 2c 20  x0, 0x20, 0xaf, 
c8c0: 30 78 37 31 2c 20 30 78 65 34 2c 20 30 78 33 33  0x71, 0xe4, 0x33
c8d0: 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54  );..const GUID T
c8e0: 49 44 5f 44 33 44 52 4d 43 61 6d 65 72 61 20 3d  ID_D3DRMCamera =
c8f0: 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78   DEFINE_GUID!(0x
c900: 33 64 38 32 61 62 35 31 2c 20 30 78 36 32 64 61  3d82ab51, 0x62da
c910: 2c 20 30 78 31 31 63 66 2c 20 30 78 61 62 2c 20  , 0x11cf, 0xab, 
c920: 30 78 33 39 2c 20 30 78 30 2c 20 30 78 32 30 2c  0x39, 0x0, 0x20,
c930: 20 30 78 61 66 2c 20 30 78 37 31 2c 20 30 78 65   0xaf, 0x71, 0xe
c940: 34 2c 20 30 78 33 33 29 3b 0d 0a 63 6f 6e 73 74  4, 0x33);..const
c950: 20 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d 41   GUID TID_D3DRMA
c960: 70 70 44 61 74 61 20 3d 20 44 45 46 49 4e 45 5f  ppData = DEFINE_
c970: 47 55 49 44 21 28 30 78 65 35 37 34 35 32 38 30  GUID!(0xe5745280
c980: 2c 20 30 78 62 32 34 66 2c 20 30 78 31 31 63 66  , 0xb24f, 0x11cf
c990: 2c 20 30 78 39 64 2c 20 30 78 64 35 2c 20 30 78  , 0x9d, 0xd5, 0x
c9a0: 30 2c 20 30 78 61 61 2c 20 30 78 30 2c 20 30 78  0, 0xaa, 0x0, 0x
c9b0: 61 37 2c 20 30 78 31 61 2c 20 30 78 32 66 29 3b  a7, 0x1a, 0x2f);
c9c0: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
c9d0: 5f 44 33 44 52 4d 4c 69 67 68 74 55 6d 62 72 61  _D3DRMLightUmbra
c9e0: 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28   = DEFINE_GUID!(
c9f0: 30 78 61 65 64 32 32 37 34 30 2c 20 30 78 62 33  0xaed22740, 0xb3
ca00: 31 66 2c 20 30 78 31 31 63 66 2c 20 30 78 39 64  1f, 0x11cf, 0x9d
ca10: 2c 20 30 78 64 35 2c 20 30 78 30 2c 20 30 78 61  , 0xd5, 0x0, 0xa
ca20: 61 2c 20 30 78 30 2c 20 30 78 61 37 2c 20 30 78  a, 0x0, 0xa7, 0x
ca30: 31 61 2c 20 30 78 32 66 29 3b 0d 0a 63 6f 6e 73  1a, 0x2f);..cons
ca40: 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52 4d  t GUID TID_D3DRM
ca50: 4c 69 67 68 74 52 61 6e 67 65 20 3d 20 44 45 46  LightRange = DEF
ca60: 49 4e 45 5f 47 55 49 44 21 28 30 78 61 65 64 32  INE_GUID!(0xaed2
ca70: 32 37 34 32 2c 20 30 78 62 33 31 66 2c 20 30 78  2742, 0xb31f, 0x
ca80: 31 31 63 66 2c 20 30 78 39 64 2c 20 30 78 64 35  11cf, 0x9d, 0xd5
ca90: 2c 20 30 78 30 2c 20 30 78 61 61 2c 20 30 78 30  , 0x0, 0xaa, 0x0
caa0: 2c 20 30 78 61 37 2c 20 30 78 31 61 2c 20 30 78  , 0xa7, 0x1a, 0x
cab0: 32 66 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44  2f);..const GUID
cac0: 20 54 49 44 5f 44 33 44 52 4d 4c 69 67 68 74 50   TID_D3DRMLightP
cad0: 65 6e 75 6d 62 72 61 20 3d 20 44 45 46 49 4e 45  enumbra = DEFINE
cae0: 5f 47 55 49 44 21 28 30 78 61 65 64 32 32 37 34  _GUID!(0xaed2274
caf0: 31 2c 20 30 78 62 33 31 66 2c 20 30 78 31 31 63  1, 0xb31f, 0x11c
cb00: 66 2c 20 30 78 39 64 2c 20 30 78 64 35 2c 20 30  f, 0x9d, 0xd5, 0
cb10: 78 30 2c 20 30 78 61 61 2c 20 30 78 30 2c 20 30  x0, 0xaa, 0x0, 0
cb20: 78 61 37 2c 20 30 78 31 61 2c 20 30 78 32 66 29  xa7, 0x1a, 0x2f)
cb30: 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49  ;..const GUID TI
cb40: 44 5f 44 33 44 52 4d 4c 69 67 68 74 41 74 74 65  D_D3DRMLightAtte
cb50: 6e 75 61 74 69 6f 6e 20 3d 20 44 45 46 49 4e 45  nuation = DEFINE
cb60: 5f 47 55 49 44 21 28 30 78 61 38 61 39 38 62 61  _GUID!(0xa8a98ba
cb70: 30 2c 20 30 78 63 35 65 35 2c 20 30 78 31 31 63  0, 0xc5e5, 0x11c
cb80: 66 2c 20 30 78 62 39 2c 20 30 78 34 31 2c 20 30  f, 0xb9, 0x41, 0
cb90: 78 30 2c 20 30 78 38 30 2c 20 30 78 63 38 2c 20  x0, 0x80, 0xc8, 
cba0: 30 78 63 2c 20 30 78 66 61 2c 20 30 78 37 62 29  0xc, 0xfa, 0x7b)
cbb0: 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49  ;..const GUID TI
cbc0: 44 5f 44 33 44 52 4d 49 6e 6c 69 6e 65 44 61 74  D_D3DRMInlineDat
cbd0: 61 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21  a = DEFINE_GUID!
cbe0: 28 30 78 33 61 32 33 65 65 61 30 2c 20 30 78 39  (0x3a23eea0, 0x9
cbf0: 34 62 31 2c 20 30 78 31 31 64 30 2c 20 30 78 61  4b1, 0x11d0, 0xa
cc00: 62 2c 20 30 78 33 39 2c 20 30 78 30 2c 20 30 78  b, 0x39, 0x0, 0x
cc10: 32 30 2c 20 30 78 61 66 2c 20 30 78 37 31 2c 20  20, 0xaf, 0x71, 
cc20: 30 78 65 34 2c 20 30 78 33 33 29 3b 0d 0a 63 6f  0xe4, 0x33);..co
cc30: 6e 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44  nst GUID TID_D3D
cc40: 52 4d 55 72 6c 20 3d 20 44 45 46 49 4e 45 5f 47  RMUrl = DEFINE_G
cc50: 55 49 44 21 28 30 78 33 61 32 33 65 65 61 31 2c  UID!(0x3a23eea1,
cc60: 20 30 78 39 34 62 31 2c 20 30 78 31 31 64 30 2c   0x94b1, 0x11d0,
cc70: 20 30 78 61 62 2c 20 30 78 33 39 2c 20 30 78 30   0xab, 0x39, 0x0
cc80: 2c 20 30 78 32 30 2c 20 30 78 61 66 2c 20 30 78  , 0x20, 0xaf, 0x
cc90: 37 31 2c 20 30 78 65 34 2c 20 30 78 33 33 29 3b  71, 0xe4, 0x33);
cca0: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
ccb0: 5f 44 33 44 52 4d 50 72 6f 67 72 65 73 73 69 76  _D3DRMProgressiv
ccc0: 65 4d 65 73 68 20 3d 20 44 45 46 49 4e 45 5f 47  eMesh = DEFINE_G
ccd0: 55 49 44 21 28 30 78 38 41 36 33 43 33 36 30 2c  UID!(0x8A63C360,
cce0: 20 30 78 39 39 37 44 2c 20 30 78 31 31 64 30 2c   0x997D, 0x11d0,
ccf0: 20 30 78 39 34 2c 20 30 78 31 43 2c 20 30 78 30   0x94, 0x1C, 0x0
cd00: 2c 20 30 78 38 30 2c 20 30 78 43 38 2c 20 30 78  , 0x80, 0xC8, 0x
cd10: 30 43 2c 20 30 78 46 41 2c 20 30 78 37 42 29 3b  0C, 0xFA, 0x7B);
cd20: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
cd30: 5f 44 33 44 52 4d 45 78 74 65 72 6e 61 6c 56 69  _D3DRMExternalVi
cd40: 73 75 61 6c 20 3d 20 44 45 46 49 4e 45 5f 47 55  sual = DEFINE_GU
cd50: 49 44 21 28 30 78 39 38 31 31 36 41 41 30 2c 20  ID!(0x98116AA0, 
cd60: 30 78 42 44 42 41 2c 20 30 78 31 31 64 31 2c 20  0xBDBA, 0x11d1, 
cd70: 30 78 38 32 2c 20 30 78 43 30 2c 20 30 78 30 30  0x82, 0xC0, 0x00
cd80: 2c 20 30 78 41 30 2c 20 30 78 43 39 2c 20 30 78  , 0xA0, 0xC9, 0x
cd90: 36 39 2c 20 30 78 37 32 2c 20 30 78 37 31 29 3b  69, 0x72, 0x71);
cda0: 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44  ..const GUID TID
cdb0: 5f 44 33 44 52 4d 53 74 72 69 6e 67 50 72 6f 70  _D3DRMStringProp
cdc0: 65 72 74 79 20 3d 20 44 45 46 49 4e 45 5f 47 55  erty = DEFINE_GU
cdd0: 49 44 21 28 30 78 37 66 30 66 32 31 65 30 2c 20  ID!(0x7f0f21e0, 
cde0: 30 78 62 66 65 31 2c 20 30 78 31 31 64 31 2c 20  0xbfe1, 0x11d1, 
cdf0: 30 78 38 32 2c 20 30 78 63 30 2c 20 30 78 30 2c  0x82, 0xc0, 0x0,
ce00: 20 30 78 61 30 2c 20 30 78 63 39 2c 20 30 78 36   0xa0, 0xc9, 0x6
ce10: 39 2c 20 30 78 37 32 2c 20 30 78 37 31 29 3b 0d  9, 0x72, 0x71);.
ce20: 0a 63 6f 6e 73 74 20 47 55 49 44 20 54 49 44 5f  .const GUID TID_
ce30: 44 33 44 52 4d 50 72 6f 70 65 72 74 79 42 61 67  D3DRMPropertyBag
ce40: 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28   = DEFINE_GUID!(
ce50: 30 78 37 66 30 66 32 31 65 31 2c 20 30 78 62 66  0x7f0f21e1, 0xbf
ce60: 65 31 2c 20 30 78 31 31 64 31 2c 20 30 78 38 32  e1, 0x11d1, 0x82
ce70: 2c 20 30 78 63 30 2c 20 30 78 30 2c 20 30 78 61  , 0xc0, 0x0, 0xa
ce80: 30 2c 20 30 78 63 39 2c 20 30 78 36 39 2c 20 30  0, 0xc9, 0x69, 0
ce90: 78 37 32 2c 20 30 78 37 31 29 3b 0d 0a 63 6f 6e  x72, 0x71);..con
cea0: 73 74 20 47 55 49 44 20 54 49 44 5f 44 33 44 52  st GUID TID_D3DR
ceb0: 4d 52 69 67 68 74 48 61 6e 64 65 64 20 3d 20 44  MRightHanded = D
cec0: 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 37 66  EFINE_GUID!(0x7f
ced0: 35 64 35 65 61 30 2c 20 30 78 64 35 33 61 2c 20  5d5ea0, 0xd53a, 
cee0: 30 78 31 31 64 31 2c 20 30 78 38 32 2c 20 30 78  0x11d1, 0x82, 0x
cef0: 63 30 2c 20 30 78 30 2c 20 30 78 61 30 2c 20 30  c0, 0x0, 0xa0, 0
cf00: 78 63 39 2c 20 30 78 36 39 2c 20 30 78 37 32 2c  xc9, 0x69, 0x72,
cf10: 20 30 78 37 31 29 3b 0d 0a 0d 0a 75 62 79 74 65   0x71);....ubyte
cf20: 5b 5d 20 44 33 44 52 4d 5f 58 54 45 4d 50 4c 41  [] D3DRM_XTEMPLA
cf30: 54 45 53 20 3d 0d 0a 5b 0d 0a 09 30 78 37 38 2c  TES =..[...0x78,
cf40: 20 30 78 36 66 2c 20 30 78 36 36 2c 20 30 78 32   0x6f, 0x66, 0x2
cf50: 30 2c 20 30 78 33 30 2c 20 30 78 33 33 2c 20 30  0, 0x30, 0x33, 0
cf60: 78 33 30 2c 20 30 78 33 32 2c 20 30 78 36 32 2c  x30, 0x32, 0x62,
cf70: 0d 0a 09 30 78 36 39 2c 20 30 78 36 65 2c 20 30  ...0x69, 0x6e, 0
cf80: 78 32 30 2c 20 30 78 33 30 2c 20 30 78 33 30 2c  x20, 0x30, 0x30,
cf90: 20 30 78 33 36 2c 20 30 78 33 34 2c 20 30 78 31   0x36, 0x34, 0x1
cfa0: 66 2c 20 30 2c 20 30 78 31 2c 0d 0a 09 30 2c 20  f, 0, 0x1,...0, 
cfb0: 30 78 36 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0x6, 0, 0, 0, 0x
cfc0: 34 38 2c 20 30 78 36 35 2c 20 30 78 36 31 2c 20  48, 0x65, 0x61, 
cfd0: 30 78 36 34 2c 20 30 78 36 35 2c 0d 0a 09 30 78  0x64, 0x65,...0x
cfe0: 37 32 2c 20 30 78 61 2c 20 30 2c 20 30 78 35 2c  72, 0xa, 0, 0x5,
cff0: 20 30 2c 20 30 78 34 33 2c 20 30 78 61 62 2c 20   0, 0x43, 0xab, 
d000: 30 78 38 32 2c 20 30 78 33 64 2c 20 30 78 64 61  0x82, 0x3d, 0xda
d010: 2c 0d 0a 09 30 78 36 32 2c 20 30 78 63 66 2c 20  ,...0x62, 0xcf, 
d020: 30 78 31 31 2c 20 30 78 61 62 2c 20 30 78 33 39  0x11, 0xab, 0x39
d030: 2c 20 30 2c 20 30 78 32 30 2c 20 30 78 61 66 2c  , 0, 0x20, 0xaf,
d040: 20 30 78 37 31 2c 20 30 78 65 34 2c 0d 0a 09 30   0x71, 0xe4,...0
d050: 78 33 33 2c 20 30 78 32 38 2c 20 30 2c 20 30 78  x33, 0x28, 0, 0x
d060: 31 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20 30 2c  1, 0, 0x5, 0, 0,
d070: 20 30 2c 20 30 78 36 64 2c 0d 0a 09 30 78 36 31   0, 0x6d,...0x61
d080: 2c 20 30 78 36 61 2c 20 30 78 36 66 2c 20 30 78  , 0x6a, 0x6f, 0x
d090: 37 32 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 32  72, 0x14, 0, 0x2
d0a0: 38 2c 20 30 2c 20 30 78 31 2c 20 30 2c 0d 0a 09  8, 0, 0x1, 0,...
d0b0: 30 78 35 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0x5, 0, 0, 0, 0x
d0c0: 36 64 2c 20 30 78 36 39 2c 20 30 78 36 65 2c 20  6d, 0x69, 0x6e, 
d0d0: 30 78 36 66 2c 20 30 78 37 32 2c 20 30 78 31 34  0x6f, 0x72, 0x14
d0e0: 2c 0d 0a 09 30 2c 20 30 78 32 39 2c 20 30 2c 20  ,...0, 0x29, 0, 
d0f0: 30 78 31 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20  0x1, 0, 0x5, 0, 
d100: 30 2c 20 30 2c 20 30 78 36 36 2c 0d 0a 09 30 78  0, 0, 0x66,...0x
d110: 36 63 2c 20 30 78 36 31 2c 20 30 78 36 37 2c 20  6c, 0x61, 0x67, 
d120: 30 78 37 33 2c 20 30 78 31 34 2c 20 30 2c 20 30  0x73, 0x14, 0, 0
d130: 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 0d  xb, 0, 0x1f, 0,.
d140: 0a 09 30 78 31 2c 20 30 2c 20 30 78 36 2c 20 30  ..0x1, 0, 0x6, 0
d150: 2c 20 30 2c 20 30 2c 20 30 78 35 36 2c 20 30 78  , 0, 0, 0x56, 0x
d160: 36 35 2c 20 30 78 36 33 2c 20 30 78 37 34 2c 0d  65, 0x63, 0x74,.
d170: 0a 09 30 78 36 66 2c 20 30 78 37 32 2c 20 30 78  ..0x6f, 0x72, 0x
d180: 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20 30 78  a, 0, 0x5, 0, 0x
d190: 35 65 2c 20 30 78 61 62 2c 20 30 78 38 32 2c 20  5e, 0xab, 0x82, 
d1a0: 30 78 33 64 2c 0d 0a 09 30 78 64 61 2c 20 30 78  0x3d,...0xda, 0x
d1b0: 36 32 2c 20 30 78 63 66 2c 20 30 78 31 31 2c 20  62, 0xcf, 0x11, 
d1c0: 30 78 61 62 2c 20 30 78 33 39 2c 20 30 2c 20 30  0xab, 0x39, 0, 0
d1d0: 78 32 30 2c 20 30 78 61 66 2c 20 30 78 37 31 2c  x20, 0xaf, 0x71,
d1e0: 0d 0a 09 30 78 65 34 2c 20 30 78 33 33 2c 20 30  ...0xe4, 0x33, 0
d1f0: 78 32 61 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x2a, 0, 0x1, 0, 
d200: 30 78 31 2c 20 30 2c 20 30 2c 20 30 2c 0d 0a 09  0x1, 0, 0, 0,...
d210: 30 78 37 38 2c 20 30 78 31 34 2c 20 30 2c 20 30  0x78, 0x14, 0, 0
d220: 78 32 61 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x2a, 0, 0x1, 0, 
d230: 30 78 31 2c 20 30 2c 20 30 2c 0d 0a 09 30 2c 20  0x1, 0, 0,...0, 
d240: 30 78 37 39 2c 20 30 78 31 34 2c 20 30 2c 20 30  0x79, 0x14, 0, 0
d250: 78 32 61 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x2a, 0, 0x1, 0, 
d260: 30 78 31 2c 20 30 2c 0d 0a 09 30 2c 20 30 2c 20  0x1, 0,...0, 0, 
d270: 30 78 37 61 2c 20 30 78 31 34 2c 20 30 2c 20 30  0x7a, 0x14, 0, 0
d280: 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20  xb, 0, 0x1f, 0, 
d290: 30 78 31 2c 0d 0a 09 30 2c 20 30 78 38 2c 20 30  0x1,...0, 0x8, 0
d2a0: 2c 20 30 2c 20 30 2c 20 30 78 34 33 2c 20 30 78  , 0, 0, 0x43, 0x
d2b0: 36 66 2c 20 30 78 36 66 2c 20 30 78 37 32 2c 20  6f, 0x6f, 0x72, 
d2c0: 30 78 36 34 2c 0d 0a 09 30 78 37 33 2c 20 30 78  0x64,...0x73, 0x
d2d0: 33 32 2c 20 30 78 36 34 2c 20 30 78 61 2c 20 30  32, 0x64, 0xa, 0
d2e0: 2c 20 30 78 35 2c 20 30 2c 20 30 78 34 34 2c 20  , 0x5, 0, 0x44, 
d2f0: 30 78 33 66 2c 20 30 78 66 32 2c 0d 0a 09 30 78  0x3f, 0xf2,...0x
d300: 66 36 2c 20 30 78 38 36 2c 20 30 78 37 36 2c 20  f6, 0x86, 0x76, 
d310: 30 78 63 66 2c 20 30 78 31 31 2c 20 30 78 38 66  0xcf, 0x11, 0x8f
d320: 2c 20 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c  , 0x52, 0, 0x40,
d330: 20 30 78 33 33 2c 0d 0a 09 30 78 33 35 2c 20 30   0x33,...0x35, 0
d340: 78 39 34 2c 20 30 78 61 33 2c 20 30 78 32 61 2c  x94, 0xa3, 0x2a,
d350: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 31 2c   0, 0x1, 0, 0x1,
d360: 20 30 2c 20 30 2c 0d 0a 09 30 2c 20 30 78 37 35   0, 0,...0, 0x75
d370: 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 32 61 2c  , 0x14, 0, 0x2a,
d380: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 31 2c   0, 0x1, 0, 0x1,
d390: 20 30 2c 0d 0a 09 30 2c 20 30 2c 20 30 78 37 36   0,...0, 0, 0x76
d3a0: 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 62 2c 20  , 0x14, 0, 0xb, 
d3b0: 30 2c 20 30 78 31 66 2c 20 30 2c 20 30 78 31 2c  0, 0x1f, 0, 0x1,
d3c0: 0d 0a 09 30 2c 20 30 78 39 2c 20 30 2c 20 30 2c  ...0, 0x9, 0, 0,
d3d0: 20 30 2c 20 30 78 34 64 2c 20 30 78 36 31 2c 20   0, 0x4d, 0x61, 
d3e0: 30 78 37 34 2c 20 30 78 37 32 2c 20 30 78 36 39  0x74, 0x72, 0x69
d3f0: 2c 0d 0a 09 30 78 37 38 2c 20 30 78 33 34 2c 20  ,...0x78, 0x34, 
d400: 30 78 37 38 2c 20 30 78 33 34 2c 20 30 78 61 2c  0x78, 0x34, 0xa,
d410: 20 30 2c 20 30 78 35 2c 20 30 2c 20 30 78 34 35   0, 0x5, 0, 0x45
d420: 2c 20 30 78 33 66 2c 0d 0a 09 30 78 66 32 2c 20  , 0x3f,...0xf2, 
d430: 30 78 66 36 2c 20 30 78 38 36 2c 20 30 78 37 36  0xf6, 0x86, 0x76
d440: 2c 20 30 78 63 66 2c 20 30 78 31 31 2c 20 30 78  , 0xcf, 0x11, 0x
d450: 38 66 2c 20 30 78 35 32 2c 20 30 2c 20 30 78 34  8f, 0x52, 0, 0x4
d460: 30 2c 0d 0a 09 30 78 33 33 2c 20 30 78 33 35 2c  0,...0x33, 0x35,
d470: 20 30 78 39 34 2c 20 30 78 61 33 2c 20 30 78 33   0x94, 0xa3, 0x3
d480: 34 2c 20 30 2c 20 30 78 32 61 2c 20 30 2c 20 30  4, 0, 0x2a, 0, 0
d490: 78 31 2c 20 30 2c 0d 0a 09 30 78 36 2c 20 30 2c  x1, 0,...0x6, 0,
d4a0: 20 30 2c 20 30 2c 20 30 78 36 64 2c 20 30 78 36   0, 0, 0x6d, 0x6
d4b0: 31 2c 20 30 78 37 34 2c 20 30 78 37 32 2c 20 30  1, 0x74, 0x72, 0
d4c0: 78 36 39 2c 20 30 78 37 38 2c 0d 0a 09 30 78 65  x69, 0x78,...0xe
d4d0: 2c 20 30 2c 20 30 78 33 2c 20 30 2c 20 30 78 31  , 0, 0x3, 0, 0x1
d4e0: 30 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 66 2c  0, 0, 0, 0, 0xf,
d4f0: 20 30 2c 0d 0a 09 30 78 31 34 2c 20 30 2c 20 30   0,...0x14, 0, 0
d500: 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20  xb, 0, 0x1f, 0, 
d510: 30 78 31 2c 20 30 2c 20 30 78 39 2c 20 30 2c 0d  0x1, 0, 0x9, 0,.
d520: 0a 09 30 2c 20 30 2c 20 30 78 34 33 2c 20 30 78  ..0, 0, 0x43, 0x
d530: 36 66 2c 20 30 78 36 63 2c 20 30 78 36 66 2c 20  6f, 0x6c, 0x6f, 
d540: 30 78 37 32 2c 20 30 78 35 32 2c 20 30 78 34 37  0x72, 0x52, 0x47
d550: 2c 20 30 78 34 32 2c 0d 0a 09 30 78 34 31 2c 20  , 0x42,...0x41, 
d560: 30 78 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20  0xa, 0, 0x5, 0, 
d570: 30 78 65 30 2c 20 30 78 34 34 2c 20 30 78 66 66  0xe0, 0x44, 0xff
d580: 2c 20 30 78 33 35 2c 20 30 78 37 63 2c 0d 0a 09  , 0x35, 0x7c,...
d590: 30 78 36 63 2c 20 30 78 63 66 2c 20 30 78 31 31  0x6c, 0xcf, 0x11
d5a0: 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 2c  , 0x8f, 0x52, 0,
d5b0: 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33   0x40, 0x33, 0x3
d5c0: 35 2c 20 30 78 39 34 2c 0d 0a 09 30 78 61 33 2c  5, 0x94,...0xa3,
d5d0: 20 30 78 32 61 2c 20 30 2c 20 30 78 31 2c 20 30   0x2a, 0, 0x1, 0
d5e0: 2c 20 30 78 33 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0x3, 0, 0, 0, 
d5f0: 30 78 37 32 2c 0d 0a 09 30 78 36 35 2c 20 30 78  0x72,...0x65, 0x
d600: 36 34 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 32  64, 0x14, 0, 0x2
d610: 61 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78  a, 0, 0x1, 0, 0x
d620: 35 2c 20 30 2c 0d 0a 09 30 2c 20 30 2c 20 30 78  5, 0,...0, 0, 0x
d630: 36 37 2c 20 30 78 37 32 2c 20 30 78 36 35 2c 20  67, 0x72, 0x65, 
d640: 30 78 36 35 2c 20 30 78 36 65 2c 20 30 78 31 34  0x65, 0x6e, 0x14
d650: 2c 20 30 2c 20 30 78 32 61 2c 0d 0a 09 30 2c 20  , 0, 0x2a,...0, 
d660: 30 78 31 2c 20 30 2c 20 30 78 34 2c 20 30 2c 20  0x1, 0, 0x4, 0, 
d670: 30 2c 20 30 2c 20 30 78 36 32 2c 20 30 78 36 63  0, 0, 0x62, 0x6c
d680: 2c 20 30 78 37 35 2c 0d 0a 09 30 78 36 35 2c 20  , 0x75,...0x65, 
d690: 30 78 31 34 2c 20 30 2c 20 30 78 32 61 2c 20 30  0x14, 0, 0x2a, 0
d6a0: 2c 20 30 78 31 2c 20 30 2c 20 30 78 35 2c 20 30  , 0x1, 0, 0x5, 0
d6b0: 2c 20 30 2c 0d 0a 09 30 2c 20 30 78 36 31 2c 20  , 0,...0, 0x61, 
d6c0: 30 78 36 63 2c 20 30 78 37 30 2c 20 30 78 36 38  0x6c, 0x70, 0x68
d6d0: 2c 20 30 78 36 31 2c 20 30 78 31 34 2c 20 30 2c  , 0x61, 0x14, 0,
d6e0: 20 30 78 62 2c 20 30 2c 0d 0a 09 30 78 31 66 2c   0xb, 0,...0x1f,
d6f0: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 38 2c   0, 0x1, 0, 0x8,
d700: 20 30 2c 20 30 2c 20 30 2c 20 30 78 34 33 2c 20   0, 0, 0, 0x43, 
d710: 30 78 36 66 2c 0d 0a 09 30 78 36 63 2c 20 30 78  0x6f,...0x6c, 0x
d720: 36 66 2c 20 30 78 37 32 2c 20 30 78 35 32 2c 20  6f, 0x72, 0x52, 
d730: 30 78 34 37 2c 20 30 78 34 32 2c 20 30 78 61 2c  0x47, 0x42, 0xa,
d740: 20 30 2c 20 30 78 35 2c 20 30 2c 0d 0a 09 30 78   0, 0x5, 0,...0x
d750: 38 31 2c 20 30 78 36 65 2c 20 30 78 65 31 2c 20  81, 0x6e, 0xe1, 
d760: 30 78 64 33 2c 20 30 78 33 35 2c 20 30 78 37 38  0xd3, 0x35, 0x78
d770: 2c 20 30 78 63 66 2c 20 30 78 31 31 2c 20 30 78  , 0xcf, 0x11, 0x
d780: 38 66 2c 20 30 78 35 32 2c 0d 0a 09 30 2c 20 30  8f, 0x52,...0, 0
d790: 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c  x40, 0x33, 0x35,
d7a0: 20 30 78 39 34 2c 20 30 78 61 33 2c 20 30 78 32   0x94, 0xa3, 0x2
d7b0: 61 2c 20 30 2c 20 30 78 31 2c 20 30 2c 0d 0a 09  a, 0, 0x1, 0,...
d7c0: 30 78 33 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0x3, 0, 0, 0, 0x
d7d0: 37 32 2c 20 30 78 36 35 2c 20 30 78 36 34 2c 20  72, 0x65, 0x64, 
d7e0: 30 78 31 34 2c 20 30 2c 20 30 78 32 61 2c 0d 0a  0x14, 0, 0x2a,..
d7f0: 09 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 35 2c  .0, 0x1, 0, 0x5,
d800: 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 37 2c 20   0, 0, 0, 0x67, 
d810: 30 78 37 32 2c 20 30 78 36 35 2c 0d 0a 09 30 78  0x72, 0x65,...0x
d820: 36 35 2c 20 30 78 36 65 2c 20 30 78 31 34 2c 20  65, 0x6e, 0x14, 
d830: 30 2c 20 30 78 32 61 2c 20 30 2c 20 30 78 31 2c  0, 0x2a, 0, 0x1,
d840: 20 30 2c 20 30 78 34 2c 20 30 2c 0d 0a 09 30 2c   0, 0x4, 0,...0,
d850: 20 30 2c 20 30 78 36 32 2c 20 30 78 36 63 2c 20   0, 0x62, 0x6c, 
d860: 30 78 37 35 2c 20 30 78 36 35 2c 20 30 78 31 34  0x75, 0x65, 0x14
d870: 2c 20 30 2c 20 30 78 62 2c 20 30 2c 0d 0a 09 30  , 0, 0xb, 0,...0
d880: 78 31 66 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x1f, 0, 0x1, 0, 
d890: 30 78 63 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0xc, 0, 0, 0, 0x
d8a0: 34 39 2c 20 30 78 36 65 2c 0d 0a 09 30 78 36 34  49, 0x6e,...0x64
d8b0: 2c 20 30 78 36 35 2c 20 30 78 37 38 2c 20 30 78  , 0x65, 0x78, 0x
d8c0: 36 35 2c 20 30 78 36 34 2c 20 30 78 34 33 2c 20  65, 0x64, 0x43, 
d8d0: 30 78 36 66 2c 20 30 78 36 63 2c 20 30 78 36 66  0x6f, 0x6c, 0x6f
d8e0: 2c 20 30 78 37 32 2c 0d 0a 09 30 78 61 2c 20 30  , 0x72,...0xa, 0
d8f0: 2c 20 30 78 35 2c 20 30 2c 20 30 78 32 30 2c 20  , 0x5, 0, 0x20, 
d900: 30 78 62 38 2c 20 30 78 33 30 2c 20 30 78 31 36  0xb8, 0x30, 0x16
d910: 2c 20 30 78 34 32 2c 20 30 78 37 38 2c 0d 0a 09  , 0x42, 0x78,...
d920: 30 78 63 66 2c 20 30 78 31 31 2c 20 30 78 38 66  0xcf, 0x11, 0x8f
d930: 2c 20 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c  , 0x52, 0, 0x40,
d940: 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39   0x33, 0x35, 0x9
d950: 34 2c 20 30 78 61 33 2c 0d 0a 09 30 78 32 39 2c  4, 0xa3,...0x29,
d960: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 35 2c   0, 0x1, 0, 0x5,
d970: 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 39 2c 20   0, 0, 0, 0x69, 
d980: 30 78 36 65 2c 0d 0a 09 30 78 36 34 2c 20 30 78  0x6e,...0x64, 0x
d990: 36 35 2c 20 30 78 37 38 2c 20 30 78 31 34 2c 20  65, 0x78, 0x14, 
d9a0: 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 39 2c 20  0, 0x1, 0, 0x9, 
d9b0: 30 2c 20 30 2c 0d 0a 09 30 2c 20 30 78 34 33 2c  0, 0,...0, 0x43,
d9c0: 20 30 78 36 66 2c 20 30 78 36 63 2c 20 30 78 36   0x6f, 0x6c, 0x6
d9d0: 66 2c 20 30 78 37 32 2c 20 30 78 35 32 2c 20 30  f, 0x72, 0x52, 0
d9e0: 78 34 37 2c 20 30 78 34 32 2c 20 30 78 34 31 2c  x47, 0x42, 0x41,
d9f0: 0d 0a 09 30 78 31 2c 20 30 2c 20 30 78 61 2c 20  ...0x1, 0, 0xa, 
da00: 30 2c 20 30 2c 20 30 2c 20 30 78 36 39 2c 20 30  0, 0, 0, 0x69, 0
da10: 78 36 65 2c 20 30 78 36 34 2c 20 30 78 36 35 2c  x6e, 0x64, 0x65,
da20: 0d 0a 09 30 78 37 38 2c 20 30 78 34 33 2c 20 30  ...0x78, 0x43, 0
da30: 78 36 66 2c 20 30 78 36 63 2c 20 30 78 36 66 2c  x6f, 0x6c, 0x6f,
da40: 20 30 78 37 32 2c 20 30 78 31 34 2c 20 30 2c 20   0x72, 0x14, 0, 
da50: 30 78 62 2c 20 30 2c 0d 0a 09 30 78 31 66 2c 20  0xb, 0,...0x1f, 
da60: 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 37 2c 20  0, 0x1, 0, 0x7, 
da70: 30 2c 20 30 2c 20 30 2c 20 30 78 34 32 2c 20 30  0, 0, 0, 0x42, 0
da80: 78 36 66 2c 0d 0a 09 30 78 36 66 2c 20 30 78 36  x6f,...0x6f, 0x6
da90: 63 2c 20 30 78 36 35 2c 20 30 78 36 31 2c 20 30  c, 0x65, 0x61, 0
daa0: 78 36 65 2c 20 30 78 61 2c 20 30 2c 20 30 78 35  x6e, 0xa, 0, 0x5
dab0: 2c 20 30 2c 20 30 78 61 30 2c 0d 0a 09 30 78 61  , 0, 0xa0,...0xa
dac0: 36 2c 20 30 78 37 64 2c 20 30 78 35 33 2c 20 30  6, 0x7d, 0x53, 0
dad0: 78 33 37 2c 20 30 78 63 61 2c 20 30 78 64 30 2c  x37, 0xca, 0xd0,
dae0: 20 30 78 31 31 2c 20 30 78 39 34 2c 20 30 78 31   0x11, 0x94, 0x1
daf0: 63 2c 20 30 2c 0d 0a 09 30 78 38 30 2c 20 30 78  c, 0,...0x80, 0x
db00: 63 38 2c 20 30 78 63 2c 20 30 78 66 61 2c 20 30  c8, 0xc, 0xfa, 0
db10: 78 37 62 2c 20 30 78 32 39 2c 20 30 2c 20 30 78  x7b, 0x29, 0, 0x
db20: 31 2c 20 30 2c 20 30 78 39 2c 0d 0a 09 30 2c 20  1, 0, 0x9,...0, 
db30: 30 2c 20 30 2c 20 30 78 37 34 2c 20 30 78 37 32  0, 0, 0x74, 0x72
db40: 2c 20 30 78 37 35 2c 20 30 78 36 35 2c 20 30 78  , 0x75, 0x65, 0x
db50: 36 36 2c 20 30 78 36 31 2c 20 30 78 36 63 2c 0d  66, 0x61, 0x6c,.
db60: 0a 09 30 78 37 33 2c 20 30 78 36 35 2c 20 30 78  ..0x73, 0x65, 0x
db70: 31 34 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30  14, 0, 0xb, 0, 0
db80: 78 31 66 2c 20 30 2c 20 30 78 31 2c 20 30 2c 0d  x1f, 0, 0x1, 0,.
db90: 0a 09 30 78 39 2c 20 30 2c 20 30 2c 20 30 2c 20  ..0x9, 0, 0, 0, 
dba0: 30 78 34 32 2c 20 30 78 36 66 2c 20 30 78 36 66  0x42, 0x6f, 0x6f
dbb0: 2c 20 30 78 36 63 2c 20 30 78 36 35 2c 20 30 78  , 0x6c, 0x65, 0x
dbc0: 36 31 2c 0d 0a 09 30 78 36 65 2c 20 30 78 33 32  61,...0x6e, 0x32
dbd0: 2c 20 30 78 36 34 2c 20 30 78 61 2c 20 30 2c 20  , 0x64, 0xa, 0, 
dbe0: 30 78 35 2c 20 30 2c 20 30 78 36 33 2c 20 30 78  0x5, 0, 0x63, 0x
dbf0: 61 65 2c 20 30 78 38 35 2c 0d 0a 09 30 78 34 38  ae, 0x85,...0x48
dc00: 2c 20 30 78 65 38 2c 20 30 78 37 38 2c 20 30 78  , 0xe8, 0x78, 0x
dc10: 63 66 2c 20 30 78 31 31 2c 20 30 78 38 66 2c 20  cf, 0x11, 0x8f, 
dc20: 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c 20 30  0x52, 0, 0x40, 0
dc30: 78 33 33 2c 0d 0a 09 30 78 33 35 2c 20 30 78 39  x33,...0x35, 0x9
dc40: 34 2c 20 30 78 61 33 2c 20 30 78 31 2c 20 30 2c  4, 0xa3, 0x1, 0,
dc50: 20 30 78 37 2c 20 30 2c 20 30 2c 20 30 2c 20 30   0x7, 0, 0, 0, 0
dc60: 78 34 32 2c 0d 0a 09 30 78 36 66 2c 20 30 78 36  x42,...0x6f, 0x6
dc70: 66 2c 20 30 78 36 63 2c 20 30 78 36 35 2c 20 30  f, 0x6c, 0x65, 0
dc80: 78 36 31 2c 20 30 78 36 65 2c 20 30 78 31 2c 20  x61, 0x6e, 0x1, 
dc90: 30 2c 20 30 78 31 2c 20 30 2c 0d 0a 09 30 2c 20  0, 0x1, 0,...0, 
dca0: 30 2c 20 30 78 37 35 2c 20 30 78 31 34 2c 20 30  0, 0x75, 0x14, 0
dcb0: 2c 20 30 78 31 2c 20 30 2c 20 30 78 37 2c 20 30  , 0x1, 0, 0x7, 0
dcc0: 2c 20 30 2c 0d 0a 09 30 2c 20 30 78 34 32 2c 20  , 0,...0, 0x42, 
dcd0: 30 78 36 66 2c 20 30 78 36 66 2c 20 30 78 36 63  0x6f, 0x6f, 0x6c
dce0: 2c 20 30 78 36 35 2c 20 30 78 36 31 2c 20 30 78  , 0x65, 0x61, 0x
dcf0: 36 65 2c 20 30 78 31 2c 20 30 2c 0d 0a 09 30 78  6e, 0x1, 0,...0x
dd00: 31 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 37 36  1, 0, 0, 0, 0x76
dd10: 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 62 2c 20  , 0x14, 0, 0xb, 
dd20: 30 2c 20 30 78 31 66 2c 0d 0a 09 30 2c 20 30 78  0, 0x1f,...0, 0x
dd30: 31 2c 20 30 2c 20 30 78 63 2c 20 30 2c 20 30 2c  1, 0, 0xc, 0, 0,
dd40: 20 30 2c 20 30 78 34 64 2c 20 30 78 36 31 2c 20   0, 0x4d, 0x61, 
dd50: 30 78 37 34 2c 0d 0a 09 30 78 36 35 2c 20 30 78  0x74,...0x65, 0x
dd60: 37 32 2c 20 30 78 36 39 2c 20 30 78 36 31 2c 20  72, 0x69, 0x61, 
dd70: 30 78 36 63 2c 20 30 78 35 37 2c 20 30 78 37 32  0x6c, 0x57, 0x72
dd80: 2c 20 30 78 36 31 2c 20 30 78 37 30 2c 20 30 78  , 0x61, 0x70, 0x
dd90: 61 2c 0d 0a 09 30 2c 20 30 78 35 2c 20 30 2c 20  a,...0, 0x5, 0, 
dda0: 30 78 36 30 2c 20 30 78 61 65 2c 20 30 78 38 35  0x60, 0xae, 0x85
ddb0: 2c 20 30 78 34 38 2c 20 30 78 65 38 2c 20 30 78  , 0x48, 0xe8, 0x
ddc0: 37 38 2c 20 30 78 63 66 2c 0d 0a 09 30 78 31 31  78, 0xcf,...0x11
ddd0: 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 2c  , 0x8f, 0x52, 0,
dde0: 20 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33   0x40, 0x33, 0x3
ddf0: 35 2c 20 30 78 39 34 2c 20 30 78 61 33 2c 20 30  5, 0x94, 0xa3, 0
de00: 78 31 2c 0d 0a 09 30 2c 20 30 78 37 2c 20 30 2c  x1,...0, 0x7, 0,
de10: 20 30 2c 20 30 2c 20 30 78 34 32 2c 20 30 78 36   0, 0, 0x42, 0x6
de20: 66 2c 20 30 78 36 66 2c 20 30 78 36 63 2c 20 30  f, 0x6f, 0x6c, 0
de30: 78 36 35 2c 0d 0a 09 30 78 36 31 2c 20 30 78 36  x65,...0x61, 0x6
de40: 65 2c 20 30 78 31 2c 20 30 2c 20 30 78 31 2c 20  e, 0x1, 0, 0x1, 
de50: 30 2c 20 30 2c 20 30 2c 20 30 78 37 35 2c 20 30  0, 0, 0, 0x75, 0
de60: 78 31 34 2c 0d 0a 09 30 2c 20 30 78 31 2c 20 30  x14,...0, 0x1, 0
de70: 2c 20 30 78 37 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0x7, 0, 0, 0, 
de80: 30 78 34 32 2c 20 30 78 36 66 2c 20 30 78 36 66  0x42, 0x6f, 0x6f
de90: 2c 0d 0a 09 30 78 36 63 2c 20 30 78 36 35 2c 20  ,...0x6c, 0x65, 
dea0: 30 78 36 31 2c 20 30 78 36 65 2c 20 30 78 31 2c  0x61, 0x6e, 0x1,
deb0: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 2c 20 30   0, 0x1, 0, 0, 0
dec0: 2c 0d 0a 09 30 78 37 36 2c 20 30 78 31 34 2c 20  ,...0x76, 0x14, 
ded0: 30 2c 20 30 78 62 2c 20 30 2c 20 30 78 31 66 2c  0, 0xb, 0, 0x1f,
dee0: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 66 2c   0, 0x1, 0, 0xf,
def0: 0d 0a 09 30 2c 20 30 2c 20 30 2c 20 30 78 35 34  ...0, 0, 0, 0x54
df00: 2c 20 30 78 36 35 2c 20 30 78 37 38 2c 20 30 78  , 0x65, 0x78, 0x
df10: 37 34 2c 20 30 78 37 35 2c 20 30 78 37 32 2c 20  74, 0x75, 0x72, 
df20: 30 78 36 35 2c 0d 0a 09 30 78 34 36 2c 20 30 78  0x65,...0x46, 0x
df30: 36 39 2c 20 30 78 36 63 2c 20 30 78 36 35 2c 20  69, 0x6c, 0x65, 
df40: 30 78 36 65 2c 20 30 78 36 31 2c 20 30 78 36 64  0x6e, 0x61, 0x6d
df50: 2c 20 30 78 36 35 2c 20 30 78 61 2c 20 30 2c 0d  , 0x65, 0xa, 0,.
df60: 0a 09 30 78 35 2c 20 30 2c 20 30 78 65 31 2c 20  ..0x5, 0, 0xe1, 
df70: 30 78 39 30 2c 20 30 78 32 37 2c 20 30 78 61 34  0x90, 0x27, 0xa4
df80: 2c 20 30 78 31 30 2c 20 30 78 37 38 2c 20 30 78  , 0x10, 0x78, 0x
df90: 63 66 2c 20 30 78 31 31 2c 0d 0a 09 30 78 38 66  cf, 0x11,...0x8f
dfa0: 2c 20 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c  , 0x52, 0, 0x40,
dfb0: 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39   0x33, 0x35, 0x9
dfc0: 34 2c 20 30 78 61 33 2c 20 30 78 33 31 2c 20 30  4, 0xa3, 0x31, 0
dfd0: 2c 0d 0a 09 30 78 31 2c 20 30 2c 20 30 78 38 2c  ,...0x1, 0, 0x8,
dfe0: 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 36 2c 20   0, 0, 0, 0x66, 
dff0: 30 78 36 39 2c 20 30 78 36 63 2c 20 30 78 36 35  0x69, 0x6c, 0x65
e000: 2c 0d 0a 09 30 78 36 65 2c 20 30 78 36 31 2c 20  ,...0x6e, 0x61, 
e010: 30 78 36 64 2c 20 30 78 36 35 2c 20 30 78 31 34  0x6d, 0x65, 0x14
e020: 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 78 31  , 0, 0xb, 0, 0x1
e030: 66 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30 2c 20  f, 0,...0x1, 0, 
e040: 30 78 38 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0x8, 0, 0, 0, 0x
e050: 34 64 2c 20 30 78 36 31 2c 20 30 78 37 34 2c 20  4d, 0x61, 0x74, 
e060: 30 78 36 35 2c 0d 0a 09 30 78 37 32 2c 20 30 78  0x65,...0x72, 0x
e070: 36 39 2c 20 30 78 36 31 2c 20 30 78 36 63 2c 20  69, 0x61, 0x6c, 
e080: 30 78 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20  0xa, 0, 0x5, 0, 
e090: 30 78 34 64 2c 20 30 78 61 62 2c 0d 0a 09 30 78  0x4d, 0xab,...0x
e0a0: 38 32 2c 20 30 78 33 64 2c 20 30 78 64 61 2c 20  82, 0x3d, 0xda, 
e0b0: 30 78 36 32 2c 20 30 78 63 66 2c 20 30 78 31 31  0x62, 0xcf, 0x11
e0c0: 2c 20 30 78 61 62 2c 20 30 78 33 39 2c 20 30 2c  , 0xab, 0x39, 0,
e0d0: 20 30 78 32 30 2c 0d 0a 09 30 78 61 66 2c 20 30   0x20,...0xaf, 0
e0e0: 78 37 31 2c 20 30 78 65 34 2c 20 30 78 33 33 2c  x71, 0xe4, 0x33,
e0f0: 20 30 78 31 2c 20 30 2c 20 30 78 39 2c 20 30 2c   0x1, 0, 0x9, 0,
e100: 20 30 2c 20 30 2c 0d 0a 09 30 78 34 33 2c 20 30   0, 0,...0x43, 0
e110: 78 36 66 2c 20 30 78 36 63 2c 20 30 78 36 66 2c  x6f, 0x6c, 0x6f,
e120: 20 30 78 37 32 2c 20 30 78 35 32 2c 20 30 78 34   0x72, 0x52, 0x4
e130: 37 2c 20 30 78 34 32 2c 20 30 78 34 31 2c 20 30  7, 0x42, 0x41, 0
e140: 78 31 2c 0d 0a 09 30 2c 20 30 78 39 2c 20 30 2c  x1,...0, 0x9, 0,
e150: 20 30 2c 20 30 2c 20 30 78 36 36 2c 20 30 78 36   0, 0, 0x66, 0x6
e160: 31 2c 20 30 78 36 33 2c 20 30 78 36 35 2c 20 30  1, 0x63, 0x65, 0
e170: 78 34 33 2c 0d 0a 09 30 78 36 66 2c 20 30 78 36  x43,...0x6f, 0x6
e180: 63 2c 20 30 78 36 66 2c 20 30 78 37 32 2c 20 30  c, 0x6f, 0x72, 0
e190: 78 31 34 2c 20 30 2c 20 30 78 32 61 2c 20 30 2c  x14, 0, 0x2a, 0,
e1a0: 20 30 78 31 2c 20 30 2c 0d 0a 09 30 78 35 2c 20   0x1, 0,...0x5, 
e1b0: 30 2c 20 30 2c 20 30 2c 20 30 78 37 30 2c 20 30  0, 0, 0, 0x70, 0
e1c0: 78 36 66 2c 20 30 78 37 37 2c 20 30 78 36 35 2c  x6f, 0x77, 0x65,
e1d0: 20 30 78 37 32 2c 20 30 78 31 34 2c 0d 0a 09 30   0x72, 0x14,...0
e1e0: 2c 20 30 78 31 2c 20 30 2c 20 30 78 38 2c 20 30  , 0x1, 0, 0x8, 0
e1f0: 2c 20 30 2c 20 30 2c 20 30 78 34 33 2c 20 30 78  , 0, 0, 0x43, 0x
e200: 36 66 2c 20 30 78 36 63 2c 0d 0a 09 30 78 36 66  6f, 0x6c,...0x6f
e210: 2c 20 30 78 37 32 2c 20 30 78 35 32 2c 20 30 78  , 0x72, 0x52, 0x
e220: 34 37 2c 20 30 78 34 32 2c 20 30 78 31 2c 20 30  47, 0x42, 0x1, 0
e230: 2c 20 30 78 64 2c 20 30 2c 20 30 2c 0d 0a 09 30  , 0xd, 0, 0,...0
e240: 2c 20 30 78 37 33 2c 20 30 78 37 30 2c 20 30 78  , 0x73, 0x70, 0x
e250: 36 35 2c 20 30 78 36 33 2c 20 30 78 37 35 2c 20  65, 0x63, 0x75, 
e260: 30 78 36 63 2c 20 30 78 36 31 2c 20 30 78 37 32  0x6c, 0x61, 0x72
e270: 2c 20 30 78 34 33 2c 0d 0a 09 30 78 36 66 2c 20  , 0x43,...0x6f, 
e280: 30 78 36 63 2c 20 30 78 36 66 2c 20 30 78 37 32  0x6c, 0x6f, 0x72
e290: 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 31 2c 20  , 0x14, 0, 0x1, 
e2a0: 30 2c 20 30 78 38 2c 20 30 2c 0d 0a 09 30 2c 20  0, 0x8, 0,...0, 
e2b0: 30 2c 20 30 78 34 33 2c 20 30 78 36 66 2c 20 30  0, 0x43, 0x6f, 0
e2c0: 78 36 63 2c 20 30 78 36 66 2c 20 30 78 37 32 2c  x6c, 0x6f, 0x72,
e2d0: 20 30 78 35 32 2c 20 30 78 34 37 2c 20 30 78 34   0x52, 0x47, 0x4
e2e0: 32 2c 0d 0a 09 30 78 31 2c 20 30 2c 20 30 78 64  2,...0x1, 0, 0xd
e2f0: 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 35 2c  , 0, 0, 0, 0x65,
e300: 20 30 78 36 64 2c 20 30 78 36 39 2c 20 30 78 37   0x6d, 0x69, 0x7
e310: 33 2c 0d 0a 09 30 78 37 33 2c 20 30 78 36 39 2c  3,...0x73, 0x69,
e320: 20 30 78 37 36 2c 20 30 78 36 35 2c 20 30 78 34   0x76, 0x65, 0x4
e330: 33 2c 20 30 78 36 66 2c 20 30 78 36 63 2c 20 30  3, 0x6f, 0x6c, 0
e340: 78 36 66 2c 20 30 78 37 32 2c 20 30 78 31 34 2c  x6f, 0x72, 0x14,
e350: 0d 0a 09 30 2c 20 30 78 65 2c 20 30 2c 20 30 78  ...0, 0xe, 0, 0x
e360: 31 32 2c 20 30 2c 20 30 78 31 32 2c 20 30 2c 20  12, 0, 0x12, 0, 
e370: 30 78 31 32 2c 20 30 2c 20 30 78 66 2c 0d 0a 09  0x12, 0, 0xf,...
e380: 30 2c 20 30 78 62 2c 20 30 2c 20 30 78 31 66 2c  0, 0xb, 0, 0x1f,
e390: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 38 2c   0, 0x1, 0, 0x8,
e3a0: 20 30 2c 20 30 2c 0d 0a 09 30 2c 20 30 78 34 64   0, 0,...0, 0x4d
e3b0: 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78  , 0x65, 0x73, 0x
e3c0: 36 38 2c 20 30 78 34 36 2c 20 30 78 36 31 2c 20  68, 0x46, 0x61, 
e3d0: 30 78 36 33 2c 20 30 78 36 35 2c 20 30 78 61 2c  0x63, 0x65, 0xa,
e3e0: 0d 0a 09 30 2c 20 30 78 35 2c 20 30 2c 20 30 78  ...0, 0x5, 0, 0x
e3f0: 35 66 2c 20 30 78 61 62 2c 20 30 78 38 32 2c 20  5f, 0xab, 0x82, 
e400: 30 78 33 64 2c 20 30 78 64 61 2c 20 30 78 36 32  0x3d, 0xda, 0x62
e410: 2c 20 30 78 63 66 2c 0d 0a 09 30 78 31 31 2c 20  , 0xcf,...0x11, 
e420: 30 78 61 62 2c 20 30 78 33 39 2c 20 30 2c 20 30  0xab, 0x39, 0, 0
e430: 78 32 30 2c 20 30 78 61 66 2c 20 30 78 37 31 2c  x20, 0xaf, 0x71,
e440: 20 30 78 65 34 2c 20 30 78 33 33 2c 20 30 78 32   0xe4, 0x33, 0x2
e450: 39 2c 0d 0a 09 30 2c 20 30 78 31 2c 20 30 2c 20  9,...0, 0x1, 0, 
e460: 30 78 31 32 2c 20 30 2c 20 30 2c 20 30 2c 20 30  0x12, 0, 0, 0, 0
e470: 78 36 65 2c 20 30 78 34 36 2c 20 30 78 36 31 2c  x6e, 0x46, 0x61,
e480: 0d 0a 09 30 78 36 33 2c 20 30 78 36 35 2c 20 30  ...0x63, 0x65, 0
e490: 78 35 36 2c 20 30 78 36 35 2c 20 30 78 37 32 2c  x56, 0x65, 0x72,
e4a0: 20 30 78 37 34 2c 20 30 78 36 35 2c 20 30 78 37   0x74, 0x65, 0x7
e4b0: 38 2c 20 30 78 34 39 2c 20 30 78 36 65 2c 0d 0a  8, 0x49, 0x6e,..
e4c0: 09 30 78 36 34 2c 20 30 78 36 39 2c 20 30 78 36  .0x64, 0x69, 0x6
e4d0: 33 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30  3, 0x65, 0x73, 0
e4e0: 78 31 34 2c 20 30 2c 20 30 78 33 34 2c 20 30 2c  x14, 0, 0x34, 0,
e4f0: 20 30 78 32 39 2c 0d 0a 09 30 2c 20 30 78 31 2c   0x29,...0, 0x1,
e500: 20 30 2c 20 30 78 31 31 2c 20 30 2c 20 30 2c 20   0, 0x11, 0, 0, 
e510: 30 2c 20 30 78 36 36 2c 20 30 78 36 31 2c 20 30  0, 0x66, 0x61, 0
e520: 78 36 33 2c 0d 0a 09 30 78 36 35 2c 20 30 78 35  x63,...0x65, 0x5
e530: 36 2c 20 30 78 36 35 2c 20 30 78 37 32 2c 20 30  6, 0x65, 0x72, 0
e540: 78 37 34 2c 20 30 78 36 35 2c 20 30 78 37 38 2c  x74, 0x65, 0x78,
e550: 20 30 78 34 39 2c 20 30 78 36 65 2c 20 30 78 36   0x49, 0x6e, 0x6
e560: 34 2c 0d 0a 09 30 78 36 39 2c 20 30 78 36 33 2c  4,...0x69, 0x63,
e570: 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78 65   0x65, 0x73, 0xe
e580: 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 31  , 0, 0x1, 0, 0x1
e590: 32 2c 20 30 2c 0d 0a 09 30 2c 20 30 2c 20 30 78  2, 0,...0, 0, 0x
e5a0: 36 65 2c 20 30 78 34 36 2c 20 30 78 36 31 2c 20  6e, 0x46, 0x61, 
e5b0: 30 78 36 33 2c 20 30 78 36 35 2c 20 30 78 35 36  0x63, 0x65, 0x56
e5c0: 2c 20 30 78 36 35 2c 20 30 78 37 32 2c 0d 0a 09  , 0x65, 0x72,...
e5d0: 30 78 37 34 2c 20 30 78 36 35 2c 20 30 78 37 38  0x74, 0x65, 0x78
e5e0: 2c 20 30 78 34 39 2c 20 30 78 36 65 2c 20 30 78  , 0x49, 0x6e, 0x
e5f0: 36 34 2c 20 30 78 36 39 2c 20 30 78 36 33 2c 20  64, 0x69, 0x63, 
e600: 30 78 36 35 2c 20 30 78 37 33 2c 0d 0a 09 30 78  0x65, 0x73,...0x
e610: 66 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30  f, 0, 0x14, 0, 0
e620: 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20  xb, 0, 0x1f, 0, 
e630: 30 78 31 2c 20 30 2c 0d 0a 09 30 78 64 2c 20 30  0x1, 0,...0xd, 0
e640: 2c 20 30 2c 20 30 2c 20 30 78 34 64 2c 20 30 78  , 0, 0, 0x4d, 0x
e650: 36 35 2c 20 30 78 37 33 2c 20 30 78 36 38 2c 20  65, 0x73, 0x68, 
e660: 30 78 34 36 2c 20 30 78 36 31 2c 0d 0a 09 30 78  0x46, 0x61,...0x
e670: 36 33 2c 20 30 78 36 35 2c 20 30 78 35 37 2c 20  63, 0x65, 0x57, 
e680: 30 78 37 32 2c 20 30 78 36 31 2c 20 30 78 37 30  0x72, 0x61, 0x70
e690: 2c 20 30 78 37 33 2c 20 30 78 61 2c 20 30 2c 20  , 0x73, 0xa, 0, 
e6a0: 30 78 35 2c 0d 0a 09 30 2c 20 30 78 63 30 2c 20  0x5,...0, 0xc0, 
e6b0: 30 78 63 35 2c 20 30 78 31 65 2c 20 30 78 65 64  0xc5, 0x1e, 0xed
e6c0: 2c 20 30 78 61 38 2c 20 30 78 63 30 2c 20 30 78  , 0xa8, 0xc0, 0x
e6d0: 64 30 2c 20 30 78 31 31 2c 20 30 78 39 34 2c 0d  d0, 0x11, 0x94,.
e6e0: 0a 09 30 78 31 63 2c 20 30 2c 20 30 78 38 30 2c  ..0x1c, 0, 0x80,
e6f0: 20 30 78 63 38 2c 20 30 78 63 2c 20 30 78 66 61   0xc8, 0xc, 0xfa
e700: 2c 20 30 78 37 62 2c 20 30 78 32 39 2c 20 30 2c  , 0x7b, 0x29, 0,
e710: 20 30 78 31 2c 0d 0a 09 30 2c 20 30 78 66 2c 20   0x1,...0, 0xf, 
e720: 30 2c 20 30 2c 20 30 2c 20 30 78 36 65 2c 20 30  0, 0, 0, 0x6e, 0
e730: 78 34 36 2c 20 30 78 36 31 2c 20 30 78 36 33 2c  x46, 0x61, 0x63,
e740: 20 30 78 36 35 2c 0d 0a 09 30 78 35 37 2c 20 30   0x65,...0x57, 0
e750: 78 37 32 2c 20 30 78 36 31 2c 20 30 78 37 30 2c  x72, 0x61, 0x70,
e760: 20 30 78 35 36 2c 20 30 78 36 31 2c 20 30 78 36   0x56, 0x61, 0x6
e770: 63 2c 20 30 78 37 35 2c 20 30 78 36 35 2c 20 30  c, 0x75, 0x65, 0
e780: 78 37 33 2c 0d 0a 09 30 78 31 34 2c 20 30 2c 20  x73,...0x14, 0, 
e790: 30 78 33 34 2c 20 30 2c 20 30 78 31 2c 20 30 2c  0x34, 0, 0x1, 0,
e7a0: 20 30 78 39 2c 20 30 2c 20 30 2c 20 30 2c 0d 0a   0x9, 0, 0, 0,..
e7b0: 09 30 78 34 32 2c 20 30 78 36 66 2c 20 30 78 36  .0x42, 0x6f, 0x6
e7c0: 66 2c 20 30 78 36 63 2c 20 30 78 36 35 2c 20 30  f, 0x6c, 0x65, 0
e7d0: 78 36 31 2c 20 30 78 36 65 2c 20 30 78 33 32 2c  x61, 0x6e, 0x32,
e7e0: 20 30 78 36 34 2c 20 30 78 31 2c 0d 0a 09 30 2c   0x64, 0x1,...0,
e7f0: 20 30 78 65 2c 20 30 2c 20 30 2c 20 30 2c 20 30   0xe, 0, 0, 0, 0
e800: 78 36 36 2c 20 30 78 36 31 2c 20 30 78 36 33 2c  x66, 0x61, 0x63,
e810: 20 30 78 36 35 2c 20 30 78 35 37 2c 0d 0a 09 30   0x65, 0x57,...0
e820: 78 37 32 2c 20 30 78 36 31 2c 20 30 78 37 30 2c  x72, 0x61, 0x70,
e830: 20 30 78 35 36 2c 20 30 78 36 31 2c 20 30 78 36   0x56, 0x61, 0x6
e840: 63 2c 20 30 78 37 35 2c 20 30 78 36 35 2c 20 30  c, 0x75, 0x65, 0
e850: 78 37 33 2c 20 30 78 65 2c 0d 0a 09 30 2c 20 30  x73, 0xe,...0, 0
e860: 78 31 2c 20 30 2c 20 30 78 66 2c 20 30 2c 20 30  x1, 0, 0xf, 0, 0
e870: 2c 20 30 2c 20 30 78 36 65 2c 20 30 78 34 36 2c  , 0, 0x6e, 0x46,
e880: 20 30 78 36 31 2c 0d 0a 09 30 78 36 33 2c 20 30   0x61,...0x63, 0
e890: 78 36 35 2c 20 30 78 35 37 2c 20 30 78 37 32 2c  x65, 0x57, 0x72,
e8a0: 20 30 78 36 31 2c 20 30 78 37 30 2c 20 30 78 35   0x61, 0x70, 0x5
e8b0: 36 2c 20 30 78 36 31 2c 20 30 78 36 63 2c 20 30  6, 0x61, 0x6c, 0
e8c0: 78 37 35 2c 0d 0a 09 30 78 36 35 2c 20 30 78 37  x75,...0x65, 0x7
e8d0: 33 2c 20 30 78 66 2c 20 30 2c 20 30 78 31 34 2c  3, 0xf, 0, 0x14,
e8e0: 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 78 31 66   0, 0xb, 0, 0x1f
e8f0: 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30 2c 20 30  , 0,...0x1, 0, 0
e900: 78 31 31 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  x11, 0, 0, 0, 0x
e910: 34 64 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20  4d, 0x65, 0x73, 
e920: 30 78 36 38 2c 0d 0a 09 30 78 35 34 2c 20 30 78  0x68,...0x54, 0x
e930: 36 35 2c 20 30 78 37 38 2c 20 30 78 37 34 2c 20  65, 0x78, 0x74, 
e940: 30 78 37 35 2c 20 30 78 37 32 2c 20 30 78 36 35  0x75, 0x72, 0x65
e950: 2c 20 30 78 34 33 2c 20 30 78 36 66 2c 20 30 78  , 0x43, 0x6f, 0x
e960: 36 66 2c 0d 0a 09 30 78 37 32 2c 20 30 78 36 34  6f,...0x72, 0x64
e970: 2c 20 30 78 37 33 2c 20 30 78 61 2c 20 30 2c 20  , 0x73, 0xa, 0, 
e980: 30 78 35 2c 20 30 2c 20 30 78 34 30 2c 20 30 78  0x5, 0, 0x40, 0x
e990: 33 66 2c 20 30 78 66 32 2c 0d 0a 09 30 78 66 36  3f, 0xf2,...0xf6
e9a0: 2c 20 30 78 38 36 2c 20 30 78 37 36 2c 20 30 78  , 0x86, 0x76, 0x
e9b0: 63 66 2c 20 30 78 31 31 2c 20 30 78 38 66 2c 20  cf, 0x11, 0x8f, 
e9c0: 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c 20 30  0x52, 0, 0x40, 0
e9d0: 78 33 33 2c 0d 0a 09 30 78 33 35 2c 20 30 78 39  x33,...0x35, 0x9
e9e0: 34 2c 20 30 78 61 33 2c 20 30 78 32 39 2c 20 30  4, 0xa3, 0x29, 0
e9f0: 2c 20 30 78 31 2c 20 30 2c 20 30 78 65 2c 20 30  , 0x1, 0, 0xe, 0
ea00: 2c 20 30 2c 0d 0a 09 30 2c 20 30 78 36 65 2c 20  , 0,...0, 0x6e, 
ea10: 30 78 35 34 2c 20 30 78 36 35 2c 20 30 78 37 38  0x54, 0x65, 0x78
ea20: 2c 20 30 78 37 34 2c 20 30 78 37 35 2c 20 30 78  , 0x74, 0x75, 0x
ea30: 37 32 2c 20 30 78 36 35 2c 20 30 78 34 33 2c 0d  72, 0x65, 0x43,.
ea40: 0a 09 30 78 36 66 2c 20 30 78 36 66 2c 20 30 78  ..0x6f, 0x6f, 0x
ea50: 37 32 2c 20 30 78 36 34 2c 20 30 78 37 33 2c 20  72, 0x64, 0x73, 
ea60: 30 78 31 34 2c 20 30 2c 20 30 78 33 34 2c 20 30  0x14, 0, 0x34, 0
ea70: 2c 20 30 78 31 2c 0d 0a 09 30 2c 20 30 78 38 2c  , 0x1,...0, 0x8,
ea80: 20 30 2c 20 30 2c 20 30 2c 20 30 78 34 33 2c 20   0, 0, 0, 0x43, 
ea90: 30 78 36 66 2c 20 30 78 36 66 2c 20 30 78 37 32  0x6f, 0x6f, 0x72
eaa0: 2c 20 30 78 36 34 2c 0d 0a 09 30 78 37 33 2c 20  , 0x64,...0x73, 
eab0: 30 78 33 32 2c 20 30 78 36 34 2c 20 30 78 31 2c  0x32, 0x64, 0x1,
eac0: 20 30 2c 20 30 78 64 2c 20 30 2c 20 30 2c 20 30   0, 0xd, 0, 0, 0
ead0: 2c 20 30 78 37 34 2c 0d 0a 09 30 78 36 35 2c 20  , 0x74,...0x65, 
eae0: 30 78 37 38 2c 20 30 78 37 34 2c 20 30 78 37 35  0x78, 0x74, 0x75
eaf0: 2c 20 30 78 37 32 2c 20 30 78 36 35 2c 20 30 78  , 0x72, 0x65, 0x
eb00: 34 33 2c 20 30 78 36 66 2c 20 30 78 36 66 2c 20  43, 0x6f, 0x6f, 
eb10: 30 78 37 32 2c 0d 0a 09 30 78 36 34 2c 20 30 78  0x72,...0x64, 0x
eb20: 37 33 2c 20 30 78 65 2c 20 30 2c 20 30 78 31 2c  73, 0xe, 0, 0x1,
eb30: 20 30 2c 20 30 78 65 2c 20 30 2c 20 30 2c 20 30   0, 0xe, 0, 0, 0
eb40: 2c 0d 0a 09 30 78 36 65 2c 20 30 78 35 34 2c 20  ,...0x6e, 0x54, 
eb50: 30 78 36 35 2c 20 30 78 37 38 2c 20 30 78 37 34  0x65, 0x78, 0x74
eb60: 2c 20 30 78 37 35 2c 20 30 78 37 32 2c 20 30 78  , 0x75, 0x72, 0x
eb70: 36 35 2c 20 30 78 34 33 2c 20 30 78 36 66 2c 0d  65, 0x43, 0x6f,.
eb80: 0a 09 30 78 36 66 2c 20 30 78 37 32 2c 20 30 78  ..0x6f, 0x72, 0x
eb90: 36 34 2c 20 30 78 37 33 2c 20 30 78 66 2c 20 30  64, 0x73, 0xf, 0
eba0: 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 62 2c 20  , 0x14, 0, 0xb, 
ebb0: 30 2c 0d 0a 09 30 78 31 66 2c 20 30 2c 20 30 78  0,...0x1f, 0, 0x
ebc0: 31 2c 20 30 2c 20 30 78 31 30 2c 20 30 2c 20 30  1, 0, 0x10, 0, 0
ebd0: 2c 20 30 2c 20 30 78 34 64 2c 20 30 78 36 35 2c  , 0, 0x4d, 0x65,
ebe0: 0d 0a 09 30 78 37 33 2c 20 30 78 36 38 2c 20 30  ...0x73, 0x68, 0
ebf0: 78 34 64 2c 20 30 78 36 31 2c 20 30 78 37 34 2c  x4d, 0x61, 0x74,
ec00: 20 30 78 36 35 2c 20 30 78 37 32 2c 20 30 78 36   0x65, 0x72, 0x6
ec10: 39 2c 20 30 78 36 31 2c 20 30 78 36 63 2c 0d 0a  9, 0x61, 0x6c,..
ec20: 09 30 78 34 63 2c 20 30 78 36 39 2c 20 30 78 37  .0x4c, 0x69, 0x7
ec30: 33 2c 20 30 78 37 34 2c 20 30 78 61 2c 20 30 2c  3, 0x74, 0xa, 0,
ec40: 20 30 78 35 2c 20 30 2c 20 30 78 34 32 2c 20 30   0x5, 0, 0x42, 0
ec50: 78 33 66 2c 0d 0a 09 30 78 66 32 2c 20 30 78 66  x3f,...0xf2, 0xf
ec60: 36 2c 20 30 78 38 36 2c 20 30 78 37 36 2c 20 30  6, 0x86, 0x76, 0
ec70: 78 63 66 2c 20 30 78 31 31 2c 20 30 78 38 66 2c  xcf, 0x11, 0x8f,
ec80: 20 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c 0d   0x52, 0, 0x40,.
ec90: 0a 09 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78  ..0x33, 0x35, 0x
eca0: 39 34 2c 20 30 78 61 33 2c 20 30 78 32 39 2c 20  94, 0xa3, 0x29, 
ecb0: 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 61 2c 20  0, 0x1, 0, 0xa, 
ecc0: 30 2c 0d 0a 09 30 2c 20 30 2c 20 30 78 36 65 2c  0,...0, 0, 0x6e,
ecd0: 20 30 78 34 64 2c 20 30 78 36 31 2c 20 30 78 37   0x4d, 0x61, 0x7
ece0: 34 2c 20 30 78 36 35 2c 20 30 78 37 32 2c 20 30  4, 0x65, 0x72, 0
ecf0: 78 36 39 2c 20 30 78 36 31 2c 0d 0a 09 30 78 36  x69, 0x61,...0x6
ed00: 63 2c 20 30 78 37 33 2c 20 30 78 31 34 2c 20 30  c, 0x73, 0x14, 0
ed10: 2c 20 30 78 32 39 2c 20 30 2c 20 30 78 31 2c 20  , 0x29, 0, 0x1, 
ed20: 30 2c 20 30 78 63 2c 20 30 2c 0d 0a 09 30 2c 20  0, 0xc, 0,...0, 
ed30: 30 2c 20 30 78 36 65 2c 20 30 78 34 36 2c 20 30  0, 0x6e, 0x46, 0
ed40: 78 36 31 2c 20 30 78 36 33 2c 20 30 78 36 35 2c  x61, 0x63, 0x65,
ed50: 20 30 78 34 39 2c 20 30 78 36 65 2c 20 30 78 36   0x49, 0x6e, 0x6
ed60: 34 2c 0d 0a 09 30 78 36 35 2c 20 30 78 37 38 2c  4,...0x65, 0x78,
ed70: 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78 31   0x65, 0x73, 0x1
ed80: 34 2c 20 30 2c 20 30 78 33 34 2c 20 30 2c 20 30  4, 0, 0x34, 0, 0
ed90: 78 32 39 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30  x29, 0,...0x1, 0
eda0: 2c 20 30 78 62 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0xb, 0, 0, 0, 
edb0: 30 78 36 36 2c 20 30 78 36 31 2c 20 30 78 36 33  0x66, 0x61, 0x63
edc0: 2c 20 30 78 36 35 2c 0d 0a 09 30 78 34 39 2c 20  , 0x65,...0x49, 
edd0: 30 78 36 65 2c 20 30 78 36 34 2c 20 30 78 36 35  0x6e, 0x64, 0x65
ede0: 2c 20 30 78 37 38 2c 20 30 78 36 35 2c 20 30 78  , 0x78, 0x65, 0x
edf0: 37 33 2c 20 30 78 65 2c 20 30 2c 20 30 78 31 2c  73, 0xe, 0, 0x1,
ee00: 0d 0a 09 30 2c 20 30 78 63 2c 20 30 2c 20 30 2c  ...0, 0xc, 0, 0,
ee10: 20 30 2c 20 30 78 36 65 2c 20 30 78 34 36 2c 20   0, 0x6e, 0x46, 
ee20: 30 78 36 31 2c 20 30 78 36 33 2c 20 30 78 36 35  0x61, 0x63, 0x65
ee30: 2c 0d 0a 09 30 78 34 39 2c 20 30 78 36 65 2c 20  ,...0x49, 0x6e, 
ee40: 30 78 36 34 2c 20 30 78 36 35 2c 20 30 78 37 38  0x64, 0x65, 0x78
ee50: 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78  , 0x65, 0x73, 0x
ee60: 66 2c 20 30 2c 20 30 78 31 34 2c 0d 0a 09 30 2c  f, 0, 0x14,...0,
ee70: 20 30 78 65 2c 20 30 2c 20 30 78 31 2c 20 30 2c   0xe, 0, 0x1, 0,
ee80: 20 30 78 38 2c 20 30 2c 20 30 2c 20 30 2c 20 30   0x8, 0, 0, 0, 0
ee90: 78 34 64 2c 0d 0a 09 30 78 36 31 2c 20 30 78 37  x4d,...0x61, 0x7
eea0: 34 2c 20 30 78 36 35 2c 20 30 78 37 32 2c 20 30  4, 0x65, 0x72, 0
eeb0: 78 36 39 2c 20 30 78 36 31 2c 20 30 78 36 63 2c  x69, 0x61, 0x6c,
eec0: 20 30 78 66 2c 20 30 2c 20 30 78 62 2c 0d 0a 09   0xf, 0, 0xb,...
eed0: 30 2c 20 30 78 31 66 2c 20 30 2c 20 30 78 31 2c  0, 0x1f, 0, 0x1,
eee0: 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 2c 20 30   0, 0xb, 0, 0, 0
eef0: 2c 20 30 78 34 64 2c 0d 0a 09 30 78 36 35 2c 20  , 0x4d,...0x65, 
ef00: 30 78 37 33 2c 20 30 78 36 38 2c 20 30 78 34 65  0x73, 0x68, 0x4e
ef10: 2c 20 30 78 36 66 2c 20 30 78 37 32 2c 20 30 78  , 0x6f, 0x72, 0x
ef20: 36 64 2c 20 30 78 36 31 2c 20 30 78 36 63 2c 20  6d, 0x61, 0x6c, 
ef30: 30 78 37 33 2c 0d 0a 09 30 78 61 2c 20 30 2c 20  0x73,...0xa, 0, 
ef40: 30 78 35 2c 20 30 2c 20 30 78 34 33 2c 20 30 78  0x5, 0, 0x43, 0x
ef50: 33 66 2c 20 30 78 66 32 2c 20 30 78 66 36 2c 20  3f, 0xf2, 0xf6, 
ef60: 30 78 38 36 2c 20 30 78 37 36 2c 0d 0a 09 30 78  0x86, 0x76,...0x
ef70: 63 66 2c 20 30 78 31 31 2c 20 30 78 38 66 2c 20  cf, 0x11, 0x8f, 
ef80: 30 78 35 32 2c 20 30 2c 20 30 78 34 30 2c 20 30  0x52, 0, 0x40, 0
ef90: 78 33 33 2c 20 30 78 33 35 2c 20 30 78 39 34 2c  x33, 0x35, 0x94,
efa0: 20 30 78 61 33 2c 0d 0a 09 30 78 32 39 2c 20 30   0xa3,...0x29, 0
efb0: 2c 20 30 78 31 2c 20 30 2c 20 30 78 38 2c 20 30  , 0x1, 0, 0x8, 0
efc0: 2c 20 30 2c 20 30 2c 20 30 78 36 65 2c 20 30 78  , 0, 0, 0x6e, 0x
efd0: 34 65 2c 0d 0a 09 30 78 36 66 2c 20 30 78 37 32  4e,...0x6f, 0x72
efe0: 2c 20 30 78 36 64 2c 20 30 78 36 31 2c 20 30 78  , 0x6d, 0x61, 0x
eff0: 36 63 2c 20 30 78 37 33 2c 20 30 78 31 34 2c 20  6c, 0x73, 0x14, 
f000: 30 2c 20 30 78 33 34 2c 20 30 2c 0d 0a 09 30 78  0, 0x34, 0,...0x
f010: 31 2c 20 30 2c 20 30 78 36 2c 20 30 2c 20 30 2c  1, 0, 0x6, 0, 0,
f020: 20 30 2c 20 30 78 35 36 2c 20 30 78 36 35 2c 20   0, 0x56, 0x65, 
f030: 30 78 36 33 2c 20 30 78 37 34 2c 0d 0a 09 30 78  0x63, 0x74,...0x
f040: 36 66 2c 20 30 78 37 32 2c 20 30 78 31 2c 20 30  6f, 0x72, 0x1, 0
f050: 2c 20 30 78 37 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0x7, 0, 0, 0, 
f060: 30 78 36 65 2c 20 30 78 36 66 2c 0d 0a 09 30 78  0x6e, 0x6f,...0x
f070: 37 32 2c 20 30 78 36 64 2c 20 30 78 36 31 2c 20  72, 0x6d, 0x61, 
f080: 30 78 36 63 2c 20 30 78 37 33 2c 20 30 78 65 2c  0x6c, 0x73, 0xe,
f090: 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 38 2c   0, 0x1, 0, 0x8,
f0a0: 0d 0a 09 30 2c 20 30 2c 20 30 2c 20 30 78 36 65  ...0, 0, 0, 0x6e
f0b0: 2c 20 30 78 34 65 2c 20 30 78 36 66 2c 20 30 78  , 0x4e, 0x6f, 0x
f0c0: 37 32 2c 20 30 78 36 64 2c 20 30 78 36 31 2c 20  72, 0x6d, 0x61, 
f0d0: 30 78 36 63 2c 0d 0a 09 30 78 37 33 2c 20 30 78  0x6c,...0x73, 0x
f0e0: 66 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30  f, 0, 0x14, 0, 0
f0f0: 78 32 39 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x29, 0, 0x1, 0, 
f100: 30 78 63 2c 0d 0a 09 30 2c 20 30 2c 20 30 2c 20  0xc,...0, 0, 0, 
f110: 30 78 36 65 2c 20 30 78 34 36 2c 20 30 78 36 31  0x6e, 0x46, 0x61
f120: 2c 20 30 78 36 33 2c 20 30 78 36 35 2c 20 30 78  , 0x63, 0x65, 0x
f130: 34 65 2c 20 30 78 36 66 2c 0d 0a 09 30 78 37 32  4e, 0x6f,...0x72
f140: 2c 20 30 78 36 64 2c 20 30 78 36 31 2c 20 30 78  , 0x6d, 0x61, 0x
f150: 36 63 2c 20 30 78 37 33 2c 20 30 78 31 34 2c 20  6c, 0x73, 0x14, 
f160: 30 2c 20 30 78 33 34 2c 20 30 2c 20 30 78 31 2c  0, 0x34, 0, 0x1,
f170: 0d 0a 09 30 2c 20 30 78 38 2c 20 30 2c 20 30 2c  ...0, 0x8, 0, 0,
f180: 20 30 2c 20 30 78 34 64 2c 20 30 78 36 35 2c 20   0, 0x4d, 0x65, 
f190: 30 78 37 33 2c 20 30 78 36 38 2c 20 30 78 34 36  0x73, 0x68, 0x46
f1a0: 2c 0d 0a 09 30 78 36 31 2c 20 30 78 36 33 2c 20  ,...0x61, 0x63, 
f1b0: 30 78 36 35 2c 20 30 78 31 2c 20 30 2c 20 30 78  0x65, 0x1, 0, 0x
f1c0: 62 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 36  b, 0, 0, 0, 0x66
f1d0: 2c 0d 0a 09 30 78 36 31 2c 20 30 78 36 33 2c 20  ,...0x61, 0x63, 
f1e0: 30 78 36 35 2c 20 30 78 34 65 2c 20 30 78 36 66  0x65, 0x4e, 0x6f
f1f0: 2c 20 30 78 37 32 2c 20 30 78 36 64 2c 20 30 78  , 0x72, 0x6d, 0x
f200: 36 31 2c 20 30 78 36 63 2c 20 30 78 37 33 2c 0d  61, 0x6c, 0x73,.
f210: 0a 09 30 78 65 2c 20 30 2c 20 30 78 31 2c 20 30  ..0xe, 0, 0x1, 0
f220: 2c 20 30 78 63 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0xc, 0, 0, 0, 
f230: 30 78 36 65 2c 20 30 78 34 36 2c 0d 0a 09 30 78  0x6e, 0x46,...0x
f240: 36 31 2c 20 30 78 36 33 2c 20 30 78 36 35 2c 20  61, 0x63, 0x65, 
f250: 30 78 34 65 2c 20 30 78 36 66 2c 20 30 78 37 32  0x4e, 0x6f, 0x72
f260: 2c 20 30 78 36 64 2c 20 30 78 36 31 2c 20 30 78  , 0x6d, 0x61, 0x
f270: 36 63 2c 20 30 78 37 33 2c 0d 0a 09 30 78 66 2c  6c, 0x73,...0xf,
f280: 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 62   0, 0x14, 0, 0xb
f290: 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20 30 78  , 0, 0x1f, 0, 0x
f2a0: 31 2c 20 30 2c 0d 0a 09 30 78 31 30 2c 20 30 2c  1, 0,...0x10, 0,
f2b0: 20 30 2c 20 30 2c 20 30 78 34 64 2c 20 30 78 36   0, 0, 0x4d, 0x6
f2c0: 35 2c 20 30 78 37 33 2c 20 30 78 36 38 2c 20 30  5, 0x73, 0x68, 0
f2d0: 78 35 36 2c 20 30 78 36 35 2c 0d 0a 09 30 78 37  x56, 0x65,...0x7
f2e0: 32 2c 20 30 78 37 34 2c 20 30 78 36 35 2c 20 30  2, 0x74, 0x65, 0
f2f0: 78 37 38 2c 20 30 78 34 33 2c 20 30 78 36 66 2c  x78, 0x43, 0x6f,
f300: 20 30 78 36 63 2c 20 30 78 36 66 2c 20 30 78 37   0x6c, 0x6f, 0x7
f310: 32 2c 20 30 78 37 33 2c 0d 0a 09 30 78 61 2c 20  2, 0x73,...0xa, 
f320: 30 2c 20 30 78 35 2c 20 30 2c 20 30 78 32 31 2c  0, 0x5, 0, 0x21,
f330: 20 30 78 62 38 2c 20 30 78 33 30 2c 20 30 78 31   0xb8, 0x30, 0x1
f340: 36 2c 20 30 78 34 32 2c 20 30 78 37 38 2c 0d 0a  6, 0x42, 0x78,..
f350: 09 30 78 63 66 2c 20 30 78 31 31 2c 20 30 78 38  .0xcf, 0x11, 0x8
f360: 66 2c 20 30 78 35 32 2c 20 30 2c 20 30 78 34 30  f, 0x52, 0, 0x40
f370: 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30 78  , 0x33, 0x35, 0x
f380: 39 34 2c 20 30 78 61 33 2c 0d 0a 09 30 78 32 39  94, 0xa3,...0x29
f390: 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 64  , 0, 0x1, 0, 0xd
f3a0: 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 65 2c  , 0, 0, 0, 0x6e,
f3b0: 20 30 78 35 36 2c 0d 0a 09 30 78 36 35 2c 20 30   0x56,...0x65, 0
f3c0: 78 37 32 2c 20 30 78 37 34 2c 20 30 78 36 35 2c  x72, 0x74, 0x65,
f3d0: 20 30 78 37 38 2c 20 30 78 34 33 2c 20 30 78 36   0x78, 0x43, 0x6
f3e0: 66 2c 20 30 78 36 63 2c 20 30 78 36 66 2c 20 30  f, 0x6c, 0x6f, 0
f3f0: 78 37 32 2c 0d 0a 09 30 78 37 33 2c 20 30 78 31  x72,...0x73, 0x1
f400: 34 2c 20 30 2c 20 30 78 33 34 2c 20 30 2c 20 30  4, 0, 0x34, 0, 0
f410: 78 31 2c 20 30 2c 20 30 78 63 2c 20 30 2c 20 30  x1, 0, 0xc, 0, 0
f420: 2c 0d 0a 09 30 2c 20 30 78 34 39 2c 20 30 78 36  ,...0, 0x49, 0x6
f430: 65 2c 20 30 78 36 34 2c 20 30 78 36 35 2c 20 30  e, 0x64, 0x65, 0
f440: 78 37 38 2c 20 30 78 36 35 2c 20 30 78 36 34 2c  x78, 0x65, 0x64,
f450: 20 30 78 34 33 2c 20 30 78 36 66 2c 0d 0a 09 30   0x43, 0x6f,...0
f460: 78 36 63 2c 20 30 78 36 66 2c 20 30 78 37 32 2c  x6c, 0x6f, 0x72,
f470: 20 30 78 31 2c 20 30 2c 20 30 78 63 2c 20 30 2c   0x1, 0, 0xc, 0,
f480: 20 30 2c 20 30 2c 20 30 78 37 36 2c 0d 0a 09 30   0, 0, 0x76,...0
f490: 78 36 35 2c 20 30 78 37 32 2c 20 30 78 37 34 2c  x65, 0x72, 0x74,
f4a0: 20 30 78 36 35 2c 20 30 78 37 38 2c 20 30 78 34   0x65, 0x78, 0x4
f4b0: 33 2c 20 30 78 36 66 2c 20 30 78 36 63 2c 20 30  3, 0x6f, 0x6c, 0
f4c0: 78 36 66 2c 20 30 78 37 32 2c 0d 0a 09 30 78 37  x6f, 0x72,...0x7
f4d0: 33 2c 20 30 78 65 2c 20 30 2c 20 30 78 31 2c 20  3, 0xe, 0, 0x1, 
f4e0: 30 2c 20 30 78 64 2c 20 30 2c 20 30 2c 20 30 2c  0, 0xd, 0, 0, 0,
f4f0: 20 30 78 36 65 2c 0d 0a 09 30 78 35 36 2c 20 30   0x6e,...0x56, 0
f500: 78 36 35 2c 20 30 78 37 32 2c 20 30 78 37 34 2c  x65, 0x72, 0x74,
f510: 20 30 78 36 35 2c 20 30 78 37 38 2c 20 30 78 34   0x65, 0x78, 0x4
f520: 33 2c 20 30 78 36 66 2c 20 30 78 36 63 2c 20 30  3, 0x6f, 0x6c, 0
f530: 78 36 66 2c 0d 0a 09 30 78 37 32 2c 20 30 78 37  x6f,...0x72, 0x7
f540: 33 2c 20 30 78 66 2c 20 30 2c 20 30 78 31 34 2c  3, 0xf, 0, 0x14,
f550: 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 78 31 66   0, 0xb, 0, 0x1f
f560: 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30 2c 20 30  , 0,...0x1, 0, 0
f570: 78 34 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 34  x4, 0, 0, 0, 0x4
f580: 64 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30  d, 0x65, 0x73, 0
f590: 78 36 38 2c 0d 0a 09 30 78 61 2c 20 30 2c 20 30  x68,...0xa, 0, 0
f5a0: 78 35 2c 20 30 2c 20 30 78 34 34 2c 20 30 78 61  x5, 0, 0x44, 0xa
f5b0: 62 2c 20 30 78 38 32 2c 20 30 78 33 64 2c 20 30  b, 0x82, 0x3d, 0
f5c0: 78 64 61 2c 20 30 78 36 32 2c 0d 0a 09 30 78 63  xda, 0x62,...0xc
f5d0: 66 2c 20 30 78 31 31 2c 20 30 78 61 62 2c 20 30  f, 0x11, 0xab, 0
f5e0: 78 33 39 2c 20 30 2c 20 30 78 32 30 2c 20 30 78  x39, 0, 0x20, 0x
f5f0: 61 66 2c 20 30 78 37 31 2c 20 30 78 65 34 2c 20  af, 0x71, 0xe4, 
f600: 30 78 33 33 2c 0d 0a 09 30 78 32 39 2c 20 30 2c  0x33,...0x29, 0,
f610: 20 30 78 31 2c 20 30 2c 20 30 78 39 2c 20 30 2c   0x1, 0, 0x9, 0,
f620: 20 30 2c 20 30 2c 20 30 78 36 65 2c 20 30 78 35   0, 0, 0x6e, 0x5
f630: 36 2c 0d 0a 09 30 78 36 35 2c 20 30 78 37 32 2c  6,...0x65, 0x72,
f640: 20 30 78 37 34 2c 20 30 78 36 39 2c 20 30 78 36   0x74, 0x69, 0x6
f650: 33 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30  3, 0x65, 0x73, 0
f660: 78 31 34 2c 20 30 2c 20 30 78 33 34 2c 0d 0a 09  x14, 0, 0x34,...
f670: 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 36 2c 20  0, 0x1, 0, 0x6, 
f680: 30 2c 20 30 2c 20 30 2c 20 30 78 35 36 2c 20 30  0, 0, 0, 0x56, 0
f690: 78 36 35 2c 20 30 78 36 33 2c 0d 0a 09 30 78 37  x65, 0x63,...0x7
f6a0: 34 2c 20 30 78 36 66 2c 20 30 78 37 32 2c 20 30  4, 0x6f, 0x72, 0
f6b0: 78 31 2c 20 30 2c 20 30 78 38 2c 20 30 2c 20 30  x1, 0, 0x8, 0, 0
f6c0: 2c 20 30 2c 20 30 78 37 36 2c 0d 0a 09 30 78 36  , 0, 0x76,...0x6
f6d0: 35 2c 20 30 78 37 32 2c 20 30 78 37 34 2c 20 30  5, 0x72, 0x74, 0
f6e0: 78 36 39 2c 20 30 78 36 33 2c 20 30 78 36 35 2c  x69, 0x63, 0x65,
f6f0: 20 30 78 37 33 2c 20 30 78 65 2c 20 30 2c 20 30   0x73, 0xe, 0, 0
f700: 78 31 2c 0d 0a 09 30 2c 20 30 78 39 2c 20 30 2c  x1,...0, 0x9, 0,
f710: 20 30 2c 20 30 2c 20 30 78 36 65 2c 20 30 78 35   0, 0, 0x6e, 0x5
f720: 36 2c 20 30 78 36 35 2c 20 30 78 37 32 2c 20 30  6, 0x65, 0x72, 0
f730: 78 37 34 2c 0d 0a 09 30 78 36 39 2c 20 30 78 36  x74,...0x69, 0x6
f740: 33 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30  3, 0x65, 0x73, 0
f750: 78 66 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20  xf, 0, 0x14, 0, 
f760: 30 78 32 39 2c 20 30 2c 0d 0a 09 30 78 31 2c 20  0x29, 0,...0x1, 
f770: 30 2c 20 30 78 36 2c 20 30 2c 20 30 2c 20 30 2c  0, 0x6, 0, 0, 0,
f780: 20 30 78 36 65 2c 20 30 78 34 36 2c 20 30 78 36   0x6e, 0x46, 0x6
f790: 31 2c 20 30 78 36 33 2c 0d 0a 09 30 78 36 35 2c  1, 0x63,...0x65,
f7a0: 20 30 78 37 33 2c 20 30 78 31 34 2c 20 30 2c 20   0x73, 0x14, 0, 
f7b0: 30 78 33 34 2c 20 30 2c 20 30 78 31 2c 20 30 2c  0x34, 0, 0x1, 0,
f7c0: 20 30 78 38 2c 20 30 2c 0d 0a 09 30 2c 20 30 2c   0x8, 0,...0, 0,
f7d0: 20 30 78 34 64 2c 20 30 78 36 35 2c 20 30 78 37   0x4d, 0x65, 0x7
f7e0: 33 2c 20 30 78 36 38 2c 20 30 78 34 36 2c 20 30  3, 0x68, 0x46, 0
f7f0: 78 36 31 2c 20 30 78 36 33 2c 20 30 78 36 35 2c  x61, 0x63, 0x65,
f800: 0d 0a 09 30 78 31 2c 20 30 2c 20 30 78 35 2c 20  ...0x1, 0, 0x5, 
f810: 30 2c 20 30 2c 20 30 2c 20 30 78 36 36 2c 20 30  0, 0, 0, 0x66, 0
f820: 78 36 31 2c 20 30 78 36 33 2c 20 30 78 36 35 2c  x61, 0x63, 0x65,
f830: 0d 0a 09 30 78 37 33 2c 20 30 78 65 2c 20 30 2c  ...0x73, 0xe, 0,
f840: 20 30 78 31 2c 20 30 2c 20 30 78 36 2c 20 30 2c   0x1, 0, 0x6, 0,
f850: 20 30 2c 20 30 2c 20 30 78 36 65 2c 0d 0a 09 30   0, 0, 0x6e,...0
f860: 78 34 36 2c 20 30 78 36 31 2c 20 30 78 36 33 2c  x46, 0x61, 0x63,
f870: 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78 66   0x65, 0x73, 0xf
f880: 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30 78  , 0, 0x14, 0, 0x
f890: 65 2c 0d 0a 09 30 2c 20 30 78 31 32 2c 20 30 2c  e,...0, 0x12, 0,
f8a0: 20 30 78 31 32 2c 20 30 2c 20 30 78 31 32 2c 20   0x12, 0, 0x12, 
f8b0: 30 2c 20 30 78 66 2c 20 30 2c 20 30 78 62 2c 0d  0, 0xf, 0, 0xb,.
f8c0: 0a 09 30 2c 20 30 78 31 66 2c 20 30 2c 20 30 78  ..0, 0x1f, 0, 0x
f8d0: 31 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30  1, 0, 0x14, 0, 0
f8e0: 2c 20 30 2c 20 30 78 34 36 2c 0d 0a 09 30 78 37  , 0, 0x46,...0x7
f8f0: 32 2c 20 30 78 36 31 2c 20 30 78 36 64 2c 20 30  2, 0x61, 0x6d, 0
f900: 78 36 35 2c 20 30 78 35 34 2c 20 30 78 37 32 2c  x65, 0x54, 0x72,
f910: 20 30 78 36 31 2c 20 30 78 36 65 2c 20 30 78 37   0x61, 0x6e, 0x7
f920: 33 2c 20 30 78 36 36 2c 0d 0a 09 30 78 36 66 2c  3, 0x66,...0x6f,
f930: 20 30 78 37 32 2c 20 30 78 36 64 2c 20 30 78 34   0x72, 0x6d, 0x4
f940: 64 2c 20 30 78 36 31 2c 20 30 78 37 34 2c 20 30  d, 0x61, 0x74, 0
f950: 78 37 32 2c 20 30 78 36 39 2c 20 30 78 37 38 2c  x72, 0x69, 0x78,
f960: 20 30 78 61 2c 0d 0a 09 30 2c 20 30 78 35 2c 20   0xa,...0, 0x5, 
f970: 30 2c 20 30 78 34 31 2c 20 30 78 33 66 2c 20 30  0, 0x41, 0x3f, 0
f980: 78 66 32 2c 20 30 78 66 36 2c 20 30 78 38 36 2c  xf2, 0xf6, 0x86,
f990: 20 30 78 37 36 2c 20 30 78 63 66 2c 0d 0a 09 30   0x76, 0xcf,...0
f9a0: 78 31 31 2c 20 30 78 38 66 2c 20 30 78 35 32 2c  x11, 0x8f, 0x52,
f9b0: 20 30 2c 20 30 78 34 30 2c 20 30 78 33 33 2c 20   0, 0x40, 0x33, 
f9c0: 30 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33  0x35, 0x94, 0xa3
f9d0: 2c 20 30 78 31 2c 0d 0a 09 30 2c 20 30 78 39 2c  , 0x1,...0, 0x9,
f9e0: 20 30 2c 20 30 2c 20 30 2c 20 30 78 34 64 2c 20   0, 0, 0, 0x4d, 
f9f0: 30 78 36 31 2c 20 30 78 37 34 2c 20 30 78 37 32  0x61, 0x74, 0x72
fa00: 2c 20 30 78 36 39 2c 0d 0a 09 30 78 37 38 2c 20  , 0x69,...0x78, 
fa10: 30 78 33 34 2c 20 30 78 37 38 2c 20 30 78 33 34  0x34, 0x78, 0x34
fa20: 2c 20 30 78 31 2c 20 30 2c 20 30 78 62 2c 20 30  , 0x1, 0, 0xb, 0
fa30: 2c 20 30 2c 20 30 2c 0d 0a 09 30 78 36 36 2c 20  , 0, 0,...0x66, 
fa40: 30 78 37 32 2c 20 30 78 36 31 2c 20 30 78 36 64  0x72, 0x61, 0x6d
fa50: 2c 20 30 78 36 35 2c 20 30 78 34 64 2c 20 30 78  , 0x65, 0x4d, 0x
fa60: 36 31 2c 20 30 78 37 34 2c 20 30 78 37 32 2c 20  61, 0x74, 0x72, 
fa70: 30 78 36 39 2c 0d 0a 09 30 78 37 38 2c 20 30 78  0x69,...0x78, 0x
fa80: 31 34 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30  14, 0, 0xb, 0, 0
fa90: 78 31 66 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x1f, 0, 0x1, 0, 
faa0: 30 78 35 2c 0d 0a 09 30 2c 20 30 2c 20 30 2c 20  0x5,...0, 0, 0, 
fab0: 30 78 34 36 2c 20 30 78 37 32 2c 20 30 78 36 31  0x46, 0x72, 0x61
fac0: 2c 20 30 78 36 64 2c 20 30 78 36 35 2c 20 30 78  , 0x6d, 0x65, 0x
fad0: 61 2c 20 30 2c 0d 0a 09 30 78 35 2c 20 30 2c 20  a, 0,...0x5, 0, 
fae0: 30 78 34 36 2c 20 30 78 61 62 2c 20 30 78 38 32  0x46, 0xab, 0x82
faf0: 2c 20 30 78 33 64 2c 20 30 78 64 61 2c 20 30 78  , 0x3d, 0xda, 0x
fb00: 36 32 2c 20 30 78 63 66 2c 20 30 78 31 31 2c 0d  62, 0xcf, 0x11,.
fb10: 0a 09 30 78 61 62 2c 20 30 78 33 39 2c 20 30 2c  ..0xab, 0x39, 0,
fb20: 20 30 78 32 30 2c 20 30 78 61 66 2c 20 30 78 37   0x20, 0xaf, 0x7
fb30: 31 2c 20 30 78 65 34 2c 20 30 78 33 33 2c 20 30  1, 0xe4, 0x33, 0
fb40: 78 65 2c 20 30 2c 0d 0a 09 30 78 31 32 2c 20 30  xe, 0,...0x12, 0
fb50: 2c 20 30 78 31 32 2c 20 30 2c 20 30 78 31 32 2c  , 0x12, 0, 0x12,
fb60: 20 30 2c 20 30 78 66 2c 20 30 2c 20 30 78 62 2c   0, 0xf, 0, 0xb,
fb70: 20 30 2c 0d 0a 09 30 78 31 66 2c 20 30 2c 20 30   0,...0x1f, 0, 0
fb80: 78 31 2c 20 30 2c 20 30 78 39 2c 20 30 2c 20 30  x1, 0, 0x9, 0, 0
fb90: 2c 20 30 2c 20 30 78 34 36 2c 20 30 78 36 63 2c  , 0, 0x46, 0x6c,
fba0: 0d 0a 09 30 78 36 66 2c 20 30 78 36 31 2c 20 30  ...0x6f, 0x61, 0
fbb0: 78 37 34 2c 20 30 78 34 62 2c 20 30 78 36 35 2c  x74, 0x4b, 0x65,
fbc0: 20 30 78 37 39 2c 20 30 78 37 33 2c 20 30 78 61   0x79, 0x73, 0xa
fbd0: 2c 20 30 2c 20 30 78 35 2c 0d 0a 09 30 2c 20 30  , 0, 0x5,...0, 0
fbe0: 78 61 39 2c 20 30 78 34 36 2c 20 30 78 64 64 2c  xa9, 0x46, 0xdd,
fbf0: 20 30 78 31 30 2c 20 30 78 35 62 2c 20 30 78 37   0x10, 0x5b, 0x7
fc00: 37 2c 20 30 78 63 66 2c 20 30 78 31 31 2c 20 30  7, 0xcf, 0x11, 0
fc10: 78 38 66 2c 0d 0a 09 30 78 35 32 2c 20 30 2c 20  x8f,...0x52, 0, 
fc20: 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33 35  0x40, 0x33, 0x35
fc30: 2c 20 30 78 39 34 2c 20 30 78 61 33 2c 20 30 78  , 0x94, 0xa3, 0x
fc40: 32 39 2c 20 30 2c 20 30 78 31 2c 0d 0a 09 30 2c  29, 0, 0x1,...0,
fc50: 20 30 78 37 2c 20 30 2c 20 30 2c 20 30 2c 20 30   0x7, 0, 0, 0, 0
fc60: 78 36 65 2c 20 30 78 35 36 2c 20 30 78 36 31 2c  x6e, 0x56, 0x61,
fc70: 20 30 78 36 63 2c 20 30 78 37 35 2c 0d 0a 09 30   0x6c, 0x75,...0
fc80: 78 36 35 2c 20 30 78 37 33 2c 20 30 78 31 34 2c  x65, 0x73, 0x14,
fc90: 20 30 2c 20 30 78 33 34 2c 20 30 2c 20 30 78 32   0, 0x34, 0, 0x2
fca0: 61 2c 20 30 2c 20 30 78 31 2c 20 30 2c 0d 0a 09  a, 0, 0x1, 0,...
fcb0: 30 78 36 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0x6, 0, 0, 0, 0x
fcc0: 37 36 2c 20 30 78 36 31 2c 20 30 78 36 63 2c 20  76, 0x61, 0x6c, 
fcd0: 30 78 37 35 2c 20 30 78 36 35 2c 20 30 78 37 33  0x75, 0x65, 0x73
fce0: 2c 0d 0a 09 30 78 65 2c 20 30 2c 20 30 78 31 2c  ,...0xe, 0, 0x1,
fcf0: 20 30 2c 20 30 78 37 2c 20 30 2c 20 30 2c 20 30   0, 0x7, 0, 0, 0
fd00: 2c 20 30 78 36 65 2c 20 30 78 35 36 2c 0d 0a 09  , 0x6e, 0x56,...
fd10: 30 78 36 31 2c 20 30 78 36 63 2c 20 30 78 37 35  0x61, 0x6c, 0x75
fd20: 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78  , 0x65, 0x73, 0x
fd30: 66 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30  f, 0, 0x14, 0, 0
fd40: 78 62 2c 0d 0a 09 30 2c 20 30 78 31 66 2c 20 30  xb,...0, 0x1f, 0
fd50: 2c 20 30 78 31 2c 20 30 2c 20 30 78 65 2c 20 30  , 0x1, 0, 0xe, 0
fd60: 2c 20 30 2c 20 30 2c 20 30 78 35 34 2c 0d 0a 09  , 0, 0, 0x54,...
fd70: 30 78 36 39 2c 20 30 78 36 64 2c 20 30 78 36 35  0x69, 0x6d, 0x65
fd80: 2c 20 30 78 36 34 2c 20 30 78 34 36 2c 20 30 78  , 0x64, 0x46, 0x
fd90: 36 63 2c 20 30 78 36 66 2c 20 30 78 36 31 2c 20  6c, 0x6f, 0x61, 
fda0: 30 78 37 34 2c 20 30 78 34 62 2c 0d 0a 09 30 78  0x74, 0x4b,...0x
fdb0: 36 35 2c 20 30 78 37 39 2c 20 30 78 37 33 2c 20  65, 0x79, 0x73, 
fdc0: 30 78 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20  0xa, 0, 0x5, 0, 
fdd0: 30 78 38 30 2c 20 30 78 62 31 2c 20 30 78 36 2c  0x80, 0xb1, 0x6,
fde0: 0d 0a 09 30 78 66 34 2c 20 30 78 33 62 2c 20 30  ...0xf4, 0x3b, 0
fdf0: 78 37 62 2c 20 30 78 63 66 2c 20 30 78 31 31 2c  x7b, 0xcf, 0x11,
fe00: 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 2c 20   0x8f, 0x52, 0, 
fe10: 30 78 34 30 2c 20 30 78 33 33 2c 0d 0a 09 30 78  0x40, 0x33,...0x
fe20: 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33 2c 20  35, 0x94, 0xa3, 
fe30: 30 78 32 39 2c 20 30 2c 20 30 78 31 2c 20 30 2c  0x29, 0, 0x1, 0,
fe40: 20 30 78 34 2c 20 30 2c 20 30 2c 0d 0a 09 30 2c   0x4, 0, 0,...0,
fe50: 20 30 78 37 34 2c 20 30 78 36 39 2c 20 30 78 36   0x74, 0x69, 0x6
fe60: 64 2c 20 30 78 36 35 2c 20 30 78 31 34 2c 20 30  d, 0x65, 0x14, 0
fe70: 2c 20 30 78 31 2c 20 30 2c 20 30 78 39 2c 0d 0a  , 0x1, 0, 0x9,..
fe80: 09 30 2c 20 30 2c 20 30 2c 20 30 78 34 36 2c 20  .0, 0, 0, 0x46, 
fe90: 30 78 36 63 2c 20 30 78 36 66 2c 20 30 78 36 31  0x6c, 0x6f, 0x61
fea0: 2c 20 30 78 37 34 2c 20 30 78 34 62 2c 20 30 78  , 0x74, 0x4b, 0x
feb0: 36 35 2c 0d 0a 09 30 78 37 39 2c 20 30 78 37 33  65,...0x79, 0x73
fec0: 2c 20 30 78 31 2c 20 30 2c 20 30 78 36 2c 20 30  , 0x1, 0, 0x6, 0
fed0: 2c 20 30 2c 20 30 2c 20 30 78 37 34 2c 20 30 78  , 0, 0, 0x74, 0x
fee0: 36 36 2c 0d 0a 09 30 78 36 62 2c 20 30 78 36 35  66,...0x6b, 0x65
fef0: 2c 20 30 78 37 39 2c 20 30 78 37 33 2c 20 30 78  , 0x79, 0x73, 0x
ff00: 31 34 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30  14, 0, 0xb, 0, 0
ff10: 78 31 66 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30  x1f, 0,...0x1, 0
ff20: 2c 20 30 78 63 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0xc, 0, 0, 0, 
ff30: 30 78 34 31 2c 20 30 78 36 65 2c 20 30 78 36 39  0x41, 0x6e, 0x69
ff40: 2c 20 30 78 36 64 2c 0d 0a 09 30 78 36 31 2c 20  , 0x6d,...0x61, 
ff50: 30 78 37 34 2c 20 30 78 36 39 2c 20 30 78 36 66  0x74, 0x69, 0x6f
ff60: 2c 20 30 78 36 65 2c 20 30 78 34 62 2c 20 30 78  , 0x6e, 0x4b, 0x
ff70: 36 35 2c 20 30 78 37 39 2c 20 30 78 61 2c 20 30  65, 0x79, 0xa, 0
ff80: 2c 0d 0a 09 30 78 35 2c 20 30 2c 20 30 78 61 38  ,...0x5, 0, 0xa8
ff90: 2c 20 30 78 34 36 2c 20 30 78 64 64 2c 20 30 78  , 0x46, 0xdd, 0x
ffa0: 31 30 2c 20 30 78 35 62 2c 20 30 78 37 37 2c 20  10, 0x5b, 0x77, 
ffb0: 30 78 63 66 2c 20 30 78 31 31 2c 0d 0a 09 30 78  0xcf, 0x11,...0x
ffc0: 38 66 2c 20 30 78 35 32 2c 20 30 2c 20 30 78 34  8f, 0x52, 0, 0x4
ffd0: 30 2c 20 30 78 33 33 2c 20 30 78 33 35 2c 20 30  0, 0x33, 0x35, 0
ffe0: 78 39 34 2c 20 30 78 61 33 2c 20 30 78 32 39 2c  x94, 0xa3, 0x29,
fff0: 20 30 2c 0d 0a 09 30 78 31 2c 20 30 2c 20 30 78   0,...0x1, 0, 0x
10000 37 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 62  7, 0, 0, 0, 0x6b
10010 2c 20 30 78 36 35 2c 20 30 78 37 39 2c 20 30 78  , 0x65, 0x79, 0x
10020 35 34 2c 0d 0a 09 30 78 37 39 2c 20 30 78 37 30  54,...0x79, 0x70
10030 2c 20 30 78 36 35 2c 20 30 78 31 34 2c 20 30 2c  , 0x65, 0x14, 0,
10040 20 30 78 32 39 2c 20 30 2c 20 30 78 31 2c 20 30   0x29, 0, 0x1, 0
10050 2c 20 30 78 35 2c 0d 0a 09 30 2c 20 30 2c 20 30  , 0x5,...0, 0, 0
10060 2c 20 30 78 36 65 2c 20 30 78 34 62 2c 20 30 78  , 0x6e, 0x4b, 0x
10070 36 35 2c 20 30 78 37 39 2c 20 30 78 37 33 2c 20  65, 0x79, 0x73, 
10080 30 78 31 34 2c 20 30 2c 0d 0a 09 30 78 33 34 2c  0x14, 0,...0x34,
10090 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 65 2c   0, 0x1, 0, 0xe,
100a0 20 30 2c 20 30 2c 20 30 2c 20 30 78 35 34 2c 20   0, 0, 0, 0x54, 
100b0 30 78 36 39 2c 0d 0a 09 30 78 36 64 2c 20 30 78  0x69,...0x6d, 0x
100c0 36 35 2c 20 30 78 36 34 2c 20 30 78 34 36 2c 20  65, 0x64, 0x46, 
100d0 30 78 36 63 2c 20 30 78 36 66 2c 20 30 78 36 31  0x6c, 0x6f, 0x61
100e0 2c 20 30 78 37 34 2c 20 30 78 34 62 2c 20 30 78  , 0x74, 0x4b, 0x
100f0 36 35 2c 0d 0a 09 30 78 37 39 2c 20 30 78 37 33  65,...0x79, 0x73
10100 2c 20 30 78 31 2c 20 30 2c 20 30 78 34 2c 20 30  , 0x1, 0, 0x4, 0
10110 2c 20 30 2c 20 30 2c 20 30 78 36 62 2c 20 30 78  , 0, 0, 0x6b, 0x
10120 36 35 2c 0d 0a 09 30 78 37 39 2c 20 30 78 37 33  65,...0x79, 0x73
10130 2c 20 30 78 65 2c 20 30 2c 20 30 78 31 2c 20 30  , 0xe, 0, 0x1, 0
10140 2c 20 30 78 35 2c 20 30 2c 20 30 2c 20 30 2c 0d  , 0x5, 0, 0, 0,.
10150 0a 09 30 78 36 65 2c 20 30 78 34 62 2c 20 30 78  ..0x6e, 0x4b, 0x
10160 36 35 2c 20 30 78 37 39 2c 20 30 78 37 33 2c 20  65, 0x79, 0x73, 
10170 30 78 66 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c  0xf, 0, 0x14, 0,
10180 20 30 78 62 2c 0d 0a 09 30 2c 20 30 78 31 66 2c   0xb,...0, 0x1f,
10190 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 31 30   0, 0x1, 0, 0x10
101a0 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78 34 31 2c  , 0, 0, 0, 0x41,
101b0 0d 0a 09 30 78 36 65 2c 20 30 78 36 39 2c 20 30  ...0x6e, 0x69, 0
101c0 78 36 64 2c 20 30 78 36 31 2c 20 30 78 37 34 2c  x6d, 0x61, 0x74,
101d0 20 30 78 36 39 2c 20 30 78 36 66 2c 20 30 78 36   0x69, 0x6f, 0x6
101e0 65 2c 20 30 78 34 66 2c 20 30 78 37 30 2c 0d 0a  e, 0x4f, 0x70,..
101f0 09 30 78 37 34 2c 20 30 78 36 39 2c 20 30 78 36  .0x74, 0x69, 0x6
10200 66 2c 20 30 78 36 65 2c 20 30 78 37 33 2c 20 30  f, 0x6e, 0x73, 0
10210 78 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20 30  xa, 0, 0x5, 0, 0
10220 78 63 30 2c 0d 0a 09 30 78 35 36 2c 20 30 78 62  xc0,...0x56, 0xb
10230 66 2c 20 30 78 65 32 2c 20 30 78 66 2c 20 30 78  f, 0xe2, 0xf, 0x
10240 38 34 2c 20 30 78 63 66 2c 20 30 78 31 31 2c 20  84, 0xcf, 0x11, 
10250 30 78 38 66 2c 20 30 78 35 32 2c 20 30 2c 0d 0a  0x8f, 0x52, 0,..
10260 09 30 78 34 30 2c 20 30 78 33 33 2c 20 30 78 33  .0x40, 0x33, 0x3
10270 35 2c 20 30 78 39 34 2c 20 30 78 61 33 2c 20 30  5, 0x94, 0xa3, 0
10280 78 32 39 2c 20 30 2c 20 30 78 31 2c 20 30 2c 20  x29, 0, 0x1, 0, 
10290 30 78 61 2c 0d 0a 09 30 2c 20 30 2c 20 30 2c 20  0xa,...0, 0, 0, 
102a0 30 78 36 66 2c 20 30 78 37 30 2c 20 30 78 36 35  0x6f, 0x70, 0x65
102b0 2c 20 30 78 36 65 2c 20 30 78 36 33 2c 20 30 78  , 0x6e, 0x63, 0x
102c0 36 63 2c 20 30 78 36 66 2c 0d 0a 09 30 78 37 33  6c, 0x6f,...0x73
102d0 2c 20 30 78 36 35 2c 20 30 78 36 34 2c 20 30 78  , 0x65, 0x64, 0x
102e0 31 34 2c 20 30 2c 20 30 78 32 39 2c 20 30 2c 20  14, 0, 0x29, 0, 
102f0 30 78 31 2c 20 30 2c 20 30 78 66 2c 0d 0a 09 30  0x1, 0, 0xf,...0
10300 2c 20 30 2c 20 30 2c 20 30 78 37 30 2c 20 30 78  , 0, 0, 0x70, 0x
10310 36 66 2c 20 30 78 37 33 2c 20 30 78 36 39 2c 20  6f, 0x73, 0x69, 
10320 30 78 37 34 2c 20 30 78 36 39 2c 20 30 78 36 66  0x74, 0x69, 0x6f
10330 2c 0d 0a 09 30 78 36 65 2c 20 30 78 37 31 2c 20  ,...0x6e, 0x71, 
10340 30 78 37 35 2c 20 30 78 36 31 2c 20 30 78 36 63  0x75, 0x61, 0x6c
10350 2c 20 30 78 36 39 2c 20 30 78 37 34 2c 20 30 78  , 0x69, 0x74, 0x
10360 37 39 2c 20 30 78 31 34 2c 20 30 2c 0d 0a 09 30  79, 0x14, 0,...0
10370 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20  xb, 0, 0x1f, 0, 
10380 30 78 31 2c 20 30 2c 20 30 78 39 2c 20 30 2c 20  0x1, 0, 0x9, 0, 
10390 30 2c 20 30 2c 0d 0a 09 30 78 34 31 2c 20 30 78  0, 0,...0x41, 0x
103a0 36 65 2c 20 30 78 36 39 2c 20 30 78 36 64 2c 20  6e, 0x69, 0x6d, 
103b0 30 78 36 31 2c 20 30 78 37 34 2c 20 30 78 36 39  0x61, 0x74, 0x69
103c0 2c 20 30 78 36 66 2c 20 30 78 36 65 2c 20 30 78  , 0x6f, 0x6e, 0x
103d0 61 2c 0d 0a 09 30 2c 20 30 78 35 2c 20 30 2c 20  a,...0, 0x5, 0, 
103e0 30 78 34 66 2c 20 30 78 61 62 2c 20 30 78 38 32  0x4f, 0xab, 0x82
103f0 2c 20 30 78 33 64 2c 20 30 78 64 61 2c 20 30 78  , 0x3d, 0xda, 0x
10400 36 32 2c 20 30 78 63 66 2c 0d 0a 09 30 78 31 31  62, 0xcf,...0x11
10410 2c 20 30 78 61 62 2c 20 30 78 33 39 2c 20 30 2c  , 0xab, 0x39, 0,
10420 20 30 78 32 30 2c 20 30 78 61 66 2c 20 30 78 37   0x20, 0xaf, 0x7
10430 31 2c 20 30 78 65 34 2c 20 30 78 33 33 2c 20 30  1, 0xe4, 0x33, 0
10440 78 65 2c 0d 0a 09 30 2c 20 30 78 31 32 2c 20 30  xe,...0, 0x12, 0
10450 2c 20 30 78 31 32 2c 20 30 2c 20 30 78 31 32 2c  , 0x12, 0, 0x12,
10460 20 30 2c 20 30 78 66 2c 20 30 2c 20 30 78 62 2c   0, 0xf, 0, 0xb,
10470 0d 0a 09 30 2c 20 30 78 31 66 2c 20 30 2c 20 30  ...0, 0x1f, 0, 0
10480 78 31 2c 20 30 2c 20 30 78 63 2c 20 30 2c 20 30  x1, 0, 0xc, 0, 0
10490 2c 20 30 2c 20 30 78 34 31 2c 0d 0a 09 30 78 36  , 0, 0x41,...0x6
104a0 65 2c 20 30 78 36 39 2c 20 30 78 36 64 2c 20 30  e, 0x69, 0x6d, 0
104b0 78 36 31 2c 20 30 78 37 34 2c 20 30 78 36 39 2c  x61, 0x74, 0x69,
104c0 20 30 78 36 66 2c 20 30 78 36 65 2c 20 30 78 35   0x6f, 0x6e, 0x5
104d0 33 2c 20 30 78 36 35 2c 0d 0a 09 30 78 37 34 2c  3, 0x65,...0x74,
104e0 20 30 78 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c   0xa, 0, 0x5, 0,
104f0 20 30 78 35 30 2c 20 30 78 61 62 2c 20 30 78 38   0x50, 0xab, 0x8
10500 32 2c 20 30 78 33 64 2c 20 30 78 64 61 2c 0d 0a  2, 0x3d, 0xda,..
10510 09 30 78 36 32 2c 20 30 78 63 66 2c 20 30 78 31  .0x62, 0xcf, 0x1
10520 31 2c 20 30 78 61 62 2c 20 30 78 33 39 2c 20 30  1, 0xab, 0x39, 0
10530 2c 20 30 78 32 30 2c 20 30 78 61 66 2c 20 30 78  , 0x20, 0xaf, 0x
10540 37 31 2c 20 30 78 65 34 2c 0d 0a 09 30 78 33 33  71, 0xe4,...0x33
10550 2c 20 30 78 65 2c 20 30 2c 20 30 78 31 2c 20 30  , 0xe, 0, 0x1, 0
10560 2c 20 30 78 39 2c 20 30 2c 20 30 2c 20 30 2c 20  , 0x9, 0, 0, 0, 
10570 30 78 34 31 2c 0d 0a 09 30 78 36 65 2c 20 30 78  0x41,...0x6e, 0x
10580 36 39 2c 20 30 78 36 64 2c 20 30 78 36 31 2c 20  69, 0x6d, 0x61, 
10590 30 78 37 34 2c 20 30 78 36 39 2c 20 30 78 36 66  0x74, 0x69, 0x6f
105a0 2c 20 30 78 36 65 2c 20 30 78 66 2c 20 30 2c 0d  , 0x6e, 0xf, 0,.
105b0 0a 09 30 78 62 2c 20 30 2c 20 30 78 31 66 2c 20  ..0xb, 0, 0x1f, 
105c0 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 61 2c 20  0, 0x1, 0, 0xa, 
105d0 30 2c 20 30 2c 20 30 2c 0d 0a 09 30 78 34 39 2c  0, 0, 0,...0x49,
105e0 20 30 78 36 65 2c 20 30 78 36 63 2c 20 30 78 36   0x6e, 0x6c, 0x6
105f0 39 2c 20 30 78 36 65 2c 20 30 78 36 35 2c 20 30  9, 0x6e, 0x65, 0
10600 78 34 34 2c 20 30 78 36 31 2c 20 30 78 37 34 2c  x44, 0x61, 0x74,
10610 20 30 78 36 31 2c 0d 0a 09 30 78 61 2c 20 30 2c   0x61,...0xa, 0,
10620 20 30 78 35 2c 20 30 2c 20 30 78 61 30 2c 20 30   0x5, 0, 0xa0, 0
10630 78 65 65 2c 20 30 78 32 33 2c 20 30 78 33 61 2c  xee, 0x23, 0x3a,
10640 20 30 78 62 31 2c 20 30 78 39 34 2c 0d 0a 09 30   0xb1, 0x94,...0
10650 78 64 30 2c 20 30 78 31 31 2c 20 30 78 61 62 2c  xd0, 0x11, 0xab,
10660 20 30 78 33 39 2c 20 30 2c 20 30 78 32 30 2c 20   0x39, 0, 0x20, 
10670 30 78 61 66 2c 20 30 78 37 31 2c 20 30 78 65 34  0xaf, 0x71, 0xe4
10680 2c 20 30 78 33 33 2c 0d 0a 09 30 78 65 2c 20 30  , 0x33,...0xe, 0
10690 2c 20 30 78 31 2c 20 30 2c 20 30 78 36 2c 20 30  , 0x1, 0, 0x6, 0
106a0 2c 20 30 2c 20 30 2c 20 30 78 34 32 2c 20 30 78  , 0, 0, 0x42, 0x
106b0 34 39 2c 0d 0a 09 30 78 34 65 2c 20 30 78 34 31  49,...0x4e, 0x41
106c0 2c 20 30 78 35 32 2c 20 30 78 35 39 2c 20 30 78  , 0x52, 0x59, 0x
106d0 66 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 78  f, 0, 0xb, 0, 0x
106e0 31 66 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30 2c  1f, 0,...0x1, 0,
106f0 20 30 78 33 2c 20 30 2c 20 30 2c 20 30 2c 20 30   0x3, 0, 0, 0, 0
10700 78 35 35 2c 20 30 78 37 32 2c 20 30 78 36 63 2c  x55, 0x72, 0x6c,
10710 20 30 78 61 2c 0d 0a 09 30 2c 20 30 78 35 2c 20   0xa,...0, 0x5, 
10720 30 2c 20 30 78 61 31 2c 20 30 78 65 65 2c 20 30  0, 0xa1, 0xee, 0
10730 78 32 33 2c 20 30 78 33 61 2c 20 30 78 62 31 2c  x23, 0x3a, 0xb1,
10740 20 30 78 39 34 2c 20 30 78 64 30 2c 0d 0a 09 30   0x94, 0xd0,...0
10750 78 31 31 2c 20 30 78 61 62 2c 20 30 78 33 39 2c  x11, 0xab, 0x39,
10760 20 30 2c 20 30 78 32 30 2c 20 30 78 61 66 2c 20   0, 0x20, 0xaf, 
10770 30 78 37 31 2c 20 30 78 65 34 2c 20 30 78 33 33  0x71, 0xe4, 0x33
10780 2c 20 30 78 32 39 2c 0d 0a 09 30 2c 20 30 78 31  , 0x29,...0, 0x1
10790 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20 30 2c 20  , 0, 0x5, 0, 0, 
107a0 30 2c 20 30 78 36 65 2c 20 30 78 35 35 2c 20 30  0, 0x6e, 0x55, 0
107b0 78 37 32 2c 0d 0a 09 30 78 36 63 2c 20 30 78 37  x72,...0x6c, 0x7
107c0 33 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 33 34  3, 0x14, 0, 0x34
107d0 2c 20 30 2c 20 30 78 33 31 2c 20 30 2c 20 30 78  , 0, 0x31, 0, 0x
107e0 31 2c 20 30 2c 0d 0a 09 30 78 34 2c 20 30 2c 20  1, 0,...0x4, 0, 
107f0 30 2c 20 30 2c 20 30 78 37 35 2c 20 30 78 37 32  0, 0, 0x75, 0x72
10800 2c 20 30 78 36 63 2c 20 30 78 37 33 2c 20 30 78  , 0x6c, 0x73, 0x
10810 65 2c 20 30 2c 0d 0a 09 30 78 31 2c 20 30 2c 20  e, 0,...0x1, 0, 
10820 30 78 35 2c 20 30 2c 20 30 2c 20 30 2c 20 30 78  0x5, 0, 0, 0, 0x
10830 36 65 2c 20 30 78 35 35 2c 20 30 78 37 32 2c 20  6e, 0x55, 0x72, 
10840 30 78 36 63 2c 0d 0a 09 30 78 37 33 2c 20 30 78  0x6c,...0x73, 0x
10850 66 2c 20 30 2c 20 30 78 31 34 2c 20 30 2c 20 30  f, 0, 0x14, 0, 0
10860 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20  xb, 0, 0x1f, 0, 
10870 30 78 31 2c 0d 0a 09 30 2c 20 30 78 66 2c 20 30  0x1,...0, 0xf, 0
10880 2c 20 30 2c 20 30 2c 20 30 78 35 30 2c 20 30 78  , 0, 0, 0x50, 0x
10890 37 32 2c 20 30 78 36 66 2c 20 30 78 36 37 2c 20  72, 0x6f, 0x67, 
108a0 30 78 37 32 2c 0d 0a 09 30 78 36 35 2c 20 30 78  0x72,...0x65, 0x
108b0 37 33 2c 20 30 78 37 33 2c 20 30 78 36 39 2c 20  73, 0x73, 0x69, 
108c0 30 78 37 36 2c 20 30 78 36 35 2c 20 30 78 34 64  0x76, 0x65, 0x4d
108d0 2c 20 30 78 36 35 2c 20 30 78 37 33 2c 20 30 78  , 0x65, 0x73, 0x
108e0 36 38 2c 0d 0a 09 30 78 61 2c 20 30 2c 20 30 78  68,...0xa, 0, 0x
108f0 35 2c 20 30 2c 20 30 78 36 30 2c 20 30 78 63 33  5, 0, 0x60, 0xc3
10900 2c 20 30 78 36 33 2c 20 30 78 38 61 2c 20 30 78  , 0x63, 0x8a, 0x
10910 37 64 2c 20 30 78 39 39 2c 0d 0a 09 30 78 64 30  7d, 0x99,...0xd0
10920 2c 20 30 78 31 31 2c 20 30 78 39 34 2c 20 30 78  , 0x11, 0x94, 0x
10930 31 63 2c 20 30 2c 20 30 78 38 30 2c 20 30 78 63  1c, 0, 0x80, 0xc
10940 38 2c 20 30 78 63 2c 20 30 78 66 61 2c 20 30 78  8, 0xc, 0xfa, 0x
10950 37 62 2c 0d 0a 09 30 78 65 2c 20 30 2c 20 30 78  7b,...0xe, 0, 0x
10960 31 2c 20 30 2c 20 30 78 33 2c 20 30 2c 20 30 2c  1, 0, 0x3, 0, 0,
10970 20 30 2c 20 30 78 35 35 2c 20 30 78 37 32 2c 0d   0, 0x55, 0x72,.
10980 0a 09 30 78 36 63 2c 20 30 78 31 33 2c 20 30 2c  ..0x6c, 0x13, 0,
10990 20 30 78 31 2c 20 30 2c 20 30 78 61 2c 20 30 2c   0x1, 0, 0xa, 0,
109a0 20 30 2c 20 30 2c 20 30 78 34 39 2c 0d 0a 09 30   0, 0, 0x49,...0
109b0 78 36 65 2c 20 30 78 36 63 2c 20 30 78 36 39 2c  x6e, 0x6c, 0x69,
109c0 20 30 78 36 65 2c 20 30 78 36 35 2c 20 30 78 34   0x6e, 0x65, 0x4
109d0 34 2c 20 30 78 36 31 2c 20 30 78 37 34 2c 20 30  4, 0x61, 0x74, 0
109e0 78 36 31 2c 20 30 78 66 2c 0d 0a 09 30 2c 20 30  x61, 0xf,...0, 0
109f0 78 62 2c 20 30 2c 20 30 78 31 66 2c 20 30 2c 20  xb, 0, 0x1f, 0, 
10a00 30 78 31 2c 20 30 2c 20 30 78 34 2c 20 30 2c 20  0x1, 0, 0x4, 0, 
10a10 30 2c 0d 0a 09 30 2c 20 30 78 34 37 2c 20 30 78  0,...0, 0x47, 0x
10a20 37 35 2c 20 30 78 36 39 2c 20 30 78 36 34 2c 20  75, 0x69, 0x64, 
10a30 30 78 61 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20  0xa, 0, 0x5, 0, 
10a40 30 78 65 30 2c 0d 0a 09 30 78 39 30 2c 20 30 78  0xe0,...0x90, 0x
10a50 32 37 2c 20 30 78 61 34 2c 20 30 78 31 30 2c 20  27, 0xa4, 0x10, 
10a60 30 78 37 38 2c 20 30 78 63 66 2c 20 30 78 31 31  0x78, 0xcf, 0x11
10a70 2c 20 30 78 38 66 2c 20 30 78 35 32 2c 20 30 2c  , 0x8f, 0x52, 0,
10a80 0d 0a 09 30 78 34 30 2c 20 30 78 33 33 2c 20 30  ...0x40, 0x33, 0
10a90 78 33 35 2c 20 30 78 39 34 2c 20 30 78 61 33 2c  x35, 0x94, 0xa3,
10aa0 20 30 78 32 39 2c 20 30 2c 20 30 78 31 2c 20 30   0x29, 0, 0x1, 0
10ab0 2c 20 30 78 35 2c 0d 0a 09 30 2c 20 30 2c 20 30  , 0x5,...0, 0, 0
10ac0 2c 20 30 78 36 34 2c 20 30 78 36 31 2c 20 30 78  , 0x64, 0x61, 0x
10ad0 37 34 2c 20 30 78 36 31 2c 20 30 78 33 31 2c 20  74, 0x61, 0x31, 
10ae0 30 78 31 34 2c 20 30 2c 0d 0a 09 30 78 32 38 2c  0x14, 0,...0x28,
10af0 20 30 2c 20 30 78 31 2c 20 30 2c 20 30 78 35 2c   0, 0x1, 0, 0x5,
10b00 20 30 2c 20 30 2c 20 30 2c 20 30 78 36 34 2c 20   0, 0, 0, 0x64, 
10b10 30 78 36 31 2c 0d 0a 09 30 78 37 34 2c 20 30 78  0x61,...0x74, 0x
10b20 36 31 2c 20 30 78 33 32 2c 20 30 78 31 34 2c 20  61, 0x32, 0x14, 
10b30 30 2c 20 30 78 32 38 2c 20 30 2c 20 30 78 31 2c  0, 0x28, 0, 0x1,
10b40 20 30 2c 20 30 78 35 2c 0d 0a 09 30 2c 20 30 2c   0, 0x5,...0, 0,
10b50 20 30 2c 20 30 78 36 34 2c 20 30 78 36 31 2c 20   0, 0x64, 0x61, 
10b60 30 78 37 34 2c 20 30 78 36 31 2c 20 30 78 33 33  0x74, 0x61, 0x33
10b70 2c 20 30 78 31 34 2c 20 30 2c 0d 0a 09 30 78 33  , 0x14, 0,...0x3
10b80 34 2c 20 30 2c 20 30 78 32 64 2c 20 30 2c 20 30  4, 0, 0x2d, 0, 0
10b90 78 31 2c 20 30 2c 20 30 78 35 2c 20 30 2c 20 30  x1, 0, 0x5, 0, 0
10ba0 2c 20 30 2c 0d 0a 09 30 78 36 34 2c 20 30 78 36  , 0,...0x64, 0x6
10bb0 31 2c 20 30 78 37 34 2c 20 30 78 36 31 2c 20 30  1, 0x74, 0x61, 0
10bc0 78 33 34 2c 20 30 78 65 2c 20 30 2c 20 30 78 33  x34, 0xe, 0, 0x3
10bd0 2c 20 30 2c 20 30 78 38 2c 0d 0a 09 30 2c 20 30  , 0, 0x8,...0, 0
10be0 2c 20 30 2c 20 30 78 66 2c 20 30 2c 20 30 78 31  , 0, 0xf, 0, 0x1
10bf0 34 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 78  4, 0, 0xb, 0, 0x
10c00 31 66 2c 0d 0a 09 30 2c 20 30 78 31 2c 20 30 2c  1f,...0, 0x1, 0,
10c10 20 30 78 65 2c 20 30 2c 20 30 2c 20 30 2c 20 30   0xe, 0, 0, 0, 0
10c20 78 35 33 2c 20 30 78 37 34 2c 20 30 78 37 32 2c  x53, 0x74, 0x72,
10c30 0d 0a 09 30 78 36 39 2c 20 30 78 36 65 2c 20 30  ...0x69, 0x6e, 0
10c40 78 36 37 2c 20 30 78 35 30 2c 20 30 78 37 32 2c  x67, 0x50, 0x72,
10c50 20 30 78 36 66 2c 20 30 78 37 30 2c 20 30 78 36   0x6f, 0x70, 0x6
10c60 35 2c 20 30 78 37 32 2c 20 30 78 37 34 2c 0d 0a  5, 0x72, 0x74,..
10c70 09 30 78 37 39 2c 20 30 78 61 2c 20 30 2c 20 30  .0x79, 0xa, 0, 0
10c80 78 35 2c 20 30 2c 20 30 78 65 30 2c 20 30 78 32  x5, 0, 0xe0, 0x2
10c90 31 2c 20 30 78 66 2c 20 30 78 37 66 2c 20 30 78  1, 0xf, 0x7f, 0x
10ca0 65 31 2c 0d 0a 09 30 78 62 66 2c 20 30 78 64 31  e1,...0xbf, 0xd1
10cb0 2c 20 30 78 31 31 2c 20 30 78 38 32 2c 20 30 78  , 0x11, 0x82, 0x
10cc0 63 30 2c 20 30 2c 20 30 78 61 30 2c 20 30 78 63  c0, 0, 0xa0, 0xc
10cd0 39 2c 20 30 78 36 39 2c 20 30 78 37 32 2c 0d 0a  9, 0x69, 0x72,..
10ce0 09 30 78 37 31 2c 20 30 78 33 31 2c 20 30 2c 20  .0x71, 0x31, 0, 
10cf0 30 78 31 2c 20 30 2c 20 30 78 33 2c 20 30 2c 20  0x1, 0, 0x3, 0, 
10d00 30 2c 20 30 2c 20 30 78 36 62 2c 0d 0a 09 30 78  0, 0, 0x6b,...0x
10d10 36 35 2c 20 30 78 37 39 2c 20 30 78 31 34 2c 20  65, 0x79, 0x14, 
10d20 30 2c 20 30 78 33 31 2c 20 30 2c 20 30 78 31 2c  0, 0x31, 0, 0x1,
10d30 20 30 2c 20 30 78 35 2c 20 30 2c 0d 0a 09 30 2c   0, 0x5, 0,...0,
10d40 20 30 2c 20 30 78 37 36 2c 20 30 78 36 31 2c 20   0, 0x76, 0x61, 
10d50 30 78 36 63 2c 20 30 78 37 35 2c 20 30 78 36 35  0x6c, 0x75, 0x65
10d60 2c 20 30 78 31 34 2c 20 30 2c 20 30 78 62 2c 0d  , 0x14, 0, 0xb,.
10d70 0a 09 30 2c 20 30 78 31 66 2c 20 30 2c 20 30 78  ..0, 0x1f, 0, 0x
10d80 31 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30 2c  1, 0, 0xb, 0, 0,
10d90 20 30 2c 20 30 78 35 30 2c 0d 0a 09 30 78 37 32   0, 0x50,...0x72
10da0 2c 20 30 78 36 66 2c 20 30 78 37 30 2c 20 30 78  , 0x6f, 0x70, 0x
10db0 36 35 2c 20 30 78 37 32 2c 20 30 78 37 34 2c 20  65, 0x72, 0x74, 
10dc0 30 78 37 39 2c 20 30 78 34 32 2c 20 30 78 36 31  0x79, 0x42, 0x61
10dd0 2c 20 30 78 36 37 2c 0d 0a 09 30 78 61 2c 20 30  , 0x67,...0xa, 0
10de0 2c 20 30 78 35 2c 20 30 2c 20 30 78 65 31 2c 20  , 0x5, 0, 0xe1, 
10df0 30 78 32 31 2c 20 30 78 66 2c 20 30 78 37 66 2c  0x21, 0xf, 0x7f,
10e00 20 30 78 65 31 2c 20 30 78 62 66 2c 0d 0a 09 30   0xe1, 0xbf,...0
10e10 78 64 31 2c 20 30 78 31 31 2c 20 30 78 38 32 2c  xd1, 0x11, 0x82,
10e20 20 30 78 63 30 2c 20 30 2c 20 30 78 61 30 2c 20   0xc0, 0, 0xa0, 
10e30 30 78 63 39 2c 20 30 78 36 39 2c 20 30 78 37 32  0xc9, 0x69, 0x72
10e40 2c 20 30 78 37 31 2c 0d 0a 09 30 78 65 2c 20 30  , 0x71,...0xe, 0
10e50 2c 20 30 78 31 2c 20 30 2c 20 30 78 65 2c 20 30  , 0x1, 0, 0xe, 0
10e60 2c 20 30 2c 20 30 2c 20 30 78 35 33 2c 20 30 78  , 0, 0, 0x53, 0x
10e70 37 34 2c 0d 0a 09 30 78 37 32 2c 20 30 78 36 39  74,...0x72, 0x69
10e80 2c 20 30 78 36 65 2c 20 30 78 36 37 2c 20 30 78  , 0x6e, 0x67, 0x
10e90 35 30 2c 20 30 78 37 32 2c 20 30 78 36 66 2c 20  50, 0x72, 0x6f, 
10ea0 30 78 37 30 2c 20 30 78 36 35 2c 20 30 78 37 32  0x70, 0x65, 0x72
10eb0 2c 0d 0a 09 30 78 37 34 2c 20 30 78 37 39 2c 20  ,...0x74, 0x79, 
10ec0 30 78 66 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20  0xf, 0, 0xb, 0, 
10ed0 30 78 31 66 2c 20 30 2c 20 30 78 31 2c 20 30 2c  0x1f, 0, 0x1, 0,
10ee0 0d 0a 09 30 78 65 2c 20 30 2c 20 30 2c 20 30 2c  ...0xe, 0, 0, 0,
10ef0 20 30 78 34 35 2c 20 30 78 37 38 2c 20 30 78 37   0x45, 0x78, 0x7
10f00 34 2c 20 30 78 36 35 2c 20 30 78 37 32 2c 20 30  4, 0x65, 0x72, 0
10f10 78 36 65 2c 0d 0a 09 30 78 36 31 2c 20 30 78 36  x6e,...0x61, 0x6
10f20 63 2c 20 30 78 35 36 2c 20 30 78 36 39 2c 20 30  c, 0x56, 0x69, 0
10f30 78 37 33 2c 20 30 78 37 35 2c 20 30 78 36 31 2c  x73, 0x75, 0x61,
10f40 20 30 78 36 63 2c 20 30 78 61 2c 20 30 2c 0d 0a   0x6c, 0xa, 0,..
10f50 09 30 78 35 2c 20 30 2c 20 30 78 61 30 2c 20 30  .0x5, 0, 0xa0, 0
10f60 78 36 61 2c 20 30 78 31 31 2c 20 30 78 39 38 2c  x6a, 0x11, 0x98,
10f70 20 30 78 62 61 2c 20 30 78 62 64 2c 20 30 78 64   0xba, 0xbd, 0xd
10f80 31 2c 20 30 78 31 31 2c 0d 0a 09 30 78 38 32 2c  1, 0x11,...0x82,
10f90 20 30 78 63 30 2c 20 30 2c 20 30 78 61 30 2c 20   0xc0, 0, 0xa0, 
10fa0 30 78 63 39 2c 20 30 78 36 39 2c 20 30 78 37 32  0xc9, 0x69, 0x72
10fb0 2c 20 30 78 37 31 2c 20 30 78 31 2c 20 30 2c 0d  , 0x71, 0x1, 0,.
10fc0 0a 09 30 78 34 2c 20 30 2c 20 30 2c 20 30 2c 20  ..0x4, 0, 0, 0, 
10fd0 30 78 34 37 2c 20 30 78 37 35 2c 20 30 78 36 39  0x47, 0x75, 0x69
10fe0 2c 20 30 78 36 34 2c 20 30 78 31 2c 20 30 2c 0d  , 0x64, 0x1, 0,.
10ff0 0a 09 30 78 31 32 2c 20 30 2c 20 30 2c 20 30 2c  ..0x12, 0, 0, 0,
11000 20 30 78 36 37 2c 20 30 78 37 35 2c 20 30 78 36   0x67, 0x75, 0x6
11010 39 2c 20 30 78 36 34 2c 20 30 78 34 35 2c 20 30  9, 0x64, 0x45, 0
11020 78 37 38 2c 0d 0a 09 30 78 37 34 2c 20 30 78 36  x78,...0x74, 0x6
11030 35 2c 20 30 78 37 32 2c 20 30 78 36 65 2c 20 30  5, 0x72, 0x6e, 0
11040 78 36 31 2c 20 30 78 36 63 2c 20 30 78 35 36 2c  x61, 0x6c, 0x56,
11050 20 30 78 36 39 2c 20 30 78 37 33 2c 20 30 78 37   0x69, 0x73, 0x7
11060 35 2c 0d 0a 09 30 78 36 31 2c 20 30 78 36 63 2c  5,...0x61, 0x6c,
11070 20 30 78 31 34 2c 20 30 2c 20 30 78 65 2c 20 30   0x14, 0, 0xe, 0
11080 2c 20 30 78 31 32 2c 20 30 2c 20 30 78 31 32 2c  , 0x12, 0, 0x12,
11090 20 30 2c 0d 0a 09 30 78 31 32 2c 20 30 2c 20 30   0,...0x12, 0, 0
110a0 78 66 2c 20 30 2c 20 30 78 62 2c 20 30 2c 20 30  xf, 0, 0xb, 0, 0
110b0 78 31 66 2c 20 30 2c 20 30 78 31 2c 20 30 2c 0d  x1f, 0, 0x1, 0,.
110c0 0a 09 30 78 62 2c 20 30 2c 20 30 2c 20 30 2c 20  ..0xb, 0, 0, 0, 
110d0 30 78 35 32 2c 20 30 78 36 39 2c 20 30 78 36 37  0x52, 0x69, 0x67
110e0 2c 20 30 78 36 38 2c 20 30 78 37 34 2c 20 30 78  , 0x68, 0x74, 0x
110f0 34 38 2c 0d 0a 09 30 78 36 31 2c 20 30 78 36 65  48,...0x61, 0x6e
11100 2c 20 30 78 36 34 2c 20 30 78 36 35 2c 20 30 78  , 0x64, 0x65, 0x
11110 36 34 2c 20 30 78 61 2c 20 30 2c 20 30 78 35 2c  64, 0xa, 0, 0x5,
11120 20 30 2c 20 30 78 61 30 2c 0d 0a 09 30 78 35 65   0, 0xa0,...0x5e
11130 2c 20 30 78 35 64 2c 20 30 78 37 66 2c 20 30 78  , 0x5d, 0x7f, 0x
11140 33 61 2c 20 30 78 64 35 2c 20 30 78 64 31 2c 20  3a, 0xd5, 0xd1, 
11150 30 78 31 31 2c 20 30 78 38 32 2c 20 30 78 63 30  0x11, 0x82, 0xc0
11160 2c 20 30 2c 0d 0a 09 30 78 61 30 2c 20 30 78 63  , 0,...0xa0, 0xc
11170 39 2c 20 30 78 36 39 2c 20 30 78 37 32 2c 20 30  9, 0x69, 0x72, 0
11180 78 37 31 2c 20 30 78 32 39 2c 20 30 2c 20 30 78  x71, 0x29, 0, 0x
11190 31 2c 20 30 2c 20 30 78 63 2c 0d 0a 09 30 2c 20  1, 0, 0xc,...0, 
111a0 30 2c 20 30 2c 20 30 78 36 32 2c 20 30 78 35 32  0, 0, 0x62, 0x52
111b0 2c 20 30 78 36 39 2c 20 30 78 36 37 2c 20 30 78  , 0x69, 0x67, 0x
111c0 36 38 2c 20 30 78 37 34 2c 20 30 78 34 38 2c 0d  68, 0x74, 0x48,.
111d0 0a 09 30 78 36 31 2c 20 30 78 36 65 2c 20 30 78  ..0x61, 0x6e, 0x
111e0 36 34 2c 20 30 78 36 35 2c 20 30 78 36 34 2c 20  64, 0x65, 0x64, 
111f0 30 78 31 34 2c 20 30 2c 20 30 78 62 2c 20 30 0d  0x14, 0, 0xb, 0.
11200 0a 5d 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 47 55 49  .];....const GUI
11210 44 20 44 58 46 49 4c 45 4f 42 4a 5f 58 53 6b 69  D DXFILEOBJ_XSki
11220 6e 4d 65 73 68 48 65 61 64 65 72 20 3d 20 44 45  nMeshHeader = DE
11230 46 49 4e 45 5f 47 55 49 44 21 28 30 78 33 63 66  FINE_GUID!(0x3cf
11240 31 36 39 63 65 2c 20 30 78 66 66 37 63 2c 20 30  169ce, 0xff7c, 0
11250 78 34 34 61 62 2c 20 30 78 39 33 2c 20 30 78 63  x44ab, 0x93, 0xc
11260 30 2c 20 30 78 66 37 2c 20 30 78 38 66 2c 20 30  0, 0xf7, 0x8f, 0
11270 78 36 32 2c 20 30 78 64 31 2c 20 30 78 37 32 2c  x62, 0xd1, 0x72,
11280 20 30 78 65 32 29 3b 0d 0a 63 6f 6e 73 74 20 47   0xe2);..const G
11290 55 49 44 20 44 58 46 49 4c 45 4f 42 4a 5f 56 65  UID DXFILEOBJ_Ve
112a0 72 74 65 78 44 75 70 6c 69 63 61 74 69 6f 6e 49  rtexDuplicationI
112b0 6e 64 69 63 65 73 20 3d 20 44 45 46 49 4e 45 5f  ndices = DEFINE_
112c0 47 55 49 44 21 28 30 78 62 38 64 36 35 35 34 39  GUID!(0xb8d65549
112d0 2c 20 30 78 64 37 63 39 2c 20 30 78 34 39 39 35  , 0xd7c9, 0x4995
112e0 2c 20 30 78 38 39 2c 20 30 78 63 66 2c 20 30 78  , 0x89, 0xcf, 0x
112f0 35 33 2c 20 30 78 61 39 2c 20 30 78 61 38 2c 20  53, 0xa9, 0xa8, 
11300 30 78 62 30 2c 20 30 78 33 31 2c 20 30 78 65 33  0xb0, 0x31, 0xe3
11310 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 44  );..const GUID D
11320 58 46 49 4c 45 4f 42 4a 5f 46 61 63 65 41 64 6a  XFILEOBJ_FaceAdj
11330 61 63 65 6e 63 79 20 3d 20 44 45 46 49 4e 45 5f  acency = DEFINE_
11340 47 55 49 44 21 28 30 78 61 36 34 63 38 34 34 61  GUID!(0xa64c844a
11350 2c 20 30 78 65 32 38 32 2c 20 30 78 34 37 35 36  , 0xe282, 0x4756
11360 2c 20 30 78 38 62 2c 20 30 78 38 30 2c 20 30 78  , 0x8b, 0x80, 0x
11370 32 35 2c 20 30 78 63 2c 20 30 78 64 65 2c 20 30  25, 0xc, 0xde, 0
11380 78 34 2c 20 30 78 33 39 2c 20 30 78 38 63 29 3b  x4, 0x39, 0x8c);
11390 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 44 58 46  ..const GUID DXF
113a0 49 4c 45 4f 42 4a 5f 53 6b 69 6e 57 65 69 67 68  ILEOBJ_SkinWeigh
113b0 74 73 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44  ts = DEFINE_GUID
113c0 21 28 30 78 36 66 30 64 31 32 33 62 2c 20 30 78  !(0x6f0d123b, 0x
113d0 62 61 64 32 2c 20 30 78 34 31 36 37 2c 20 30 78  bad2, 0x4167, 0x
113e0 61 30 2c 20 30 78 64 30 2c 20 30 78 38 30 2c 20  a0, 0xd0, 0x80, 
113f0 30 78 32 32 2c 20 30 78 34 66 2c 20 30 78 32 35  0x22, 0x4f, 0x25
11400 2c 20 30 78 66 61 2c 20 30 78 62 62 29 3b 0d 0a  , 0xfa, 0xbb);..
11410 63 6f 6e 73 74 20 47 55 49 44 20 44 58 46 49 4c  const GUID DXFIL
11420 45 4f 42 4a 5f 50 61 74 63 68 20 3d 20 44 45 46  EOBJ_Patch = DEF
11430 49 4e 45 5f 47 55 49 44 21 28 30 78 61 33 65 62  INE_GUID!(0xa3eb
11440 35 64 34 34 2c 20 30 78 66 63 32 32 2c 20 30 78  5d44, 0xfc22, 0x
11450 34 32 39 64 2c 20 30 78 39 61 2c 20 30 78 66 62  429d, 0x9a, 0xfb
11460 2c 20 30 78 33 32 2c 20 30 78 32 31 2c 20 30 78  , 0x32, 0x21, 0x
11470 63 62 2c 20 30 78 39 37 2c 20 30 78 31 39 2c 20  cb, 0x97, 0x19, 
11480 30 78 61 36 29 3b 0d 0a 63 6f 6e 73 74 20 47 55  0xa6);..const GU
11490 49 44 20 44 58 46 49 4c 45 4f 42 4a 5f 50 61 74  ID DXFILEOBJ_Pat
114a0 63 68 4d 65 73 68 20 3d 20 44 45 46 49 4e 45 5f  chMesh = DEFINE_
114b0 47 55 49 44 21 28 30 78 64 30 32 63 39 35 63 63  GUID!(0xd02c95cc
114c0 2c 20 30 78 65 64 62 61 2c 20 30 78 34 33 30 35  , 0xedba, 0x4305
114d0 2c 20 30 78 39 62 2c 20 30 78 35 64 2c 20 30 78  , 0x9b, 0x5d, 0x
114e0 31 38 2c 20 30 78 32 30 2c 20 30 78 64 37 2c 20  18, 0x20, 0xd7, 
114f0 30 78 37 30 2c 20 30 78 34 62 2c 20 30 78 62 66  0x70, 0x4b, 0xbf
11500 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 44  );..const GUID D
11510 58 46 49 4c 45 4f 42 4a 5f 50 61 74 63 68 4d 65  XFILEOBJ_PatchMe
11520 73 68 39 20 3d 20 44 45 46 49 4e 45 5f 47 55 49  sh9 = DEFINE_GUI
11530 44 21 28 30 78 62 39 65 63 39 34 65 31 2c 20 30  D!(0xb9ec94e1, 0
11540 78 62 39 61 36 2c 20 30 78 34 32 35 31 2c 20 30  xb9a6, 0x4251, 0
11550 78 62 61 2c 20 30 78 31 38 2c 20 30 78 39 34 2c  xba, 0x18, 0x94,
11560 20 30 78 38 39 2c 20 30 78 33 66 2c 20 30 78 32   0x89, 0x3f, 0x2
11570 2c 20 30 78 63 30 2c 20 30 78 65 61 29 3b 0d 0a  , 0xc0, 0xea);..
11580 63 6f 6e 73 74 20 47 55 49 44 20 44 58 46 49 4c  const GUID DXFIL
11590 45 4f 42 4a 5f 50 4d 49 6e 66 6f 20 3d 20 44 45  EOBJ_PMInfo = DE
115a0 46 49 4e 45 5f 47 55 49 44 21 28 30 78 62 36 63  FINE_GUID!(0xb6c
115b0 33 65 36 35 36 2c 20 30 78 65 63 38 62 2c 20 30  3e656, 0xec8b, 0
115c0 78 34 62 39 32 2c 20 30 78 39 62 2c 20 30 78 36  x4b92, 0x9b, 0x6
115d0 32 2c 20 30 78 36 38 2c 20 30 78 31 36 2c 20 30  2, 0x68, 0x16, 0
115e0 78 35 39 2c 20 30 78 35 32 2c 20 30 78 32 39 2c  x59, 0x52, 0x29,
115f0 20 30 78 34 37 29 3b 0d 0a 63 6f 6e 73 74 20 47   0x47);..const G
11600 55 49 44 20 44 58 46 49 4c 45 4f 42 4a 5f 50 4d  UID DXFILEOBJ_PM
11610 41 74 74 72 69 62 75 74 65 52 61 6e 67 65 20 3d  AttributeRange =
11620 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78   DEFINE_GUID!(0x
11630 39 31 37 65 30 34 32 37 2c 20 30 78 63 36 31 65  917e0427, 0xc61e
11640 2c 20 30 78 34 61 31 34 2c 20 30 78 39 63 2c 20  , 0x4a14, 0x9c, 
11650 30 78 36 34 2c 20 30 78 61 66 2c 20 30 78 65 36  0x64, 0xaf, 0xe6
11660 2c 20 30 78 35 66 2c 20 30 78 39 65 2c 20 30 78  , 0x5f, 0x9e, 0x
11670 39 38 2c 20 30 78 34 34 29 3b 0d 0a 63 6f 6e 73  98, 0x44);..cons
11680 74 20 47 55 49 44 20 44 58 46 49 4c 45 4f 42 4a  t GUID DXFILEOBJ
11690 5f 50 4d 56 53 70 6c 69 74 52 65 63 6f 72 64 20  _PMVSplitRecord 
116a0 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30  = DEFINE_GUID!(0
116b0 78 35 37 34 63 63 63 31 34 2c 20 30 78 66 30 62  x574ccc14, 0xf0b
116c0 33 2c 20 30 78 34 33 33 33 2c 20 30 78 38 32 2c  3, 0x4333, 0x82,
116d0 20 30 78 32 64 2c 20 30 78 39 33 2c 20 30 78 65   0x2d, 0x93, 0xe
116e0 38 2c 20 30 78 61 38 2c 20 30 78 61 30 2c 20 30  8, 0xa8, 0xa0, 0
116f0 78 38 65 2c 20 30 78 34 63 29 3b 0d 0a 63 6f 6e  x8e, 0x4c);..con
11700 73 74 20 47 55 49 44 20 44 58 46 49 4c 45 4f 42  st GUID DXFILEOB
11710 4a 5f 46 56 46 44 61 74 61 20 3d 20 44 45 46 49  J_FVFData = DEFI
11720 4e 45 5f 47 55 49 44 21 28 30 78 62 36 65 37 30  NE_GUID!(0xb6e70
11730 61 30 65 2c 20 30 78 38 65 66 39 2c 20 30 78 34  a0e, 0x8ef9, 0x4
11740 65 38 33 2c 20 30 78 39 34 2c 20 30 78 61 64 2c  e83, 0x94, 0xad,
11750 20 30 78 65 63 2c 20 30 78 63 38 2c 20 30 78 62   0xec, 0xc8, 0xb
11760 30 2c 20 30 78 63 30 2c 20 30 78 34 38 2c 20 30  0, 0xc0, 0x48, 0
11770 78 39 37 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49  x97);..const GUI
11780 44 20 44 58 46 49 4c 45 4f 42 4a 5f 56 65 72 74  D DXFILEOBJ_Vert
11790 65 78 45 6c 65 6d 65 6e 74 20 3d 20 44 45 46 49  exElement = DEFI
117a0 4e 45 5f 47 55 49 44 21 28 30 78 66 37 35 32 34  NE_GUID!(0xf7524
117b0 36 31 63 2c 20 30 78 31 65 32 33 2c 20 30 78 34  61c, 0x1e23, 0x4
117c0 38 66 36 2c 20 30 78 62 39 2c 20 30 78 66 38 2c  8f6, 0xb9, 0xf8,
117d0 20 30 78 38 33 2c 20 30 78 35 30 2c 20 30 78 38   0x83, 0x50, 0x8
117e0 35 2c 20 30 78 66 2c 20 30 78 33 33 2c 20 30 78  5, 0xf, 0x33, 0x
117f0 36 66 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44  6f);..const GUID
11800 20 44 58 46 49 4c 45 4f 42 4a 5f 44 65 63 6c 44   DXFILEOBJ_DeclD
11810 61 74 61 20 3d 20 44 45 46 49 4e 45 5f 47 55 49  ata = DEFINE_GUI
11820 44 21 28 30 78 62 66 32 32 65 35 35 33 2c 20 30  D!(0xbf22e553, 0
11830 78 32 39 32 63 2c 20 30 78 34 37 38 31 2c 20 30  x292c, 0x4781, 0
11840 78 39 66 2c 20 30 78 65 61 2c 20 30 78 36 32 2c  x9f, 0xea, 0x62,
11850 20 30 78 62 64 2c 20 30 78 35 35 2c 20 30 78 34   0xbd, 0x55, 0x4
11860 62 2c 20 30 78 64 64 2c 20 30 78 39 33 29 3b 0d  b, 0xdd, 0x93);.
11870 0a 63 6f 6e 73 74 20 47 55 49 44 20 44 58 46 49  .const GUID DXFI
11880 4c 45 4f 42 4a 5f 45 66 66 65 63 74 46 6c 6f 61  LEOBJ_EffectFloa
11890 74 73 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44  ts = DEFINE_GUID
118a0 21 28 30 78 66 31 63 66 65 32 62 33 2c 20 30 78  !(0xf1cfe2b3, 0x
118b0 64 65 33 2c 20 30 78 34 65 32 38 2c 20 30 78 61  de3, 0x4e28, 0xa
118c0 66 2c 20 30 78 61 31 2c 20 30 78 31 35 2c 20 30  f, 0xa1, 0x15, 0
118d0 78 35 61 2c 20 30 78 37 35 2c 20 30 78 61 2c 20  x5a, 0x75, 0xa, 
118e0 30 78 32 38 2c 20 30 78 32 64 29 3b 0d 0a 63 6f  0x28, 0x2d);..co
118f0 6e 73 74 20 47 55 49 44 20 44 58 46 49 4c 45 4f  nst GUID DXFILEO
11900 42 4a 5f 45 66 66 65 63 74 53 74 72 69 6e 67 20  BJ_EffectString 
11910 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28 30  = DEFINE_GUID!(0
11920 78 64 35 35 62 30 39 37 65 2c 20 30 78 62 64 62  xd55b097e, 0xbdb
11930 36 2c 20 30 78 34 63 35 32 2c 20 30 78 62 30 2c  6, 0x4c52, 0xb0,
11940 20 30 78 33 64 2c 20 30 78 36 30 2c 20 30 78 35   0x3d, 0x60, 0x5
11950 31 2c 20 30 78 63 38 2c 20 30 78 39 64 2c 20 30  1, 0xc8, 0x9d, 0
11960 78 65 2c 20 30 78 34 32 29 3b 0d 0a 63 6f 6e 73  xe, 0x42);..cons
11970 74 20 47 55 49 44 20 44 58 46 49 4c 45 4f 42 4a  t GUID DXFILEOBJ
11980 5f 45 66 66 65 63 74 44 57 6f 72 64 20 3d 20 44  _EffectDWord = D
11990 45 46 49 4e 45 5f 47 55 49 44 21 28 30 78 36 32  EFINE_GUID!(0x62
119a0 32 63 30 65 64 30 2c 20 30 78 39 35 36 65 2c 20  2c0ed0, 0x956e, 
119b0 30 78 34 64 61 39 2c 20 30 78 39 30 2c 20 30 78  0x4da9, 0x90, 0x
119c0 38 61 2c 20 30 78 32 61 2c 20 30 78 66 39 2c 20  8a, 0x2a, 0xf9, 
119d0 30 78 34 66 2c 20 30 78 33 63 2c 20 30 78 65 37  0x4f, 0x3c, 0xe7
119e0 2c 20 30 78 31 36 29 3b 0d 0a 63 6f 6e 73 74 20  , 0x16);..const 
119f0 47 55 49 44 20 44 58 46 49 4c 45 4f 42 4a 5f 45  GUID DXFILEOBJ_E
11a00 66 66 65 63 74 50 61 72 61 6d 46 6c 6f 61 74 73  ffectParamFloats
11a10 20 3d 20 44 45 46 49 4e 45 5f 47 55 49 44 21 28   = DEFINE_GUID!(
11a20 30 78 33 30 31 34 62 39 61 30 2c 20 30 78 36 32  0x3014b9a0, 0x62
11a30 66 35 2c 20 30 78 34 37 38 63 2c 20 30 78 39 62  f5, 0x478c, 0x9b
11a40 2c 20 30 78 38 36 2c 20 30 78 65 34 2c 20 30 78  , 0x86, 0xe4, 0x
11a50 61 63 2c 20 30 78 39 66 2c 20 30 78 34 65 2c 20  ac, 0x9f, 0x4e, 
11a60 30 78 34 31 2c 20 30 78 38 62 29 3b 0d 0a 63 6f  0x41, 0x8b);..co
11a70 6e 73 74 20 47 55 49 44 20 44 58 46 49 4c 45 4f  nst GUID DXFILEO
11a80 42 4a 5f 45 66 66 65 63 74 50 61 72 61 6d 53 74  BJ_EffectParamSt
11a90 72 69 6e 67 20 3d 20 44 45 46 49 4e 45 5f 47 55  ring = DEFINE_GU
11aa0 49 44 21 28 30 78 31 64 62 63 34 63 38 38 2c 20  ID!(0x1dbc4c88, 
11ab0 30 78 39 34 63 31 2c 20 30 78 34 36 65 65 2c 20  0x94c1, 0x46ee, 
11ac0 30 78 39 30 2c 20 30 78 37 36 2c 20 30 78 32 63  0x90, 0x76, 0x2c
11ad0 2c 20 30 78 32 38 2c 20 30 78 38 31 2c 20 30 78  , 0x28, 0x81, 0x
11ae0 38 63 2c 20 30 78 39 34 2c 20 30 78 38 31 29 3b  8c, 0x94, 0x81);
11af0 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 44 58 46  ..const GUID DXF
11b00 49 4c 45 4f 42 4a 5f 45 66 66 65 63 74 50 61 72  ILEOBJ_EffectPar
11b10 61 6d 44 57 6f 72 64 20 3d 20 44 45 46 49 4e 45  amDWord = DEFINE
11b20 5f 47 55 49 44 21 28 30 78 65 31 33 39 36 33 62  _GUID!(0xe13963b
11b30 63 2c 20 30 78 61 65 35 31 2c 20 30 78 34 63 35  c, 0xae51, 0x4c5
11b40 64 2c 20 30 78 62 30 2c 20 30 78 66 2c 20 30 78  d, 0xb0, 0xf, 0x
11b50 63 66 2c 20 30 78 61 33 2c 20 30 78 61 39 2c 20  cf, 0xa3, 0xa9, 
11b60 30 78 64 39 2c 20 30 78 37 63 2c 20 30 78 65 35  0xd9, 0x7c, 0xe5
11b70 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 44  );..const GUID D
11b80 58 46 49 4c 45 4f 42 4a 5f 45 66 66 65 63 74 49  XFILEOBJ_EffectI
11b90 6e 73 74 61 6e 63 65 20 3d 20 44 45 46 49 4e 45  nstance = DEFINE
11ba0 5f 47 55 49 44 21 28 30 78 65 33 33 31 66 37 65  _GUID!(0xe331f7e
11bb0 34 2c 20 30 78 35 35 39 2c 20 30 78 34 63 63 32  4, 0x559, 0x4cc2
11bc0 2c 20 30 78 38 65 2c 20 30 78 39 39 2c 20 30 78  , 0x8e, 0x99, 0x
11bd0 31 63 2c 20 30 78 65 63 2c 20 30 78 31 36 2c 20  1c, 0xec, 0x16, 
11be0 30 78 35 37 2c 20 30 78 39 32 2c 20 30 78 38 66  0x57, 0x92, 0x8f
11bf0 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49 44 20 44  );..const GUID D
11c00 58 46 49 4c 45 4f 42 4a 5f 41 6e 69 6d 54 69 63  XFILEOBJ_AnimTic
11c10 6b 73 50 65 72 53 65 63 6f 6e 64 20 3d 20 44 45  ksPerSecond = DE
11c20 46 49 4e 45 5f 47 55 49 44 21 28 30 78 39 65 34  FINE_GUID!(0x9e4
11c30 31 35 61 34 33 2c 20 30 78 37 62 61 36 2c 20 30  15a43, 0x7ba6, 0
11c40 78 34 61 37 33 2c 20 30 78 38 37 2c 20 30 78 34  x4a73, 0x87, 0x4
11c50 33 2c 20 30 78 62 37 2c 20 30 78 33 64 2c 20 30  3, 0xb7, 0x3d, 0
11c60 78 34 37 2c 20 30 78 65 38 2c 20 30 78 38 34 2c  x47, 0xe8, 0x84,
11c70 20 30 78 37 36 29 3b 0d 0a 63 6f 6e 73 74 20 47   0x76);..const G
11c80 55 49 44 20 44 58 46 49 4c 45 4f 42 4a 5f 43 6f  UID DXFILEOBJ_Co
11c90 6d 70 72 65 73 73 65 64 41 6e 69 6d 61 74 69 6f  mpressedAnimatio
11ca0 6e 53 65 74 20 3d 20 44 45 46 49 4e 45 5f 47 55  nSet = DEFINE_GU
11cb0 49 44 21 28 30 78 37 66 39 62 30 30 62 33 2c 20  ID!(0x7f9b00b3, 
11cc0 30 78 66 31 32 35 2c 20 30 78 34 38 39 30 2c 20  0xf125, 0x4890, 
11cd0 30 78 38 37 2c 20 30 78 36 65 2c 20 30 78 31 63  0x87, 0x6e, 0x1c
11ce0 2c 20 30 78 34 32 2c 20 30 78 62 66 2c 20 30 78  , 0x42, 0xbf, 0x
11cf0 36 39 2c 20 30 78 37 63 2c 20 30 78 34 64 29 3b  69, 0x7c, 0x4d);
11d00 0d 0a 0d 0a 61 6c 69 67 6e 28 31 29 20 73 74 72  ....align(1) str
11d10 75 63 74 20 58 46 49 4c 45 43 4f 4d 50 52 45 53  uct XFILECOMPRES
11d20 53 45 44 41 4e 49 4d 41 54 49 4f 4e 53 45 54 0d  SEDANIMATIONSET.
11d30 0a 7b 0d 0a 20 20 20 20 44 57 4f 52 44 20 43 6f  .{..    DWORD Co
11d40 6d 70 72 65 73 73 65 64 42 6c 6f 63 6b 53 69 7a  mpressedBlockSiz
11d50 65 3b 0d 0a 20 20 20 20 46 4c 4f 41 54 20 54 69  e;..    FLOAT Ti
11d60 63 6b 73 50 65 72 53 65 63 3b 0d 0a 20 20 20 20  cksPerSec;..    
11d70 44 57 4f 52 44 20 50 6c 61 79 62 61 63 6b 54 79  DWORD PlaybackTy
11d80 70 65 3b 0d 0a 20 20 20 20 44 57 4f 52 44 20 42  pe;..    DWORD B
11d90 75 66 66 65 72 4c 65 6e 67 74 68 3b 0d 0a 7d 0d  ufferLength;..}.
11da0 0a 0d 0a 63 6f 6e 73 74 20 63 68 61 72 5b 5d 20  ...const char[] 
11db0 58 53 4b 49 4e 45 58 50 5f 54 45 4d 50 4c 41 54  XSKINEXP_TEMPLAT
11dc0 45 53 20 3d 0d 0a 20 20 20 20 20 20 20 20 22 78  ES =..        "x
11dd0 6f 66 20 30 33 30 33 74 78 74 20 30 30 33 32 0d  of 0303txt 0032.
11de0 0a 20 20 20 20 20 20 20 20 74 65 6d 70 6c 61 74  .        templat
11df0 65 20 58 53 6b 69 6e 4d 65 73 68 48 65 61 64 65  e XSkinMeshHeade
11e00 72 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  r..        {..  
11e10 20 20 20 20 20 20 20 20 20 20 3c 33 43 46 31 36            <3CF16
11e20 39 43 45 2d 46 46 37 43 2d 34 34 61 62 2d 39 33  9CE-FF7C-44ab-93
11e30 43 30 2d 46 37 38 46 36 32 44 31 37 32 45 32 3e  C0-F78F62D172E2>
11e40 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 57 4f  ..            WO
11e50 52 44 20 6e 4d 61 78 53 6b 69 6e 57 65 69 67 68  RD nMaxSkinWeigh
11e60 74 73 50 65 72 56 65 72 74 65 78 3b 0d 0a 20 20  tsPerVertex;..  
11e70 20 20 20 20 20 20 20 20 20 20 57 4f 52 44 20 6e            WORD n
11e80 4d 61 78 53 6b 69 6e 57 65 69 67 68 74 73 50 65  MaxSkinWeightsPe
11e90 72 46 61 63 65 3b 0d 0a 20 20 20 20 20 20 20 20  rFace;..        
11ea0 20 20 20 20 57 4f 52 44 20 6e 42 6f 6e 65 73 3b      WORD nBones;
11eb0 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
11ec0 20 20 20 20 20 74 65 6d 70 6c 61 74 65 20 56 65       template Ve
11ed0 72 74 65 78 44 75 70 6c 69 63 61 74 69 6f 6e 49  rtexDuplicationI
11ee0 6e 64 69 63 65 73 0d 0a 20 20 20 20 20 20 20 20  ndices..        
11ef0 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c  {..            <
11f00 42 38 44 36 35 35 34 39 2d 44 37 43 39 2d 34 39  B8D65549-D7C9-49
11f10 39 35 2d 38 39 43 46 2d 35 33 41 39 41 38 42 30  95-89CF-53A9A8B0
11f20 33 31 45 33 3e 0d 0a 20 20 20 20 20 20 20 20 20  31E3>..         
11f30 20 20 20 44 57 4f 52 44 20 6e 49 6e 64 69 63 65     DWORD nIndice
11f40 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  s;..            
11f50 44 57 4f 52 44 20 6e 4f 72 69 67 69 6e 61 6c 56  DWORD nOriginalV
11f60 65 72 74 69 63 65 73 3b 0d 0a 20 20 20 20 20 20  ertices;..      
11f70 20 20 20 20 20 20 61 72 72 61 79 20 44 57 4f 52        array DWOR
11f80 44 5b 6e 49 6e 64 69 63 65 73 5d 20 69 6e 64 69  D[nIndices] indi
11f90 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d  ces;..        }.
11fa0 0a 20 20 20 20 20 20 20 20 74 65 6d 70 6c 61 74  .        templat
11fb0 65 20 46 61 63 65 41 64 6a 61 63 65 6e 63 79 0d  e FaceAdjacency.
11fc0 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20  .        {..    
11fd0 20 20 20 20 20 20 20 20 3c 41 36 34 43 38 34 34          <A64C844
11fe0 41 2d 45 32 38 32 2d 34 37 35 36 2d 38 42 38 30  A-E282-4756-8B80
11ff0 2d 32 35 30 43 44 45 30 34 33 39 38 43 3e 0d 0a  -250CDE04398C>..
12000 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52              DWOR
12010 44 20 6e 49 6e 64 69 63 65 73 3b 0d 0a 20 20 20  D nIndices;..   
12020 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 44           array D
12030 57 4f 52 44 5b 6e 49 6e 64 69 63 65 73 5d 20 69  WORD[nIndices] i
12040 6e 64 69 63 65 73 3b 0d 0a 20 20 20 20 20 20 20  ndices;..       
12050 20 7d 0d 0a 20 20 20 20 20 20 20 20 74 65 6d 70   }..        temp
12060 6c 61 74 65 20 53 6b 69 6e 57 65 69 67 68 74 73  late SkinWeights
12070 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20  ..        {..   
12080 20 20 20 20 20 20 20 20 20 3c 36 46 30 44 31 32           <6F0D12
12090 33 42 2d 42 41 44 32 2d 34 31 36 37 2d 41 30 44  3B-BAD2-4167-A0D
120a0 30 2d 38 30 32 32 34 46 32 35 46 41 42 42 3e 0d  0-80224F25FABB>.
120b0 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 54 52  .            STR
120c0 49 4e 47 20 74 72 61 6e 73 66 6f 72 6d 4e 6f 64  ING transformNod
120d0 65 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20  eName;..        
120e0 20 20 20 20 44 57 4f 52 44 20 6e 57 65 69 67 68      DWORD nWeigh
120f0 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ts;..           
12100 20 61 72 72 61 79 20 44 57 4f 52 44 5b 6e 57 65   array DWORD[nWe
12110 69 67 68 74 73 5d 20 76 65 72 74 65 78 49 6e 64  ights] vertexInd
12120 69 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20  ices;..         
12130 20 20 20 61 72 72 61 79 20 66 6c 6f 61 74 5b 6e     array float[n
12140 57 65 69 67 68 74 73 5d 20 77 65 69 67 68 74 73  Weights] weights
12150 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 4d  ;..            M
12160 61 74 72 69 78 34 78 34 20 6d 61 74 72 69 78 4f  atrix4x4 matrixO
12170 66 66 73 65 74 3b 0d 0a 20 20 20 20 20 20 20 20  ffset;..        
12180 7d 0d 0a 20 20 20 20 20 20 20 20 74 65 6d 70 6c  }..        templ
12190 61 74 65 20 50 61 74 63 68 0d 0a 20 20 20 20 20  ate Patch..     
121a0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20     {..          
121b0 20 20 3c 41 33 45 42 35 44 34 34 2d 46 43 32 32    <A3EB5D44-FC22
121c0 2d 34 32 39 44 2d 39 41 46 42 2d 33 32 32 31 43  -429D-9AFB-3221C
121d0 42 39 37 31 39 41 36 3e 0d 0a 20 20 20 20 20 20  B9719A6>..      
121e0 20 20 20 20 20 20 44 57 4f 52 44 20 6e 43 6f 6e        DWORD nCon
121f0 74 72 6f 6c 49 6e 64 69 63 65 73 3b 0d 0a 20 20  trolIndices;..  
12200 20 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20            array 
12210 44 57 4f 52 44 5b 6e 43 6f 6e 74 72 6f 6c 49 6e  DWORD[nControlIn
12220 64 69 63 65 73 5d 20 63 6f 6e 74 72 6f 6c 49 6e  dices] controlIn
12230 64 69 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20  dices;..        
12240 7d 0d 0a 20 20 20 20 20 20 20 20 74 65 6d 70 6c  }..        templ
12250 61 74 65 20 50 61 74 63 68 4d 65 73 68 0d 0a 20  ate PatchMesh.. 
12260 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
12270 20 20 20 20 20 20 3c 44 30 32 43 39 35 43 43 2d        <D02C95CC-
12280 45 44 42 41 2d 34 33 30 35 2d 39 42 35 44 2d 31  EDBA-4305-9B5D-1
12290 38 32 30 44 37 37 30 34 42 42 46 3e 0d 0a 20 20  820D7704BBF>..  
122a0 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20            DWORD 
122b0 6e 56 65 72 74 69 63 65 73 3b 0d 0a 20 20 20 20  nVertices;..    
122c0 20 20 20 20 20 20 20 20 61 72 72 61 79 20 56 65          array Ve
122d0 63 74 6f 72 5b 6e 56 65 72 74 69 63 65 73 5d 20  ctor[nVertices] 
122e0 76 65 72 74 69 63 65 73 3b 0d 0a 20 20 20 20 20  vertices;..     
122f0 20 20 20 20 20 20 20 44 57 4f 52 44 20 6e 50 61         DWORD nPa
12300 74 63 68 65 73 3b 0d 0a 20 20 20 20 20 20 20 20  tches;..        
12310 20 20 20 20 61 72 72 61 79 20 50 61 74 63 68 5b      array Patch[
12320 6e 50 61 74 63 68 65 73 5d 20 70 61 74 63 68 65  nPatches] patche
12330 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  s;..            
12340 5b 20 2e 2e 2e 20 5d 0d 0a 20 20 20 20 20 20 20  [ ... ]..       
12350 20 7d 0d 0a 20 20 20 20 20 20 20 20 74 65 6d 70   }..        temp
12360 6c 61 74 65 20 50 61 74 63 68 4d 65 73 68 39 0d  late PatchMesh9.
12370 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20  .        {..    
12380 20 20 20 20 20 20 20 20 3c 42 39 45 43 39 34 45          <B9EC94E
12390 31 2d 42 39 41 36 2d 34 32 35 31 2d 42 41 31 38  1-B9A6-4251-BA18
123a0 2d 39 34 38 39 33 46 30 32 43 30 45 41 3e 0d 0a  -94893F02C0EA>..
123b0 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52              DWOR
123c0 44 20 54 79 70 65 3b 0d 0a 20 20 20 20 20 20 20  D Type;..       
123d0 20 20 20 20 20 44 57 4f 52 44 20 44 65 67 72 65       DWORD Degre
123e0 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e;..            
123f0 44 57 4f 52 44 20 42 61 73 69 73 3b 0d 0a 20 20  DWORD Basis;..  
12400 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20            DWORD 
12410 6e 56 65 72 74 69 63 65 73 3b 0d 0a 20 20 20 20  nVertices;..    
12420 20 20 20 20 20 20 20 20 61 72 72 61 79 20 56 65          array Ve
12430 63 74 6f 72 5b 6e 56 65 72 74 69 63 65 73 5d 20  ctor[nVertices] 
12440 76 65 72 74 69 63 65 73 3b 0d 0a 20 20 20 20 20  vertices;..     
12450 20 20 20 20 20 20 20 44 57 4f 52 44 20 6e 50 61         DWORD nPa
12460 74 63 68 65 73 3b 0d 0a 20 20 20 20 20 20 20 20  tches;..        
12470 20 20 20 20 61 72 72 61 79 20 50 61 74 63 68 5b      array Patch[
12480 6e 50 61 74 63 68 65 73 5d 20 70 61 74 63 68 65  nPatches] patche
12490 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  s;..            
124a0 5b 20 2e 2e 2e 20 5d 0d 0a 20 20 20 20 20 20 20  [ ... ]..       
124b0 20 7d 20 22 0d 0a 20 20 20 20 20 20 20 20 22 74   } "..        "t
124c0 65 6d 70 6c 61 74 65 20 45 66 66 65 63 74 46 6c  emplate EffectFl
124d0 6f 61 74 73 0d 0a 20 20 20 20 20 20 20 20 7b 0d  oats..        {.
124e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 46 31  .            <F1
124f0 43 46 45 32 42 33 2d 30 44 45 33 2d 34 65 32 38  CFE2B3-0DE3-4e28
12500 2d 41 46 41 31 2d 31 35 35 41 37 35 30 41 32 38  -AFA1-155A750A28
12510 32 44 3e 0d 0a 20 20 20 20 20 20 20 20 20 20 20  2D>..           
12520 20 44 57 4f 52 44 20 6e 46 6c 6f 61 74 73 3b 0d   DWORD nFloats;.
12530 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72 72  .            arr
12540 61 79 20 66 6c 6f 61 74 5b 6e 46 6c 6f 61 74 73  ay float[nFloats
12550 5d 20 46 6c 6f 61 74 73 3b 0d 0a 20 20 20 20 20  ] Floats;..     
12560 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 74 65     }..        te
12570 6d 70 6c 61 74 65 20 45 66 66 65 63 74 53 74 72  mplate EffectStr
12580 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a  ing..        {..
12590 20 20 20 20 20 20 20 20 20 20 20 20 3c 44 35 35              <D55
125a0 42 30 39 37 45 2d 42 44 42 36 2d 34 63 35 32 2d  B097E-BDB6-4c52-
125b0 42 30 33 44 2d 36 30 35 31 43 38 39 44 30 45 34  B03D-6051C89D0E4
125c0 32 3e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  2>..            
125d0 53 54 52 49 4e 47 20 56 61 6c 75 65 3b 0d 0a 20  STRING Value;.. 
125e0 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20         }..      
125f0 20 20 74 65 6d 70 6c 61 74 65 20 45 66 66 65 63    template Effec
12600 74 44 57 6f 72 64 0d 0a 20 20 20 20 20 20 20 20  tDWord..        
12610 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c  {..            <
12620 36 32 32 43 30 45 44 30 2d 39 35 36 45 2d 34 64  622C0ED0-956E-4d
12630 61 39 2d 39 30 38 41 2d 32 41 46 39 34 46 33 43  a9-908A-2AF94F3C
12640 45 37 31 36 3e 0d 0a 20 20 20 20 20 20 20 20 20  E716>..         
12650 20 20 20 44 57 4f 52 44 20 56 61 6c 75 65 3b 0d     DWORD Value;.
12660 0a 20 20 20 20 20 20 20 20 7d 20 22 0d 0a 20 20  .        } "..  
12670 20 20 20 20 20 20 22 74 65 6d 70 6c 61 74 65 20        "template 
12680 45 66 66 65 63 74 50 61 72 61 6d 46 6c 6f 61 74  EffectParamFloat
12690 73 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  s..        {..  
126a0 20 20 20 20 20 20 20 20 20 20 3c 33 30 31 34 42            <3014B
126b0 39 41 30 2d 36 32 46 35 2d 34 37 38 63 2d 39 42  9A0-62F5-478c-9B
126c0 38 36 2d 45 34 41 43 39 46 34 45 34 31 38 42 3e  86-E4AC9F4E418B>
126d0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53 54  ..            ST
126e0 52 49 4e 47 20 50 61 72 61 6d 4e 61 6d 65 3b 0d  RING ParamName;.
126f0 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f  .            DWO
12700 52 44 20 6e 46 6c 6f 61 74 73 3b 0d 0a 20 20 20  RD nFloats;..   
12710 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 66           array f
12720 6c 6f 61 74 5b 6e 46 6c 6f 61 74 73 5d 20 46 6c  loat[nFloats] Fl
12730 6f 61 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 7d  oats;..        }
12740 20 22 0d 0a 20 20 20 20 20 20 20 20 22 74 65 6d   "..        "tem
12750 70 6c 61 74 65 20 45 66 66 65 63 74 50 61 72 61  plate EffectPara
12760 6d 53 74 72 69 6e 67 0d 0a 20 20 20 20 20 20 20  mString..       
12770 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
12780 3c 31 44 42 43 34 43 38 38 2d 39 34 43 31 2d 34  <1DBC4C88-94C1-4
12790 36 65 65 2d 39 30 37 36 2d 32 43 32 38 38 31 38  6ee-9076-2C28818
127a0 43 39 34 38 31 3e 0d 0a 20 20 20 20 20 20 20 20  C9481>..        
127b0 20 20 20 20 53 54 52 49 4e 47 20 50 61 72 61 6d      STRING Param
127c0 4e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20  Name;..         
127d0 20 20 20 53 54 52 49 4e 47 20 56 61 6c 75 65 3b     STRING Value;
127e0 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
127f0 20 20 20 20 20 74 65 6d 70 6c 61 74 65 20 45 66       template Ef
12800 66 65 63 74 50 61 72 61 6d 44 57 6f 72 64 0d 0a  fectParamDWord..
12810 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20          {..     
12820 20 20 20 20 20 20 20 3c 45 31 33 39 36 33 42 43         <E13963BC
12830 2d 41 45 35 31 2d 34 63 35 64 2d 42 30 30 46 2d  -AE51-4c5d-B00F-
12840 43 46 41 33 41 39 44 39 37 43 45 35 3e 0d 0a 20  CFA3A9D97CE5>.. 
12850 20 20 20 20 20 20 20 20 20 20 20 53 54 52 49 4e             STRIN
12860 47 20 50 61 72 61 6d 4e 61 6d 65 3b 0d 0a 20 20  G ParamName;..  
12870 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20            DWORD 
12880 56 61 6c 75 65 3b 0d 0a 20 20 20 20 20 20 20 20  Value;..        
12890 7d 0d 0a 20 20 20 20 20 20 20 20 74 65 6d 70 6c  }..        templ
128a0 61 74 65 20 45 66 66 65 63 74 49 6e 73 74 61 6e  ate EffectInstan
128b0 63 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20  ce..        {.. 
128c0 20 20 20 20 20 20 20 20 20 20 20 3c 45 33 33 31             <E331
128d0 46 37 45 34 2d 30 35 35 39 2d 34 63 63 32 2d 38  F7E4-0559-4cc2-8
128e0 45 39 39 2d 31 43 45 43 31 36 35 37 39 32 38 46  E99-1CEC1657928F
128f0 3e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 53  >..            S
12900 54 52 49 4e 47 20 45 66 66 65 63 74 46 69 6c 65  TRING EffectFile
12910 6e 61 6d 65 3b 0d 0a 20 20 20 20 20 20 20 20 20  name;..         
12920 20 20 20 5b 20 2e 2e 2e 20 5d 0d 0a 20 20 20 20     [ ... ]..    
12930 20 20 20 20 7d 20 22 0d 0a 20 20 20 20 20 20 20      } "..       
12940 20 22 74 65 6d 70 6c 61 74 65 20 41 6e 69 6d 54   "template AnimT
12950 69 63 6b 73 50 65 72 53 65 63 6f 6e 64 0d 0a 20  icksPerSecond.. 
12960 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20         {..      
12970 20 20 20 20 20 20 3c 39 45 34 31 35 41 34 33 2d        <9E415A43-
12980 37 42 41 36 2d 34 61 37 33 2d 38 37 34 33 2d 42  7BA6-4a73-8743-B
12990 37 33 44 34 37 45 38 38 34 37 36 3e 0d 0a 20 20  73D47E88476>..  
129a0 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20            DWORD 
129b0 41 6e 69 6d 54 69 63 6b 73 50 65 72 53 65 63 6f  AnimTicksPerSeco
129c0 6e 64 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  nd;..        }..
129d0 20 20 20 20 20 20 20 20 74 65 6d 70 6c 61 74 65          template
129e0 20 43 6f 6d 70 72 65 73 73 65 64 41 6e 69 6d 61   CompressedAnima
129f0 74 69 6f 6e 53 65 74 0d 0a 20 20 20 20 20 20 20  tionSet..       
12a00 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20   {..            
12a10 3c 37 46 39 42 30 30 42 33 2d 46 31 32 35 2d 34  <7F9B00B3-F125-4
12a20 38 39 30 2d 38 37 36 45 2d 31 43 34 32 42 46 36  890-876E-1C42BF6
12a30 39 37 43 34 44 3e 0d 0a 20 20 20 20 20 20 20 20  97C4D>..        
12a40 20 20 20 20 44 57 4f 52 44 20 43 6f 6d 70 72 65      DWORD Compre
12a50 73 73 65 64 42 6c 6f 63 6b 53 69 7a 65 3b 0d 0a  ssedBlockSize;..
12a60 20 20 20 20 20 20 20 20 20 20 20 20 46 4c 4f 41              FLOA
12a70 54 20 54 69 63 6b 73 50 65 72 53 65 63 3b 0d 0a  T TicksPerSec;..
12a80 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52              DWOR
12a90 44 20 50 6c 61 79 62 61 63 6b 54 79 70 65 3b 0d  D PlaybackType;.
12aa0 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f  .            DWO
12ab0 52 44 20 42 75 66 66 65 72 4c 65 6e 67 74 68 3b  RD BufferLength;
12ac0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 61 72  ..            ar
12ad0 72 61 79 20 44 57 4f 52 44 5b 42 75 66 66 65 72  ray DWORD[Buffer
12ae0 4c 65 6e 67 74 68 5d 20 43 6f 6d 70 72 65 73 73  Length] Compress
12af0 65 64 44 61 74 61 3b 0d 0a 20 20 20 20 20 20 20  edData;..       
12b00 20 7d 20 22 3b 0d 0a 0d 0a 63 6f 6e 73 74 20 63   } ";....const c
12b10 68 61 72 5b 5d 20 58 45 58 54 45 4e 53 49 4f 4e  har[] XEXTENSION
12b20 53 5f 54 45 4d 50 4c 41 54 45 53 20 3d 0d 0a 20  S_TEMPLATES =.. 
12b30 20 20 20 20 20 20 20 22 78 6f 66 20 30 33 30 33         "xof 0303
12b40 74 78 74 20 30 30 33 32 0d 0a 20 20 20 20 20 20  txt 0032..      
12b50 20 20 74 65 6d 70 6c 61 74 65 20 46 56 46 44 61    template FVFDa
12b60 74 61 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20  ta..        {.. 
12b70 20 20 20 20 20 20 20 20 20 20 20 3c 42 36 45 37             <B6E7
12b80 30 41 30 45 2d 38 45 46 39 2d 34 65 38 33 2d 39  0A0E-8EF9-4e83-9
12b90 34 41 44 2d 45 43 43 38 42 30 43 30 34 38 39 37  4AD-ECC8B0C04897
12ba0 3e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44  >..            D
12bb0 57 4f 52 44 20 64 77 46 56 46 3b 0d 0a 20 20 20  WORD dwFVF;..   
12bc0 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 6e           DWORD n
12bd0 44 57 6f 72 64 73 3b 0d 0a 20 20 20 20 20 20 20  DWords;..       
12be0 20 20 20 20 20 61 72 72 61 79 20 44 57 4f 52 44       array DWORD
12bf0 5b 6e 44 57 6f 72 64 73 5d 20 64 61 74 61 3b 0d  [nDWords] data;.
12c00 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20  .        }..    
12c10 20 20 20 20 74 65 6d 70 6c 61 74 65 20 56 65 72      template Ver
12c20 74 65 78 45 6c 65 6d 65 6e 74 0d 0a 20 20 20 20  texElement..    
12c30 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20      {..         
12c40 20 20 20 3c 46 37 35 32 34 36 31 43 2d 31 45 32     <F752461C-1E2
12c50 33 2d 34 38 66 36 2d 42 39 46 38 2d 38 33 35 30  3-48f6-B9F8-8350
12c60 38 35 30 46 33 33 36 46 3e 0d 0a 20 20 20 20 20  850F336F>..     
12c70 20 20 20 20 20 20 20 44 57 4f 52 44 20 54 79 70         DWORD Typ
12c80 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20  e;..            
12c90 44 57 4f 52 44 20 4d 65 74 68 6f 64 3b 0d 0a 20  DWORD Method;.. 
12ca0 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44             DWORD
12cb0 20 55 73 61 67 65 3b 0d 0a 20 20 20 20 20 20 20   Usage;..       
12cc0 20 20 20 20 20 44 57 4f 52 44 20 55 73 61 67 65       DWORD Usage
12cd0 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20  Index;..        
12ce0 7d 0d 0a 20 20 20 20 20 20 20 20 74 65 6d 70 6c  }..        templ
12cf0 61 74 65 20 44 65 63 6c 44 61 74 61 0d 0a 20 20  ate DeclData..  
12d00 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
12d10 20 20 20 20 20 3c 42 46 32 32 45 35 35 33 2d 32       <BF22E553-2
12d20 39 32 43 2d 34 37 38 31 2d 39 46 45 41 2d 36 32  92C-4781-9FEA-62
12d30 42 44 35 35 34 42 44 44 39 33 3e 0d 0a 20 20 20  BD554BDD93>..   
12d40 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 6e           DWORD n
12d50 45 6c 65 6d 65 6e 74 73 3b 0d 0a 20 20 20 20 20  Elements;..     
12d60 20 20 20 20 20 20 20 61 72 72 61 79 20 56 65 72         array Ver
12d70 74 65 78 45 6c 65 6d 65 6e 74 5b 6e 45 6c 65 6d  texElement[nElem
12d80 65 6e 74 73 5d 20 45 6c 65 6d 65 6e 74 73 3b 0d  ents] Elements;.
12d90 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f  .            DWO
12da0 52 44 20 6e 44 57 6f 72 64 73 3b 0d 0a 20 20 20  RD nDWords;..   
12db0 20 20 20 20 20 20 20 20 20 61 72 72 61 79 20 44           array D
12dc0 57 4f 52 44 5b 6e 44 57 6f 72 64 73 5d 20 64 61  WORD[nDWords] da
12dd0 74 61 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a  ta;..        }..
12de0 20 20 20 20 20 20 20 20 74 65 6d 70 6c 61 74 65          template
12df0 20 50 4d 41 74 74 72 69 62 75 74 65 52 61 6e 67   PMAttributeRang
12e00 65 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20  e..        {..  
12e10 20 20 20 20 20 20 20 20 20 20 3c 39 31 37 45 30            <917E0
12e20 34 32 37 2d 43 36 31 45 2d 34 61 31 34 2d 39 43  427-C61E-4a14-9C
12e30 36 34 2d 41 46 45 36 35 46 39 45 39 38 34 34 3e  64-AFE65F9E9844>
12e40 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57  ..            DW
12e50 4f 52 44 20 69 46 61 63 65 4f 66 66 73 65 74 3b  ORD iFaceOffset;
12e60 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57  ..            DW
12e70 4f 52 44 20 6e 46 61 63 65 73 4d 69 6e 3b 0d 0a  ORD nFacesMin;..
12e80 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52              DWOR
12e90 44 20 6e 46 61 63 65 73 4d 61 78 3b 0d 0a 20 20  D nFacesMax;..  
12ea0 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20            DWORD 
12eb0 69 56 65 72 74 65 78 4f 66 66 73 65 74 3b 0d 0a  iVertexOffset;..
12ec0 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52              DWOR
12ed0 44 20 6e 56 65 72 74 69 63 65 73 4d 69 6e 3b 0d  D nVerticesMin;.
12ee0 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f  .            DWO
12ef0 52 44 20 6e 56 65 72 74 69 63 65 73 4d 61 78 3b  RD nVerticesMax;
12f00 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20  ..        }..   
12f10 20 20 20 20 20 74 65 6d 70 6c 61 74 65 20 50 4d       template PM
12f20 56 53 70 6c 69 74 52 65 63 6f 72 64 0d 0a 20 20  VSplitRecord..  
12f30 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20        {..       
12f40 20 20 20 20 20 3c 35 37 34 43 43 43 31 34 2d 46       <574CCC14-F
12f50 30 42 33 2d 34 33 33 33 2d 38 32 32 44 2d 39 33  0B3-4333-822D-93
12f60 45 38 41 38 41 30 38 45 34 43 3e 0d 0a 20 20 20  E8A8A08E4C>..   
12f70 20 20 20 20 20 20 20 20 20 44 57 4f 52 44 20 69           DWORD i
12f80 46 61 63 65 43 4c 57 3b 0d 0a 20 20 20 20 20 20  FaceCLW;..      
12f90 20 20 20 20 20 20 44 57 4f 52 44 20 69 56 6c 72        DWORD iVlr
12fa0 4f 66 66 73 65 74 3b 0d 0a 20 20 20 20 20 20 20  Offset;..       
12fb0 20 20 20 20 20 44 57 4f 52 44 20 69 43 6f 64 65       DWORD iCode
12fc0 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20  ;..        }..  
12fd0 20 20 20 20 20 20 74 65 6d 70 6c 61 74 65 20 50        template P
12fe0 4d 49 6e 66 6f 0d 0a 20 20 20 20 20 20 20 20 7b  MInfo..        {
12ff0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 3c 42  ..            <B
13000 36 43 33 45 36 35 36 2d 45 43 38 42 2d 34 62 39  6C3E656-EC8B-4b9
13010 32 2d 39 42 36 32 2d 36 38 31 36 35 39 35 32 32  2-9B62-681659522
13020 39 34 37 3e 0d 0a 20 20 20 20 20 20 20 20 20 20  947>..          
13030 20 20 44 57 4f 52 44 20 6e 41 74 74 72 69 62 75    DWORD nAttribu
13040 74 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20  tes;..          
13050 20 20 61 72 72 61 79 20 50 4d 41 74 74 72 69 62    array PMAttrib
13060 75 74 65 52 61 6e 67 65 5b 6e 41 74 74 72 69 62  uteRange[nAttrib
13070 75 74 65 73 5d 20 61 74 74 72 69 62 75 74 65 52  utes] attributeR
13080 61 6e 67 65 73 3b 0d 0a 20 20 20 20 20 20 20 20  anges;..        
13090 20 20 20 20 44 57 4f 52 44 20 6e 4d 61 78 56 61      DWORD nMaxVa
130a0 6c 65 6e 63 65 3b 0d 0a 20 20 20 20 20 20 20 20  lence;..        
130b0 20 20 20 20 44 57 4f 52 44 20 6e 4d 69 6e 4c 6f      DWORD nMinLo
130c0 67 69 63 61 6c 56 65 72 74 69 63 65 73 3b 0d 0a  gicalVertices;..
130d0 20 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52              DWOR
130e0 44 20 6e 4d 61 78 4c 6f 67 69 63 61 6c 56 65 72  D nMaxLogicalVer
130f0 74 69 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20  tices;..        
13100 20 20 20 20 44 57 4f 52 44 20 6e 56 53 70 6c 69      DWORD nVSpli
13110 74 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20  ts;..           
13120 20 61 72 72 61 79 20 50 4d 56 53 70 6c 69 74 52   array PMVSplitR
13130 65 63 6f 72 64 5b 6e 56 53 70 6c 69 74 73 5d 20  ecord[nVSplits] 
13140 73 70 6c 69 74 52 65 63 6f 72 64 73 3b 0d 0a 20  splitRecords;.. 
13150 20 20 20 20 20 20 20 20 20 20 20 44 57 4f 52 44             DWORD
13160 20 6e 41 74 74 72 69 62 75 74 65 4d 69 73 70 72   nAttributeMispr
13170 65 64 69 63 74 73 3b 0d 0a 20 20 20 20 20 20 20  edicts;..       
13180 20 20 20 20 20 61 72 72 61 79 20 44 57 4f 52 44       array DWORD
13190 5b 6e 41 74 74 72 69 62 75 74 65 4d 69 73 70 72  [nAttributeMispr
131a0 65 64 69 63 74 73 5d 20 61 74 74 72 69 62 75 74  edicts] attribut
131b0 65 4d 69 73 70 72 65 64 69 63 74 73 3b 0d 0a 20  eMispredicts;.. 
131c0 20 20 20 20 20 20 20 7d 20 22 3b 0d 0a 0d 0a 65         } ";....e
131d0 6e 75 6d 20 3a 20 75 69 6e 74 0d 0a 7b 0d 0a 09  num : uint..{...
131e0 44 33 44 58 46 5f 46 49 4c 45 46 4f 52 4d 41 54  D3DXF_FILEFORMAT
131f0 5f 42 49 4e 41 52 59 20 20 20 20 20 20 20 20 20  _BINARY         
13200 20 3d 20 30 2c 0d 0a 09 44 33 44 58 46 5f 46 49   = 0,...D3DXF_FI
13210 4c 45 46 4f 52 4d 41 54 5f 54 45 58 54 20 20 20  LEFORMAT_TEXT   
13220 20 20 20 20 20 20 20 20 20 3d 20 31 2c 0d 0a 09           = 1,...
13230 44 33 44 58 46 5f 46 49 4c 45 46 4f 52 4d 41 54  D3DXF_FILEFORMAT
13240 5f 43 4f 4d 50 52 45 53 53 45 44 20 20 20 20 20  _COMPRESSED     
13250 20 3d 20 32 0d 0a 7d 0d 0a 61 6c 69 61 73 20 75   = 2..}..alias u
13260 69 6e 74 20 44 33 44 58 46 5f 46 49 4c 45 46 4f  int D3DXF_FILEFO
13270 52 4d 41 54 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20  RMAT;....enum : 
13280 75 69 6e 74 0d 0a 7b 0d 0a 09 44 33 44 58 46 5f  uint..{...D3DXF_
13290 46 49 4c 45 53 41 56 45 5f 54 4f 46 49 4c 45 20  FILESAVE_TOFILE 
132a0 20 20 20 20 3d 20 30 78 30 30 4c 2c 0d 0a 09 44      = 0x00L,...D
132b0 33 44 58 46 5f 46 49 4c 45 53 41 56 45 5f 54 4f  3DXF_FILESAVE_TO
132c0 57 46 49 4c 45 20 20 20 20 3d 20 30 78 30 31 4c  WFILE    = 0x01L
132d0 0d 0a 7d 0d 0a 61 6c 69 61 73 20 75 69 6e 74 20  ..}..alias uint 
132e0 44 33 44 58 46 5f 46 49 4c 45 53 41 56 45 4f 50  D3DXF_FILESAVEOP
132f0 54 49 4f 4e 53 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a  TIONS;....enum :
13300 20 75 69 6e 74 0d 0a 7b 0d 0a 09 44 33 44 58 46   uint..{...D3DXF
13310 5f 46 49 4c 45 4c 4f 41 44 5f 46 52 4f 4d 46 49  _FILELOAD_FROMFI
13320 4c 45 20 20 20 20 20 3d 20 30 78 30 30 4c 2c 0d  LE     = 0x00L,.
13330 0a 09 44 33 44 58 46 5f 46 49 4c 45 4c 4f 41 44  ..D3DXF_FILELOAD
13340 5f 46 52 4f 4d 57 46 49 4c 45 20 20 20 20 3d 20  _FROMWFILE    = 
13350 30 78 30 31 4c 2c 0d 0a 09 44 33 44 58 46 5f 46  0x01L,...D3DXF_F
13360 49 4c 45 4c 4f 41 44 5f 46 52 4f 4d 52 45 53 4f  ILELOAD_FROMRESO
13370 55 52 43 45 20 3d 20 30 78 30 32 4c 2c 0d 0a 09  URCE = 0x02L,...
13380 44 33 44 58 46 5f 46 49 4c 45 4c 4f 41 44 5f 46  D3DXF_FILELOAD_F
13390 52 4f 4d 4d 45 4d 4f 52 59 20 20 20 3d 20 30 78  ROMMEMORY   = 0x
133a0 30 33 4c 0d 0a 7d 0d 0a 61 6c 69 61 73 20 75 69  03L..}..alias ui
133b0 6e 74 20 44 33 44 58 46 5f 46 49 4c 45 4c 4f 41  nt D3DXF_FILELOA
133c0 44 4f 50 54 49 4f 4e 53 3b 0d 0a 0d 0a 73 74 72  DOPTIONS;....str
133d0 75 63 74 20 44 33 44 58 46 5f 46 49 4c 45 4c 4f  uct D3DXF_FILELO
133e0 41 44 52 45 53 4f 55 52 43 45 0d 0a 7b 0d 0a 20  ADRESOURCE..{.. 
133f0 20 20 20 48 4d 4f 44 55 4c 45 20 68 4d 6f 64 75     HMODULE hModu
13400 6c 65 3b 20 2f 2f 20 44 65 73 63 0d 0a 20 20 20  le; // Desc..   
13410 20 4c 50 43 53 54 52 20 6c 70 4e 61 6d 65 3b 20   LPCSTR lpName; 
13420 20 2f 2f 20 44 65 73 63 0d 0a 20 20 20 20 4c 50   // Desc..    LP
13430 43 53 54 52 20 6c 70 54 79 70 65 3b 20 20 2f 2f  CSTR lpType;  //
13440 20 44 65 73 63 0d 0a 7d 0d 0a 0d 0a 73 74 72 75   Desc..}....stru
13450 63 74 20 44 33 44 58 46 5f 46 49 4c 45 4c 4f 41  ct D3DXF_FILELOA
13460 44 4d 45 4d 4f 52 59 0d 0a 7b 0d 0a 20 20 20 20  DMEMORY..{..    
13470 4c 50 43 56 4f 49 44 20 6c 70 4d 65 6d 6f 72 79  LPCVOID lpMemory
13480 3b 20 2f 2f 20 44 65 73 63 0d 0a 20 20 20 20 73  ; // Desc..    s
13490 69 7a 65 5f 74 20 20 64 53 69 7a 65 3b 20 20 20  ize_t  dSize;   
134a0 20 20 2f 2f 20 44 65 73 63 0d 0a 7d 0d 0a 0d 0a    // Desc..}....
134b0 63 6f 6e 73 74 20 47 55 49 44 20 49 49 44 5f 49  const GUID IID_I
134c0 44 33 44 58 46 69 6c 65 20 3d 20 44 45 46 49 4e  D3DXFile = DEFIN
134d0 45 5f 47 55 49 44 21 28 30 78 63 65 66 30 38 63  E_GUID!(0xcef08c
134e0 66 39 2c 20 30 78 37 62 34 66 2c 20 30 78 34 34  f9, 0x7b4f, 0x44
134f0 32 39 2c 20 30 78 39 36 2c 20 30 78 32 34 2c 20  29, 0x96, 0x24, 
13500 30 78 32 61 2c 20 30 78 36 39 2c 20 30 78 30 61  0x2a, 0x69, 0x0a
13510 2c 20 30 78 39 33 2c 20 30 78 33 32 2c 20 30 78  , 0x93, 0x32, 0x
13520 30 31 20 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49  01 );..const GUI
13530 44 20 49 49 44 5f 49 44 33 44 58 46 69 6c 65 53  D IID_ID3DXFileS
13540 61 76 65 4f 62 6a 65 63 74 20 3d 20 44 45 46 49  aveObject = DEFI
13550 4e 45 5f 47 55 49 44 21 28 30 78 63 65 66 30 38  NE_GUID!(0xcef08
13560 63 66 61 2c 20 30 78 37 62 34 66 2c 20 30 78 34  cfa, 0x7b4f, 0x4
13570 34 32 39 2c 20 30 78 39 36 2c 20 30 78 32 34 2c  429, 0x96, 0x24,
13580 20 30 78 32 61 2c 20 30 78 36 39 2c 20 30 78 30   0x2a, 0x69, 0x0
13590 61 2c 20 30 78 39 33 2c 20 30 78 33 32 2c 20 30  a, 0x93, 0x32, 0
135a0 78 30 31 20 29 3b 0d 0a 63 6f 6e 73 74 20 47 55  x01 );..const GU
135b0 49 44 20 49 49 44 5f 49 44 33 44 58 46 69 6c 65  ID IID_ID3DXFile
135c0 53 61 76 65 44 61 74 61 20 3d 20 44 45 46 49 4e  SaveData = DEFIN
135d0 45 5f 47 55 49 44 21 28 30 78 63 65 66 30 38 63  E_GUID!(0xcef08c
135e0 66 62 2c 20 30 78 37 62 34 66 2c 20 30 78 34 34  fb, 0x7b4f, 0x44
135f0 32 39 2c 20 30 78 39 36 2c 20 30 78 32 34 2c 20  29, 0x96, 0x24, 
13600 30 78 32 61 2c 20 30 78 36 39 2c 20 30 78 30 61  0x2a, 0x69, 0x0a
13610 2c 20 30 78 39 33 2c 20 30 78 33 32 2c 20 30 78  , 0x93, 0x32, 0x
13620 30 31 20 29 3b 0d 0a 63 6f 6e 73 74 20 47 55 49  01 );..const GUI
13630 44 20 49 49 44 5f 49 44 33 44 58 46 69 6c 65 45  D IID_ID3DXFileE
13640 6e 75 6d 4f 62 6a 65 63 74 20 3d 20 44 45 46 49  numObject = DEFI
13650 4e 45 5f 47 55 49 44 21 28 30 78 63 65 66 30 38  NE_GUID!(0xcef08
13660 63 66 63 2c 20 30 78 37 62 34 66 2c 20 30 78 34  cfc, 0x7b4f, 0x4
13670 34 32 39 2c 20 30 78 39 36 2c 20 30 78 32 34 2c  429, 0x96, 0x24,
13680 20 30 78 32 61 2c 20 30 78 36 39 2c 20 30 78 30   0x2a, 0x69, 0x0
13690 61 2c 20 30 78 39 33 2c 20 30 78 33 32 2c 20 30  a, 0x93, 0x32, 0
136a0 78 30 31 20 29 3b 0d 0a 63 6f 6e 73 74 20 47 55  x01 );..const GU
136b0 49 44 20 49 49 44 5f 49 44 33 44 58 46 69 6c 65  ID IID_ID3DXFile
136c0 44 61 74 61 20 3d 20 44 45 46 49 4e 45 5f 47 55  Data = DEFINE_GU
136d0 49 44 21 28 30 78 63 65 66 30 38 63 66 64 2c 20  ID!(0xcef08cfd, 
136e0 30 78 37 62 34 66 2c 20 30 78 34 34 32 39 2c 20  0x7b4f, 0x4429, 
136f0 30 78 39 36 2c 20 30 78 32 34 2c 20 30 78 32 61  0x96, 0x24, 0x2a
13700 2c 20 30 78 36 39 2c 20 30 78 30 61 2c 20 30 78  , 0x69, 0x0a, 0x
13710 39 33 2c 20 30 78 33 32 2c 20 30 78 30 31 20 29  93, 0x32, 0x01 )
13720 3b 0d 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 49  ;....interface I
13730 44 33 44 58 46 69 6c 65 20 3a 20 49 55 6e 6b 6e  D3DXFile : IUnkn
13740 6f 77 6e 0d 0a 7b 0d 0a 20 20 20 20 48 52 45 53  own..{..    HRES
13750 55 4c 54 20 43 72 65 61 74 65 45 6e 75 6d 4f 62  ULT CreateEnumOb
13760 6a 65 63 74 28 4c 50 43 56 4f 49 44 2c 20 44 33  ject(LPCVOID, D3
13770 44 58 46 5f 46 49 4c 45 4c 4f 41 44 4f 50 54 49  DXF_FILELOADOPTI
13780 4f 4e 53 2c 20 49 44 33 44 58 46 69 6c 65 45 6e  ONS, ID3DXFileEn
13790 75 6d 4f 62 6a 65 63 74 2a 29 3b 0d 0a 20 20 20  umObject*);..   
137a0 20 48 52 45 53 55 4c 54 20 43 72 65 61 74 65 53   HRESULT CreateS
137b0 61 76 65 4f 62 6a 65 63 74 28 4c 50 43 56 4f 49  aveObject(LPCVOI
137c0 44 2c 20 44 33 44 58 46 5f 46 49 4c 45 53 41 56  D, D3DXF_FILESAV
137d0 45 4f 50 54 49 4f 4e 53 2c 20 44 33 44 58 46 5f  EOPTIONS, D3DXF_
137e0 46 49 4c 45 46 4f 52 4d 41 54 2c 20 49 44 33 44  FILEFORMAT, ID3D
137f0 58 46 69 6c 65 53 61 76 65 4f 62 6a 65 63 74 2a  XFileSaveObject*
13800 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20  );..    HRESULT 
13810 52 65 67 69 73 74 65 72 54 65 6d 70 6c 61 74 65  RegisterTemplate
13820 73 28 4c 50 43 56 4f 49 44 2c 20 73 69 7a 65 5f  s(LPCVOID, size_
13830 74 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  t);..    HRESULT
13840 20 52 65 67 69 73 74 65 72 45 6e 75 6d 54 65 6d   RegisterEnumTem
13850 70 6c 61 74 65 73 28 49 44 33 44 58 46 69 6c 65  plates(ID3DXFile
13860 45 6e 75 6d 4f 62 6a 65 63 74 29 3b 0d 0a 7d 0d  EnumObject);..}.
13870 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 49 44 33  ...interface ID3
13880 44 58 46 69 6c 65 53 61 76 65 4f 62 6a 65 63 74  DXFileSaveObject
13890 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a   : IUnknown..{..
138a0 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 46      HRESULT GetF
138b0 69 6c 65 28 49 44 33 44 58 46 69 6c 65 2a 29 3b  ile(ID3DXFile*);
138c0 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 41 64  ..    HRESULT Ad
138d0 64 44 61 74 61 4f 62 6a 65 63 74 28 47 55 49 44  dDataObject(GUID
138e0 2a 2c 20 4c 50 43 53 54 52 2c 20 47 55 49 44 2a  *, LPCSTR, GUID*
138f0 2c 20 73 69 7a 65 5f 74 2c 20 4c 50 43 56 4f 49  , size_t, LPCVOI
13900 44 2c 20 49 44 33 44 58 46 69 6c 65 53 61 76 65  D, ID3DXFileSave
13910 44 61 74 61 2a 29 3b 0d 0a 20 20 20 20 48 52 45  Data*);..    HRE
13920 53 55 4c 54 20 53 61 76 65 28 29 3b 0d 0a 7d 0d  SULT Save();..}.
13930 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 49 44 33  ...interface ID3
13940 44 58 46 69 6c 65 53 61 76 65 44 61 74 61 20 3a  DXFileSaveData :
13950 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a 20 20   IUnknown..{..  
13960 20 20 48 52 45 53 55 4c 54 20 47 65 74 53 61 76    HRESULT GetSav
13970 65 28 49 44 33 44 58 46 69 6c 65 53 61 76 65 4f  e(ID3DXFileSaveO
13980 62 6a 65 63 74 2a 29 3b 0d 0a 20 20 20 20 48 52  bject*);..    HR
13990 45 53 55 4c 54 20 47 65 74 4e 61 6d 65 28 4c 50  ESULT GetName(LP
139a0 53 54 52 2c 20 73 69 7a 65 5f 74 2a 29 3b 0d 0a  STR, size_t*);..
139b0 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 49      HRESULT GetI
139c0 64 28 47 55 49 44 2a 29 3b 0d 0a 20 20 20 20 48  d(GUID*);..    H
139d0 52 45 53 55 4c 54 20 47 65 74 54 79 70 65 28 47  RESULT GetType(G
139e0 55 49 44 2a 29 3b 0d 0a 20 20 20 20 48 52 45 53  UID*);..    HRES
139f0 55 4c 54 20 41 64 64 44 61 74 61 4f 62 6a 65 63  ULT AddDataObjec
13a00 74 28 47 55 49 44 2a 2c 20 4c 50 43 53 54 52 2c  t(GUID*, LPCSTR,
13a10 20 47 55 49 44 2a 2c 20 73 69 7a 65 5f 74 2c 20   GUID*, size_t, 
13a20 4c 50 43 56 4f 49 44 2c 20 49 44 33 44 58 46 69  LPCVOID, ID3DXFi
13a30 6c 65 53 61 76 65 44 61 74 61 2a 29 3b 0d 0a 20  leSaveData*);.. 
13a40 20 20 20 48 52 45 53 55 4c 54 20 41 64 64 44 61     HRESULT AddDa
13a50 74 61 52 65 66 65 72 65 6e 63 65 28 4c 50 43 53  taReference(LPCS
13a60 54 52 2c 20 47 55 49 44 2a 20 29 3b 0d 0a 7d 0d  TR, GUID* );..}.
13a70 0a 0d 0a 69 6e 74 65 72 66 61 63 65 20 49 44 33  ...interface ID3
13a80 44 58 46 69 6c 65 45 6e 75 6d 4f 62 6a 65 63 74  DXFileEnumObject
13a90 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a 7b 0d 0a   : IUnknown..{..
13aa0 20 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 46      HRESULT GetF
13ab0 69 6c 65 28 49 44 33 44 58 46 69 6c 65 2a 29 3b  ile(ID3DXFile*);
13ac0 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47 65  ..    HRESULT Ge
13ad0 74 43 68 69 6c 64 72 65 6e 28 73 69 7a 65 5f 74  tChildren(size_t
13ae0 2a 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  *);..    HRESULT
13af0 20 47 65 74 43 68 69 6c 64 28 73 69 7a 65 5f 74   GetChild(size_t
13b00 2c 20 49 44 33 44 58 46 69 6c 65 44 61 74 61 2a  , ID3DXFileData*
13b10 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20  );..    HRESULT 
13b20 47 65 74 44 61 74 61 4f 62 6a 65 63 74 42 79 49  GetDataObjectByI
13b30 64 28 52 45 46 47 55 49 44 2c 20 49 44 33 44 58  d(REFGUID, ID3DX
13b40 46 69 6c 65 44 61 74 61 2a 29 3b 0d 0a 20 20 20  FileData*);..   
13b50 20 48 52 45 53 55 4c 54 20 47 65 74 44 61 74 61   HRESULT GetData
13b60 4f 62 6a 65 63 74 42 79 4e 61 6d 65 28 4c 50 43  ObjectByName(LPC
13b70 53 54 52 2c 20 49 44 33 44 58 46 69 6c 65 44 61  STR, ID3DXFileDa
13b80 74 61 2a 29 3b 0d 0a 7d 0d 0a 0d 0a 69 6e 74 65  ta*);..}....inte
13b90 72 66 61 63 65 20 49 44 33 44 58 46 69 6c 65 44  rface ID3DXFileD
13ba0 61 74 61 20 3a 20 49 55 6e 6b 6e 6f 77 6e 0d 0a  ata : IUnknown..
13bb0 7b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47  {..    HRESULT G
13bc0 65 74 45 6e 75 6d 28 49 44 33 44 58 46 69 6c 65  etEnum(ID3DXFile
13bd0 45 6e 75 6d 4f 62 6a 65 63 74 2a 29 3b 0d 0a 20  EnumObject*);.. 
13be0 20 20 20 48 52 45 53 55 4c 54 20 47 65 74 4e 61     HRESULT GetNa
13bf0 6d 65 28 4c 50 53 54 52 2c 20 73 69 7a 65 5f 74  me(LPSTR, size_t
13c00 2a 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54  *);..    HRESULT
13c10 20 47 65 74 49 64 28 47 55 49 44 2a 29 3b 0d 0a   GetId(GUID*);..
13c20 20 20 20 20 48 52 45 53 55 4c 54 20 4c 6f 63 6b      HRESULT Lock
13c30 28 73 69 7a 65 5f 74 2a 2c 20 4c 50 43 56 4f 49  (size_t*, LPCVOI
13c40 44 2a 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  D*);..    HRESUL
13c50 54 20 55 6e 6c 6f 63 6b 28 29 3b 0d 0a 20 20 20  T Unlock();..   
13c60 20 48 52 45 53 55 4c 54 20 47 65 74 54 79 70 65   HRESULT GetType
13c70 28 47 55 49 44 2a 29 3b 0d 0a 20 20 20 20 42 4f  (GUID*);..    BO
13c80 4f 4c 20 49 73 52 65 66 65 72 65 6e 63 65 28 29  OL IsReference()
13c90 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c 54 20 47  ;..    HRESULT G
13ca0 65 74 43 68 69 6c 64 72 65 6e 28 73 69 7a 65 5f  etChildren(size_
13cb0 74 2a 29 3b 0d 0a 20 20 20 20 48 52 45 53 55 4c  t*);..    HRESUL
13cc0 54 20 47 65 74 43 68 69 6c 64 28 73 69 7a 65 5f  T GetChild(size_
13cd0 74 2c 20 49 44 33 44 58 46 69 6c 65 44 61 74 61  t, ID3DXFileData
13ce0 2a 29 3b 0d 0a 7d 0d 0a                          *);..}..