Package org.lwjgl.assimp
@NullMarked
package org.lwjgl.assimp
Contains bindings to the Assimp library, a library to import and export various 3d-model-formats including
scene-post-processing to generate missing render data.
Assimp aims to provide a full asset conversion pipeline for use in game engines / realtime rendering systems of any kind, but it is not limited to this purpose. In the past, it has been used in a wide range of applications.
Written in C++, it is available under a liberal BSD license. Assimp loads all input model formats into one straightforward data structure for further processing. This feature set is augmented by various post processing tools, including frequently-needed operations such as computing normal and tangent vectors.
Resources
-
ClassDescription
struct aiAABB { {@link AIVector3D struct aiVector3D} mMin; {@link AIVector3D struct aiVector3D} mMax; }
An array ofAIAABB
structs.struct aiAnimation { {@link AIString struct aiString} mName; double mDuration; double mTicksPerSecond; unsigned int mNumChannels; {@link AINodeAnim struct aiNodeAnim} ** mChannels; unsigned int mNumMeshChannels; {@link AIMeshAnim struct aiMeshAnim} ** mMeshChannels; unsigned int mNumMorphMeshChannels; {@link AIMeshMorphAnim struct aiMeshMorphAnim} ** mMorphMeshChannels; }
An array ofAIAnimation
structs.struct aiAnimMesh { {@link AIString struct aiString} mName; {@link AIVector3D struct aiVector3D} * mVertices; {@link AIVector3D struct aiVector3D} * mNormals; {@link AIVector3D struct aiVector3D} * mTangents; {@link AIVector3D struct aiVector3D} * mBitangents; {@link AIColor4D struct aiColor4D} * mColors[Assimp.AI_MAX_NUMBER_OF_COLOR_SETS]; {@link AIVector3D struct aiVector3D} * mTextureCoords[Assimp.AI_MAX_NUMBER_OF_TEXTURECOORDS]; unsigned int mNumVertices; float mWeight; }
An array ofAIAnimMesh
structs.struct aiBone { {@link AIString struct aiString} mName; unsigned int mNumWeights; {@link AINode struct aiNode} * mArmature; {@link AINode struct aiNode} * mNode; {@link AIVertexWeight struct aiVertexWeight} * mWeights; {@link AIMatrix4x4 struct aiMatrix4x4} mOffsetMatrix; }
An array ofAIBone
structs.struct aiCamera { {@link AIString struct aiString} mName; {@link AIVector3D struct aiVector3D} mPosition; {@link AIVector3D struct aiVector3D} mUp; {@link AIVector3D struct aiVector3D} mLookAt; float mHorizontalFOV; float mClipPlaneNear; float mClipPlaneFar; float mAspect; float mOrthographicWidth; }
An array ofAICamera
structs.struct aiColor3D { float r; float g; float b; }
An array ofAIColor3D
structs.struct aiColor4D { float r; float g; float b; float a; }
An array ofAIColor4D
structs.struct aiExportDataBlob { size_t size; void * data; {@link AIString struct aiString} name; {@link AIExportDataBlob struct aiExportDataBlob} * next; }
An array ofAIExportDataBlob
structs.struct aiExportFormatDesc { char const * id; char const * description; char const * fileExtension; }
An array ofAIExportFormatDesc
structs.struct aiFace { unsigned int mNumIndices; unsigned int * mIndices; }
An array ofAIFace
structs.struct aiFile { {@link AIFileReadProcI aiFileReadProc} ReadProc; {@link AIFileWriteProcI aiFileWriteProc} WriteProc; {@link AIFileTellProcI aiFileTellProc} TellProc; {@link AIFileTellProcI aiFileTellProc} FileSizeProc; {@link AIFileSeekI aiFileSeek} SeekProc; {@link AIFileFlushProcI aiFileFlushProc} FlushProc; aiUserData UserData; }
An array ofAIFile
structs.Callback function:aiFileCloseProc
Callback function:aiFileCloseProc
Callback function:aiFileFlushProc
Callback function:aiFileFlushProc
struct aiFileIO { {@link AIFileOpenProcI aiFileOpenProc} OpenProc; {@link AIFileCloseProcI aiFileCloseProc} CloseProc; aiUserData UserData; }
An array ofAIFileIO
structs.Callback function:aiFileOpenProc
Callback function:aiFileOpenProc
Callback function:aiFileReadProc
Callback function:aiFileReadProc
Callback function:aiFileSeek
Callback function:aiFileSeek
Callback function:aiFileTellProc
Callback function:aiFileTellProc
Callback function:aiFileWriteProc
Callback function:aiFileWriteProc
struct aiImporterDesc { char const * mName; char const * mAuthor; char const * mMaintainer; char const * mComments; unsigned int mFlags; unsigned int mMinMajor; unsigned int mMinMinor; unsigned int mMaxMajor; unsigned int mMaxMinor; char const * mFileExtensions; }
An array ofAIImporterDesc
structs.struct aiLight { {@link AIString struct aiString} mName; aiLightSourceType mType; {@link AIVector3D struct aiVector3D} mPosition; {@link AIVector3D struct aiVector3D} mDirection; {@link AIVector3D struct aiVector3D} mUp; float mAttenuationConstant; float mAttenuationLinear; float mAttenuationQuadratic; {@link AIColor3D struct aiColor3D} mColorDiffuse; {@link AIColor3D struct aiColor3D} mColorSpecular; {@link AIColor3D struct aiColor3D} mColorAmbient; float mAngleInnerCone; float mAngleOuterCone; {@link AIVector2D struct aiVector2D} mSize; }
An array ofAILight
structs.struct aiLogStream { {@link AILogStreamCallbackI aiLogStreamCallback} callback; char * user; }
An array ofAILogStream
structs.Callback function:aiLogStreamCallback
Callback function:aiLogStreamCallback
struct aiMaterial { {@link AIMaterialProperty struct aiMaterialProperty} ** mProperties; unsigned int mNumProperties; unsigned int mNumAllocated; }
An array ofAIMaterial
structs.struct aiMaterialProperty { {@link AIString struct aiString} mKey; unsigned int mSemantic; unsigned int mIndex; unsigned int mDataLength; aiPropertyTypeInfo mType; char * mData; }
An array ofAIMaterialProperty
structs.struct aiMatrix3x3 { float a1; float a2; float a3; float b1; float b2; float b3; float c1; float c2; float c3; }
An array ofAIMatrix3x3
structs.struct aiMatrix4x4 { float a1; float a2; float a3; float a4; float b1; float b2; float b3; float b4; float c1; float c2; float c3; float c4; float d1; float d2; float d3; float d4; }
An array ofAIMatrix4x4
structs.struct aiMemoryInfo { unsigned int textures; unsigned int materials; unsigned int meshes; unsigned int nodes; unsigned int animations; unsigned int cameras; unsigned int lights; unsigned int total; }
An array ofAIMemoryInfo
structs.struct aiMesh { unsigned int mPrimitiveTypes; unsigned int mNumVertices; unsigned int mNumFaces; {@link AIVector3D struct aiVector3D} * mVertices; {@link AIVector3D struct aiVector3D} * mNormals; {@link AIVector3D struct aiVector3D} * mTangents; {@link AIVector3D struct aiVector3D} * mBitangents; {@link AIColor4D struct aiColor4D} * mColors[AI_MAX_NUMBER_OF_COLOR_SETS]; {@link AIVector3D struct aiVector3D} * mTextureCoords[AI_MAX_NUMBER_OF_TEXTURECOORDS]; unsigned int mNumUVComponents[AI_MAX_NUMBER_OF_TEXTURECOORDS]; {@link AIFace struct aiFace} * mFaces; unsigned int mNumBones; {@link AIBone struct aiBone} ** mBones; unsigned int mMaterialIndex; {@link AIString struct aiString} mName; unsigned int mNumAnimMeshes; {@link AIAnimMesh struct aiAnimMesh} ** mAnimMeshes; aiMorphingMethod mMethod; {@link AIAABB struct aiAABB} mAABB; {@link AIString struct aiString} ** mTextureCoordsNames; }
An array ofAIMesh
structs.struct aiMeshAnim { {@link AIString struct aiString} mName; unsigned int mNumKeys; {@link AIMeshKey struct aiMeshKey} * mKeys; }
An array ofAIMeshAnim
structs.struct aiMeshKey { double mTime; unsigned int mValue; }
An array ofAIMeshKey
structs.struct aiMeshMorphAnim { {@link AIString struct aiString} mName; unsigned int mNumKeys; {@link AIMeshMorphKey struct aiMeshMorphKey} * mKeys; }
An array ofAIMeshMorphAnim
structs.struct aiMeshMorphKey { double mTime; unsigned int * mValues; double * mWeights; unsigned int mNumValuesAndWeights; }
An array ofAIMeshMorphKey
structs.struct aiMetadata { unsigned int mNumProperties; {@link AIString struct aiString} * mKeys; {@link AIMetaDataEntry struct aiMetadataEntry} * mValues; }
An array ofAIMetaData
structs.struct aiMetadataEntry { aiMetadataType mType; void * mData; }
An array ofAIMetaDataEntry
structs.struct aiNode { {@link AIString struct aiString} mName; {@link AIMatrix4x4 struct aiMatrix4x4} mTransformation; {@link AINode struct aiNode} * mParent; unsigned int mNumChildren; {@link AINode struct aiNode} ** mChildren; unsigned int mNumMeshes; unsigned int * mMeshes; {@link AIMetaData struct aiMetadata} * mMetadata; }
An array ofAINode
structs.struct aiNodeAnim { {@link AIString struct aiString} mNodeName; unsigned int mNumPositionKeys; {@link AIVectorKey struct aiVectorKey} * mPositionKeys; unsigned int mNumRotationKeys; {@link AIQuatKey struct aiQuatKey} * mRotationKeys; unsigned int mNumScalingKeys; {@link AIVectorKey struct aiVectorKey} * mScalingKeys; aiAnimBehaviour mPreState; aiAnimBehaviour mPostState; }
An array ofAINodeAnim
structs.struct aiPropertyStore { char sentinel; }
An array ofAIPropertyStore
structs.struct aiQuaternion { float w; float x; float y; float z; }
An array ofAIQuaternion
structs.struct aiQuatKey { double mTime; {@link AIQuaternion struct aiQuaternion} mValue; aiAnimInterpolation mInterpolation; }
An array ofAIQuatKey
structs.struct aiScene { unsigned int mFlags; {@link AINode struct aiNode} * mRootNode; unsigned int mNumMeshes; {@link AIMesh struct aiMesh} ** mMeshes; unsigned int mNumMaterials; {@link AIMaterial struct aiMaterial} ** mMaterials; unsigned int mNumAnimations; {@link AIAnimation struct aiAnimation} ** mAnimations; unsigned int mNumTextures; {@link AITexture struct aiTexture} ** mTextures; unsigned int mNumLights; {@link AILight struct aiLight} ** mLights; unsigned int mNumCameras; {@link AICamera struct aiCamera} ** mCameras; {@link AIMetaData struct aiMetadata} * mMetaData; {@link AIString struct aiString} mName; unsigned int mNumSkeletons; {@link AISkeleton struct aiSkeleton} ** mSkeletons; char * mPrivate; }
An array ofAIScene
structs.struct aiSkeleton { {@link AIString struct aiString} mName; unsigned int mNumBones; {@link AISkeletonBone struct aiSkeletonBone} ** mBones; }
An array ofAISkeleton
structs.struct aiSkeletonBone { int mParent; {@link AINode struct aiNode} * mArmature; {@link AINode struct aiNode} * mNode; unsigned int mNumnWeights; {@link AIMesh struct aiMesh} * mMeshId; {@link AIVertexWeight struct aiVertexWeight} * mWeights; {@link AIMatrix4x4 struct aiMatrix4x4} mOffsetMatrix; {@link AIMatrix4x4 struct aiMatrix4x4} mLocalMatrix; }
An array ofAISkeletonBone
structs.struct aiString { ai_uint32 length; char data[Assimp.MAXLEN]; }
An array ofAIString
structs.struct aiTexel { unsigned char b; unsigned char g; unsigned char r; unsigned char a; }
An array ofAITexel
structs.struct aiTexture { unsigned int mWidth; unsigned int mHeight; char achFormatHint[9]; {@link AITexel struct aiTexel} * pcData; {@link AIString struct aiString} mFilename; }
An array ofAITexture
structs.struct aiUVTransform { {@link AIVector2D struct aiVector2D} mTranslation; {@link AIVector2D struct aiVector2D} mScaling; float mRotation; }
An array ofAIUVTransform
structs.struct aiVector2D { float x; float y; }
An array ofAIVector2D
structs.struct aiVector3D { float x; float y; float z; }
An array ofAIVector3D
structs.struct aiVectorKey { double mTime; {@link AIVector3D struct aiVector3D} mValue; aiAnimInterpolation mInterpolation; }
An array ofAIVectorKey
structs.struct aiVertexWeight { unsigned int mVertexId; float mWeight; }
An array ofAIVertexWeight
structs.Contains the function pointers loaded from the assimpSharedLibrary
.