Distar animations

View Original

JQC Blender addon


Automated quick panel

Constrain a bone or a set of bones in one click from the automatically generated quick buttons

Extremely powerful

The addon reads user created constraints in a Json file and adds quick constraint buttons in the animation panel. In one click you can constrain a bone or a set of bones

The addon is extremely powerful and allows you to create all the different constraint types. You are not limited to your character. You can constrain to other objects or even other armatures

Save your time

The addon supports hotloading. The presets are read everytime the buttons are pressed. You just need to save your JSON file, no extra step is required

Extremely convenient

The JSON files are tied to the armature names and can be shared between multiple duplicate linked armatures

You can save your presets in a property of your object. That property can be modified within Blender. This allows sharing the .blend file and its preset without sending the JSON file.

The support for aliases allows you to share the presets between multiple common rigs without having to make another JSON file. You can just change the bone aliases and the constraints will work for your new rig


Documentation

Setup

The JSON file needs to be in the same folder as your BLEND file and have the same name as your armature. The JSON file is tied to the Armature name and not the Object name

In that case the JSON needs to be called Character_Armature.json and not Character.json

Object panel on the left and Armature panel on the right

See this content in the original post

Different blocks

See this content in the original post

Alias

The addon allows you to use aliases

If you have multiple characters with a similar rig, you could use the same preset or a similar preset without remaking the entire JSON

See this content in the original post

Preset name

The name of the button that will be automatically created

Constraints

The list of all your constraints. You can add multiple constraints and bones to constrain in a single preset

See this content in the original post

Remove

In a preset you can clear all the constrains in a list of bones

See this content in the original post

Mandatory attributes

The attributes “constraint” and “bone” are mandatory. “constraint” determines the constraint type, and “bone” determines which bone will be constrained

Specific attributes

Most of the attributes will be specific to the type of constraint you are adding. In that case the “subtarget” and “chain_count” attributes are specific to IK constraints

Finding the attributes in Blender

In the properties tab where the constrains are displayed, right clicking on the name bone🟥 with the value ikArm.L🟥 shows a menu highlighting the name of the type Sub-Target🟥

The Copy Data Path🟨 button returns pose.bones["Arm.L"].constraints["IK"].subtarget

See this content in the original post
  • “Arm.L" : the name of the bone

  • “IK” : the constraint type

  • “subtarget” : the attribute we’re looking for

Finding the attributes with the documentation

You can find on the Blender website the appropriate documentation

  • General documentation

    • Links to the specific constraints

    • Informations on how to fill certain attributes

    • Floats need to be written in float format and not integer

      • “pole_angle” : 180 ❌

      • “pole_angle” : 180.0 ✅

See this content in the original post
  • Constraint types

    • This link can be found by scrolling on the General documentation page

    • This is the value you should fill the “constraint” attribute

“target” attribute

See this content in the original post

In the Blender documentation for IK constraints there is an attribute called “target” that is not filled in, for the example

We want to constrain the character’s bone “Arm.L” to another one of his bone, the “ikArm.L”

For this purpose the “target” is the character, and the subtarget is “ikArm.L”

See this content in the original post

Saving to character

The presets saved as custom properties

You can save the preset in a custom property of your character. This avoids having to have a JSON file everytime you add your character to your BLEND file

If your character has a JSON file and a custom property, the JSON file takes priority