• Api Documentation
  • Source Code
Search Results for

    Show / Hide Table of Contents
    • SharpAssimp
      • Animation
      • AnimationBehaviour
      • AnimationInterpolation
      • AssimpContext
      • AssimpException
      • BlendMode
      • Bone
      • BoundingBox
      • Camera
      • CompileFlags
      • ConsoleLogStream
      • DefaultLogStream
      • EmbeddedTexture
      • ExcludeComponent
      • ExportDataBlob
      • ExportFormatDescription
      • Face
      • FileIOMode
      • FileIOSystem
      • FreeNativeDelegate
      • IMarshalable<Managed, Native>
      • INativeCustomMarshaler
      • IOStream
      • IOSystem
      • ImporterDescription
      • ImporterFeatureFlags
      • Light
      • LightSourceType
      • LogStream
      • LoggingCallback
      • Material
      • Material.PBRMaterialProperties
      • Material.ShaderMaterialProperties
      • MaterialProperty
      • Matrix3x3
      • MemoryHelper
      • Mesh
      • MeshAnimationAttachment
      • MeshAnimationChannel
      • MeshKey
      • MeshMorphAnimationChannel
      • MeshMorphKey
      • MeshMorphingMethod
      • MetaDataType
      • Metadata
      • Metadata.Entry
      • NativeCustomMarshalerAttribute
      • Node
      • NodeAnimationChannel
      • NodeCollection
      • Origin
      • PostProcessPreset
      • PostProcessSteps
      • PrimitiveType
      • PropertyType
      • QuaternionKey
      • Ray
      • ReturnCode
      • Scene
      • SceneFlags
      • ShadingMode
      • Texel
      • TextureFlags
      • TextureMapping
      • TextureOperation
      • TextureSlot
      • TextureType
      • TextureWrapMode
      • UVTransform
      • UVTransformFlags
      • VectorKey
      • VertexWeight
    • SharpAssimp.Configs
      • ACEvaluateSubdivisionConfig
      • ACSeparateBackfaceCullConfig
      • ASEReconstructNormalsConfig
      • AnimationAccuracyConfig
      • AppScaleConfig
      • BooleanPropertyConfig
      • ColladaIgnoreUpDirectionConfig
      • ColladaUseColladaNamesConfig
      • DeboneAllOrNoneConfig
      • DeboneThresholdConfig
      • ExportPointCloudsConfig
      • FBXConvertToMetersConfig
      • FBXImportAllGeometryLayersConfig
      • FBXImportAllMaterialsConfig
      • FBXImportAnimationsConfig
      • FBXImportCamerasConfig
      • FBXImportEmbeddedTexturesConfig
      • FBXImportEmbeddedTexturesLegacyNamingConfig
      • FBXImportLightsConfig
      • FBXImportMaterialsConfig
      • FBXOptimizeEmptyAnimationCurvesConfig
      • FBXPreservePivotsConfig
      • FBXStrictModeConfig
      • FavorSpeedConfig
      • FloatPropertyConfig
      • GlobalKeyFrameImportConfig
      • GlobalScaleConfig
      • IFCCylindricalTessellationConfig
      • IFCSkipSpaceRepresentationsConfig
      • IFCSmoothingAngleConfig
      • IFCUseCustomTriangulationConfig
      • IRRAnimationFrameRateConfig
      • IgnoreTextureCoordinatesConfig
      • IntegerPropertyConfig
      • KeepSceneHierarchyConfig
      • LWOImportOneLayerConfig
      • LWSAnimationEndConfig
      • LWSAnimationStartConfig
      • MD2KeyFrameImportConfig
      • MD3HandleMultiPartConfig
      • MD3KeyFrameImportConfig
      • MD3ShaderSourceConfig
      • MD3SkinNameConfig
      • MD5NoAnimationAutoLoadConfig
      • MDLColorMapConfig
      • MDLKeyFrameImportConfig
      • MaterialExcludeListConfig
      • MatrixPropertyConfig
      • MaxBoneCountConfig
      • MeasureTimeConfig
      • MeshTriangleLimitConfig
      • MeshVertexLimitConfig
      • MultithreadingConfig
      • NoSkeletonMeshesConfig
      • NodeExcludeListConfig
      • NormalSmoothingAngleConfig
      • NormalizeVertexComponentsConfig
      • OgreMaterialFileConfig
      • OgreTextureTypeFromFilenameConfig
      • PropertyConfig
      • RemoveComponentConfig
      • RemoveDegeneratePrimitivesCheckAreaConfig
      • RemoveDegeneratePrimitivesConfig
      • RemoveEmptyBonesConfig
      • RootTransformationConfig
      • SMDKeyFrameImportConfig
      • SmdLoadAnimationListConfig
      • SortByPrimitiveTypeConfig
      • StringPropertyConfig
      • TangentSmoothingAngleConfig
      • TangentTextureChannelIndexConfig
      • TerragenComputeTexCoordsConfig
      • TransformUVConfig
      • UnrealHandleFlagsConfig
      • UnrealKeyFrameImportConfig
      • VertexBoneWeightLimitConfig
      • VertexCacheSizeConfig
      • XFileUseDoublesConfig
    • SharpAssimp.Unmanaged
      • AiAnimMesh
      • AiAnimation
      • AiBone
      • AiCamera
      • AiConfigs
      • AiDefines
      • AiExportDataBlob
      • AiExportFormatDesc
      • AiFace
      • AiFile
      • AiFileCloseProc
      • AiFileFlushProc
      • AiFileIO
      • AiFileOpenProc
      • AiFileReadProc
      • AiFileSeek
      • AiFileTellProc
      • AiFileWriteProc
      • AiImporterDesc
      • AiLight
      • AiLogStream
      • AiLogStreamCallback
      • AiMatKeys
      • AiMaterial
      • AiMaterialProperty
      • AiMemoryInfo
      • AiMesh
      • AiMeshAnim
      • AiMeshColorArray
      • AiMeshMorphAnim
      • AiMeshMorphKey
      • AiMeshTextureCoordinateArray
      • AiMeshUVComponentArray
      • AiMetadata
      • AiMetadataEntry
      • AiNode
      • AiNodeAnim
      • AiScene
      • AiString
      • AiTexture
      • AssimpLibrary
      • Platform
      • UnmanagedFunctionNameAttribute
      • UnmanagedLibrary
      • UnmanagedLibraryResolver

    Class MeshAnimationAttachment

    A mesh attachment store per-vertex animations for a particular frame. You may think of this as a 'patch' for the host mesh, since the mesh attachment replaces only certain vertex data streams at a particular time. Each mesh stores 'n' attached meshes. The actual relationship between the time line and mesh attachments is established by the mesh animation channel, which references singular mesh attachments by their ID and binds them to a time offset.

    Inheritance
    object
    MeshAnimationAttachment
    Implements
    IMarshalable<MeshAnimationAttachment, AiAnimMesh>
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: SharpAssimp
    Assembly: SharpAssimp.dll
    Syntax
    public sealed class MeshAnimationAttachment : IMarshalable<MeshAnimationAttachment, AiAnimMesh>

    Constructors

    | Edit this page View Source

    MeshAnimationAttachment()

    Constructs a new instance of the MeshAnimationAttachment class.

    Declaration
    public MeshAnimationAttachment()

    Properties

    | Edit this page View Source

    BiTangents

    Gets the vertex bitangent list.

    Declaration
    public List<Vector3> BiTangents { get; }
    Property Value
    Type Description
    List<Vector3>
    | Edit this page View Source

    HasNormals

    Checks whether the attachment mesh overrides the vertex normals of its host mesh.

    Declaration
    public bool HasNormals { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    HasTangentBasis

    Checks whether the attachment mesh overrides the vertex tangents and bitangents of its host mesh.

    Declaration
    public bool HasTangentBasis { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    HasVertices

    Checks whether the attachment mesh overrides the vertex positions of its host mesh.

    Declaration
    public bool HasVertices { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    Name

    Gets or sets the mesh animation name.

    Declaration
    public string Name { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    Normals

    Gets the vertex normal list.

    Declaration
    public List<Vector3> Normals { get; }
    Property Value
    Type Description
    List<Vector3>
    | Edit this page View Source

    Tangents

    Gets the vertex tangent list.

    Declaration
    public List<Vector3> Tangents { get; }
    Property Value
    Type Description
    List<Vector3>
    | Edit this page View Source

    TextureCoordinateChannelCount

    Gets the number of valid texture coordinate channels contained in the mesh (list is not empty/not null). This can be a value between zero and the maximum texture coordinate count. Each individual channel should be the size of VertexCount.

    Declaration
    public int TextureCoordinateChannelCount { get; }
    Property Value
    Type Description
    int
    | Edit this page View Source

    TextureCoordinateChannels

    Gets the array that contains each texture coordinate channel that override a specific channel in the host mesh, by default all are lists of zero (but can be set to null). Each index in the array corresponds to the texture coordinate channel. The length of the array corresponds to Assimp's maximum UV channel limit.

    Declaration
    public List<Vector3>[] TextureCoordinateChannels { get; }
    Property Value
    Type Description
    List<Vector3>[]
    | Edit this page View Source

    VertexColorChannelCount

    Gets the number of valid vertex color channels contained in the mesh (list is not empty/not null). This can be a value between zero and the maximum vertex color count. Each individual channel should be the size of VertexCount.

    Declaration
    public int VertexColorChannelCount { get; }
    Property Value
    Type Description
    int
    | Edit this page View Source

    VertexColorChannels

    Gets the array that contains each vertex color channels that override a specific channel in the host mesh, by default all are lists of zero (but can be set to null). Each index in the array corresponds to the texture coordinate channel. The length of the array corresponds to Assimp's maximum vertex color channel limit.

    Declaration
    public List<Vector4>[] VertexColorChannels { get; }
    Property Value
    Type Description
    List<Vector4>[]
    | Edit this page View Source

    VertexCount

    Gets the number of vertices in this mesh. This is a replacement for the host mesh's vertex count. Likewise, a mesh attachment cannot add or remove per-vertex attributes, therefore the existance of vertex data will match the existance of data in the mesh.

    Declaration
    public int VertexCount { get; }
    Property Value
    Type Description
    int
    | Edit this page View Source

    Vertices

    Gets the vertex position list.

    Declaration
    public List<Vector3> Vertices { get; }
    Property Value
    Type Description
    List<Vector3>
    | Edit this page View Source

    Weight

    Gets or sets the weight of the mesh animation.

    Declaration
    public float Weight { get; set; }
    Property Value
    Type Description
    float

    Methods

    | Edit this page View Source

    FreeNative(nint, bool)

    Frees unmanaged memory created by ToNative(nint, out Native).

    Declaration
    public static void FreeNative(nint nativeValue, bool freeNative)
    Parameters
    Type Name Description
    nint nativeValue

    Native value to free

    bool freeNative

    True if the unmanaged memory should be freed, false otherwise.

    | Edit this page View Source

    HasTextureCoords(int)

    Checks if the mesh attachment overrides a particular set of texture coordinates on the host mesh. This returns false if the list is null or empty. The index is between zero and the maximum number of texture coordinate channels.

    Declaration
    public bool HasTextureCoords(int channelIndex)
    Parameters
    Type Name Description
    int channelIndex

    Channel index

    Returns
    Type Description
    bool

    True if texture coordinates are present in the channel.

    | Edit this page View Source

    HasVertexColors(int)

    Checks if the mesh attachment overrides a particular set of vertex colors on the host mesh. This returns false if the list is null or empty. The index is between zero and the maximumb number of vertex color channels.

    Declaration
    public bool HasVertexColors(int channelIndex)
    Parameters
    Type Name Description
    int channelIndex

    Channel index

    Returns
    Type Description
    bool

    True if vertex colors are present in the channel.

    Implements

    IMarshalable<Managed, Native>
    • Edit this page
    • View Source
    In this article
    Back to top Copyright (c) 2012-2020 Nicholas Woodfield, (c) 2024 Salvage, (c) 2025 Jérémy Ansel