11 #ifndef CAL_CAL3D_WRAPPER_H
12 #define CAL_CAL3D_WRAPPER_H
15 #include "cal3d/global.h"
26 #define CAL3D_WRAPPER_API
30 #pragma warning(disable : 4251)
31 #pragma warning(disable : 4786)
32 #pragma warning(disable : 4099)
34 #ifdef CAL3D_WRAPPER_EXPORTS
35 #define CAL3D_WRAPPER_API __declspec(dllexport)
37 #define CAL3D_WRAPPER_API __declspec(dllimport)
48 #define CAL3D_WRAPPER_API
56 #ifndef CAL3D_WRAPPER_EXPORTS
96 typedef void *CalUserData;
124 CAL3D_WRAPPER_API
enum CalAnimationType
126 ANIMATION_TYPE_NONE = 0,
127 ANIMATION_TYPE_CYCLE,
129 ANIMATION_TYPE_ACTION
132 CAL3D_WRAPPER_API
enum CalAnimationState
134 ANIMATION_STATE_NONE = 0,
135 ANIMATION_STATE_SYNC,
136 ANIMATION_STATE_ASYNC,
138 ANIMATION_STATE_STEADY,
142 CAL3D_WRAPPER_API
void CalAnimation_Delete(
struct CalAnimation *
self);
144 CAL3D_WRAPPER_API
enum CalAnimationState CalAnimation_GetState(
struct CalAnimation *
self);
145 CAL3D_WRAPPER_API
float CalAnimation_GetTime(
struct CalAnimation *
self);
146 CAL3D_WRAPPER_API
enum CalAnimationType CalAnimation_GetType(
struct CalAnimation *
self);
147 CAL3D_WRAPPER_API
float CalAnimation_GetWeight(
struct CalAnimation *
self);
154 CAL3D_WRAPPER_API
enum Boolean CalAnimationAction_Execute(
struct CalAnimationAction *
self,
float delayIn,
float delayOut);
156 CAL3D_WRAPPER_API
enum Boolean CalAnimationAction_Update(
struct CalAnimationAction *
self,
float deltaTime);
157 CAL3D_WRAPPER_API
void CalCoreAnimation_Scale(
struct CalCoreAnimation *
self,
float factor);
163 CAL3D_WRAPPER_API
enum Boolean CalAnimationCycle_Blend(
struct CalAnimationCycle *
self,
float weight,
float delay);
166 CAL3D_WRAPPER_API
void CalAnimationCycle_SetAsync(
struct CalAnimationCycle *
self,
float time,
float duration);
167 CAL3D_WRAPPER_API
enum Boolean CalAnimationCycle_Update(
struct CalAnimationCycle *
self,
float deltaTime);
173 CAL3D_WRAPPER_API
void CalBone_BlendState(
struct CalBone *
self,
float weight,
struct CalVector *pTranslation,
struct CalQuaternion *pRotation);
174 CAL3D_WRAPPER_API
void CalBone_CalculateState(
struct CalBone *
self);
175 CAL3D_WRAPPER_API
void CalBone_ClearState(
struct CalBone *
self);
176 CAL3D_WRAPPER_API
void CalBone_Delete(
struct CalBone *
self);
181 CAL3D_WRAPPER_API
struct CalVector *CalBone_GetTranslation(
struct CalBone *
self);
182 CAL3D_WRAPPER_API
struct CalVector *CalBone_GetTranslationAbsolute(
struct CalBone *
self);
183 CAL3D_WRAPPER_API
struct CalVector *CalBone_GetTranslationBoneSpace(
struct CalBone *
self);
184 CAL3D_WRAPPER_API
void CalBone_LockState(
struct CalBone *
self);
186 CAL3D_WRAPPER_API
void CalBone_SetSkeleton(
struct CalBone *
self,
struct CalSkeleton *pSkeleton);
187 CAL3D_WRAPPER_API
void CalBone_SetTranslation(
struct CalBone *
self,
struct CalVector *pTranslation);
188 CAL3D_WRAPPER_API
void CalBone_SetRotation(
struct CalBone *
self,
struct CalQuaternion *pRotation);
189 CAL3D_WRAPPER_API
void CalBone_SetCoreState(
struct CalBone *
self);
190 CAL3D_WRAPPER_API
void CalBone_SetCoreStateRecursive(
struct CalBone *
self);
198 CAL3D_WRAPPER_API
void CalCoreAnimation_Delete(
struct CalCoreAnimation*
self);
200 CAL3D_WRAPPER_API
float CalCoreAnimation_GetDuration(
struct CalCoreAnimation *
self);
201 CAL3D_WRAPPER_API
void CalCoreAnimation_SetDuration(
struct CalCoreAnimation *
self,
float duration);
202 CAL3D_WRAPPER_API
void CalCoreAnimation_Scale(
struct CalCoreAnimation *
self,
float factor);
210 CAL3D_WRAPPER_API
enum Boolean CalCoreMorphAnimation_AddMorphTarget(
struct CalCoreMorphAnimation*
self,
int meshID,
int morphID);
216 CAL3D_WRAPPER_API
enum Boolean CalCoreBone_AddChildId(
struct CalCoreBone *
self,
int childId);
217 CAL3D_WRAPPER_API
void CalCoreBone_CalculateState(
struct CalCoreBone *
self);
218 CAL3D_WRAPPER_API
void CalCoreBone_Delete(
struct CalCoreBone *
self);
220 CAL3D_WRAPPER_API
char *CalCoreBone_GetName(
struct CalCoreBone *
self);
221 CAL3D_WRAPPER_API
int CalCoreBone_GetParentId(
struct CalCoreBone *
self);
226 CAL3D_WRAPPER_API
struct CalVector *CalCoreBone_GetTranslationAbsolute(
struct CalCoreBone *
self);
227 CAL3D_WRAPPER_API
struct CalVector *CalCoreBone_GetTranslationBoneSpace(
struct CalCoreBone *
self);
228 CAL3D_WRAPPER_API CalUserData CalCoreBone_GetUserData(
struct CalCoreBone *
self);
229 CAL3D_WRAPPER_API
struct CalCoreBone *CalCoreBone_New(
const char* name);
231 CAL3D_WRAPPER_API
void CalCoreBone_SetParentId(
struct CalCoreBone *
self,
int parentId);
234 CAL3D_WRAPPER_API
void CalCoreBone_SetTranslation(
struct CalCoreBone *
self,
struct CalVector *pTranslation);
235 CAL3D_WRAPPER_API
void CalCoreBone_SetTranslationBoneSpace(
struct CalCoreBone *
self,
struct CalVector *pTranslation);
236 CAL3D_WRAPPER_API
void CalCoreBone_SetUserData(
struct CalCoreBone *
self, CalUserData userData);
243 CAL3D_WRAPPER_API
void CalCoreMaterial_Delete(
struct CalCoreMaterial *
self);
247 CAL3D_WRAPPER_API
int CalCoreMaterial_GetMapCount(
struct CalCoreMaterial *
self);
248 CAL3D_WRAPPER_API
char *CalCoreMaterial_GetMapFilename(
struct CalCoreMaterial *
self,
int mapId);
249 CAL3D_WRAPPER_API CalUserData CalCoreMaterial_GetMapUserData(
struct CalCoreMaterial *
self,
int mapId);
250 CAL3D_WRAPPER_API
float CalCoreMaterial_GetShininess(
struct CalCoreMaterial *
self);
252 CAL3D_WRAPPER_API CalUserData CalCoreMaterial_GetUserData(
struct CalCoreMaterial *
self);
254 CAL3D_WRAPPER_API
enum Boolean CalCoreMaterial_Reserve(
struct CalCoreMaterial *
self,
int mapCount);
258 CAL3D_WRAPPER_API
enum Boolean CalCoreMaterial_SetMapUserData(
struct CalCoreMaterial *
self,
int mapId, CalUserData userData);
259 CAL3D_WRAPPER_API
void CalCoreMaterial_SetShininess(
struct CalCoreMaterial *
self,
float shininess);
261 CAL3D_WRAPPER_API
void CalCoreMaterial_SetUserData(
struct CalCoreMaterial *
self, CalUserData userData);
267 CAL3D_WRAPPER_API
struct CalCoreMesh *CalCoreMesh_New();
268 CAL3D_WRAPPER_API
void CalCoreMesh_Delete(
struct CalCoreMesh *
self);
272 CAL3D_WRAPPER_API
int CalCoreMesh_GetCoreSubmeshCount(
struct CalCoreMesh *
self);
274 CAL3D_WRAPPER_API
void CalCoreMesh_Scale(
struct CalCoreMesh *
self,
float factor);
285 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_CreateCoreMaterialThread(
struct CalCoreModel *
self,
int coreMaterialThreadId);
286 CAL3D_WRAPPER_API
void CalCoreModel_Delete(
struct CalCoreModel *
self);
288 CAL3D_WRAPPER_API
int CalCoreModel_GetCoreAnimationCount(
struct CalCoreModel *
self);
290 CAL3D_WRAPPER_API
int CalCoreModel_GetCoreMaterialCount(
struct CalCoreModel *
self);
291 CAL3D_WRAPPER_API
int CalCoreModel_GetCoreMaterialId(
struct CalCoreModel *
self,
int coreMaterialThreadId,
int coreMaterialSetId);
293 CAL3D_WRAPPER_API
int CalCoreModel_GetCoreMeshCount(
struct CalCoreModel *
self);
295 CAL3D_WRAPPER_API CalUserData CalCoreModel_GetUserData(
struct CalCoreModel *
self);
296 CAL3D_WRAPPER_API
int CalCoreModel_GetCoreMorphAnimationCount(
struct CalCoreModel *
self);
297 CAL3D_WRAPPER_API
int CalCoreModel_LoadCoreAnimation(
struct CalCoreModel *
self,
char *strFilename);
298 CAL3D_WRAPPER_API
int CalCoreModel_LoadCoreMaterial(
struct CalCoreModel *
self,
char *strFilename);
299 CAL3D_WRAPPER_API
int CalCoreModel_LoadCoreMesh(
struct CalCoreModel *
self,
char *strFilename);
300 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_LoadCoreSkeleton(
struct CalCoreModel *
self,
char *strFilename);
301 CAL3D_WRAPPER_API
struct CalCoreModel *CalCoreModel_New(
const char* name);
302 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_SaveCoreAnimation(
struct CalCoreModel *
self,
char *strFilename,
int coreAnimtionId);
303 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_SaveCoreMaterial(
struct CalCoreModel *
self,
char *strFilename,
int coreMaterialId);
304 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_SaveCoreMesh(
struct CalCoreModel *
self,
char *strFilename,
int coreMeshId);
305 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_SaveCoreSkeleton(
struct CalCoreModel *
self,
char *strFilename);
306 CAL3D_WRAPPER_API
enum Boolean CalCoreModel_SetCoreMaterialId(
struct CalCoreModel *
self,
int coreMaterialThreadId,
int coreMaterialSetId,
int coreMaterialId);
308 CAL3D_WRAPPER_API
void CalCoreModel_SetUserData(
struct CalCoreModel *
self, CalUserData userData);
315 CAL3D_WRAPPER_API
void CalCoreSkeleton_Delete(
struct CalCoreSkeleton*
self);
318 CAL3D_WRAPPER_API
void CalCoreSkeleton_CalculateState(
struct CalCoreSkeleton *
self);
321 CAL3D_WRAPPER_API
int CalCoreSkeleton_GetCoreBoneId(
struct CalCoreSkeleton *
self,
char *strName);
324 CAL3D_WRAPPER_API
void CalCoreSkeleton_Scale(
struct CalCoreSkeleton *
self,
float factor);
325 CAL3D_WRAPPER_API
void CalSkeleton_GetBoneBoundingBox(
struct CalSkeleton *
self,
float *min,
float *max);
326 CAL3D_WRAPPER_API
void CalSkeleton_CalculateBoundingBoxes(
struct CalSkeleton *
self);
332 CAL3D_WRAPPER_API
void CalCoreSubmesh_Delete(
struct CalCoreSubmesh *
self);
333 CAL3D_WRAPPER_API
int CalCoreSubmesh_GetCoreMaterialThreadId(
struct CalCoreSubmesh *
self);
334 CAL3D_WRAPPER_API
int CalCoreSubmesh_GetFaceCount(
struct CalCoreSubmesh *
self);
335 CAL3D_WRAPPER_API
int CalCoreSubmesh_GetLodCount(
struct CalCoreSubmesh *
self);
336 CAL3D_WRAPPER_API
int CalCoreSubmesh_GetSpringCount(
struct CalCoreSubmesh *
self);
342 CAL3D_WRAPPER_API
int CalCoreSubmesh_GetVertexCount(
struct CalCoreSubmesh *
self);
344 CAL3D_WRAPPER_API
enum Boolean CalCoreSubmesh_Reserve(
struct CalCoreSubmesh *
self,
int vertexCount,
int textureCoordinateCount,
int faceCount,
int springCount);
345 CAL3D_WRAPPER_API
void CalCoreSubmesh_SetCoreMaterialThreadId(
struct CalCoreSubmesh *
self,
int coreMaterialThreadId);
347 CAL3D_WRAPPER_API
void CalCoreSubmesh_SetLodCount(
struct CalCoreSubmesh *
self,
int lodCount);
352 CAL3D_WRAPPER_API
enum Boolean CalCoreSubmesh_IsTangentsEnabled(
struct CalCoreSubmesh *
self,
int mapId);
353 CAL3D_WRAPPER_API
enum Boolean CalCoreSubmesh_EnableTangents(
struct CalCoreSubmesh *
self,
int mapId,
enum Boolean enabled);
359 CAL3D_WRAPPER_API
enum CalErrorCode
363 ERROR_CODE_INVALID_HANDLE,
364 ERROR_CODE_MEMORY_ALLOCATION_FAILED,
365 ERROR_CODE_FILE_NOT_FOUND,
366 ERROR_CODE_INVALID_FILE_FORMAT,
367 ERROR_CODE_FILE_PARSER_FAILED,
368 ERROR_CODE_INDEX_BUILD_FAILED,
369 ERROR_CODE_NO_PARSER_DOCUMENT,
370 ERROR_CODE_INVALID_ANIMATION_DURATION,
371 ERROR_CODE_BONE_NOT_FOUND,
372 ERROR_CODE_INVALID_ATTRIBUTE_VALUE,
373 ERROR_CODE_INVALID_KEYFRAME_COUNT,
374 ERROR_CODE_INVALID_ANIMATION_TYPE,
375 ERROR_CODE_FILE_CREATION_FAILED,
376 ERROR_CODE_FILE_WRITING_FAILED,
377 ERROR_CODE_INCOMPATIBLE_FILE_VERSION,
378 ERROR_CODE_NO_MESH_IN_MODEL,
379 ERROR_CODE_MAX_ERROR_CODE
382 CAL3D_WRAPPER_API
enum CalErrorCode CalError_GetLastErrorCode();
383 CAL3D_WRAPPER_API
char *CalError_GetLastErrorDescription();
384 CAL3D_WRAPPER_API
char *CalError_GetLastErrorFile();
385 CAL3D_WRAPPER_API
int CalError_GetLastErrorLine();
386 CAL3D_WRAPPER_API
char *CalError_GetLastErrorText();
387 CAL3D_WRAPPER_API
void CalError_PrintLastError();
394 CAL3D_WRAPPER_API
struct CalLoader *CalLoader_New();
395 CAL3D_WRAPPER_API
void CalLoader_Delete(
struct CalLoader *
self);
398 CAL3D_WRAPPER_API
struct CalCoreMesh *CalLoader_LoadCoreMesh(
struct CalLoader *
self,
char *strFilename);
405 CAL3D_WRAPPER_API
void CalMesh_Delete(
struct CalMesh *
self);
407 CAL3D_WRAPPER_API
struct CalSubmesh *CalMesh_GetSubmesh(
struct CalMesh *
self,
int id);
408 CAL3D_WRAPPER_API
int CalMesh_GetSubmeshCount(
struct CalMesh *
self);
411 CAL3D_WRAPPER_API
void CalMesh_SetLodLevel(
struct CalMesh *
self,
float lodLevel);
412 CAL3D_WRAPPER_API
void CalMesh_SetMaterialSet(
struct CalMesh *
self,
int setId);
413 CAL3D_WRAPPER_API
void CalMesh_SetModel(
struct CalMesh *
self,
struct CalModel *pModel);
419 CAL3D_WRAPPER_API
enum Boolean CalMixer_BlendCycle(
struct CalMixer *
self,
int id,
float weight,
float delay);
420 CAL3D_WRAPPER_API
enum Boolean CalMixer_ClearCycle(
struct CalMixer *
self,
int id,
float delay);
421 CAL3D_WRAPPER_API
void CalMixer_Delete(
struct CalMixer *
self);
422 CAL3D_WRAPPER_API
enum Boolean CalMixer_ExecuteAction(
struct CalMixer *
self,
int id,
float delayIn,
float delayOut,
enum Boolean autoLock);
424 CAL3D_WRAPPER_API
void CalMixer_UpdateAnimation(
struct CalMixer *
self,
float deltaTime);
425 CAL3D_WRAPPER_API
void CalMixer_UpdateSkeleton(
struct CalMixer *
self);
426 CAL3D_WRAPPER_API
void CalMixer_RemoveAction(
struct CalMixer *
self,
int id);
432 CAL3D_WRAPPER_API
enum Boolean CalMorphTargetMixer_Blend(
struct CalMorphTargetMixer *
self,
int id,
float weight,
float delay);
433 CAL3D_WRAPPER_API
enum Boolean CalMorphTargetMixer_Clear(
struct CalMorphTargetMixer *
self,
int id,
float delay);
436 CAL3D_WRAPPER_API
void CalMorphTargetMixer_Update(
struct CalMorphTargetMixer *
self,
float deltaTime);
437 CAL3D_WRAPPER_API
int CalMorphTargetMixer_GetMorphTargetCount(
struct CalMorphTargetMixer *
self);
443 CAL3D_WRAPPER_API
enum Boolean CalModel_AttachMesh(
struct CalModel *
self,
int coreMeshId);
444 CAL3D_WRAPPER_API
void CalModel_Delete(
struct CalModel *
self);
445 CAL3D_WRAPPER_API
enum Boolean CalModel_DetachMesh(
struct CalModel *
self,
int coreMeshId);
447 CAL3D_WRAPPER_API
struct CalMesh *CalModel_GetMesh(
struct CalModel *
self,
int coreMeshId);
448 CAL3D_WRAPPER_API
struct CalMixer *CalModel_GetMixer(
struct CalModel *
self);
454 CAL3D_WRAPPER_API CalUserData CalModel_GetUserData(
struct CalModel *
self);
457 CAL3D_WRAPPER_API
void CalModel_SetLodLevel(
struct CalModel *
self,
float lodLevel);
458 CAL3D_WRAPPER_API
void CalModel_SetMaterialSet(
struct CalModel *
self,
int setId);
459 CAL3D_WRAPPER_API
void CalModel_SetUserData(
struct CalModel *
self, CalUserData userData);
460 CAL3D_WRAPPER_API
void CalModel_Update(
struct CalModel *
self,
float deltaTime);
466 CAL3D_WRAPPER_API
int CalPhysique_CalculateNormals(
struct CalPhysique *
self,
struct CalSubmesh *pSubmesh,
float *pNormalBuffer);
467 CAL3D_WRAPPER_API
int CalPhysique_CalculateVertices(
struct CalPhysique *
self,
struct CalSubmesh *pSubmesh,
float *pVertexBuffer);
468 CAL3D_WRAPPER_API
int CalPhysique_CalculateVerticesAndNormals(
struct CalPhysique *
self,
struct CalSubmesh *pSubmesh,
float *pVertexBuffer);
469 CAL3D_WRAPPER_API
int CalPhysique_CalculateVerticesNormalsAndTexCoords(
struct CalPhysique *
self,
struct CalSubmesh *pSubmesh,
float *pVertexBuffer,
int NumTexCoords);
470 CAL3D_WRAPPER_API
int CalPhysique_CalculateTangentSpaces(
struct CalPhysique *
self,
struct CalSubmesh *pSubmesh,
int mapId,
float *pTangentSpaceBuffer);
471 CAL3D_WRAPPER_API
void CalPhysique_Delete(
struct CalPhysique *
self);
473 CAL3D_WRAPPER_API
void CalPhysique_Update(
struct CalPhysique *
self);
484 CAL3D_WRAPPER_API
void CalQuaternion_Clear(
struct CalQuaternion *
self);
485 CAL3D_WRAPPER_API
void CalQuaternion_Conjugate(
struct CalQuaternion *
self);
486 CAL3D_WRAPPER_API
void CalQuaternion_Delete(
struct CalQuaternion *
self);
488 CAL3D_WRAPPER_API
float *CalQuaternion_Get(
struct CalQuaternion *
self);
493 CAL3D_WRAPPER_API
void CalQuaternion_Set(
struct CalQuaternion *
self,
float qx,
float qy,
float qz,
float qw);
499 CAL3D_WRAPPER_API
enum Boolean CalRenderer_BeginRendering(
struct CalRenderer *
self);
500 CAL3D_WRAPPER_API
void CalRenderer_Delete(
struct CalRenderer *
self);
501 CAL3D_WRAPPER_API
void CalRenderer_EndRendering(
struct CalRenderer *
self);
502 CAL3D_WRAPPER_API
void CalRenderer_GetAmbientColor(
struct CalRenderer *
self,
unsigned char *pColorBuffer);
503 CAL3D_WRAPPER_API
void CalRenderer_GetDiffuseColor(
struct CalRenderer *
self,
unsigned char *pColorBuffer);
504 CAL3D_WRAPPER_API
int CalRenderer_GetFaceCount(
struct CalRenderer *
self);
505 CAL3D_WRAPPER_API
int CalRenderer_GetFaces(
struct CalRenderer *
self, CalIndex *pFaceBuffer);
506 CAL3D_WRAPPER_API
int CalRenderer_GetMapCount(
struct CalRenderer *
self);
507 CAL3D_WRAPPER_API CalUserData CalRenderer_GetMapUserData(
struct CalRenderer *
self,
int mapId);
508 CAL3D_WRAPPER_API
int CalRenderer_GetMeshCount(
struct CalRenderer *
self);
509 CAL3D_WRAPPER_API
int CalRenderer_GetNormals(
struct CalRenderer *
self,
float *pNormalBuffer);
510 CAL3D_WRAPPER_API
float CalRenderer_GetShininess(
struct CalRenderer *
self);
511 CAL3D_WRAPPER_API
void CalRenderer_GetSpecularColor(
struct CalRenderer *
self,
unsigned char *pColorBuffer);
512 CAL3D_WRAPPER_API
int CalRenderer_GetSubmeshCount(
struct CalRenderer *
self,
int meshId);
513 CAL3D_WRAPPER_API
int CalRenderer_GetTextureCoordinates(
struct CalRenderer *
self,
int mapId,
float *pTextureCoordinateBuffer);
514 CAL3D_WRAPPER_API
int CalRenderer_GetVertexCount(
struct CalRenderer *
self);
515 CAL3D_WRAPPER_API
int CalRenderer_GetVertices(
struct CalRenderer *
self,
float *pVertexBuffer);
516 CAL3D_WRAPPER_API
int CalRenderer_GetVerticesAndNormals(
struct CalRenderer *
self,
float *pVertexBuffer);
517 CAL3D_WRAPPER_API
int CalRenderer_GetVerticesNormalsAndTexCoords(
struct CalRenderer *
self,
float *pVertexBuffer,
int NumTexCoords);
518 CAL3D_WRAPPER_API
int CalRenderer_GetTangentSpaces(
struct CalRenderer *
self,
int mapId,
float *pTangentSpaceBuffer);
519 CAL3D_WRAPPER_API
enum Boolean CalRenderer_IsTangentsEnabled(
struct CalRenderer *
self,
int mapId);
521 CAL3D_WRAPPER_API
enum Boolean CalRenderer_SelectMeshSubmesh(
struct CalRenderer *
self,
int meshId,
int submeshId);
527 CAL3D_WRAPPER_API
void CalSaver_Delete(
struct CalSaver *
self);
528 CAL3D_WRAPPER_API
struct CalSaver *CalSaver_New();
529 CAL3D_WRAPPER_API
enum Boolean CalSaver_SaveCoreAnimation(
struct CalSaver *
self,
char *strFilename,
struct CalCoreAnimation *pCoreAnimation);
530 CAL3D_WRAPPER_API
enum Boolean CalSaver_SaveCoreMaterial(
struct CalSaver *
self,
char *strFilename,
struct CalCoreMaterial *pCoreMaterial);
531 CAL3D_WRAPPER_API
enum Boolean CalSaver_SaveCoreMesh(
struct CalSaver *
self,
char *strFilename,
struct CalCoreMesh *pCoreMesh);
532 CAL3D_WRAPPER_API
enum Boolean CalSaver_SaveCoreSkeleton(
struct CalSaver *
self,
char *strFilename,
struct CalCoreSkeleton *pCoreSkeleton);
538 CAL3D_WRAPPER_API
void CalSkeleton_CalculateState(
struct CalSkeleton *
self);
539 CAL3D_WRAPPER_API
void CalSkeleton_ClearState(
struct CalSkeleton *
self);
540 CAL3D_WRAPPER_API
void CalSkeleton_Delete(
struct CalSkeleton *
self);
541 CAL3D_WRAPPER_API
struct CalBone *CalSkeleton_GetBone(
struct CalSkeleton *
self,
int boneId);
544 CAL3D_WRAPPER_API
void CalSkeleton_LockState(
struct CalSkeleton *
self);
548 CAL3D_WRAPPER_API
int CalSkeleton_GetBonePoints(
struct CalSkeleton *
self,
float *pPoints);
549 CAL3D_WRAPPER_API
int CalSkeleton_GetBonePointsStatic(
struct CalSkeleton *
self,
float *pPoints);
550 CAL3D_WRAPPER_API
int CalSkeleton_GetBoneLines(
struct CalSkeleton *
self,
float *pLines);
551 CAL3D_WRAPPER_API
int CalSkeleton_GetBoneLinesStatic(
struct CalSkeleton *
self,
float *pLines);
557 CAL3D_WRAPPER_API
void CalSpringSystem_CalculateForces(
struct CalSpringSystem *
self,
struct CalSubmesh *pSubmesh,
float deltaTime);
558 CAL3D_WRAPPER_API
void CalSpringSystem_CalculateVertices(
struct CalSpringSystem *
self,
struct CalSubmesh *pSubmesh,
float deltaTime);
559 CAL3D_WRAPPER_API
void CalSpringSystem_Delete(
struct CalSpringSystem *
self);
561 CAL3D_WRAPPER_API
void CalSpringSystem_Update(
struct CalSpringSystem *
self,
float deltaTime);
567 CAL3D_WRAPPER_API
void CalSubmesh_Delete(
struct CalSubmesh *
self);
569 CAL3D_WRAPPER_API
int CalSubmesh_GetCoreMaterialId(
struct CalSubmesh *
self);
570 CAL3D_WRAPPER_API
int CalSubmesh_GetFaceCount(
struct CalSubmesh *
self);
571 CAL3D_WRAPPER_API
int CalSubmesh_GetFaces(
struct CalSubmesh *
self, CalIndex *pFaceBuffer);
576 CAL3D_WRAPPER_API
int CalSubmesh_GetVertexCount(
struct CalSubmesh *
self);
577 CAL3D_WRAPPER_API
enum Boolean CalSubmesh_HasInternalData(
struct CalSubmesh *
self);
579 CAL3D_WRAPPER_API
void CalSubmesh_SetCoreMaterialId(
struct CalSubmesh *
self,
int coreMaterialId);
580 CAL3D_WRAPPER_API
void CalSubmesh_SetLodLevel(
struct CalSubmesh *
self,
float lodLevel);
587 CAL3D_WRAPPER_API
void CalVector_Blend(
struct CalVector *
self,
float d,
struct CalVector *pV);
588 CAL3D_WRAPPER_API
void CalVector_Clear(
struct CalVector *
self);
589 CAL3D_WRAPPER_API
void CalVector_Delete(
struct CalVector *
self);
591 CAL3D_WRAPPER_API
void CalVector_InverseScale(
struct CalVector *
self,
float d);
592 CAL3D_WRAPPER_API
float *CalVector_Get(
struct CalVector *
self);
593 CAL3D_WRAPPER_API
float CalVector_Length(
struct CalVector *
self);
594 CAL3D_WRAPPER_API
struct CalVector *CalVector_New();
595 CAL3D_WRAPPER_API
float CalVector_Normalize(
struct CalVector *
self);
598 CAL3D_WRAPPER_API
void CalVector_CalVector_Op_Scale(
struct CalVector *pResult,
struct CalVector *pV,
float d);
599 CAL3D_WRAPPER_API
void CalVector_CalVector_Op_InverseScale(
struct CalVector *pResult,
struct CalVector *pV,
float d);
600 CAL3D_WRAPPER_API
float CalVector_Op_Scalar(
struct CalVector *pV,
struct CalVector *pU);
602 CAL3D_WRAPPER_API
void CalVector_Scale(
struct CalVector *
self,
float d);
603 CAL3D_WRAPPER_API
void CalVector_Set(
struct CalVector *
self,
float vx,
float vy,
float vz);
604 CAL3D_WRAPPER_API
void CalVector_Subtract(
struct CalVector *
self,
struct CalVector *pV);
Definition: coremodel.h:25
Definition: coremorphanimation.h:16
Definition: animation_cycle.h:22
Definition: corematerial.h:20
Definition: coreanimation.h:22
Definition: corebone.h:25
Definition: physique.h:22
Definition: coreskeleton.h:23
Definition: morphtargetmixer.h:21
Definition: coremesh.h:23
The matrix class.
Definition: matrix.h:34
The saver class.
Definition: saver.h:43
Definition: animation_action.h:22
The vector class.
Definition: vector.h:36
Definition: coresubmesh.h:22
Definition: animation.h:21
Definition: skeleton.h:20
The spring system class.
Definition: springsystem.h:36
Definition: renderer.h:22
Definition: coretrack.h:38
The core keyframe class.
Definition: corekeyframe.h:31
The quaternion class.
Definition: quaternion.h:35
The loader class.
Definition: loader.h:52