Top Description Inners Fields Constructors Methods
org.lwjgl.assimp

public Class AIAnimMesh

extends Struct<AIAnimMesh>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Annotations
@NativeType:struct aiAnimMesh
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

An AnimMesh is an attachment to an AIMesh stores per-vertex animations for a particular frame.

You may think of an aiAnimMesh as a `patch` for the host mesh, which replaces only certain vertex data streams at a particular time. Each mesh stores n attached attached meshes (AIMesh::mAnimMeshes). The actual relationship between the time line and anim meshes is established by aiMeshAnim, which references singular mesh attachments by their ID and binds them to a time offset.

Layout


struct aiAnimMesh {
    struct aiString mName;
    struct aiVector3D * mVertices;
    struct aiVector3D * mNormals;
    struct aiVector3D * mTangents;
    struct aiVector3D * mBitangents;
    struct aiColor4D * mColors[Assimp.AI_MAX_NUMBER_OF_COLOR_SETS];
    struct aiVector3D * mTextureCoords[Assimp.AI_MAX_NUMBER_OF_TEXTURECOORDS];
    unsigned int mNumVertices;
    float mWeight;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
AIAnimMesh.Buffer

An array of AIAnimMesh structs.

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
MBITANGENTS

The struct member offsets.

public static final int
MCOLORS

The struct member offsets.

public static final int
MNAME

The struct member offsets.

public static final int
MNORMALS

The struct member offsets.

public static final int
MNUMVERTICES

The struct member offsets.

public static final int
MTANGENTS

The struct member offsets.

public static final int
MTEXTURECOORDS

The struct member offsets.

public static final int
MVERTICES

The struct member offsets.

public static final int
MWEIGHT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
AIAnimMesh(long address, ByteBuffer container)

public
AIAnimMesh(ByteBuffer container)

Creates a AIAnimMesh instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static AIAnimMesh
calloc()

Returns a new AIAnimMesh instance allocated with memCalloc.

public static AIAnimMesh.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new AIAnimMesh.Buffer instance allocated with memCalloc.

public static AIAnimMesh
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new AIAnimMesh instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static AIAnimMesh.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new AIAnimMesh.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static AIAnimMesh
callocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static AIAnimMesh
callocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static AIAnimMesh.Buffer
callocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static AIAnimMesh.Buffer
callocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
protected AIAnimMesh
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static AIAnimMesh
create()

Returns a new AIAnimMesh instance allocated with BufferUtils.

public static AIAnimMesh
create(long address)

Returns a new AIAnimMesh instance for the specified memory address.

public static AIAnimMesh.Buffer
create(int
the buffer capacity
capacity
)

Returns a new AIAnimMesh.Buffer instance allocated with BufferUtils.

public static AIAnimMesh.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a AIAnimMesh.Buffer instance at the specified memory.

public static AIAnimMesh
createSafe(long address)

Like create, but returns null if address is NULL.

public static AIAnimMesh.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public static AIAnimMesh
malloc()

Returns a new AIAnimMesh instance allocated with memAlloc.

public static AIAnimMesh.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new AIAnimMesh.Buffer instance allocated with memAlloc.

public static AIAnimMesh
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new AIAnimMesh instance allocated on the specified MemoryStack.

public static AIAnimMesh.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new AIAnimMesh.Buffer instance allocated on the specified MemoryStack.

public static AIAnimMesh
mallocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static AIAnimMesh
mallocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static AIAnimMesh.Buffer
mallocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static AIAnimMesh.Buffer
mallocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public AIVector3D.Buffer
mBitangents()

Replacement for AIMesh::mBitangents.

public AIAnimMesh
mBitangents(AIVector3D.Buffer value)

Sets the address of the specified AIVector3D.Buffer to the mBitangents field.

public PointerBuffer
mColors()

Replacement for AIMesh::mColors

public AIColor4D.Buffer
mColors(int index)

Replacement for AIMesh::mColors

public AIAnimMesh
mColors(PointerBuffer value)

Copies the specified PointerBuffer to the mColors field.

public AIAnimMesh
mColors(int index, AIColor4D.Buffer value)

Copies the address of the specified AIColor4D.Buffer at the specified index of the mColors field.

public AIAnimMesh
mColors(int index, Consumer<AIColor4D.Buffer> consumer)

Passes the element at index of the mColors field to the specified Consumer.

public AIString
mName()

the AnimMesh name

public AIAnimMesh
mName(AIString value)

Copies the specified AIString to the mName field.

public AIAnimMesh
mName(Consumer<AIString> consumer)

Passes the mName field to the specified Consumer.

public AIVector3D.Buffer
mNormals()

Replacement for AIMesh::mNormals.

public AIAnimMesh
mNormals(AIVector3D.Buffer value)

Sets the address of the specified AIVector3D.Buffer to the mNormals field.

public int
mNumVertices()

The number of vertices in the aiAnimMesh, and thus the length of all the member arrays.

public AIAnimMesh
mNumVertices(int value)

Sets the specified value to the mNumVertices field.

public AIVector3D.Buffer
mTangents()

Replacement for AIMesh::mTangents.

public AIAnimMesh
mTangents(AIVector3D.Buffer value)

Sets the address of the specified AIVector3D.Buffer to the mTangents field.

public PointerBuffer
mTextureCoords()

Replacement for AIMesh::mTextureCoords

public AIVector3D.Buffer
mTextureCoords(int index)

Replacement for AIMesh::mTextureCoords

public AIAnimMesh
mTextureCoords(PointerBuffer value)

Copies the specified PointerBuffer to the mTextureCoords field.

public AIAnimMesh
mTextureCoords(int index, AIVector3D.Buffer value)

Copies the address of the specified AIVector3D.Buffer at the specified index of the mTextureCoords field.

public AIAnimMesh
mTextureCoords(int index, Consumer<AIVector3D.Buffer> consumer)

Passes the element at index of the mTextureCoords field to the specified Consumer.

public AIVector3D.Buffer
mVertices()

Replacement for AIMesh::mVertices.

public AIAnimMesh
mVertices(AIVector3D.Buffer value)

Sets the address of the specified AIVector3D.Buffer to the mVertices field.

public float
mWeight()

Weight of the AnimMesh.

public AIAnimMesh
mWeight(float value)

Sets the specified value to the mWeight field.

public static AIVector3D.Buffer
nmBitangents(long struct)

Unsafe version of mBitangents.

public static void
nmBitangents(long struct, AIVector3D.Buffer value)

Unsafe version of mBitangents.

public static PointerBuffer
nmColors(long struct)

Unsafe version of mColors.

public static AIColor4D.Buffer
nmColors(long struct, int index)

Unsafe version of mColors.

public static void
nmColors(long struct, PointerBuffer value)

Unsafe version of mColors.

public static void
nmColors(long struct, int index, AIColor4D.Buffer value)

Unsafe version of mColors.

public static AIString
nmName(long struct)

Unsafe version of mName.

public static void
nmName(long struct, AIString value)

Unsafe version of mName.

public static AIVector3D.Buffer
nmNormals(long struct)

Unsafe version of mNormals.

public static void
nmNormals(long struct, AIVector3D.Buffer value)

Unsafe version of mNormals.

public static int
nmNumVertices(long struct)

Unsafe version of mNumVertices.

public static void
nmNumVertices(long struct, int value)

Sets the specified value to the mNumVertices field of the specified struct.

public static AIVector3D.Buffer
nmTangents(long struct)

Unsafe version of mTangents.

public static void
nmTangents(long struct, AIVector3D.Buffer value)

Unsafe version of mTangents.

public static PointerBuffer
nmTextureCoords(long struct)

Unsafe version of mTextureCoords.

public static AIVector3D.Buffer
nmTextureCoords(long struct, int index)

Unsafe version of mTextureCoords.

public static void
nmTextureCoords(long struct, PointerBuffer value)

Unsafe version of mTextureCoords.

public static void
nmTextureCoords(long struct, int index, AIVector3D.Buffer value)

Unsafe version of mTextureCoords.

public static AIVector3D.Buffer
nmVertices(long struct)

Unsafe version of mVertices.

public static void
nmVertices(long struct, AIVector3D.Buffer value)

Unsafe version of mVertices.

public static float
nmWeight(long struct)

Unsafe version of mWeight.

public static void
nmWeight(long struct, float value)

Unsafe version of mWeight.

public AIAnimMesh
set(AIString mName, AIVector3D.Buffer mVertices, AIVector3D.Buffer mNormals, AIVector3D.Buffer mTangents, AIVector3D.Buffer mBitangents, PointerBuffer mColors, PointerBuffer mTextureCoords, int mNumVertices, float mWeight)

Initializes this struct with the specified values.

public AIAnimMesh

Returns:

this struct
set
(AIAnimMesh
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate