View Full Version : Shockwave 3d: Mesh distortion.
erilaz 10-09-2003, 01:56 AM We have a character animation of a man sliding something into a box. The viewport animation works fine, but when we export the animation to w3d, the hands of the model stretch out quite severely, as though the bones are scaling or the vertices are being influenced.
The character is set up as a max bone rig, physiqued with CS and exported at full quality. The whole thing is grouped as a character node, so we can insert more animations. We've checked that the deformations are set to rigid, the vertex weighting is not being influenced by other bones, and that the hierachy is correct.
Does anyone have an idea what may be causing this severe deformation?
|
|
EricChadwick
10-09-2003, 05:10 AM
Reset Stretch on the bones?
Coincidentally we just wrote up something in our docs about this that might help you. It's centered around the Skin mod, but the concepts would also work with Physique.
Fixing stretched bones is fairly simple:
1) Are they actually 3ds max Bones?
a. This stretch-fixing procedure only works with actual 3ds max Bones.
b. Select all the bones.
c. Open Bone Tools from the Character menu.
d. In the Object Properties rollout, if either of the messages Selection is not a Bone Object or Selection has a non-Bone Object appear, then none (or only some) are actual 3ds max Bones.
2) Bake the weights.
a. In the Skin modifier go into Edit Envelopes mode.
b. Check the Vertices checkbox.
c. Select all the vertices.
d. Click on the Bake Selected Verts button.
3) Save the weights.
a. In the Advanced Parameters rollout, click the Save button.
b. Save the .env file.
4) Center the pivot.
a. In the Hierarchy panel, activate Affect Pivot Only, then Center to Object.
5) Reset Xform.
a. In the Utility panel, use the Reset Xform tool.
b. Collapse the stack, either by using the Collapse utility or by right-clicking the Xform modifier and choosing Collapse All.
6) Reset Stretch.
a. Select all the bones.
b. Open Bone Tools from the Character menu.
c. In the Object Properties rollout, check the Bone On, Freeze Length, and Auto Align checkboxes.
d. Set the Stretch radio button to None.
e. Should any bones suddenly “pop” into shorter or longer lengths, this will reveal the existence of stretched bones. Optionally you can fix this by clicking the Reset Stretch button, although this has no real impact, since the actual bone pivots are unaffected.
7) Re-apply the Skin modifier.
a. Add a Skin modifier to the geometry.
b. Add the bones.
c. Load the .env file, matching the bones as needed. It helps to Add the bones in the same order as they were in the original modifier… usually the bones in Skin are in either hierarchical or alphabetical order.
8) Re-export.
Hope this helps you.
EricChadwick
10-09-2003, 05:14 AM
Oops, also check for non-uniform scale and for negative scale on your bones. Might be problematic for shockwave, dunno. More info....
• To check for non-uniform and negative scale, select a bone, choose the icon Select and Non-Uniform Scale, then display the Transform Type-In dialog. If all the Absolute:Local values are 100 (or nearly so), then scale is OK.
• Another way to check for non-uniform scale is to use the FBX exporter from Kaydara (http://www.kaydara.com/products/fbx/index.php) which pops up an error dialog listing all bones that have non-uniform and/or negative scale.
CGTalk Moderation
01-16-2006, 07:00 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.
vBulletin v3.0.5, Copyright ©2000-2012, Jelsoft Enterprises Ltd.