Adding two avatar poses to furniture in 3ds Max

The following steps will create a simple furniture product and two avatar poses that “interact” with each other.

Note: Values changed from the defaults are highlighted below for ease of spotting things.

The specially named MyPose is highlighted below to spot all the place the name shows up.


This tutorial will NOT cover creating/exporting an advanced Max scene that contains two animated avatars. The easiest way is to use the Cooperative Animation max file provided by IMVU, which contains two fully rigged avatars. You can set up two or more avatars manually, but the steps are too long to discuss here. Also, during export, one of the avatars and skeletons must be DELETED as the exporter is not smart enough to find which skeleton is selected (since they will have identical names). The following tutorials works around this limitation by removing the skeleton from one of the avatars, creating a “statue” in IMVU terms.


Please see the IMVU Avatar Statue guide for more information.


NOTE: The naming of the Catcher and Pitcher node suffix does NOT seem to have any impact on products. To make things simpler, I’ve removed the suffix on the Catcher/Pitcher nodes so that they do not have to be kept in sync with the seat node suffixes.

Click Here For Video

Video is ~ 21 minutes, streaming at 800x600 and requires flash. Size is ~74mb (yowza!)


The following guide is for reference and does NOT match the video 100%. It is meant to be a quick reference as you continue making furniture products and just want the highlights.


Inside 3ds Max:

  1. Open sample furniture product
  2. Create your furniture
  3. Rename Catcher01.Standing to Catcher01 (makes cloning easier later on)
  4. Rename Pitcher01.Standing to Pitcher01 (makes cloning easier later on)
  5. Clone seat nodes:
    1. Note the keyword “MyPose1” on the following nodes
    2. Catcher01 cloned to Catcher02
    3. Handle01 cloned to Handle02
    4. Pitcher01 cloned to Pitcher02
    5. Seat01.Sitting cloned and renamed to Seat02.MyPose1
    6. Move nodes but keep angle and distance between Catcher and Pitcher fixed
  6. Clone seat nodes again, creating Seat03. Remember to change the suffix to allow multiple custom poses. For example, Seat03.MyPose2
  7. Merge in avatar Max file
  8. Align Female03MasterRoot to seat02.MyPose1. AFTER align, link Female03MasterRoot to seat02.MyPose1.
  9. Adjust avatar until satisfied
  10. Save MyPose1.Max file
  11. Create statue for avatar:
    1. Select one piece of avatar mesh and convert to EditablePoly
    2. Attach all other pieces of avatar mesh (not your furniture)
    3. Select the skeleton nodes (all of them) and DELETE
    4. Rename object to avMyPose1 or something memorable
  12. Repeat steps 7 through 10 (merge avatar, position and save), saving MyPose2.Max
  13. Export Furniture
    1. Select Root
    2. Export Cal3d Skeleton file (XSF)
    3. Select mesh
    4. Export Cal3d Mesh (XMF)
    5. Mesh should have selected room skeleton file by default (not avatar skeleton)
  14. Export Pose 1
    1. Open MyPose1.Max. Should contain one avatar skeleton only
    2. Select Female03MasterRoot
    3. Export Cal3d Animation File (XAF)
      1. Step 1: Select standard female skeleton (NOT the room skeleton)
      2. Step 2: Leave everything checked for a full body pose        
      3. Step 3: Use the following:
        1. Start Frame: 0
        2. End Frame: 1
        3. Displacement: 0
        4. Frame Rate: 30
  15. Repeat step 14 but open MyPose2.Max. It should contain one avatar skeleton only


Inside the Previewer:

  1. Derive from 12908 (Floor-based Furniture)
  2. Special tab, Browse for skeleton (XSF) file
  3. Geometry tab, Browse for mesh (XMF) file
  4. Material tab, assign material templates (XRF) and textures
  5. Actions tab, click Add
    1. Actions tab, in the cyan colored "action" area:
      1. Trigger: stance.MyPose1 (stance is a reserved/key word)
      2. #ensembles played: 0 (infinite loop)
    2. Actions tab, in the red colored "Ensemble" area:
      1. .xaf: Browse to your file
      2. Frame Controls, #loops: 0 (infinite)
      3. Frame Controls, Loop start: 0
      4. Frame Controls, end: 1
      5. Blend In/Out: 0 (for both)
      6. Composition: Replace
  6. Repeat step 5 but use stance.MyPose2 and the other XAF file.



Testing in Previewer:

To test in the Previewer make sure you click on the node that corresponds to your custom pose. Pressing the “Play Action” button on the Actions tab will have no effect for actions names stance.MyPose.



Extra notes:

Hints/Tips for adjusting avatar in 3ds Max

1.      Make sure Female03MasterRoot is aligned to your seat node, if you want to make sure the avatar looks the same in the previewer as it does in Max.

2.      Everything is relative to Female03MasterRoot. ie, don't move or rotate once it’s aligned to the seat node

3.      Move or rotate Pelvis as needed

4.      Rotate other bones (do not move) as needed


Note: Having two unrelated, distinctly named “skeletons” in the Max file is fine. That is, you can have the “Root” node, “Female03MasterRoot” and even “AttachmentRoot” – just make sure to have the correct item selected when exporting.


You CANNOT have two skeletons with identically named nodes. The exporter will NOT be able to identify which skeleton root was chosen and will end up exporting the wrong nodes.


Note: Make sure you select the proper skeleton file when exporting the mesh and animation files. They use DIFFERENT skeleton files unlike most other products.


See Also:

Making a Pose in 3ds Max

Adding a Pose to furniture in 3ds Max