Top Description Inners Fields Constructors Methods
org.lwjgl.assimp

public Class AIBone

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

A single bone of a mesh.

A bone has a name by which it can be found in the frame hierarchy and by which it can be addressed by animations. In addition it has a number of influences on vertices, and a matrix relating the mesh position to the position of the bone at the time of binding.

Layout


struct aiBone {
    struct aiString mName;
    unsigned int mNumWeights;
    struct aiNode * mArmature;
    struct aiNode * mNode;
    struct aiVertexWeight * mWeights;
    struct aiMatrix4x4 mOffsetMatrix;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
AIBone.Buffer

An array of AIBone structs.

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
MARMATURE

The struct member offsets.

public static final int
MNAME

The struct member offsets.

public static final int
MNODE

The struct member offsets.

public static final int
MNUMWEIGHTS

The struct member offsets.

public static final int
MOFFSETMATRIX

The struct member offsets.

public static final int
MWEIGHTS

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
AIBone(long address, ByteBuffer container)

public
AIBone(ByteBuffer container)

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

Method Summary

Modifier and TypeMethod and Description
public static AIBone
calloc()

Returns a new AIBone instance allocated with memCalloc.

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

Returns a new AIBone.Buffer instance allocated with memCalloc.

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

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

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

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

public static AIBone
callocStack()

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

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

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

Deprecated
Deprecated for removal in 3.4.0.
protected AIBone
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 AIBone
create()

Returns a new AIBone instance allocated with BufferUtils.

public static AIBone
create(long address)

Returns a new AIBone instance for the specified memory address.

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

Returns a new AIBone.Buffer instance allocated with BufferUtils.

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

Create a AIBone.Buffer instance at the specified memory.

public static AIBone
createSafe(long address)

Like create, but returns null if address is NULL.

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

Like create, but returns null if address is NULL.

public static AIBone
malloc()

Returns a new AIBone instance allocated with memAlloc.

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

Returns a new AIBone.Buffer instance allocated with memAlloc.

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

Returns a new AIBone instance allocated on the specified MemoryStack.

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

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

public static AIBone
mallocStack()

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

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

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

Deprecated
Deprecated for removal in 3.4.0.
public AINode
mArmature()

the bone armature node - used for skeleton conversion you must enable Process_PopulateArmatureData to populate this

public AIBone
mArmature(AINode value)

Sets the address of the specified AINode to the mArmature field.

public AIString
mName()

the name of the bone.

public AIBone
mName(AIString value)

Copies the specified AIString to the mName field.

public AIBone
mName(Consumer<AIString> consumer)

Passes the mName field to the specified Consumer.

public AINode
mNode()

the bone node in the scene - used for skeleton conversion you must enable Process_PopulateArmatureData to populate this

public AIBone
mNode(AINode value)

Sets the address of the specified AINode to the mNode field.

public int
mNumWeights()

the number of vertices affected by this bone.

public AIMatrix4x4
mOffsetMatrix()

matrix that transforms from mesh space to bone space in bind pose.

public AIBone
mOffsetMatrix(AIMatrix4x4 value)

Copies the specified AIMatrix4x4 to the mOffsetMatrix field.

public AIBone
mOffsetMatrix(Consumer<AIMatrix4x4> consumer)

Passes the mOffsetMatrix field to the specified Consumer.

public AIVertexWeight.Buffer
mWeights()

the influence weights of this bone, by vertex index

public AIBone
mWeights(AIVertexWeight.Buffer value)

Sets the address of the specified AIVertexWeight.Buffer to the mWeights field.

public static AINode
nmArmature(long struct)

Unsafe version of mArmature.

public static void
nmArmature(long struct, AINode value)

Unsafe version of mArmature.

public static AIString
nmName(long struct)

Unsafe version of mName.

public static void
nmName(long struct, AIString value)

Unsafe version of mName.

public static AINode
nmNode(long struct)

Unsafe version of mNode.

public static void
nmNode(long struct, AINode value)

Unsafe version of mNode.

public static int
nmNumWeights(long struct)

Unsafe version of mNumWeights.

public static void
nmNumWeights(long struct, int value)

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

public static AIMatrix4x4
nmOffsetMatrix(long struct)

Unsafe version of mOffsetMatrix.

public static void
nmOffsetMatrix(long struct, AIMatrix4x4 value)

Unsafe version of mOffsetMatrix.

public static AIVertexWeight.Buffer
nmWeights(long struct)

Unsafe version of mWeights.

public static void
nmWeights(long struct, AIVertexWeight.Buffer value)

Unsafe version of mWeights.

public AIBone
set(AIString mName, AINode mArmature, AINode mNode, AIVertexWeight.Buffer mWeights, AIMatrix4x4 mOffsetMatrix)

Initializes this struct with the specified values.

public AIBone

Returns:

this struct
set
(AIBone
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).
public static void
validate(long
the struct to validate
struct
)

Validates pointer members that should not be NULL.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate

Field Detail

ALIGNOFback to summary
public static final int ALIGNOF

The struct alignment in bytes.

MARMATUREback to summary
public static final int MARMATURE

The struct member offsets.

MNAMEback to summary
public static final int MNAME

The struct member offsets.

MNODEback to summary
public static final int MNODE

The struct member offsets.

MNUMWEIGHTSback to summary
public static final int MNUMWEIGHTS

The struct member offsets.

MOFFSETMATRIXback to summary
public static final int MOFFSETMATRIX

The struct member offsets.

MWEIGHTSback to summary
public static final int MWEIGHTS

The struct member offsets.

SIZEOFback to summary
public static final int SIZEOF

The struct size in bytes.

Constructor Detail

AIBoneback to summary
protected AIBone(long address, ByteBuffer container)
AIBoneback to summary
public AIBone(ByteBuffer container)

Creates a AIBone instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

The created instance holds a strong reference to the container object.

Method Detail

callocback to summary
public static AIBone calloc()

Returns a new AIBone instance allocated with memCalloc. The instance must be explicitly freed.

callocback to summary
public static AIBone.Buffer calloc(int capacity)

Returns a new AIBone.Buffer instance allocated with memCalloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

callocback to summary
public static AIBone calloc(MemoryStack stack)

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

Parameters
stack:MemoryStack

the stack from which to allocate

callocback to summary
public static AIBone.Buffer calloc(int capacity, MemoryStack stack)

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

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

callocStackback to summary
public static AIBone callocStack()

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static AIBone callocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static AIBone.Buffer callocStack(int capacity)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.

Annotations
@Deprecated
callocStackback to summary
public static AIBone.Buffer callocStack(int capacity, MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.

Annotations
@Deprecated
createback to summary
protected AIBone create(long address, ByteBuffer container)

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

Doc from org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.

Effectively, every Struct instance is a factory for more instances of the same type. This is used by StructBuffer.

Parameters
address:long

the struct memory address

container:ByteBuffer

an optional container buffer, to be referenced strongly by the struct instance.

Annotations
@Override
createback to summary
public static AIBone create()

Returns a new AIBone instance allocated with BufferUtils.

createback to summary
public static AIBone create(long address)

Returns a new AIBone instance for the specified memory address.

createback to summary
public static AIBone.Buffer create(int capacity)

Returns a new AIBone.Buffer instance allocated with BufferUtils.

Parameters
capacity:int

the buffer capacity

createback to summary
public static AIBone.Buffer create(long address, int capacity)

Create a AIBone.Buffer instance at the specified memory.

Parameters
address:long

the memory address

capacity:int

the buffer capacity

createSafeback to summary
public static AIBone createSafe(long address)

Like create, but returns null if address is NULL.

Annotations
@Nullable
createSafeback to summary
public static AIBone.Buffer createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

Annotations
@Nullable
mallocback to summary
public static AIBone malloc()

Returns a new AIBone instance allocated with memAlloc. The instance must be explicitly freed.

mallocback to summary
public static AIBone.Buffer malloc(int capacity)

Returns a new AIBone.Buffer instance allocated with memAlloc. The instance must be explicitly freed.

Parameters
capacity:int

the buffer capacity

mallocback to summary
public static AIBone malloc(MemoryStack stack)

Returns a new AIBone instance allocated on the specified MemoryStack.

Parameters
stack:MemoryStack

the stack from which to allocate

mallocback to summary
public static AIBone.Buffer malloc(int capacity, MemoryStack stack)

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

Parameters
capacity:int

the buffer capacity

stack:MemoryStack

the stack from which to allocate

mallocStackback to summary
public static AIBone mallocStack()

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static AIBone mallocStack(MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static AIBone.Buffer mallocStack(int capacity)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.

Annotations
@Deprecated
mallocStackback to summary
public static AIBone.Buffer mallocStack(int capacity, MemoryStack stack)

Deprecated

Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.

Annotations
@Deprecated
mArmatureback to summary
public AINode mArmature()

the bone armature node - used for skeleton conversion you must enable Process_PopulateArmatureData to populate this

Annotations
@NativeType:struct aiNode *
mArmatureback to summary
public AIBone mArmature(AINode value)

Sets the address of the specified AINode to the mArmature field.

mNameback to summary
public AIString mName()

the name of the bone.

Annotations
@NativeType:struct aiString
mNameback to summary
public AIBone mName(AIString value)

Copies the specified AIString to the mName field.

mNameback to summary
public AIBone mName(Consumer<AIString> consumer)

Passes the mName field to the specified Consumer.

mNodeback to summary
public AINode mNode()

the bone node in the scene - used for skeleton conversion you must enable Process_PopulateArmatureData to populate this

Annotations
@NativeType:struct aiNode *
mNodeback to summary
public AIBone mNode(AINode value)

Sets the address of the specified AINode to the mNode field.

mNumWeightsback to summary
public int mNumWeights()

the number of vertices affected by this bone. The maximum value for this member is Assimp#AI_MAX_BONE_WEIGHTS.

Annotations
@NativeType:unsigned int
mOffsetMatrixback to summary
public AIMatrix4x4 mOffsetMatrix()

matrix that transforms from mesh space to bone space in bind pose.

This matrix describes the position of the mesh in the local space of this bone when the skeleton was bound. Thus it can be used directly to determine a desired vertex position, given the world-space transform of the bone when animated, and the position of the vertex in mesh space.

It is sometimes called an inverse-bind matrix, or inverse bind pose matrix.

Annotations
@NativeType:struct aiMatrix4x4
mOffsetMatrixback to summary
public AIBone mOffsetMatrix(AIMatrix4x4 value)

Copies the specified AIMatrix4x4 to the mOffsetMatrix field.

mOffsetMatrixback to summary
public AIBone mOffsetMatrix(Consumer<AIMatrix4x4> consumer)

Passes the mOffsetMatrix field to the specified Consumer.

mWeightsback to summary
public AIVertexWeight.Buffer mWeights()

the influence weights of this bone, by vertex index

Annotations
@NativeType:struct aiVertexWeight *
mWeightsback to summary
public AIBone mWeights(AIVertexWeight.Buffer value)

Sets the address of the specified AIVertexWeight.Buffer to the mWeights field.

nmArmatureback to summary
public static AINode nmArmature(long struct)

Unsafe version of mArmature.

nmArmatureback to summary
public static void nmArmature(long struct, AINode value)

Unsafe version of mArmature.

nmNameback to summary
public static AIString nmName(long struct)

Unsafe version of mName.

nmNameback to summary
public static void nmName(long struct, AIString value)

Unsafe version of mName.

nmNodeback to summary
public static AINode nmNode(long struct)

Unsafe version of mNode.

nmNodeback to summary
public static void nmNode(long struct, AINode value)

Unsafe version of mNode.

nmNumWeightsback to summary
public static int nmNumWeights(long struct)

Unsafe version of mNumWeights.

nmNumWeightsback to summary
public static void nmNumWeights(long struct, int value)

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

nmOffsetMatrixback to summary
public static AIMatrix4x4 nmOffsetMatrix(long struct)

Unsafe version of mOffsetMatrix.

nmOffsetMatrixback to summary
public static void nmOffsetMatrix(long struct, AIMatrix4x4 value)

Unsafe version of mOffsetMatrix.

nmWeightsback to summary
public static AIVertexWeight.Buffer nmWeights(long struct)

Unsafe version of mWeights.

nmWeightsback to summary
public static void nmWeights(long struct, AIVertexWeight.Buffer value)

Unsafe version of mWeights.

setback to summary
public AIBone set(AIString mName, AINode mArmature, AINode mNode, AIVertexWeight.Buffer mWeights, AIMatrix4x4 mOffsetMatrix)

Initializes this struct with the specified values.

setback to summary
public AIBone set(AIBone src)

Copies the specified struct data to this struct.

Parameters
src:AIBone

the source struct

Returns:AIBone

this struct

sizeofback to summary
public int sizeof()

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

Doc from org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).

Annotations
@Override
validateback to summary
public static void validate(long struct)

Validates pointer members that should not be NULL.

Parameters
struct:long

the struct to validate

org.lwjgl.assimp back to summary

public Class AIBone.Buffer

extends StructBuffer<AIBone, AIBone.Buffer>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable

An array of AIBone structs.

Field Summary

Modifier and TypeField and Description
private static final AIBone

Constructor Summary

AccessConstructor and Description
public
Buffer(ByteBuffer container)

Creates a new AIBone.Buffer instance backed by the specified container.

public
Buffer(long address, int cap)

pack-priv
Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Summary

Modifier and TypeMethod and Description
protected AIBone
public AINode

Returns:

a AINode view of the struct pointed to by the AIBone#mArmature field.
mArmature
()

public AIBone.Buffer
mArmature(AINode value)

Sets the address of the specified AINode to the AIBone#mArmature field.

public AIString

Returns:

a AIString view of the AIBone#mName field.
mName
()

public AIBone.Buffer
mName(AIString value)

Copies the specified AIString to the AIBone#mName field.

public AIBone.Buffer
mName(Consumer<AIString> consumer)

Passes the AIBone#mName field to the specified Consumer.

public AINode

Returns:

a AINode view of the struct pointed to by the AIBone#mNode field.
mNode
()

public AIBone.Buffer
mNode(AINode value)

Sets the address of the specified AINode to the AIBone#mNode field.

public int

Returns:

the value of the AIBone#mNumWeights field.
mNumWeights
()

public AIMatrix4x4

Returns:

a AIMatrix4x4 view of the AIBone#mOffsetMatrix field.
mOffsetMatrix
()

public AIBone.Buffer
mOffsetMatrix(AIMatrix4x4 value)

Copies the specified AIMatrix4x4 to the AIBone#mOffsetMatrix field.

public AIBone.Buffer
mOffsetMatrix(Consumer<AIMatrix4x4> consumer)

Passes the AIBone#mOffsetMatrix field to the specified Consumer.

public AIVertexWeight.Buffer

Returns:

a AIVertexWeight.Buffer view of the struct array pointed to by the AIBone#mWeights field.
mWeights
()

public AIBone.Buffer
mWeights(AIVertexWeight.Buffer value)

Sets the address of the specified AIVertexWeight.Buffer to the AIBone#mWeights field.

protected AIBone.Buffer
Inherited from org.lwjgl.system.StructBuffer:
applyapplyforEachgetgetgetgetiteratorparallelStreamputputsizeofspliteratorstream

Field Detail

ELEMENT_FACTORYback to summary
private static final AIBone ELEMENT_FACTORY

Constructor Detail

Bufferback to summary
public Buffer(ByteBuffer container)

Creates a new AIBone.Buffer instance backed by the specified container.

Changes to the container's content will be visible to the struct buffer instance and vice versa. The two buffers' position, limit, and mark values will be independent. The new buffer's position will be zero, its capacity and its limit will be the number of bytes remaining in this buffer divided by AIBone#SIZEOF, and its mark will be undefined.

The created buffer instance holds a strong reference to the container object.

Bufferback to summary
public Buffer(long address, int cap)
Bufferback to summary
pack-priv Buffer(long address, ByteBuffer container, int mark, int pos, int lim, int cap)

Method Detail

getElementFactoryback to summary
protected AIBone getElementFactory()

Implements abstract org.lwjgl.system.StructBuffer.getElementFactory.

Annotations
@Override
mArmatureback to summary
public AINode mArmature()
Returns:AINode

a AINode view of the struct pointed to by the AIBone#mArmature field.

Annotations
@NativeType:struct aiNode *
mArmatureback to summary
public AIBone.Buffer mArmature(AINode value)

Sets the address of the specified AINode to the AIBone#mArmature field.

mNameback to summary
public AIString mName()
Returns:AIString

a AIString view of the AIBone#mName field.

Annotations
@NativeType:struct aiString
mNameback to summary
public AIBone.Buffer mName(AIString value)

Copies the specified AIString to the AIBone#mName field.

mNameback to summary
public AIBone.Buffer mName(Consumer<AIString> consumer)

Passes the AIBone#mName field to the specified Consumer.

mNodeback to summary
public AINode mNode()
Returns:AINode

a AINode view of the struct pointed to by the AIBone#mNode field.

Annotations
@NativeType:struct aiNode *
mNodeback to summary
public AIBone.Buffer mNode(AINode value)

Sets the address of the specified AINode to the AIBone#mNode field.

mNumWeightsback to summary
public int mNumWeights()
Returns:int

the value of the AIBone#mNumWeights field.

Annotations
@NativeType:unsigned int
mOffsetMatrixback to summary
public AIMatrix4x4 mOffsetMatrix()
Returns:AIMatrix4x4

a AIMatrix4x4 view of the AIBone#mOffsetMatrix field.

Annotations
@NativeType:struct aiMatrix4x4
mOffsetMatrixback to summary
public AIBone.Buffer mOffsetMatrix(AIMatrix4x4 value)

Copies the specified AIMatrix4x4 to the AIBone#mOffsetMatrix field.

mOffsetMatrixback to summary
public AIBone.Buffer mOffsetMatrix(Consumer<AIMatrix4x4> consumer)

Passes the AIBone#mOffsetMatrix field to the specified Consumer.

mWeightsback to summary
public AIVertexWeight.Buffer mWeights()
Returns:AIVertexWeight.Buffer

a AIVertexWeight.Buffer view of the struct array pointed to by the AIBone#mWeights field.

Annotations
@NativeType:struct aiVertexWeight *
mWeightsback to summary
public AIBone.Buffer mWeights(AIVertexWeight.Buffer value)

Sets the address of the specified AIVertexWeight.Buffer to the AIBone#mWeights field.

selfback to summary
protected AIBone.Buffer self()

Implements abstract org.lwjgl.system.CustomBuffer.self.

Annotations
@Override