Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "SimpleInterface.h"
- #include <assimp/scene.h>
- //Scene
- bool aiScene_HasMaterials(const aiScene *ptrScene) {
- return ptrScene->HasAnimations();
- }
- unsigned int aiScene_GetNumMaterials(const aiScene *ptrScene) {
- return ptrScene->mNumMaterials;
- }
- unsigned int aiScene_GetNumMeshes(const aiScene *ptrScene) {
- return ptrScene->mNumMeshes;
- }
- unsigned int aiScene_GetNumAnimations(const aiScene *ptrScene) {
- return ptrScene->mNumAnimations;
- }
- bool aiScene_HasMeshes(const aiScene *ptrScene) {
- return ptrScene->HasMeshes();
- }
- bool aiScene_HasAnimation(const aiScene *ptrScene) {
- return ptrScene->HasAnimations();
- }
- const aiNode* aiScene_GetRootNode(const aiScene *ptrScene) {
- return ptrScene->mRootNode;
- }
- const aiMaterial* aiScene_GetMaterial(const aiScene *ptrScene, unsigned int uintIndex) {
- return ptrScene->mMaterials[uintIndex];
- }
- const aiMesh* aiScene_GetMesh(const aiScene *ptrScene, unsigned int uintIndex) {
- return ptrScene->mMeshes[uintIndex];
- }
- const aiAnimation* aiScene_GetAnimation(const aiScene *ptrScene, unsigned int uintIndex) {
- return ptrScene->mAnimations[uintIndex];
- }
- //Nodes
- const char* aiNode_GetName(const aiNode *ptrNode) {
- return ptrNode->mName.C_Str();
- }
- unsigned int aiNode_GetNumChildren(const aiNode *ptrNode) {
- return ptrNode->mNumChildren;
- }
- unsigned int aiNode_GetNumMeshes(const aiNode *ptrNode) {
- return ptrNode->mNumMeshes;
- }
- const aiNode* aiNode_GetChildren(const aiNode *ptrNode, unsigned int uintIndex) {
- return ptrNode->mChildren[uintIndex];
- }
- unsigned int aiNode_GetMeshIndex(const aiNode *ptrNode, unsigned int uintIndex) {
- return ptrNode->mMeshes[uintIndex];
- }
- const aiNode* aiNode_GetParent(const aiNode *ptrNode) {
- return ptrNode->mParent;
- }
- const aiMatrix4x4* aiNode_GetTransformation(const aiNode *ptrNode) {
- return &ptrNode->mTransformation;
- }
- //Material
- bool aiMaterial_HasProperty(const aiMaterial *ptrMat, const char *strKey, unsigned int uintType, unsigned int uintIndex) {
- for (unsigned int i = 0; i < ptrMat->mNumProperties; i++) {
- aiMaterialProperty *pProp = ptrMat->mProperties[i];
- if (pProp->mIndex == uintIndex && strcmp(pProp->mKey.C_Str(), strKey)) {
- return true;
- }
- }
- return false;
- }
- unsigned int aiMaterial_GetTextureCount(const aiMaterial *ptrMat, unsigned int uintType) {
- return ptrMat->GetTextureCount(static_cast<aiTextureType>(uintType));
- }
- bool aiMaterial_HasTextureDiffuse(const aiMaterial *ptrMat, unsigned int uintType) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_TEXTURE_DIFFUSE(uintType));
- }
- bool aiMaterial_GetTextureDiffuse(const aiMaterial *ptrMat, unsigned int uintType, char *strPath, unsigned int *uintMapping, unsigned int *uintUvIndex, ai_real *floatBlend, unsigned int *uintOp, unsigned int *uintMapMode) {
- aiString *pString = new aiString();
- bool success = AI_SUCCESS == ptrMat->GetTexture(aiTextureType_DIFFUSE, uintType, pString, (aiTextureMapping*)uintMapping, uintUvIndex, floatBlend, (aiTextureOp*)uintOp, (aiTextureMapMode*)uintMapMode);
- strcpy(strPath, pString->C_Str());
- delete(pString);
- return success;
- }
- bool aiMaterial_HasTextureEmissive(const aiMaterial *ptrMat, unsigned int uintIndex) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_TEXTURE_EMISSIVE(uintIndex));
- }
- bool aiMaterial_GetTextureEmissive(const aiMaterial *ptrMat, unsigned int uintIndex, char *strPath, unsigned int *uintMapping, unsigned int *uintUvIndex, ai_real *floatBlend, unsigned int *uintOp, unsigned int *uintMapMode) {
- aiString *pString = new aiString();
- bool success = AI_SUCCESS == ptrMat->GetTexture(aiTextureType_EMISSIVE, uintIndex, pString, (aiTextureMapping*)uintMapping, uintUvIndex, floatBlend, (aiTextureOp*)uintOp, (aiTextureMapMode*)uintMapMode);
- strcpy(strPath, pString->C_Str());
- delete(pString);
- return success;
- }
- bool aiMaterial_HasTextureSpecular(const aiMaterial *ptrMat, unsigned int uintIndex) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_TEXTURE_SPECULAR(uintIndex));
- }
- bool aiMaterial_GetTextureSpecular(const aiMaterial *ptrMat, unsigned int uintIndex, char *strPath, unsigned int *uintMapping, unsigned int *uintUvIndex, ai_real *floatBlend, unsigned int *uintOp, unsigned int *uintMapMode) {
- aiString *pString = new aiString();
- bool success = AI_SUCCESS == ptrMat->GetTexture(aiTextureType_SPECULAR, uintIndex, pString, (aiTextureMapping*)uintMapping, uintUvIndex, floatBlend, (aiTextureOp*)uintOp, (aiTextureMapMode*)uintMapMode);
- strcpy(strPath, pString->C_Str());
- delete(pString);
- return success;
- }
- bool aiMaterial_HasTextureNormals(const aiMaterial *ptrMat, unsigned int uintIndex) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_TEXTURE_NORMALS(uintIndex));
- }
- bool aiMaterial_GetTextureNormals(const aiMaterial *ptrMat, unsigned int uintIndex, char *strPath, unsigned int *uintMapping, unsigned int *uintUvIndex, ai_real *floatBlend, unsigned int *uintOp, unsigned int *uintMapMode) {
- aiString *pString = new aiString();
- bool success = AI_SUCCESS == ptrMat->GetTexture(aiTextureType_NORMALS, uintIndex, pString, (aiTextureMapping*)uintMapping, uintUvIndex, floatBlend, (aiTextureOp*)uintOp, (aiTextureMapMode*)uintMapMode);
- strcpy(strPath, pString->C_Str());
- delete(pString);
- return success;
- }
- bool aiMaterial_HasTextureHeight(const aiMaterial *ptrMat, unsigned int uintIndex) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_TEXTURE_HEIGHT(uintIndex));
- }
- bool aiMaterial_GetTextureHeight(const aiMaterial *ptrMat, unsigned int uintIndex, char *strPath, unsigned int *uintMapping, unsigned int *uintUvIndex, ai_real *floatBlend, unsigned int *uintOp, unsigned int *uintMapMode) {
- aiString *pString = new aiString();
- bool success = AI_SUCCESS == ptrMat->GetTexture(aiTextureType_HEIGHT, uintIndex, pString, (aiTextureMapping*)uintMapping, uintUvIndex, floatBlend, (aiTextureOp*)uintOp, (aiTextureMapMode*)uintMapMode);
- strcpy(strPath, pString->C_Str());
- delete(pString);
- return success;
- }
- bool aiMaterial_HasAmbient(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_COLOR_AMBIENT);
- }
- bool aiMaterial_GetAmbient(const aiMaterial *ptrMat, aiColor4D *colorOut) {
- return AI_SUCCESS == aiGetMaterialColor(ptrMat, AI_MATKEY_COLOR_AMBIENT, colorOut);
- }
- bool aiMaterial_HasDiffuse(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_COLOR_DIFFUSE);
- }
- bool aiMaterial_GetDiffuse(const aiMaterial *ptrMat, aiColor4D *colorOut) {
- return AI_SUCCESS == aiGetMaterialColor(ptrMat, AI_MATKEY_COLOR_DIFFUSE, colorOut);
- }
- bool aiMaterial_HasSpecular(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_COLOR_SPECULAR);
- }
- bool aiMaterial_GetSpecular(const aiMaterial *ptrMat, aiColor4D *colorOut) {
- return AI_SUCCESS == aiGetMaterialColor(ptrMat, AI_MATKEY_COLOR_SPECULAR, colorOut);
- }
- bool aiMaterial_HasEmissive(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_COLOR_EMISSIVE);
- }
- bool aiMaterial_GetEmissive(const aiMaterial *ptrMat, aiColor4D *colorOut) {
- return AI_SUCCESS == aiGetMaterialColor(ptrMat, AI_MATKEY_COLOR_EMISSIVE, colorOut);
- }
- bool aiMaterial_HasName(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_NAME);
- }
- bool aiMaterial_GetName(const aiMaterial *ptrMat, char *strName) {
- aiString *pString = new aiString();
- bool success = AI_SUCCESS == aiGetMaterialString(ptrMat, AI_MATKEY_NAME, pString);
- strcpy(strName, pString->C_Str());
- delete(pString);
- return success;
- }
- bool aiMaterial_HasBumpScaling(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_BUMPSCALING);
- }
- bool aiMaterial_GetBumpScaling(const aiMaterial *ptrMat, ai_real *floatOut) {
- return AI_SUCCESS == aiGetMaterialFloat(ptrMat, AI_MATKEY_BUMPSCALING, floatOut);
- }
- bool aiMaterial_HasShininess(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_SHININESS);
- }
- bool aiMaterial_GetShininess(const aiMaterial *ptrMat, ai_real *floatOut) {
- return AI_SUCCESS == aiGetMaterialFloat(ptrMat, AI_MATKEY_SHININESS, floatOut);
- }
- bool aiMaterial_HasShininessStrength(const aiMaterial *ptrMat) {
- return aiMaterial_HasProperty(ptrMat, AI_MATKEY_SHININESS_STRENGTH);
- }
- bool aiMaterial_GetShininessStrength(const aiMaterial *ptrMat, ai_real *floatOut) {
- return AI_SUCCESS == aiGetMaterialFloat(ptrMat, AI_MATKEY_SHININESS_STRENGTH, floatOut);
- }
- //Mesh
- unsigned int aiMesh_VertexCount(const aiMesh *ptrMesh) {
- return ptrMesh->mNumVertices;
- }
- bool aiMesh_HasNormals(const aiMesh *ptrMesh) {
- return ptrMesh->HasNormals();
- }
- bool aiMesh_HasTangentsAndBitangents(const aiMesh *ptrMesh) {
- return ptrMesh->HasTangentsAndBitangents();
- }
- bool aiMesh_HasTextureCoords(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return ptrMesh->HasTextureCoords(uintIndex);
- }
- bool aiMesh_HasVertexColors(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return ptrMesh->HasVertexColors(uintIndex);
- }
- const aiVector3D* aiMesh_GetVertex(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return &ptrMesh->mVertices[uintIndex];
- }
- const aiVector3D* aiMesh_GetNormal(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return &ptrMesh->mNormals[uintIndex];
- }
- const aiVector3D* aiMesh_GetTangent(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return &ptrMesh->mTangents[uintIndex];
- }
- const aiVector3D* aiMesh_GetBitangent(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return &ptrMesh->mBitangents[uintIndex];
- }
- const aiVector3D* aiMesh_GetTextureCoord(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return ptrMesh->mTextureCoords[uintIndex];
- }
- const aiColor4D* aiMesh_GetVertexColor(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return ptrMesh->mColors[uintIndex];
- }
- const char* aiMesh_GetName(const aiMesh *ptrMesh) {
- return ptrMesh->mName.C_Str();
- }
- bool aiMesh_HasFaces(const aiMesh *ptrMesh) {
- return ptrMesh->HasFaces();
- }
- unsigned int aiMesh_GetNumFaces(const aiMesh *ptrMesh) {
- return ptrMesh->mNumFaces;
- }
- const aiFace* aiMesh_GetFace(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return &ptrMesh->mFaces[uintIndex];
- }
- bool aiMesh_HasBones(const aiMesh *ptrMesh) {
- return ptrMesh->HasBones();
- }
- unsigned int aiMesh_GetNumBones(const aiMesh *ptrMesh) {
- return ptrMesh->mNumBones;
- }
- const aiBone* aiMesh_GetBone(const aiMesh *ptrMesh, unsigned int uintIndex) {
- return ptrMesh->mBones[uintIndex];
- }
- //Faces
- unsigned int aiFace_GetNumIndices(const aiFace *ptrFace) {
- return ptrFace->mNumIndices;
- }
- unsigned int aiFace_GetIndex(const aiFace *ptrFace, unsigned int uintIndex) {
- return ptrFace->mIndices[uintIndex];
- }
- //Bones
- const char* aiBone_GetName(const aiBone *ptrBone) {
- return ptrBone->mName.C_Str();
- }
- unsigned int aiBone_GetNumWeights(const aiBone *ptrBone) {
- return ptrBone->mNumWeights;
- }
- const aiVertexWeight* aiBone_GetWeights(const aiBone *ptrBone, unsigned int uintIndex) {
- return &ptrBone->mWeights[uintIndex];
- }
- const aiMatrix4x4* aiBone_GetOffsetMatrix(const aiBone *ptrBone) {
- return &ptrBone->mOffsetMatrix;
- }
- //Vertex Weight
- const float aiVertexWeight_GetWeight(const aiVertexWeight *ptrVweight) {
- return ptrVweight->mWeight;
- }
- const unsigned int aiVertexWeight_GetVertexId(const aiVertexWeight *ptrVweight) {
- return ptrVweight->mVertexId;
- }
- //Animation
- const char* aiAnimation_GetName(const aiAnimation *ptrAnimation) {
- return ptrAnimation->mName.C_Str();
- }
- float aiAnimation_GetDuraction(const aiAnimation *ptrAnimation) {
- return ptrAnimation->mDuration;
- }
- float aiAnimation_GetTicksPerSecond(const aiAnimation *ptrAnimation) {
- return ptrAnimation->mTicksPerSecond;
- }
- unsigned int aiAnimation_GetNumChannels(const aiAnimation *ptrAnimation) {
- return ptrAnimation->mNumChannels;
- }
- unsigned int aiAnimation_GetNumMorphChannels(const aiAnimation *ptrAnimation) {
- return ptrAnimation->mNumMorphMeshChannels;
- }
- unsigned int aiAnimation_GetNumMeshChannels(const aiAnimation *ptrAnimation) {
- return ptrAnimation->mNumMeshChannels;
- }
- const aiNodeAnim* aiAnimation_GetAnimationChannel(const aiAnimation *ptrAnimation, unsigned int uintIndex) {
- return ptrAnimation->mChannels[uintIndex];
- }
- //Animation Channel
- const char* aiNodeAnim_GetNodeName(const aiNodeAnim *ptrNodeAnim) {
- return ptrNodeAnim->mNodeName.C_Str();
- }
- unsigned int aiNodeAnim_GetNumPositionKeys(const aiNodeAnim *ptrNodeAnim) {
- return ptrNodeAnim->mNumPositionKeys;
- }
- unsigned int aiNodeAnim_GetNumRotationKeys(const aiNodeAnim *ptrNodeAnim) {
- return ptrNodeAnim->mNumRotationKeys;
- }
- unsigned int aiNodeAnim_GetNumScalingKeys(const aiNodeAnim *ptrNodeAnim) {
- return ptrNodeAnim->mNumScalingKeys;
- }
- unsigned int aiNodeAnim_GetPostState(const aiNodeAnim *ptrNodeAnim) {
- return ptrNodeAnim->mPostState;
- }
- unsigned int aiNodeAnim_GetPreState(const aiNodeAnim *ptrNodeAnim) {
- return ptrNodeAnim->mPreState;
- }
- const aiVectorKey* aiNodeAnim_GetPositionKey(const aiNodeAnim *ptrNodeAnim, unsigned int uintIndex) {
- return &ptrNodeAnim->mPositionKeys[uintIndex];
- }
- const aiQuatKey* aiNodeAnim_GetRotationKey(const aiNodeAnim *ptrNodeAnim, unsigned int uintIndex) {
- return &ptrNodeAnim->mRotationKeys[uintIndex];
- }
- const aiVectorKey* aiNodeAnim_GetScalingKey(const aiNodeAnim *ptrNodeAnim, unsigned int uintIndex) {
- return &ptrNodeAnim->mScalingKeys[uintIndex];
- }
- //Animation Vector Key
- float aiVectorKey_GetTime(const aiVectorKey *ptrVectorKey) {
- return ptrVectorKey->mTime;
- }
- const aiVector3D* aiVectorKey_GetValue(const aiVectorKey *ptrVectorKey) {
- return &ptrVectorKey->mValue;
- }
- //Animation Quat Key
- float aiQuatKey_GetTime(const aiQuatKey *ptrQuatKey) {
- return ptrQuatKey->mTime;
- }
- const aiQuaternion* aiQuatKey_GetValue(const aiQuatKey *ptrQuatKey) {
- return &ptrQuatKey->mValue;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement