Customize+ Edits Applied in Blender
How to use a Blender Script to read your Customize+ edits!
Something to know before you start!
This method sadly makes you lose all bone parents, but not bone weights! so you will have to re-parent every bone manually. But I personally think that's much easier than Scaling, Rotating, and Positioning manually
Step 1 Locate your .JSON file:
- Your Customize+ template data can be found in %appdata%\XIVLauncher\pluginConfigs\CustomizePlus\templates
- Change the path "\" to "/" for example "%appdata%/XIVLauncher/pluginConfigs/CustomizePlus/templates/example.json"
Step 2 Add the Location to Your Blender Script:
- Using this script Import Customize+ Public, locate the 'json_path' and replace the red text saying 'PUT YOUR .JSON HERE'
Note: Its important you keep the ' at the beginning and end. Leaving those out will lead to errors.
(The text may not be red in the actual script, It is located at the bottom of the script.)
# Update the armature bpy.context.view_layer.update() # Path to the JSON file json_path = 'PUT YOUR .JSON HERE' armature_name = 'n_root' apply_transformations_from_json(json_path, armature_name) - Save the script with the added .JSON location
Step 3 Blender:
- After you've opened blender, and assuming you have already extracted your model using FFXIV Textools, import your model and DO NOT change any bone names!
- Go into edit mode and hit the A key to select all bones, after doing so right click and select Parent>Clear>Clear Parent. Then return to object mode.
- Next go to the Scripting tab and import the script by hitting the folder icon at the top of the script area.
- After that, select "n_root" aka your armature and hit Text>Run Script.
- I personally use a script called CATS to apply transforms. I don't know where I got this exact version from but be sure to support the makers of it! CATS Github - CATS_version i have installed
- Go to Layout>CATS>Model>Apply as Rest Pose
- Manually re-parent every bone so it all works properly!
And You're done! Hope this helps anyone who was trying to figure out how to get C+ edits onto a model!
Unless CATS is doing something special, the Apply as Rest Pose operation is in vanilla default blender already, without needing any addon for it...
I was having problems with this script not applying rotations on blender 3.6, I was able to fix by replacing:
bone.rotation_euler = (
transforms['Rotation']['X'],
transforms['Rotation']['Y'],
transforms['Rotation']['Z']
)
with
bone.rotation_mode = 'XYZ'
bone.rotation_euler.x = math.radians(transforms['Rotation']['X'])
bone.rotation_euler.y = math.radians(transforms['Rotation']['Y'])
bone.rotation_euler.z = math.radians(transforms['Rotation']['Z'])
adding:
import math
at the very start
and adding:
bone.rotation_mode = 'QUATERNION'
before translation and scaling are applied
Just wanted to comment to say that this was an absolute LIFE SAVER. thank you so much for putting this resource out there, it was easy to follow and simple to get the exact result i wanted. bless
No comments to display
No comments to display