Animation doesn't work with "collapse transforms"
by Spencer Boomhower · in Artist Corner · 07/11/2003 (3:34 pm) · 9 replies
I've dug all through the forums and tutorials trying to fix this, with no luck. Maybe there's a solution obvious to someone who knows this stuff.
I created and rigged a character, and then created a run based on this character. I exported the player.dts with "collapse transforms" unchecked to make sure that everything exported. I then exported the run from a different Max file as a .dsq.
Here's where the problem occurs: if I export the .dsq with "collapse transforms" unchecked, my run loads into the viewer and the game perfectly. But if I check "collapse transforms" it doesn't appear to animate in the viewer.
When I check it out in the game, the player still isn't animating. However, I can see the crossbow, which is attached to the mount0 node on the character's hand, jumping around as if it's receiving the animation (as if an invisible guy is carrying it). And the funny thing is, the animation is oriented 90 degrees to the left from where it should be. It looks like this invisible character switches to the run animation when I move the character.
I checked the dump file for the animation and under:
"Third pass: Collapsing unneeded nodes..."
it looks like it's removed all the Bip nodes! Some of the nodes it removed are limbs that I know are animating, which seems strange because the docs I read said that the exporter doesn't remove animating nodes.
Help?
-Spencer
I created and rigged a character, and then created a run based on this character. I exported the player.dts with "collapse transforms" unchecked to make sure that everything exported. I then exported the run from a different Max file as a .dsq.
Here's where the problem occurs: if I export the .dsq with "collapse transforms" unchecked, my run loads into the viewer and the game perfectly. But if I check "collapse transforms" it doesn't appear to animate in the viewer.
When I check it out in the game, the player still isn't animating. However, I can see the crossbow, which is attached to the mount0 node on the character's hand, jumping around as if it's receiving the animation (as if an invisible guy is carrying it). And the funny thing is, the animation is oriented 90 degrees to the left from where it should be. It looks like this invisible character switches to the run animation when I move the character.
I checked the dump file for the animation and under:
"Third pass: Collapsing unneeded nodes..."
it looks like it's removed all the Bip nodes! Some of the nodes it removed are limbs that I know are animating, which seems strange because the docs I read said that the exporter doesn't remove animating nodes.
Help?
-Spencer
#2
The .cfg in the animation directory (where I keep the run anim) is exactly the same.
That's funny because, as I mentioned in my previous post, if I check "collapse transforms" I get the weird 90 degree turn and no animation on the mesh. Any idea why the exporter would remove all my Bip nodes? I'm guessing that's what's causing my problem.
-Spencer
07/12/2003 (1:39 am)
Thanks for the detailed reply, Logan. I didn't mention that I played around with a lot of .cfg variations before I posted. This is what I ended up with: AlwaysExport: eye cam mount0 //mount1 //jetnozzle0 NeverExport: //Bip01 //Bip01 L Finger* //Bip01 R Finger* Dummy* Bip01 L Toe* Bip01 R Toe* //start01 //mountpoint DELETE* //Ski0 //Ski1 //Light0 //Light1 //Mount1 //Mount2
The .cfg in the animation directory (where I keep the run anim) is exactly the same.
Quote:I always use "collapse transforms" on my export, this keeps the data from being rotated 90 degrees and appearing incorrect.
That's funny because, as I mentioned in my previous post, if I check "collapse transforms" I get the weird 90 degree turn and no animation on the mesh. Any idea why the exporter would remove all my Bip nodes? I'm guessing that's what's causing my problem.
-Spencer
#3
Add bip01 to your NeverExport: list and see what you get.
07/12/2003 (9:09 am)
I would guess that its because you are exporting "Bip01" to your DSQ files (which you do not need to do), when you do this it adds some extra unnecessary transform data.Add bip01 to your NeverExport: list and see what you get.
#4
If you have put it in the 'skin' bone list, you can delete the mesh from the max file you are using to make your animations, as it is not necessary to export DSQs (mesh data is in the DTS)
07/12/2003 (9:14 am)
I concur. There is some wacky transform stuff going on with the Bip01 node, better to leave it out of the export. If you have put it in the 'skin' bone list, you can delete the mesh from the max file you are using to make your animations, as it is not necessary to export DSQs (mesh data is in the DTS)
#5
Anyway, even with not exporting Bip01, I get the same results in the dump file. A bunch of the nodes, even ones that are animating, get culled out during exporting:
Why are all those nodes being removed?
Thanks for the replies BTW.
-Spencer
07/12/2003 (10:12 am)
I tried not exporting Bip01, and it didn't help. I think I had it that way before, but recently changed it hoping it would help. Anyway, even with not exporting Bip01, I get the same results in the dump file. A bunch of the nodes, even ones that are animating, get culled out during exporting:
Third pass: Collapsing unneeded nodes... Removing node "Bip01" Removing node "Bip01 Pelvis" Removing node "Bip01 Spine" Removing node "Bip01 Spine1" Removing node "Bip01 Neck" Removing node "Bip01 Head" Removing node "Dummy05" Removing node "Bip01 L Clavicle" Removing node "Bip01 L UpperArm" Removing node "Bip01 L Forearm" Removing node "Bip01 L Hand" Removing node "Bip01 L Finger0" Removing node "Bip01 L Finger01" Removing node "Dummy02" Removing node "Bip01 L Finger1" Removing node "Bip01 L Finger11" Removing node "Dummy07" Removing node "Bip01 L Finger2" Removing node "Bip01 L Finger21" Removing node "Dummy09" Removing node "Bip01 L Finger3" Removing node "Bip01 L Finger31" Removing node "Dummy11" Removing node "Bip01 R Clavicle" Removing node "Bip01 R UpperArm" Removing node "Bip01 R Forearm" Removing node "Bip01 R Hand" Removing node "Bip01 R Finger0" Removing node "Bip01 R Finger01" Removing node "Dummy01" Removing node "Bip01 R Finger1" Removing node "Bip01 R Finger11" Removing node "Dummy06" Removing node "Bip01 R Finger2" Removing node "Bip01 R Finger21" Removing node "Dummy08" Removing node "Bip01 R Finger3" Removing node "Bip01 R Finger31" Removing node "Dummy10" Removing node "Bip01 L Thigh" Removing node "Bip01 L Calf" Removing node "Bip01 L Foot" Removing node "Bip01 L Toe0" Removing node "Dummy04" Removing node "Bip01 R Thigh" Removing node "Bip01 R Calf" Removing node "Bip01 R Foot" Removing node "Bip01 R Toe0" Removing node "Dummy03" Removing node "Unlink" Add default object states... Add default node states...
Why are all those nodes being removed?
Thanks for the replies BTW.
-Spencer
#6
To recap: If I export a character animation with "collapse transforms" checked, most of the Biped bones, even the ones that are animating, get thrown out (see above). That ain't right.
Anyone? ...anyone? ...Bueller?
-Spencer
07/14/2003 (11:51 am)
I'm giving this a bump, because, frankly, I'm stumped. To recap: If I export a character animation with "collapse transforms" checked, most of the Biped bones, even the ones that are animating, get thrown out (see above). That ain't right.
Anyone? ...anyone? ...Bueller?
-Spencer
#7
-Spencer
07/14/2003 (10:35 pm)
Eh, I gave up and put all the bones I wanted to export in the "always export" list. Seems to do the trick, hopefully there's nothing *too* weird going on with the problem that led to my taking this seemingly drastic step. -Spencer
#8
Animated bones are collapsing as well as not animated.
So I just unchek the collapse transform while exporting.
But is it right?
09/02/2003 (2:25 am)
Spenser, I have the same problem as you do. Animated bones are collapsing as well as not animated.
So I just unchek the collapse transform while exporting.
But is it right?
#9
I had to put this aside for a while, so I haven't had the chance to investigate further. What you see in this thread is all that I've heard on the subject.
I don't see a problem with specifying in a .cfg file exactly what to export and what not to export - and it almost seems preferable to an automated system since I like to know exactly what's going on when I export stuff - but the disturbing thing is, according to the docs, this problem isn't supposed to happen.
I figured I would see this character through, even with the problems I'm having, and then start a new one from scratch. Iteration seems to fix a lot of problems.
-Spencer
09/07/2003 (11:33 pm)
Andrei, I had to put this aside for a while, so I haven't had the chance to investigate further. What you see in this thread is all that I've heard on the subject.
I don't see a problem with specifying in a .cfg file exactly what to export and what not to export - and it almost seems preferable to an automated system since I like to know exactly what's going on when I export stuff - but the disturbing thing is, according to the docs, this problem isn't supposed to happen.
I figured I would see this character through, even with the problems I'm having, and then start a new one from scratch. Iteration seems to fix a lot of problems.
-Spencer
Associate Logan Foster
perPixel Studios
An example of the default CFG that most people that have Max and Character Studio use is as follows:
You can go into more detail with your CFG if you want more control. For example I list all of the necessary Biped nodes twice (once in the Always Export and once in the Never Export). I think use the "//" to comment out the node from either Always or Never to refine some more. Typically though you do not need to have this much control and should try to export all the data.
I always use "collapse transforms" on my export, this keeps the data from being rotated 90 degrees and appearing incorrect.
As for other tips...