1 USING: alien.c-types alien.syntax classes.struct windows.com
2 windows.com.syntax windows.directx windows.directx.d3d9
3 windows.directx.d3dx9core windows.directx.d3dx9math
4 windows.directx.d3dx9mesh windows.directx.d3dx9xof
6 IN: windows.directx.d3dx9anim
10 TYPEDEF: int D3DXMESHDATATYPE
11 CONSTANT: D3DXMESHTYPE_MESH 1
12 CONSTANT: D3DXMESHTYPE_PMESH 2
13 CONSTANT: D3DXMESHTYPE_PATCHMESH 3
14 CONSTANT: D3DXMESHTYPE_FORCE_DWORD 0x7fffffff
17 { Type D3DXMESHDATATYPE }
19 TYPEDEF: D3DXMESHDATA* LPD3DXMESHDATA
21 STRUCT: D3DXMESHCONTAINER
23 { MeshData D3DXMESHDATA }
24 { pMaterials LPD3DXMATERIAL }
25 { pEffects LPD3DXEFFECTINSTANCE }
26 { NumMaterials DWORD }
28 { pSkinInfo LPD3DXSKININFO }
29 { pNextMeshContainer D3DXMESHCONTAINER* } ;
30 TYPEDEF: D3DXMESHCONTAINER* LPD3DXMESHCONTAINER
34 { TransformationMatrix D3DXMATRIX }
35 { pMeshContainer LPD3DXMESHCONTAINER }
36 { pFrameSibling D3DXFRAME* }
37 { pFrameFirstChild D3DXFRAME* } ;
38 TYPEDEF: D3DXFRAME* LPD3DXFRAME
40 C-TYPE: ID3DXAllocateHierarchy
41 TYPEDEF: ID3DXAllocateHierarchy* LPD3DXALLOCATEHIERARCHY
43 COM-INTERFACE: ID3DXAllocateHierarchy f {00000000-0000-0000-0000-000000000000}
44 HRESULT CreateFrame ( LPCSTR Name, LPD3DXFRAME* ppNewFrame )
45 HRESULT CreateMeshContainer (
47 D3DXMESHDATA* pMeshData,
48 D3DXMATERIAL* pMaterials,
49 D3DXEFFECTINSTANCE* pEffectInstances,
52 LPD3DXSKININFO pSkinInfo,
53 LPD3DXMESHCONTAINER* ppNewMeshContainer )
54 HRESULT DestroyFrame ( LPD3DXFRAME pFrameToFree )
55 HRESULT DestroyMeshContainer ( LPD3DXMESHCONTAINER pMeshContainerToFree ) ;
57 C-TYPE: ID3DXLoadUserData
58 TYPEDEF: ID3DXLoadUserData* LPD3DXLOADUSERDATA
60 COM-INTERFACE: ID3DXLoadUserData f {00000000-0000-0000-0000-000000000000}
61 HRESULT LoadTopLevelData ( LPD3DXFILEDATA pXofChildData )
62 HRESULT LoadFrameChildData ( LPD3DXFRAME pFrame,
63 LPD3DXFILEDATA pXofChildData )
64 HRESULT LoadMeshChildData ( LPD3DXMESHCONTAINER pMeshContainer,
65 LPD3DXFILEDATA pXofChildData ) ;
67 C-TYPE: ID3DXSaveUserData
68 TYPEDEF: ID3DXSaveUserData* LPD3DXSAVEUSERDATA
70 COM-INTERFACE: ID3DXSaveUserData f {00000000-0000-0000-0000-000000000000}
71 HRESULT AddFrameChildData (
73 LPD3DXFILESAVEOBJECT pXofSave,
74 LPD3DXFILESAVEDATA pXofFrameData )
76 HRESULT AddMeshChildData (
77 D3DXMESHCONTAINER* pMeshContainer,
78 LPD3DXFILESAVEOBJECT pXofSave,
79 LPD3DXFILESAVEDATA pXofMeshData )
80 HRESULT AddTopLevelDataObjectsPre ( LPD3DXFILESAVEOBJECT pXofSave )
81 HRESULT AddTopLevelDataObjectsPost ( LPD3DXFILESAVEOBJECT pXofSave )
82 HRESULT RegisterTemplates ( LPD3DXFILE pXFileApi )
83 HRESULT SaveTemplates ( LPD3DXFILESAVEOBJECT pXofSave ) ;
85 TYPEDEF: int D3DXCALLBACK_SEARCH_FLAGS
86 CONSTANT: D3DXCALLBACK_SEARCH_EXCLUDING_INITIAL_POSITION 1
87 CONSTANT: D3DXCALLBACK_SEARCH_BEHIND_INITIAL_POSITION 2
88 CONSTANT: D3DXCALLBACK_SEARCH_FORCE_DWORD 0x7fffffff
90 C-TYPE: ID3DXAnimationSet
91 TYPEDEF: ID3DXAnimationSet* LPD3DXANIMATIONSET
93 COM-INTERFACE: ID3DXAnimationSet IUnknown {698CFB3F-9289-4d95-9A57-33A94B5A65F9}
96 double GetPeriodicPosition ( double Position )
97 UINT GetNumAnimations ( )
98 HRESULT GetAnimationNameByIndex ( UINT Index, LPCSTR* ppName )
99 HRESULT GetAnimationIndexByName ( LPCSTR pName, UINT* pIndex )
101 double PeriodicPosition,
104 D3DXQUATERNION* pRotation,
105 D3DXVECTOR3* pTranslation )
106 HRESULT GetCallback (
109 double* pCallbackPosition,
110 LPVOID* ppCallbackData ) ;
112 TYPEDEF: int D3DXPLAYBACK_TYPE
113 CONSTANT: D3DXPLAY_LOOP 0
114 CONSTANT: D3DXPLAY_ONCE 1
115 CONSTANT: D3DXPLAY_PINGPONG 2
116 CONSTANT: D3DXPLAY_FORCE_DWORD 0x7fffffff
118 STRUCT: D3DXKEY_VECTOR3
120 { Value D3DXVECTOR3 } ;
121 TYPEDEF: D3DXKEY_VECTOR3* LPD3DXKEY_VECTOR3
123 STRUCT: D3DXKEY_QUATERNION
125 { Value D3DXQUATERNION } ;
126 TYPEDEF: D3DXKEY_QUATERNION* LPD3DXKEY_QUATERNION
128 STRUCT: D3DXKEY_CALLBACK
130 { pCallbackData LPVOID } ;
131 TYPEDEF: D3DXKEY_CALLBACK* LPD3DXKEY_CALLBACK
133 TYPEDEF: int D3DXCOMPRESSION_FLAGS
134 CONSTANT: D3DXCOMPRESS_DEFAULT 0
135 CONSTANT: D3DXCOMPRESS_FORCE_DWORD 0x7fffffff
137 C-TYPE: ID3DXKeyframedAnimationSet
138 TYPEDEF: ID3DXKeyframedAnimationSet* LPD3DXKEYFRAMEDANIMATIONSET
140 COM-INTERFACE: ID3DXKeyframedAnimationSet ID3DXAnimationSet {FA4E8E3A-9786-407d-8B4C-5995893764AF}
141 D3DXPLAYBACK_TYPE GetPlaybackType ( )
142 double GetSourceTicksPerSecond ( )
143 UINT GetNumScaleKeys ( UINT Animation )
144 HRESULT GetScaleKeys ( UINT Animation, LPD3DXKEY_VECTOR3 pScaleKeys )
145 HRESULT GetScaleKey ( UINT Animation, UINT Key, LPD3DXKEY_VECTOR3 pScaleKey )
146 HRESULT SetScaleKey ( UINT Animation, UINT Key, LPD3DXKEY_VECTOR3 pScaleKey )
147 UINT GetNumRotationKeys ( UINT Animation )
148 HRESULT GetRotationKeys ( UINT Animation, LPD3DXKEY_QUATERNION pRotationKeys )
149 HRESULT GetRotationKey ( UINT Animation, UINT Key, LPD3DXKEY_QUATERNION pRotationKey )
150 HRESULT SetRotationKey ( UINT Animation, UINT Key, LPD3DXKEY_QUATERNION pRotationKey )
151 UINT GetNumTranslationKeys ( UINT Animation )
152 HRESULT GetTranslationKeys ( UINT Animation, LPD3DXKEY_VECTOR3 pTranslationKeys )
153 HRESULT GetTranslationKey ( UINT Animation, UINT Key, LPD3DXKEY_VECTOR3 pTranslationKey )
154 HRESULT SetTranslationKey ( UINT Animation, UINT Key, LPD3DXKEY_VECTOR3 pTranslationKey )
155 UINT GetNumCallbackKeys ( )
156 HRESULT GetCallbackKeys ( LPD3DXKEY_CALLBACK pCallbackKeys )
157 HRESULT GetCallbackKey ( UINT Key, LPD3DXKEY_CALLBACK pCallbackKey )
158 HRESULT SetCallbackKey ( UINT Key, LPD3DXKEY_CALLBACK pCallbackKey )
159 HRESULT UnregisterScaleKey ( UINT Animation, UINT Key )
160 HRESULT UnregisterRotationKey ( UINT Animation, UINT Key )
161 HRESULT UnregisterTranslationKey ( UINT Animation, UINT Key )
162 HRESULT RegisterAnimationSRTKeys (
165 UINT NumRotationKeys,
166 UINT NumTranslationKeys,
167 D3DXKEY_VECTOR3* pScaleKeys,
168 D3DXKEY_QUATERNION* pRotationKeys,
169 D3DXKEY_VECTOR3* pTranslationKeys,
170 DWORD* pAnimationIndex )
174 LPD3DXFRAME pHierarchy,
175 LPD3DXBUFFER* ppCompressedData )
176 HRESULT UnregisterAnimation ( UINT Index ) ;
178 C-TYPE: ID3DXCompressedAnimationSet
179 TYPEDEF: ID3DXCompressedAnimationSet* LPD3DXCOMPRESSEDANIMATIONSET
181 COM-INTERFACE: ID3DXCompressedAnimationSet ID3DXAnimationSet {6CC2480D-3808-4739-9F88-DE49FACD8D4C}
182 D3DXPLAYBACK_TYPE GetPlaybackType ( )
183 double GetSourceTicksPerSecond ( )
184 HRESULT GetCompressedData ( LPD3DXBUFFER* ppCompressedData )
185 UINT GetNumCallbackKeys ( )
186 HRESULT GetCallbackKeys ( LPD3DXKEY_CALLBACK pCallbackKeys ) ;
188 TYPEDEF: int D3DXPRIORITY_TYPE
189 CONSTANT: D3DXPRIORITY_LOW 0
190 CONSTANT: D3DXPRIORITY_HIGH 1
191 CONSTANT: D3DXPRIORITY_FORCE_DWORD 0x7fffffff
193 STRUCT: D3DXTRACK_DESC
194 { Priority D3DXPRIORITY_TYPE }
199 TYPEDEF: D3DXTRACK_DESC* LPD3DXTRACK_DESC
201 TYPEDEF: int D3DXEVENT_TYPE
202 CONSTANT: D3DXEVENT_TRACKSPEED 0
203 CONSTANT: D3DXEVENT_TRACKWEIGHT 1
204 CONSTANT: D3DXEVENT_TRACKPOSITION 2
205 CONSTANT: D3DXEVENT_TRACKENABLE 3
206 CONSTANT: D3DXEVENT_PRIORITYBLEND 4
207 CONSTANT: D3DXEVENT_FORCE_DWORD 0x7fffffff
209 TYPEDEF: int D3DXTRANSITION_TYPE
210 CONSTANT: D3DXTRANSITION_LINEAR 0
211 CONSTANT: D3DXTRANSITION_EASEINEASEOUT 1
212 CONSTANT: D3DXTRANSITION_FORCE_DWORD 0x7fffffff
214 UNION-STRUCT: D3DXEVENT_DESC_UNION
219 STRUCT: D3DXEVENT_DESC
220 { Type D3DXEVENT_TYPE }
224 { Transition D3DXTRANSITION_TYPE }
225 { Union D3DXEVENT_DESC_UNION } ;
226 TYPEDEF: D3DXEVENT_DESC* LPD3DXEVENT_DESC
228 TYPEDEF: DWORD D3DXEVENTHANDLE
229 TYPEDEF: D3DXEVENTHANDLE* LPD3DXEVENTHANDLE
231 C-TYPE: ID3DXAnimationCallbackHandler
232 TYPEDEF: ID3DXAnimationCallbackHandler* LPD3DXANIMATIONCALLBACKHANDLER
234 COM-INTERFACE: ID3DXAnimationCallbackHandler f {00000000-0000-0000-0000-000000000000}
235 HRESULT HandleCallback ( UINT Track, LPVOID pCallbackData ) ;
237 C-TYPE: ID3DXAnimationController
238 TYPEDEF: ID3DXAnimationController* LPD3DXANIMATIONCONTROLLER
240 COM-INTERFACE: ID3DXAnimationController IUnknown {AC8948EC-F86D-43e2-96DE-31FC35F96D9E}
241 UINT GetMaxNumAnimationOutputs ( )
242 UINT GetMaxNumAnimationSets ( )
243 UINT GetMaxNumTracks ( )
244 UINT GetMaxNumEvents ( )
245 HRESULT RegisterAnimationOutput (
249 D3DXQUATERNION* pRotation,
250 D3DXVECTOR3* pTranslation )
251 HRESULT RegisterAnimationSet ( LPD3DXANIMATIONSET pAnimSet )
252 HRESULT UnregisterAnimationSet ( LPD3DXANIMATIONSET pAnimSet )
253 UINT GetNumAnimationSets ( )
254 HRESULT GetAnimationSet ( UINT Index, LPD3DXANIMATIONSET* ppAnimationSet )
255 HRESULT GetAnimationSetByName ( LPCSTR szName, LPD3DXANIMATIONSET* ppAnimationSet )
256 HRESULT AdvanceTime ( double TimeDelta, LPD3DXANIMATIONCALLBACKHANDLER pCallbackHandler )
257 HRESULT ResetTime ( )
259 HRESULT SetTrackAnimationSet ( UINT Track, LPD3DXANIMATIONSET pAnimSet )
260 HRESULT GetTrackAnimationSet ( UINT Track, LPD3DXANIMATIONSET* ppAnimSet )
261 HRESULT SetTrackPriority ( UINT Track, D3DXPRIORITY_TYPE Priority )
262 HRESULT SetTrackSpeed ( UINT Track, FLOAT Speed )
263 HRESULT SetTrackWeight ( UINT Track, FLOAT Weight )
264 HRESULT SetTrackPosition ( UINT Track, double Position )
265 HRESULT SetTrackEnable ( UINT Track, BOOL Enable )
266 HRESULT SetTrackDesc ( UINT Track, LPD3DXTRACK_DESC pDesc )
267 HRESULT GetTrackDesc ( UINT Track, LPD3DXTRACK_DESC pDesc )
268 HRESULT SetPriorityBlend ( FLOAT BlendWeight )
269 FLOAT GetPriorityBlend ( )
270 D3DXEVENTHANDLE KeyTrackSpeed ( UINT Track, FLOAT NewSpeed, double StartTime, double Duration, D3DXTRANSITION_TYPE Transition )
271 D3DXEVENTHANDLE KeyTrackWeight ( UINT Track, FLOAT NewWeight, double StartTime, double Duration, D3DXTRANSITION_TYPE Transition )
272 D3DXEVENTHANDLE KeyTrackPosition ( UINT Track, double NewPosition, double StartTime )
273 D3DXEVENTHANDLE KeyTrackEnable ( UINT Track, BOOL NewEnable, double StartTime )
274 D3DXEVENTHANDLE KeyPriorityBlend ( FLOAT NewBlendWeight, double StartTime, double Duration, D3DXTRANSITION_TYPE Transition )
275 HRESULT UnkeyEvent ( D3DXEVENTHANDLE hEvent )
276 HRESULT UnkeyAllTrackEvents ( UINT Track )
277 HRESULT UnkeyAllPriorityBlends ( )
278 D3DXEVENTHANDLE GetCurrentTrackEvent ( UINT Track, D3DXEVENT_TYPE EventType )
279 D3DXEVENTHANDLE GetCurrentPriorityBlend ( )
280 D3DXEVENTHANDLE GetUpcomingTrackEvent ( UINT Track, D3DXEVENTHANDLE hEvent )
281 D3DXEVENTHANDLE GetUpcomingPriorityBlend ( D3DXEVENTHANDLE hEvent )
282 HRESULT ValidateEvent ( D3DXEVENTHANDLE hEvent )
283 HRESULT GetEventDesc ( D3DXEVENTHANDLE hEvent, LPD3DXEVENT_DESC pDesc )
284 HRESULT CloneAnimationController (
285 UINT MaxNumAnimationOutputs,
286 UINT MaxNumAnimationSets,
289 LPD3DXANIMATIONCONTROLLER* ppAnimController ) ;
292 D3DXLoadMeshHierarchyFromXA
296 LPDIRECT3DDEVICE9 pD3DDevice,
297 LPD3DXALLOCATEHIERARCHY pAlloc,
298 LPD3DXLOADUSERDATA pUserDataLoader,
299 LPD3DXFRAME* ppFrameHierarchy,
300 LPD3DXANIMATIONCONTROLLER* ppAnimController
304 D3DXLoadMeshHierarchyFromXW
308 LPDIRECT3DDEVICE9 pD3DDevice,
309 LPD3DXALLOCATEHIERARCHY pAlloc,
310 LPD3DXLOADUSERDATA pUserDataLoader,
311 LPD3DXFRAME* ppFrameHierarchy,
312 LPD3DXANIMATIONCONTROLLER* ppAnimController
315 ALIAS: D3DXLoadMeshHierarchyFromX D3DXLoadMeshHierarchyFromXW
318 D3DXLoadMeshHierarchyFromXInMemory
323 LPDIRECT3DDEVICE9 pD3DDevice,
324 LPD3DXALLOCATEHIERARCHY pAlloc,
325 LPD3DXLOADUSERDATA pUserDataLoader,
326 LPD3DXFRAME* ppFrameHierarchy,
327 LPD3DXANIMATIONCONTROLLER* ppAnimController
331 D3DXSaveMeshHierarchyToFileA
335 D3DXFRAME* pFrameRoot,
336 LPD3DXANIMATIONCONTROLLER pAnimcontroller,
337 LPD3DXSAVEUSERDATA pUserDataSaver
341 D3DXSaveMeshHierarchyToFileW
345 D3DXFRAME* pFrameRoot,
346 LPD3DXANIMATIONCONTROLLER pAnimController,
347 LPD3DXSAVEUSERDATA pUserDataSaver
350 ALIAS: D3DXSaveMeshHierarchyToFile D3DXSaveMeshHierarchyToFileW
355 LPD3DXFRAME pFrameRoot,
356 LPD3DXALLOCATEHIERARCHY pAlloc
362 LPD3DXFRAME pFrameParent,
363 D3DXFRAME* pFrameChild
366 FUNCTION: LPD3DXFRAME
369 D3DXFRAME* pFrameRoot,
374 D3DXFrameRegisterNamedMatrices
376 LPD3DXFRAME pFrameRoot,
377 LPD3DXANIMATIONCONTROLLER pAnimController
381 D3DXFrameNumNamedMatrices
383 D3DXFRAME* pFrameRoot
387 D3DXFrameCalculateBoundingSphere
389 D3DXFRAME* pFrameRoot,
390 LPD3DXVECTOR3 pObjectCenter,
395 D3DXCreateKeyframedAnimationSet
398 double TicksPerSecond,
399 D3DXPLAYBACK_TYPE Playback,
401 UINT NumCallbackKeys,
402 D3DXKEY_CALLBACK* pCallbackKeys,
403 LPD3DXKEYFRAMEDANIMATIONSET* ppAnimationSet
407 D3DXCreateCompressedAnimationSet
410 double TicksPerSecond,
411 D3DXPLAYBACK_TYPE Playback,
412 LPD3DXBUFFER pCompressedData,
413 UINT NumCallbackKeys,
414 D3DXKEY_CALLBACK* pCallbackKeys,
415 LPD3DXCOMPRESSEDANIMATIONSET* ppAnimationSet
419 D3DXCreateAnimationController
422 UINT MaxNumAnimationSets,
425 LPD3DXANIMATIONCONTROLLER* ppAnimController