Class AIAnimMesh

    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • MNAME, MVERTICES, MNORMALS, MTANGENTS, MBITANGENTS, MCOLORS, MTEXTURECOORDS, MNUMVERTICES, MWEIGHT

        The struct member offsets.
    • Constructor Detail

      • AIAnimMesh

        public AIAnimMesh​(java.nio.ByteBuffer container)
        Creates a AIAnimMesh 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

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • mName

        public AIString mName()
        the AnimMesh name
      • mVertices

        @Nullable
        public AIVector3D.Buffer mVertices()
        Replacement for AIMesh::mVertices. If this array is non-NULL, it *must* contain mNumVertices entries. The corresponding array in the host mesh must be non-NULL as well - animation meshes may neither add or nor remove vertex components (if a replacement array is NULL and the corresponding source array is not, the source data is taken instead).
      • mColors

        public org.lwjgl.PointerBuffer mColors()
        
        @Nullable
        public AIColor4D.Buffer mColors​(int index)
        
        Replacement for AIMesh::mColors
      • mTextureCoords

        public org.lwjgl.PointerBuffer mTextureCoords()
        
        @Nullable
        public AIVector3D.Buffer mTextureCoords​(int index)
        
        Replacement for AIMesh::mTextureCoords
      • mNumVertices

        public int mNumVertices()
        The number of vertices in the aiAnimMesh, and thus the length of all the member arrays.

        This has always the same value as the mNumVertices property in the corresponding AIMesh. It is duplicated here merely to make the length of the member arrays accessible even if the aiMesh is not known, e.g. from language bindings.

      • mWeight

        public float mWeight()
        Weight of the AnimMesh.
      • mName

        public AIAnimMesh mName​(java.util.function.Consumer<AIString> consumer)
        Passes the mName() field to the specified Consumer.
      • mColors

        public AIAnimMesh mColors​(org.lwjgl.PointerBuffer value)
        Copies the specified PointerBuffer to the mColors() field.
      • mColors

        public AIAnimMesh mColors​(int index,
                                  java.util.function.Consumer<AIColor4D.Buffer> consumer)
        Passes the element at index of the mColors() field to the specified Consumer.
      • mTextureCoords

        public AIAnimMesh mTextureCoords​(org.lwjgl.PointerBuffer value)
        Copies the specified PointerBuffer to the mTextureCoords() field.
      • mWeight

        public AIAnimMesh mWeight​(float value)
        Sets the specified value to the mWeight() field.
      • set

        public AIAnimMesh set​(AIAnimMesh src)
        Copies the specified struct data to this struct.
        Parameters:
        src - the source struct
        Returns:
        this struct
      • malloc

        public static AIAnimMesh malloc()
        Returns a new AIAnimMesh instance allocated with memAlloc. The instance must be explicitly freed.
      • calloc

        public static AIAnimMesh calloc()
        Returns a new AIAnimMesh instance allocated with memCalloc. The instance must be explicitly freed.
      • create

        public static AIAnimMesh create()
        Returns a new AIAnimMesh instance allocated with BufferUtils.
      • create

        public static AIAnimMesh create​(long address)
        Returns a new AIAnimMesh instance for the specified memory address.
      • createSafe

        @Nullable
        public static AIAnimMesh createSafe​(long address)
        Like create, but returns null if address is NULL.
      • malloc

        public static AIAnimMesh.Buffer malloc​(int capacity)
        Returns a new AIAnimMesh.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
        Parameters:
        capacity - the buffer capacity
      • calloc

        public static AIAnimMesh.Buffer calloc​(int capacity)
        Returns a new AIAnimMesh.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
        Parameters:
        capacity - the buffer capacity
      • create

        public static AIAnimMesh.Buffer create​(int capacity)
        Returns a new AIAnimMesh.Buffer instance allocated with BufferUtils.
        Parameters:
        capacity - the buffer capacity
      • create

        public static AIAnimMesh.Buffer create​(long address,
                                               int capacity)
        Create a AIAnimMesh.Buffer instance at the specified memory.
        Parameters:
        address - the memory address
        capacity - the buffer capacity
      • createSafe

        @Nullable
        public static AIAnimMesh.Buffer createSafe​(long address,
                                                   int capacity)
        Like create, but returns null if address is NULL.
      • mallocStack

        @Deprecated
        public static AIAnimMesh mallocStack​(org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
      • callocStack

        @Deprecated
        public static AIAnimMesh callocStack​(org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
      • mallocStack

        @Deprecated
        public static AIAnimMesh.Buffer mallocStack​(int capacity,
                                                    org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
      • callocStack

        @Deprecated
        public static AIAnimMesh.Buffer callocStack​(int capacity,
                                                    org.lwjgl.system.MemoryStack stack)
        Deprecated.
        Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
      • malloc

        public static AIAnimMesh malloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new AIAnimMesh instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • calloc

        public static AIAnimMesh calloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new AIAnimMesh instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
      • malloc

        public static AIAnimMesh.Buffer malloc​(int capacity,
                                               org.lwjgl.system.MemoryStack stack)
        Returns a new AIAnimMesh.Buffer instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • calloc

        public static AIAnimMesh.Buffer calloc​(int capacity,
                                               org.lwjgl.system.MemoryStack stack)
        Returns a new AIAnimMesh.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
        Parameters:
        stack - the stack from which to allocate
        capacity - the buffer capacity
      • nmName

        public static AIString nmName​(long struct)
        Unsafe version of mName().
      • nmColors

        public static org.lwjgl.PointerBuffer nmColors​(long struct)
        Unsafe version of mColors().
      • nmColors

        @Nullable
        public static AIColor4D.Buffer nmColors​(long struct,
                                                int index)
        Unsafe version of mColors.
      • nmTextureCoords

        public static org.lwjgl.PointerBuffer nmTextureCoords​(long struct)
        Unsafe version of mTextureCoords().
      • nmNumVertices

        public static int nmNumVertices​(long struct)
        Unsafe version of mNumVertices().
      • nmWeight

        public static float nmWeight​(long struct)
        Unsafe version of mWeight().
      • nmName

        public static void nmName​(long struct,
                                  AIString value)
        Unsafe version of mName.
      • nmColors

        public static void nmColors​(long struct,
                                    org.lwjgl.PointerBuffer value)
        Unsafe version of mColors.
      • nmColors

        public static void nmColors​(long struct,
                                    int index,
                                    @Nullable
                                    AIColor4D.Buffer value)
        Unsafe version of mColors.
      • nmTextureCoords

        public static void nmTextureCoords​(long struct,
                                           org.lwjgl.PointerBuffer value)
        Unsafe version of mTextureCoords.
      • nmNumVertices

        public static void nmNumVertices​(long struct,
                                         int value)
        Sets the specified value to the mNumVertices field of the specified struct.
      • nmWeight

        public static void nmWeight​(long struct,
                                    float value)
        Unsafe version of mWeight.