Class AIScene

    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • MFLAGS, MROOTNODE, MNUMMESHES, MMESHES, MNUMMATERIALS, MMATERIALS, MNUMANIMATIONS, MANIMATIONS, MNUMTEXTURES, MTEXTURES, MNUMLIGHTS, MLIGHTS, MNUMCAMERAS, MCAMERAS, MMETADATA, MNAME, MPRIVATE

        The struct member offsets.
    • Constructor Detail

      • AIScene

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

        @Nullable
        public AINode mRootNode()
        The root node of the hierarchy. There will always be at least the root node if the import was successful (and no special flags have been set). Presence of further nodes depends on the format and content of the imported file.
      • mNumMeshes

        public int mNumMeshes()
        The number of meshes in the scene.
      • mMeshes

        @Nullable
        public org.lwjgl.PointerBuffer mMeshes()
        The array of meshes. Use the indices given in the AINode structure to access this array. The array is mNumMeshes in size. If the Assimp.AI_SCENE_FLAGS_INCOMPLETE flag is not set there will always be at least ONE material.
      • mNumMaterials

        public int mNumMaterials()
        The number of materials in the scene.
      • mMaterials

        @Nullable
        public org.lwjgl.PointerBuffer mMaterials()
        The array of materials. Use the index given in each AIMesh structure to access this array. The array is mNumMaterials in size. If the Assimp.AI_SCENE_FLAGS_INCOMPLETE flag is not set there will always be at least ONE material.
      • mNumAnimations

        public int mNumAnimations()
        The number of animations in the scene.
      • mAnimations

        @Nullable
        public org.lwjgl.PointerBuffer mAnimations()
        The array of animations. All animations imported from the given file are listed here. The array is mNumAnimations in size.
      • mNumTextures

        public int mNumTextures()
        The number of textures embedded into the file
      • mTextures

        @Nullable
        public org.lwjgl.PointerBuffer mTextures()
        The array of embedded textures. Not many file formats embed their textures into the file. An example is Quake's MDL format (which is also used by some GameStudio versions)
      • mNumLights

        public int mNumLights()
        The number of light sources in the scene. Light sources are fully optional, in most cases this attribute will be 0
      • mLights

        @Nullable
        public org.lwjgl.PointerBuffer mLights()
        The array of light sources. All light sources imported from the given file are listed here. The array is mNumLights in size.
      • mNumCameras

        public int mNumCameras()
        The number of cameras in the scene. Cameras are fully optional, in most cases this attribute will be 0
      • mCameras

        @Nullable
        public org.lwjgl.PointerBuffer mCameras()
        The array of cameras. All cameras imported from the given file are listed here. The array is mNumCameras in size. The first camera in the array (if existing) is the default camera view into the scene.
      • mMetaData

        @Nullable
        public AIMetaData mMetaData()
        The global metadata assigned to the scene itself.

        This data contains global metadata which belongs to the scene like unit-conversions, versions, vendors or other model-specific data. This can be used to store format-specific metadata as well.

      • mName

        public AIString mName()
        The name of the scene itself.
      • mFlags

        public AIScene mFlags​(int value)
        Sets the specified value to the mFlags() field.
      • mMeshes

        public AIScene mMeshes​(@Nullable
                               org.lwjgl.PointerBuffer value)
        Sets the address of the specified PointerBuffer to the mMeshes() field.
      • mMaterials

        public AIScene mMaterials​(@Nullable
                                  org.lwjgl.PointerBuffer value)
        Sets the address of the specified PointerBuffer to the mMaterials() field.
      • mAnimations

        public AIScene mAnimations​(@Nullable
                                   org.lwjgl.PointerBuffer value)
        Sets the address of the specified PointerBuffer to the mAnimations() field.
      • mTextures

        public AIScene mTextures​(@Nullable
                                 org.lwjgl.PointerBuffer value)
        Sets the address of the specified PointerBuffer to the mTextures() field.
      • mLights

        public AIScene mLights​(@Nullable
                               org.lwjgl.PointerBuffer value)
        Sets the address of the specified PointerBuffer to the mLights() field.
      • mCameras

        public AIScene mCameras​(@Nullable
                                org.lwjgl.PointerBuffer value)
        Sets the address of the specified PointerBuffer to the mCameras() field.
      • mName

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

        public AIScene set​(int mFlags,
                           @Nullable
                           AINode mRootNode,
                           @Nullable
                           org.lwjgl.PointerBuffer mMeshes,
                           @Nullable
                           org.lwjgl.PointerBuffer mMaterials,
                           @Nullable
                           org.lwjgl.PointerBuffer mAnimations,
                           @Nullable
                           org.lwjgl.PointerBuffer mTextures,
                           @Nullable
                           org.lwjgl.PointerBuffer mLights,
                           @Nullable
                           org.lwjgl.PointerBuffer mCameras,
                           @Nullable
                           AIMetaData mMetaData,
                           AIString mName)
        Initializes this struct with the specified values.
      • set

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

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

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

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

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

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

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

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

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

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

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

        @Deprecated
        public static AIScene mallocStack()
        Deprecated.
        Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
      • callocStack

        @Deprecated
        public static AIScene callocStack()
        Deprecated.
        Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
      • mallocStack

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

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

        @Deprecated
        public static AIScene.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 AIScene.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 AIScene malloc​(org.lwjgl.system.MemoryStack stack)
        Returns a new AIScene instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • calloc

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

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

        public static AIScene.Buffer calloc​(int capacity,
                                            org.lwjgl.system.MemoryStack stack)
        Returns a new AIScene.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
      • nmFlags

        public static int nmFlags​(long struct)
        Unsafe version of mFlags().
      • nmRootNode

        @Nullable
        public static AINode nmRootNode​(long struct)
        Unsafe version of mRootNode().
      • nmNumMeshes

        public static int nmNumMeshes​(long struct)
        Unsafe version of mNumMeshes().
      • nmMeshes

        @Nullable
        public static org.lwjgl.PointerBuffer nmMeshes​(long struct)
        Unsafe version of mMeshes.
      • nmNumMaterials

        public static int nmNumMaterials​(long struct)
        Unsafe version of mNumMaterials().
      • nmMaterials

        @Nullable
        public static org.lwjgl.PointerBuffer nmMaterials​(long struct)
        Unsafe version of mMaterials.
      • nmNumAnimations

        public static int nmNumAnimations​(long struct)
        Unsafe version of mNumAnimations().
      • nmAnimations

        @Nullable
        public static org.lwjgl.PointerBuffer nmAnimations​(long struct)
        Unsafe version of mAnimations.
      • nmNumTextures

        public static int nmNumTextures​(long struct)
        Unsafe version of mNumTextures().
      • nmTextures

        @Nullable
        public static org.lwjgl.PointerBuffer nmTextures​(long struct)
        Unsafe version of mTextures.
      • nmNumLights

        public static int nmNumLights​(long struct)
        Unsafe version of mNumLights().
      • nmLights

        @Nullable
        public static org.lwjgl.PointerBuffer nmLights​(long struct)
        Unsafe version of mLights.
      • nmNumCameras

        public static int nmNumCameras​(long struct)
        Unsafe version of mNumCameras().
      • nmCameras

        @Nullable
        public static org.lwjgl.PointerBuffer nmCameras​(long struct)
        Unsafe version of mCameras.
      • nmMetaData

        @Nullable
        public static AIMetaData nmMetaData​(long struct)
        Unsafe version of mMetaData().
      • nmName

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

        public static java.nio.ByteBuffer nmPrivate​(long struct,
                                                    int capacity)
      • nmFlags

        public static void nmFlags​(long struct,
                                   int value)
        Unsafe version of mFlags.
      • nmRootNode

        public static void nmRootNode​(long struct,
                                      @Nullable
                                      AINode value)
        Unsafe version of mRootNode.
      • nmNumMeshes

        public static void nmNumMeshes​(long struct,
                                       int value)
        Sets the specified value to the mNumMeshes field of the specified struct.
      • nmMeshes

        public static void nmMeshes​(long struct,
                                    @Nullable
                                    org.lwjgl.PointerBuffer value)
        Unsafe version of mMeshes.
      • nmNumMaterials

        public static void nmNumMaterials​(long struct,
                                          int value)
        Sets the specified value to the mNumMaterials field of the specified struct.
      • nmMaterials

        public static void nmMaterials​(long struct,
                                       @Nullable
                                       org.lwjgl.PointerBuffer value)
        Unsafe version of mMaterials.
      • nmNumAnimations

        public static void nmNumAnimations​(long struct,
                                           int value)
        Sets the specified value to the mNumAnimations field of the specified struct.
      • nmAnimations

        public static void nmAnimations​(long struct,
                                        @Nullable
                                        org.lwjgl.PointerBuffer value)
        Unsafe version of mAnimations.
      • nmNumTextures

        public static void nmNumTextures​(long struct,
                                         int value)
        Sets the specified value to the mNumTextures field of the specified struct.
      • nmTextures

        public static void nmTextures​(long struct,
                                      @Nullable
                                      org.lwjgl.PointerBuffer value)
        Unsafe version of mTextures.
      • nmNumLights

        public static void nmNumLights​(long struct,
                                       int value)
        Sets the specified value to the mNumLights field of the specified struct.
      • nmLights

        public static void nmLights​(long struct,
                                    @Nullable
                                    org.lwjgl.PointerBuffer value)
        Unsafe version of mLights.
      • nmNumCameras

        public static void nmNumCameras​(long struct,
                                        int value)
        Sets the specified value to the mNumCameras field of the specified struct.
      • nmCameras

        public static void nmCameras​(long struct,
                                     @Nullable
                                     org.lwjgl.PointerBuffer value)
        Unsafe version of mCameras.
      • nmMetaData

        public static void nmMetaData​(long struct,
                                      @Nullable
                                      AIMetaData value)
        Unsafe version of mMetaData.
      • nmName

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

        public static void nmPrivate​(long struct,
                                     java.nio.ByteBuffer value)
      • validate

        public static void validate​(long struct)
        Validates pointer members that should not be NULL.
        Parameters:
        struct - the struct to validate