summaryrefslogtreecommitdiff
path: root/libs/assimp/port/AssimpDelphi/aiMesh.pas
diff options
context:
space:
mode:
authorsanine <sanine.not@pm.me>2022-04-16 11:55:09 -0500
committersanine <sanine.not@pm.me>2022-04-16 11:55:09 -0500
commitdb81b925d776103326128bf629cbdda576a223e7 (patch)
tree58bea8155c686733310009f6bed7363f91fbeb9d /libs/assimp/port/AssimpDelphi/aiMesh.pas
parent55860037b14fb3893ba21cf2654c83d349cc1082 (diff)
move 3rd-party librarys into libs/ and add built-in honeysuckle
Diffstat (limited to 'libs/assimp/port/AssimpDelphi/aiMesh.pas')
-rw-r--r--libs/assimp/port/AssimpDelphi/aiMesh.pas71
1 files changed, 71 insertions, 0 deletions
diff --git a/libs/assimp/port/AssimpDelphi/aiMesh.pas b/libs/assimp/port/AssimpDelphi/aiMesh.pas
new file mode 100644
index 0000000..a05a0f2
--- /dev/null
+++ b/libs/assimp/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.