From 058f98a63658dc1a2579826ba167fd61bed1e21f Mon Sep 17 00:00:00 2001 From: sanine Date: Fri, 4 Mar 2022 10:47:15 -0600 Subject: add assimp submodule --- .../assimp-master/port/AssimpDelphi/aiMesh.pas | 71 ++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 src/mesh/assimp-master/port/AssimpDelphi/aiMesh.pas (limited to 'src/mesh/assimp-master/port/AssimpDelphi/aiMesh.pas') diff --git a/src/mesh/assimp-master/port/AssimpDelphi/aiMesh.pas b/src/mesh/assimp-master/port/AssimpDelphi/aiMesh.pas new file mode 100644 index 0000000..a05a0f2 --- /dev/null +++ b/src/mesh/assimp-master/port/AssimpDelphi/aiMesh.pas @@ -0,0 +1,71 @@ +unit aiMesh; + +interface + +uses aiTypes, aiMatrix4x4, aiVector3D, aiColor4D; + +const + AI_MAX_NUMBER_OF_COLOR_SETS = $4; + AI_MAX_NUMBER_OF_TEXTURECOORDS = $4; + +type TaiFace = packed record + mNumIndicies: cardinal; + mIndices: PCardinalArray; +end; +type PaiFace = ^TaiFace; +type PaiFaceArray = array [0..0] of PaiFace; + +type TaiFaceArray = array [0..0] of TaiFace; +type PTaiFaceArray = ^TaiFaceArray; + +type TaiVertexWeight = packed record + mVertexId: cardinal; + mWeight: single; +end; + +type TaiBone = packed record + mName: aiString; + mNumWeights: cardinal; + mWeights: Pointer; + mOffsetMatrix: TaiMatrix4x4; +end; +type PaiBone = ^TaiBone; + +type TaiPrimitiveType = + ( + aiPrimitiveType_POINT = $1, + aiPrimitiveType_LINE = $2, + aiPrimitiveType_TRIANGLE = $4, + aiPrimitiveType_POLYGON = $8 + //,_aiPrimitiveType_Force32Bit = $9fffffff + ); + +type TaiMesh = packed record + mPrimitiveTypes: cardinal; + mNumVertices: cardinal; + mNumFaces: cardinal; + mVertices: PTaiVector3DArray; + mNormals: PTaiVector3DArray; + mTangents: PaiVector3DArray; + mBitangents: PaiVector3DArray; + mColors: array[0..3] of PTaiColor4Darray; //array [0..3] of PaiColor4DArray; //array of 4 + mTextureCoords: array [0..3] of PTaiVector3DArray; //array of 4 + mNumUVComponents: array[0..AI_MAX_NUMBER_OF_TEXTURECOORDS -1] of cardinal; + mFaces: PTaiFaceArray; + mNumBones: cardinal; + mBones: PaiBone; + mMaterialIndex: cardinal; + mName: aiString; + mNumAniMeshes: cardinal; + mAniMeshes: pointer; +end; +type PaiMesh = ^TaiMesh; +type PPaiMesh = ^PaiMesh; +type PaiMeshArray = array [0..0] of PaiMesh; +type PPaiMeshArray = ^PaiMeshArray; + + + +implementation + +end. -- cgit v1.2.1