Class for importing and exporting glTF files in and out of Godot. GLTFDocument supports reading data from a glTF file, buffer, or Godot scene. This data can then be written to the filesystem, buffer, or used to create a Godot scene. All of the data in a GLTF scene is stored in the [GLTFState] class. GLTFDocument processes state objects, but does not contain any scene data itself. GLTFDocument can be extended with arbitrary functionality by extending the [GLTFDocumentExtension] class and registering it with GLTFDocument via [method register_gltf_document_extension]. This allows for custom data to be imported and exported. https://www.khronos.org/files/gltf20-reference-guide.pdf https://registry.khronos.org/glTF/ Takes a [PackedByteArray] defining a GLTF and imports the data to the given [GLTFState] object through the [param state] parameter. [b]Note:[/b] The [param base_path] tells [method append_from_buffer] where to find dependencies and can be empty. Takes a path to a GLTF file and imports the data at that file path to the given [GLTFState] object through the [param state] parameter. [b]Note:[/b] The [param base_path] tells [method append_from_file] where to find dependencies and can be empty. Takes a Godot Engine scene node and exports it and its descendants to the given [GLTFState] object through the [param state] parameter. Takes a [GLTFState] object through the [param state] parameter and returns a GLTF [PackedByteArray]. Takes a [GLTFState] object through the [param state] parameter and returns a Godot Engine scene node. Registers the given [GLTFDocumentExtension] instance with GLTFDocument. If [param first_priority] is true, this extension will be run first. Otherwise, it will be run last. [b]Note:[/b] Like GLTFDocument itself, all GLTFDocumentExtension classes must be stateless in order to function properly. If you need to store data, use the [code]set_additional_data[/code] and [code]get_additional_data[/code] methods in [GLTFState] or [GLTFNode]. Unregisters the given [GLTFDocumentExtension] instance. Takes a [GLTFState] object through the [param state] parameter and writes a glTF file to the filesystem. [b]Note:[/b] The extension of the glTF file determines if it is a .glb binary file or a .gltf file.