user: Give a detailed overview of Export Scene Operators: syntax, arguments, return values, common patterns.

assistant: tensions
        - **export_gltfpack_kn** (*boolean**,* *(**optional**)*) – Keep Named Nodes, Restrict some optimization to keep named nodes and meshes attached to named nodes so that named nodes can be transformed externally
        - **export_format** (*enum in* *[**]**,* *(**optional**)*) – Format, Output format. Binary is most efficient, but JSON may be easier to edit later
        - **ui_tab** (enum in [`'GENERAL'`, `'MESHES'`, `'OBJECTS'`, `'ANIMATION'`], (optional)) –

          ui_tab, Export setting categories

          - `GENERAL`
            General – General settings.
          - `MESHES`
            Meshes – Mesh settings.
          - `OBJECTS`
            Objects – Object settings.
          - `ANIMATION`
            Animation – Animation settings.
        - **export_copyright** (*string**,* *(**optional**,* *never None**)*) – Copyright, Legal rights and conditions for the model
        - **export_image_format** (enum in [`'AUTO'`, `'JPEG'`, `'WEBP'`, `'NONE'`], (optional)) –

          Images, Output format for images. PNG is lossless and generally preferred, but JPEG might be preferable for web applications due to the smaller file size. Alternatively they can be omitted if they are not needed

          - `AUTO`
            Automatic – Save PNGs as PNGs, JPEGs as JPEGs, WebPs as WebPs. For other formats, use PNG.
          - `JPEG`
            JPEG Format (.jpg) – Save images as JPEGs. (Images that need alpha are saved as PNGs though.) Be aware of a possible loss in quality.
          - `WEBP`
            WebP Format – Save images as WebPs as main image (no fallback).
          - `NONE`
            None – Don’t export images.
        - **export_image_add_webp** (*boolean**,* *(**optional**)*) – Create WebP, Creates WebP textures for every texture. For already WebP textures, nothing happens
        - **export_image_webp_fallback** (*boolean**,* *(**optional**)*) – WebP Fallback, For all WebP textures, create a PNG fallback texture
        - **export_texture_dir** (*string**,* *(**optional**,* *never None**)*) – Textures, Folder to place texture files in. Relative to the .gltf file
        - **export_jpeg_quality** (*int in* *[**0**,* *100**]**,* *(**optional**)*) – JPEG Quality, Quality of JPEG export
        - **export_image_quality** (*int in* *[**0**,* *100**]**,* *(**optional**)*) – Image Quality, Quality of image export
        - **export_keep_originals** (*boolean**,* *(**optional**)*) – Keep Original, Keep original textures files if possible. WARNING: if you use more than one texture, where pbr standard requires only one, only one texture will be used. This can lead to unexpected results
        - **export_texcoords** (*boolean**,* *(**optional**)*) – UVs, Export UVs (texture coordinates) with meshes
        - **export_normals** (*boolean**,* *(**optional**)*) – Normals, Export vertex normals with meshes
        - **export_gn_mesh** (*boolean**,* *(**optional**)*) – Geometry Nodes Instances (Experimental), Export Geometry nodes instance meshes
        - **export_draco_mesh_compression_enable** (*boolean**,* *(**optional**)*) – Draco Mesh Compression, Compress mesh using Draco
        - **export_draco_mesh_compression_level** (*int in* *[**0**,* *10**]**,* *(**optional**)*) – Compression Level, Compression level (0 = most speed, 6 = most compression, higher values currently not supported)
        - **export_draco_position_quantization** (*int in* *[**0**,* *30**]**,* *(**optional**)*) – Position Quantization Bits, Quantization bits for position values (0 = no quantization)
        - **export_draco_normal_quantization** (*int in* *[**0**,* *30**]**,* *(**optional**)*) – Normal Quantization Bits, Quantization bits for normal values (0 = no quantization)
        - **export_draco_texcoord_quantization** (*int in* *[**0**,* *30**]**,* *(**optional**)*) – Texcoord Quantization Bits, Quantization bits for texture coordinate values (0 = no quantization)
        - **export_draco_color_quantization** (*int in* *[**0**,* *30**]**,* *(**optional**)*) – Color Quantization Bits, Quantization bits for color values (0 = no quantization)
        - **export_draco_generic_quantization** (*int in* *[**0**,* *30**]**,* *(**optional**)*) – Generic Quantization Bits, Quantization bits for generic values like weights or joints (0 = no quantization)
        - **export_tangents** (*boolean**,* *(**optional**)*) – Tangents, Export vertex tangents with meshes
        - **export_materials** (enum in [`'EXPORT'`, `'PLACEHOLDER'`, `'VIEWPORT'`, `'NONE'`], (optional)) –

          Materials, Export materials

          - `EXPORT`
            Export – Export all materials used by included objects.
          - `PLACEHOLDER`
            Placeholder – Do not export materials, but write multiple primitive groups per mesh, keeping material slot information.
          - `VIEWPORT`
            Viewport – Export minimal materials as defined in Viewport display properties.
          - `NONE`
            No export – Do not export materials, and combine mesh primitive groups, losing material slot information.
        - **export_unused_images** (*boolean**,* *(**optional**)*) – Unused Images, Export images not assigned to any material
        - **export_unused_textures** (*boolean**,* *(**optional**)*) – Prepare Unused Textures, Export image texture nodes not assigned to any material. This feature is not standard and needs an external extension to be included in the glTF file
        - **export_vertex_color** (enum in [`'MATERIAL'`, `'ACTIVE'`, `'NAME'`, `'NONE'`], (optional)) –

          Use Vertex Color, How to export vertex color

          - `MATERIAL`
            Material – Export vertex color when used by material.
          - `ACTIVE`
            Active – Export active vertex color.
          - `NAME`
            Name – Export vertex color with this name.
          - `NONE`
            None – Do not export vertex color.
        - **export_vertex_color_name** (*string**,* *(**optional**,* *never None**)*) – Vertex Color Name, Name of vertex color to export
        - **export_all_vertex_colors** (*boolean**,* *(**optional**)*) – Export All Vertex Colors, Export all vertex colors, even if not used by any material. If no Vertex Color is used in the mesh materials, a fake COLOR_0 will be created, in order to keep material unchanged
        - **export_active_vertex_color_when_no_material** (*boolean**,* *(**optional**)*) – Export Active Vertex Color When No Material, When there is no material on object, export active vertex color
        - **export_attributes** (*boolean**,* *(**optional**)*) – Attributes, Export Attributes (when starting with underscore)
        - **use_mesh_edges** (*boolean**,* *(**optional**)*) – Loose Edges, Export loose edges as lines, using the material from the first material slot
        - **use_mesh_vertices** (*boolean**,* *(**optional**)*) – Loose Points, Export loose points as glTF points, using the material from the first material slot
        - **export_cameras** (*boolean**,* *(**optional**)*) – Cameras, Export cameras
        - **use_selection** (*boolean**,* *(**optional**)*) – Selected Objects, Export selected objects only
        - **use_visible** (*boolean**,* *(**optional**)*) – Visible Objects, Export visible objects only
        - **use_renderable** (*boolean**,* *(**optional**)*) – Renderable Objects, Export renderable objects only
        - **use_active_collection_with_nested** (*boolean**,* *(**optional**)*) – Include Nested Collections, Include active collection and nested collections
        - **use_active_collection** (*boolean**,* *(**optional**)*) – Active Collection, Export objects in the active collection only
        - **use_active_scene** (*boolean**,* *(**optional**)*) – Active Scene, Export active scene only
        - **collection** (*string**,* *(**optional**,* *never None**)*) – Source Collection, Export only objects from this collection (and its children)
        - **at_collection_center** (*boolean**,* *(**optional**)*) – Export at Collection Center, Export at Collection center of mass of root objects of the collection
        - **export_extras** (*boolean**,* *(**optional**)*) – Custom Properties, Export custom properties as glTF extras
        - **export_yup** (*boolean**,* *(**optional**)*) – +Y Up, Export using glTF convention, +Y up
        - **export_apply** (*boolean**,* *(**optional**)*) – Apply Modifiers, Apply modifiers (excluding Armatures) to mesh objects -WARNING: prevents exporting shape keys
        - **export_shared_accessors** (*boolean**,* *(**optional**)*) – Shared Accessors, Export Primitives using shared accessors for attributes
        - **export_animations** (*boolean**,* *(**optional**)*) – Animations, Exports active actions and NLA tracks as glTF animations
        - **export_frame_range** (*boolean**,* *(**optional**)*) – Limit to Playback Range, Clips animations to selected playback range
        - **export_frame_step** (*int in* *[**1**,* *120**]**,* *(**optional**)*) – Sampling Rate, How often to evaluate animated values (in frames)
        - **export_force_sampling** (*boolean**,* *(**optional**)*) – Always Sample Animations, Apply sampling to all animations
        - **export_sampling_interpolation_fallback** (enum in [`'LINEAR'`, `'STEP'`], (optional)) –

          Sampling Interpolation Fallback, Interpolation fallback for sampled animations, when the property is not keyed

          - `LINEAR`
            Linear – Linear interpolation between keyframes.
          - `STEP`
            Step – No interpolation between keyframes.
        - **export_pointer_animation** (*boolean**,* *(**optional**)*) – Export Animation Pointer (Experimental), Export material, Light & Camera animation as Animation Pointer. Available only for baked animation mode ‘NLA Tracks’ and ‘Scene’
        - **export_animation_mode** (enum in [`'ACTIONS'`, `'ACTIVE_ACTIONS'`, `'BROADCAST'`, `'NLA_TRACKS'`, `'SCENE'`], (optional)) –

          Animation Mode, Export Animation mode

          - `ACTIONS`
            Actions – Export actions (actives and on NLA tracks) as separate animations.
          - `ACTIVE_ACTIONS`
            Active actions merged – All the currently assigned actions become one glTF animation.
          - `BROADCAST`
            Broadcast actions – Broadcast all compatible actions to all objects. Animated objects will get all actions compatible with them, others will get no animation at all.
          - `NLA_TRACKS`
            NLA Tracks – Export individual NLA Tracks as separate animation.
          - `SCENE`
            Scene – Export baked scene as a single animation.
        - **export_nla_strips_merged_animation_name** (*string**,* *(**optional**,* *never None**)*) – Merged Animation Name, Name of single glTF animation to be exported
        - **export_def_bones** (*boolean**,* *(**optional**)*) – Export Deformation Bones Only, Export Deformation bones only
        - **export_hierarchy_flatten_bones** (*boolean**,* *(**optional**)*) – Flatten Bone Hierarchy, Flatten Bone Hierarchy. Useful in case of non decomposable transformation matrix
        - **export_hierarchy_flatten_objs** (*boolean**,* *(**optional**)*) – Flatten Object Hierarchy, Flatten Object Hierarchy. Useful in case of non decomposable transformation matrix
        - **export_armature_object_remove** (*boolean**,* *(**optional**)*) – Remove Armature Object, Remove Armature object if possible. If Armature has multiple root bones, object will not be removed
        - **export_leaf_bone** (*boolean**,* *(**optional**)*) – Add Leaf Bones, Append a final bone to the end of each chain to specify last bone length (use this when you intend to edit the armature from exported data)
        - **export_optimize_animation_size** (*boolean**,* *(**optional**)*) – Optimize Animation Size, Reduce exported file size by removing duplicate keyframes
        - **export_optimize_animation_keep_anim_armature** (*boolean**,* *(**optional**)*) – Force Keeping Channels for Bones, If all keyframes are identical in a rig, force keeping the minimal animation. When off, all possible channels for the bones will be exported, even if empty (minimal animation, 2 keyframes)
        - **export_optimize_animation_keep_anim_object** (*boolean**,* *(**optional**)*) – Force Keeping Channel for Objects, If all keyframes are identical for object transformations, force keeping the minimal animation
        - **export_optimize_disable_viewport** (*boolean**,* *(**optional**)*) – Disable Viewport for Other Objects, When exporting animations, disable viewport for other objects, for performance
        - **export_negative_frame** (enum in [`'SLIDE'`, `'CROP'`], (optional)) –

          Negative Frames, Negative Frames are slid or cropped

          - `SLIDE`
            Slide – Slide animation to start at frame 0.
          - `CROP`
            Crop – Keep only frames above frame 0.
        - **export_anim_slide_to_zero** (*boolean**,* *(**optional**)*) – Set All glTF Animation Starting at 0, Set all glTF animation starting at 0.0s. Can be useful for looping animations
        - **export_bake_animation** (*boolean**,* *(**optional**)*) – Bake All Objects Animations, Force exporting animation on every object. Can be useful when using constraints or driver. Also useful when exporting only selection
        - **export_merge_animation** (enum in [`'NLA_TRACK'`, `'ACTION'`, `'NONE'`], (optional)) –

          Merge Animation, Merge Animations

          - `NLA_TRACK`
            NLA Track Names – Merge by NLA Track Names.
          - `ACTION`
            Actions – Merge by Actions.
          - `NONE`
            No Merge – Do Not Merge Animations.
        - **export_anim_single_armature** (*boolean**,* *(**optional**)*) – Export all Armature Actions, Export all actions, bound to a single armature. WARNING: Option does not support exports including multiple armatures
        - **export_reset_pose_bones** (*boolean**,* *(**optional**)*) – Reset Pose Bones Between Actions, Reset pose bones between each action exported. This is needed when some bones are not keyed on some animations
        - **export_current_frame** (*boolean**,* *(**optional**)*) – Use Current Frame as Object Rest Transformations, Export the scene in the current animation frame. When off, frame 0 is used as rest transformations for objects
        - **export_rest_position_armature** (*boolean**,* *(**optional**)*) – Use Rest Position Armature, Export armatures using rest position as joints’ rest pose. When off, current frame pose is used as rest pose
        - **export_anim_scene_split_object** (*boolean**,* *(**optional**)*) – Split Animation by Object, Export Scene as seen in Viewport, But split animation by Object
        - **export_skins** (*boolean**,* *(**optional**)*) – Skinning, Export skinning (armature) data
        - **export_influence_nb** (*int in* *[**1**,* *inf**]**,* *(**optional**)*) – Bone Influences, Choose how many Bone influences to export
        - **export_all_influences** (*boolean**,* *(**optional**)*) – Include All Bone Influences, Allow export of all joint vertex influences. Models may appear incorrectly in many viewers
        - **export_morph** (*boolean**,* *(**optional**)*) – Shape Keys, Export shape keys (morph targets)
        - **export_morph_normal** (*boolean**,* *(**optional**)*) – Shape Key Normals, Export vertex normals with shape keys (morph targets)
        - **export_morph_tangent** (*boolean**,* *(**optional**)*) – Shape Key Tangents, Export vertex tangents with shape keys (morph targets)
        - **export_morph_animation** (*boolean**,* *(**optional**)*) – Shape Key Animations, Export shape keys animations (morph targets)
        - **export_morph_reset_sk_data** (*boolean**,* *(**optional**)*) – Reset Shape Keys Between Actions, Reset shape keys between each action exported. This is needed when some SK channels are not keyed on some animations
        - **export_lights** (*boolean**,* *(**optional**)*) – Punctual Lights, Export directional, point, and spot lights. Uses “KHR_lights_punctual” glTF extension
        - **export_try_sparse_sk** (*boolean**,* *(**optional**)*) – Use Sparse Accessor if Better, Try using Sparse Accessor if it saves space
        - **export_try_omit_sparse_sk** (*boolean**,* *(**optional**)*) – Omitting Sparse Accessor if Data is Empty, Omitting Sparse Accessor if data is empty
        - **export_gpu_instances** (*boolean**,* *(**optional**)*) – GPU Instances, Export using EXT_mesh_gpu_instancing. Limited to children of a given Empty. Multiple materials might be omitted
        - **export_action_filter** (*boolean**,* *(**optional**)*) – Filter Actions, Filter Actions to be exported
        - **export_convert_animation_pointer** (*boolean**,* *(**optional**)*) – Convert TRS/Weights to Animation Pointer, Export TRS and weights as Animation Pointer. Using KHR_animation_pointer extension
        - **export_nla_strips** (*boolean**,* *(**optional**)*) – Group by NLA Track, When on, multiple actions become part of the same glTF animation if they’re pushed onto NLA tracks with the same name. When off, all the currently assigned actions become one glTF animation
        - **export_original_specular** (*boolean**,* *(**optional**)*) – Export Original PBR Specular, Export original glTF PBR Specular, instead of Blender Principled Shader Specular
        - **will_save_settings** (*boolean**,* *(**optional**)*) – Remember Export Settings, Store glTF export settings in the Blender project
        - **export_hierarchy_full_collections** (*boolean**,* *(**optional**)*) – Full Collection Hierarchy, Export full hierarchy, including intermediate collections
        - **export_extra_animations** (*boolean**,* *(**optional**)*) – Prepare Extra Animations, Export additional animations.This feature is not standard and needs an external extension to be included in the glTF file
        - **export_loglevel** (*int in* *[**-inf**,* *inf**]**,* *(**optional**)*) – Log