Importing Rigs

Once in a while you want to import a rig from a Collada file. While this is not a big thing in general there are still a few pitfalls that could get you into trouble. Avastar has got the Rig Transfer Tool for this purpose. Although this tool is not perfect, it may still be a good starting point to get your imports attached to Avastar.

Convert foreign rig to Avastar

This mode is entered when you have selected a foreign (not Avastar) Armature. In that case the conversion tool offers to Convert the Armature in place.

Attention: For Belleza Male, TMP and Maitreya: you must use Blender 2.79 If you ignore this information then you get distortions.

When you want to use a character that is distributed as Collada file (.dae), then you must follow the notes below!

How to Import a foreign rigged character from Collada. more...

  • Open the Collada Importer by using:
File -> Import -> Collada
  • Locate the Operator Redo Panel at the bottom left of the File selection Window (See image). Please ensure that the following options are enabled (check marked):

Fix Leaf Bones
Find Bone
Keep Bind Info (importing Fitted Mesh Bones, see below)

Note: Autoconnect can be disabled in most cases. Please test what works best for your case!

  • Import the Model

 

  • For Blender 2.77 or older:
    The Auto Connect option is not shown in the user interface, but it is always enabled.
  • Keep Bind Info:
    is only available with Blender 2.79.
  • For Blender 2.8:
    Blender 2.8 is the next generation Blender that will become available by end of 2018. Don’t use it together with Avastar (it won’t work yet).

Important: The keep bind info feature is especially needed for development kits that are made for other restposes than the SL T-Pose. If you intend to import those development kits to Blender/Avastar, then please ensure that your Blender version is 2.79 but please do not yet use Blender 2.80.

Once you have imported your foreign Rig from Collada you can safely proceed as explained below. Please make sure that you have selected the Rig in Object mode. then proceed as follows:

When converting a foreign Rig to Avastar the Rig Transfer Tool shows a different set of conversion options. In detail you now can specify:

  • Source Rig type
  • Joint type
  • Gender

The detailed description of the options follows below…

Image400

The Header Section

Transfer Presets: Here you find prepared configurations which have been tested with known Foreign Rigs (devkits). You also can store your own configurations as custom presets.

Pose/Rest Position: To Switch your Rig from the Current Pose to Restpose (the same can be found in the Armature Rig data Properties section (right side of the Blender Screen)

Image401

Source Rig: d We support 4 different rig types

  • Avastar: When the source rig is an Avastar Rig. Please ignore this option unless you are explicitly told to use it.
  • Generic: The rig is oriented like the Avastar Rig, but it is otherwise fully compatible to the SL Rig
  • Manuellab: The rig has been created by Manuellab (or MakeHuman)
  • SL: The Rig has been imported from the workbench, avatar.blend or any compatible SL Rig in its neutral Shape.

Target Rig: You can select either Basic Legacy Rig or Extended Bento Rig (with hands, face, wings, …)

Dummies: You can decide to Keep, Hide, or Delete the Avastar Meshes in the converted Rig. For non human creatures you normally want to delete the Avastar meshes. For human characters you most probably want to delete or hide the Avastar meshes.

Note: Only if you import a rig that was made for supporting the System Meshes, but does not have those meshes attached, then you will want to keep the Avastar meshes.

The Update Options

The Import Options allow you to define in more detail how exactly your old Rig shall be Updated. Finding the right options can be tricky at times, depending on the nature of your Rig. The options are explained below

Image402

With Joints: Tell Avastar to record the details of the imported skeleton. SL supports 2 slightly different Rig definitions, namely the Pivot Rig and the Pos Rig. Those rigs only differ in their precision of defining the Joint locations. However small the difference is, it is visual.

It is very important to know which of the 2 Rig versions has been used to create the foreign rig. If you choose the wrong rig version here, you later will end up with small deviations from the original. So, best is to make some experiments before you decide which is the correct rig version to use here. Then conserve your finds by creating a new Preset for later reuse.

Use Bind Pose: When the imported Rig is mostly human and does not differ much from the SL Default rig only by bone rotations, like for example the Belleza devkit or the TMP devkit, then your best bet is to enable the use bind pose option. Because then all Appearance Sliders behave very similar (but not identical!) to the default system character.

Note: You can enable/disable this option at any time later (in the Pose Panel)

Enforce SL Bone Ends:  When you have imported a devkit from a Collada file, then the bone ends of the imported bones are not defined. In this case Blender creates some fictive bone ends based on some reasonable assumptions. While the bone orientation of the end bones does not matter a lot, you still may want to match those end bones to the corresponding SL Bones.

This option ensures the lengths of the end bones (especially the Fitted mesh bones) are adjusted according to the SL settings.

Note: This option may be cosmetic. Actually it should not matter if you enable this option. If you are in doubt, keep this option enabled.

Enforce SL Bone Roll: The Bone roll is the rotation of bones along their long axis. If the Bone Roll is wrong then you can end up with very odd issues. This option tries to reset the Bone Rolls of your armature Bones to the Roll as used with the Default SL Avatar. This option is only rarely necessary, but very handy when it is needed.

Show Offsets: (in Experimental mode) When you enable this option then Avastar draws grease pencil lines to indicate the locations of the Bones in the T Posed Rig compared to the bone locations in your edited rig.

Note: This is only for debugging purposes and normally is not needed for your daily work. The feature only exists when you use Blender 2.78 or newer.

Apply Rot&Scale: Often your Meshes contain Scale and Rotation in Object space. While this is not entirely wrong, it often creates unwanted and unforeseeable issues. So it is normally best to apply Scale & Rotation during the update.

Male: Bind your meshes to the Avastar Male rig (instead of the female rig)

How to correctly import a Rigged Character from Collada

For Male characters you need to take some special care. You will typically follow this workflow:

  1. Import the dae file with the male character as usual
  2. Before you convert this character to an Avastar, ensure that the gender switch is set to Female!
  3. Now convert to Avastar Rig
  4. Finally set the gender switch to male (optional)

Also right before you export your mesh, you may need to follow this workflow:

  1. Set the gender switch to Female
  2. Export the mesh
  3. Set the gender switch back to male

While this works in general, it possibly might not work like this for all collada files!
You need to do some own experiments to find out the correct usage for your
case!

The Operator section

The Snowflake icon: When this option is enabled, then the original rig is applied to the meshes (the current pose is baked) before updating. You only want this option when your original Rig is not in Restpose.

Image403

Below the Update Rig button you find an information section which tells you some details about your Rig and the bound meshes:

  • Custom Mesh: The number of user made (custom) meshes bound to the Rig
  • System Mesh: The number of Avastar meshes (head, body, eyes, …) bound to the rig
  • Joint Offsets: The number of maintained Edited Joints (Todo: this option always shows 0, it should be removed)

What happens during the update

When all settings are done, then you click the Update Rig button (see image above). Avastar will now step through following activities:

  • The original Armature is applied to the Meshes (when snowflake icon enabled)
  • The meshes are unbound
  • A new Avastar armature is created (Basic or Extended Rig version, Pivot or Pos Rig type)
  • The Avastar bones are aligned to match the original rig (If check for joint edits is enabled)
  • The meshes are bound to the new Avastar armature
  • Depending on the other options the new Avastar meshes are kept, hidden or deleted

Example: Converting the Belleza Development Mesh

There is nothing special about the Belleza Devkit. It just happens to be an ideal candidate for showing how to do a Migration in practice.

Step 1: Import the Devkit

  • Open the Collada Importer by using:
File -> Import -> Collada
  • Locate the Operator Redo Panel at the bottom left of the File selection Window (See image). Please ensure that the following options are enabled (check marked):

Fix Leaf Bones
Find Bone
Keep Bind Info (importing Fitted Mesh Bones, see below)

Note: Autoconnect can be disabled in most cases. Please test what works best for your case!

  • Import the Model

 

  • For Blender 2.77 or older:
    The Auto Connect option is not shown in the user interface, but it is always enabled.
  • Keep Bind Info:
    is only available with Blender 2.79.
  • For Blender 2.8:
    Blender 2.8 is the next generation Blender that will become available by end of 2018. Don’t use it together with Avastar (it won’t work yet).

Important: The keep bind info feature is especially needed for development kits that are made for other restposes than the SL T-Pose. If you intend to import those development kits to Blender/Avastar, then please ensure that your Blender version is 2.79 but please do not yet use Blender 2.80.

Step 2: Set the Migration options

  • Open the Tool Shelf and locate the Avastar Tools Panel
  • We have a ready made Preset for Belleza (see top of panel). Select this preset
  • Or alternatively set the options manually as follows:
    • Source Rig: SL
    • Target Rig: Basic
    • Dummies: Hide
    • With Joints: Enabled
    • Use POS as Skeleton definition
    • Use Bind Pose: Enabled
    • Enforce SL Bone Ends: Enabled
    • Enforce SL Bone Roll: Enabled
    • Show Offsets: Disabled
    • Apply Rot&Scale: Enabled
    • Male: Disabled
    • Snow Flake Icon: Disabled

Important: Keep the Male switch disabled when you convert a male Belleza Mesh!

Now you are ready to click the Button Convert to Avastar Rig.

Belleza Mesh right after Import (Collada)

Belleza Mesh after conversion to Avastar. The 90 degree rotation is on purpose.

Note:
If you are working with another Devkit then you can store your setup into your own Devkit Preset for later reuse. Actually we have done exactly that to define the Belleza Preset.

Dear Developer kit owners:

If you like so, you also can publish your settings or send them to us so that we can add your settings as an additional Preset.

 

Step 3: Prepare the Export

The Belleza Rig is an ideal Candidate for been used with Bind Pose. Just to remind you: You can enable or disable the Bind Pose option at any time.

  • Open the Settings Panel
  • Ensure you have set Advanced Settings
  • Open the Pose Panel
  • Enable the option Use Bind Pose

Step 4: Check the Sliders (optional, out of curiosity)

  • Open the Appearance Panel
  • Select the Torso Section
  • Check how the arm length changes with the slider values

Now make an experiment:

  • Disable the Use Bind Pose option
    Right above the Appearance sliders
  • Now check how the Sliders work totally different on the Arms

Gotcha? Perfect!

Arms in Bind Pose mode

In Bind Pose mode the arm length changes as one would expect:

Appearance Slider – 0

Appearance Slider – 100

Arms in Joint Offset mode

In Joint Offset mode the arms are shifted sideways instead of lengthened along the limb:

Appearance Slider – 0

Appearance Slider – 100

Important: If you do not understand why the Appearance Sliders work different when you have enabled use Bind pose, then please take a moment and find out about the Slider behavior. It has been largely discussed in the SL Forums and in the SL Wiki…

Step 5: Check the export

Now do a regular Avastar Mesh export and see how your mesh behaves (you can use Aditi for testing). We tested it as follows:

  • Important for Belleza: Before you export your mesh take care to disable the Male gender setting (export as female)
  • Upload the Belleza Devkit file to SL
  • Upload the Avastar export to SL
  • Wear both meshes and
  • inspect them in Wireframe mode

Avastar and Belleza show an almost perfect match when inspected in wireframe mode