Operators: Import / Export
Back to Operators.
aether.import_export_import_character#
Label: Import Character (button text: FFXIV Character)
Where: AetherBlend tab → Import / Export → Import panel, and File → Import menu.
Imports an FFXIV character model (exported by Meddle or similar) and prepares it for rigging. A file dialog opens first.
Requirements: file ending in .gltf, .glb or .fbx. The Meddle Tools and FFGear add-ons are optional; their shader options are switched off automatically in the dialog when those add-ons are not enabled. The dialog opens in the Default Meddle import path from the preferences.
Parameters#
| Name | Type | Default | Description |
|---|---|---|---|
filepath |
string | Path of the model file | |
s_pack_images |
bool | True | Pack the textures into the .blend file |
s_merge_vertices |
bool | False | Merge duplicate vertices on import |
s_import_collection |
bool | True | Put the import in a new Model_Import collection |
s_merge_skin |
bool | True | Merge meshes by the skin material name |
s_merge_by_material |
bool | True | Join meshes that share a material |
s_import_with_meddle_shaders |
bool | True | Apply Meddle shaders to the materials |
s_import_ab_iris_shader |
bool | True | Add the AetherBlend eye scaling shader (needs Meddle shaders) |
s_import_ab_limbal_shader |
bool | True | Add the AetherBlend limbal ring shader (needs Meddle shaders) |
s_import_with_ffgear_shaders |
bool | True | Apply FFGear shaders to gear materials |
s_disable_bone_shape |
bool | True | Hide the bone shape display |
s_apply_pose_track |
bool | False | Apply the pose stored in the file as the current pose |
use_bone_axis_conversion |
bool | True | Convert bone axes to the FFXIV convention |
primary_bone_axis |
enum | X |
Bone primary axis (X, Y, Z, -X, -Y, -Z) |
secondary_bone_axis |
enum | Y |
Bone secondary axis (same values) |
What it does#
- Checks the file extension.
- Imports the model.
- Creates the
Model_Importcollection if requested. - Merges meshes by material and merges the skin.
- Imports the Meddle and FFGear shaders if requested.
- Finds the armature. Applies the pose track if requested, otherwise clears animation data and resets the pose.
- Converts bone axes.
- Puts all bones in the
Originalbone collection. The rig generator uses this collection as the source of truth. - Selects only the armature.
- Runs the iris and limbal shader operators when Meddle shaders were imported.
- Switches to the Generate tab if Auto navigate tabs is on.
Errors: unsupported file type; no armature in the imported file.
bpy.ops.aether.import_export_import_character("EXEC_DEFAULT", filepath="C:/models/hyur.gltf", s_merge_vertices=True)
aether.import_export_export_pose#
Label: Export to Pose File
Where: Import / Export tab → Export panel, and File → Export → AB Pose.
Writes the current pose of the active armature to a .pose file readable by FFXIV pose tools.
Requirements: active armature object with an Original bone collection.
Parameters#
| Name | Type | Default | Description |
|---|---|---|---|
filepath |
string | .blend name + .pose |
Output path (set by the dialog) |
use_pose_axis_conversion |
bool | True | Convert axes to the FFXIV convention |
pose_primary_axis |
enum | X |
Primary axis for the conversion |
pose_secondary_axis |
enum | Y |
Secondary axis for the conversion |
pose_author |
string | Author name stored in the file | |
pose_description |
string | Description stored in the file | |
pose_version |
string | 1.0.0 |
Version stored in the file |
pose_tags |
string | Comma-separated tags | |
include_preview_image |
bool | True | Embed a preview image |
preview_source |
enum | AUTO_VIEWPORT |
AUTO_VIEWPORT, RENDER_RESULT, BLENDER_IMAGE, EXTERNAL_FILE |
preview_image_name |
string | Blender image used for BLENDER_IMAGE |
|
preview_external_path |
string | Image file used for EXTERNAL_FILE |
What it does#
For every bone of the Original collection it writes position, rotation (quaternion) and scale, computed from the bone's world matrix, the axis correction and a -90° rotation around X. The .001 style suffixes are removed from bone names. The file is JSON containing Author, Description, Version, Tags, FileExtension, TypeName (Aetherblend Pose), FileVersion (2) and Bones. The preview image is embedded as Base64. If a Render Result exists, it is preselected as the preview.
Errors: no active armature; no Original collection; preview image not found.
bpy.ops.aether.import_export_export_pose("EXEC_DEFAULT", filepath="C:/poses/wave.pose", pose_author="Me")
aether.import_export_export_anim#
Label: Export Animation
Where: Import / Export tab → Export panel, and File → Export → AB Animation.
Exports an action of the active armature as FBX or GLB for use in the game tools.
Requirements: active armature object.
Parameters#
| Name | Type | Default | Description |
|---|---|---|---|
filepath |
string | action name | Output path (set by the dialog) |
export_format |
enum | FBX |
FBX or GLB |
selected_action |
enum | active action | Action to export |
pose_primary_axis |
enum | X |
Primary bone axis |
pose_secondary_axis |
enum | Y |
Secondary bone axis |
What it does#
- Temporarily assigns the selected action to the armature.
- Exports FBX with baked animation, no leaf bones and deform bones only.
- For GLB, exports a temporary FBX, imports it again and exports it as GLB (Y-up, active actions, no materials). The temporary import and file are removed.
- Restores the original action, selection and active object.
- Shows a success popup.
bpy.ops.aether.import_export_export_anim("EXEC_DEFAULT", filepath="C:/anims/run.fbx", export_format="FBX")