TS Bones/Skel Probs (Help me Rex Kinobi, you're my only hope!).
by BrokeAss Games · in Torque Game Engine · 02/07/2006 (8:31 am) · 23 replies
I know this is not the right area to post this in, but I'm hoping there are many ppl who have seen and fixed this problem.
I have been using TrueSpace 6.6 for modeling in our game.
After learning the work flow, rigging and all the little bugs in TS and the exporter I feel that I have nearly mastered the modeling workflow.
I have one HUGE problem left.
The problem is the bones/rigging that is exported with DarkIndustries ver. 2 exporter.
I have exported to .X format, re-imported, rigged and setup the scene in TS.
I'm using MagicBones from TrueBones which is a slightly modified BVH format skeleton.
The rigging and model in TS seem perfect.
The animations play, I'm able to switch animation clips, etc.
But when I view the model in TSTP or in TGE the bones act all crazy like my rigging is bad.
I tried using some other skeletons and didn't have these problems.
This is driving me nuts because we have spent about $1600 on our character creation software/studio (including rotoscoping motion capture booth).
I'm not using Puppeteer because of the custom skeletons.
Also, I have to be careful if I modify the skeleton because we have about 900 animations that are based off of this one.
Please help me someone (Rex, almost everything I learned was from reading your work, can you help?).
I'm so close to having a complete character system and the bones getting borked in export is the only problem I have left.
If an experience TrueSpace Torque modeler is willing to help I can send the .SCN file via email.
Ari
I have been using TrueSpace 6.6 for modeling in our game.
After learning the work flow, rigging and all the little bugs in TS and the exporter I feel that I have nearly mastered the modeling workflow.
I have one HUGE problem left.
The problem is the bones/rigging that is exported with DarkIndustries ver. 2 exporter.
I have exported to .X format, re-imported, rigged and setup the scene in TS.
I'm using MagicBones from TrueBones which is a slightly modified BVH format skeleton.
The rigging and model in TS seem perfect.
The animations play, I'm able to switch animation clips, etc.
But when I view the model in TSTP or in TGE the bones act all crazy like my rigging is bad.
I tried using some other skeletons and didn't have these problems.
This is driving me nuts because we have spent about $1600 on our character creation software/studio (including rotoscoping motion capture booth).
I'm not using Puppeteer because of the custom skeletons.
Also, I have to be careful if I modify the skeleton because we have about 900 animations that are based off of this one.
Please help me someone (Rex, almost everything I learned was from reading your work, can you help?).
I'm so close to having a complete character system and the bones getting borked in export is the only problem I have left.
If an experience TrueSpace Torque modeler is willing to help I can send the .SCN file via email.
Ari
About the author
http://www.youtube.com/user/BrokeAssGames
#2
I just caught this before investigating some lunch. Hmmm.....I truely sympathize with your dilemma. After reading this thru a few times, I'm slightly confused, but I'll throw out some things and head out for lunch and be back in a short bit.
The DTS shape and the DSQ files need to contain the same Nodes in the same Transforms exactly for animations to sync inside the engine. If you are using the same rig in gS to export both, I can't imagine why the skeleton would bork out???
From the quote from TDN: I think you may need to setup you rig and animations in gS with unique BONE names....the hingejoints don't seem to export as Nodes...and are perhaps collapsed during the process...they do the rotating work in gS, while it seems the 'bones' do the orientating, yet are the important object in the Scene??? gS is goofy that way.
My other quick thoughts are that the way in which Mr. Bones does his animations I can't follow. The characters seem to be rigged in a top down view and that's the Scene Root and any animations 'snap' the character to attention and gets them moving. Perhaps the difference in the pose of the Scene Root and your root sequence is causing this issue.
All for now, but I'll certainly help all that I'm able, that's a lot of ducets to be spending...
Not to be stone thrower, but I've never found Mr. B to 'explain' anything about how things work in gS.... Answer always seems to be, "...buy XXXbones, they'll do anything!". Sorry, I don't find that very helpful.
Rex
02/07/2006 (12:12 pm)
"...these are not the droids you're looking for. Move along now."I just caught this before investigating some lunch. Hmmm.....I truely sympathize with your dilemma. After reading this thru a few times, I'm slightly confused, but I'll throw out some things and head out for lunch and be back in a short bit.
The DTS shape and the DSQ files need to contain the same Nodes in the same Transforms exactly for animations to sync inside the engine. If you are using the same rig in gS to export both, I can't imagine why the skeleton would bork out???
From the quote from TDN: I think you may need to setup you rig and animations in gS with unique BONE names....the hingejoints don't seem to export as Nodes...and are perhaps collapsed during the process...they do the rotating work in gS, while it seems the 'bones' do the orientating, yet are the important object in the Scene??? gS is goofy that way.
My other quick thoughts are that the way in which Mr. Bones does his animations I can't follow. The characters seem to be rigged in a top down view and that's the Scene Root and any animations 'snap' the character to attention and gets them moving. Perhaps the difference in the pose of the Scene Root and your root sequence is causing this issue.
All for now, but I'll certainly help all that I'm able, that's a lot of ducets to be spending...
Not to be stone thrower, but I've never found Mr. B to 'explain' anything about how things work in gS.... Answer always seems to be, "...buy XXXbones, they'll do anything!". Sorry, I don't find that very helpful.
Rex
#3
The MagicBones skeleton is built using standard TrueSpace bones.
It's an imported BVH skeleton with a couple extra joints at each extremity joint.
And thanks tons, I was hoping if I called you out, you'd appear.
Can you make everything work now? LOL :)
He also helped me via email ALOT, but now that everything works perfect in TS I'm kind of on my own in Torque.
To be very honest about it, TrueSpace isn't really my thing (I'm coder/admin) and I'm very new to it, but since the money is spent and I have all the accessories... I'm trying very hard.
I think there is a good chance to create a very nice character studio for Torque with TrueSpace.
Can I send a .scn to your email?
I'm hoping there is a simple solution to this last problem of mine.
I don't want to have drop MagicBones for a different skeleton (900 mocap animations is nice).
Well I'm off to check the root pose and some transforms, thanks for the input.
Ari
02/08/2006 (1:07 pm)
Quote:The DTS shape and the DSQ files need to contain the same Nodes in the same Transforms exactly for animations to sync inside the engine. If you are using the same rig in gS to export both, I can't imagine why the skeleton would bork out???Yeah, I'm all good there, same scene (and skeleton) actually. :)
Quote:From the quote from TDN: I think you may need to setup you rig and animations in gS with unique BONE names....the hingejoints don't seem to export as Nodes...and are perhaps collapsed during the process...they do the rotating work in gS, while it seems the 'bones' do the orientating, yet are the important object in the Scene??? gS is goofy that way.Yeah, this one got my attention but I'm not using Puppeteer.
The MagicBones skeleton is built using standard TrueSpace bones.
It's an imported BVH skeleton with a couple extra joints at each extremity joint.
Quote:I'll give this a shot, would be strange but damn nice if it works.
My other quick thoughts are that the way in which Mr. Bones does his animations I can't follow. The characters seem to be rigged in a top down view and that's the Scene Root and any animations 'snap' the character to attention and gets them moving. Perhaps the difference in the pose of the Scene Root and your root sequence is causing this issue.
Quote:It's a shame it wasn't spent on 3DSMAX or Maya, I could have just gone straight BVH.
All for now, but I'll certainly help all that I'm able, that's a lot of ducets to be spending...
And thanks tons, I was hoping if I called you out, you'd appear.
Can you make everything work now? LOL :)
Quote:After downloading some of his flash tutorials I was able to rigg a character very quickly and switch any of the 900 animation clips on the fly.
Not to be stone thrower, but I've never found Mr. B to 'explain' anything about how things work in gS.... Answer always seems to be, "...buy XXXbones, they'll do anything!". Sorry, I don't find that very helpful.
He also helped me via email ALOT, but now that everything works perfect in TS I'm kind of on my own in Torque.
To be very honest about it, TrueSpace isn't really my thing (I'm coder/admin) and I'm very new to it, but since the money is spent and I have all the accessories... I'm trying very hard.
I think there is a good chance to create a very nice character studio for Torque with TrueSpace.
Can I send a .scn to your email?
I'm hoping there is a simple solution to this last problem of mine.
I don't want to have drop MagicBones for a different skeleton (900 mocap animations is nice).
Well I'm off to check the root pose and some transforms, thanks for the input.
Ari
#4

This isn't the complete player character scene, I'm just trying to get the animation to export the DTS animation correctly.
Ari
02/08/2006 (1:22 pm)

This isn't the complete player character scene, I'm just trying to get the animation to export the DTS animation correctly.
Ari
#6
It looks like bad rigging, but it's perfect in TrueSpace during animation.

Ari
02/08/2006 (2:11 pm)
Here is the result of the borked bones.It looks like bad rigging, but it's perfect in TrueSpace during animation.

Ari
#7
The skelleton magically got changed (changed upper body and lost feet).
This could be a long ugly workflow...but it may work.
As long as ALL of the skeletons get screwed up it should work, right?
Ari
*Same thing happens in .smd (Half-Life) and a few other formats (they all turn out like the above image).
It Seems MagicBones exports like this in every format I try. :(
02/08/2006 (3:02 pm)
Just exported the scene to .ms3d format and opened in MS3D.The skelleton magically got changed (changed upper body and lost feet).
This could be a long ugly workflow...but it may work.As long as ALL of the skeletons get screwed up it should work, right?
Ari
*Same thing happens in .smd (Half-Life) and a few other formats (they all turn out like the above image).
It Seems MagicBones exports like this in every format I try. :(
#8
I think[some more quick thoughts without working the Scene]:
1. Right off; looks like the mesh's pivot point and the bound's are different. I've seen this type of offset before and that was the cause. I once put my skinned mesh's pivot where my rig's COM was located and without changing the bounds too; I got this type of offset... The bounds mesh and the skinned mesh[not the rig] pivots need to be in the same location.
2. I don't believe the playerClass object needs a collision mesh[unless for special C++coding]....
3. With the gobs of extra Nodes via the BVH format...not sure what data they are storing...meaning that an 'extra' BVH node may have some weighting on the mesh but not much Transform information...and if those get culled[weighted Nodes], during export[due to no Transform data], leaving the mesh bound to non-existent nodes or throwing those verts to a unintended Node...hope #3 makes some kinda sense, ;).
All for now...
Rex
and about the Bones naming and the ms3d rearrangement: I see in the Scene Editor's snapshot that the first Bone in the rig's chain is named "Bone,1"....how many Bone,1's are in the list. You cannot have ANY of them named the same...each must be unique, and I've read where appending a Node with a number may cause it to be configed as a Detail level and may allow the engine to render the Nodes...I've never seen this but I've read gS perhaps has 'issues' with that structure. Again, never seen in any Vat here at Rex Heavy Industries...
02/08/2006 (4:09 pm)
Ah, good to see some images of 'borking-in-progress' and I think I know the issue here...[let's hope].I think[some more quick thoughts without working the Scene]:
1. Right off; looks like the mesh's pivot point and the bound's are different. I've seen this type of offset before and that was the cause. I once put my skinned mesh's pivot where my rig's COM was located and without changing the bounds too; I got this type of offset... The bounds mesh and the skinned mesh[not the rig] pivots need to be in the same location.
2. I don't believe the playerClass object needs a collision mesh[unless for special C++coding]....
3. With the gobs of extra Nodes via the BVH format...not sure what data they are storing...meaning that an 'extra' BVH node may have some weighting on the mesh but not much Transform information...and if those get culled[weighted Nodes], during export[due to no Transform data], leaving the mesh bound to non-existent nodes or throwing those verts to a unintended Node...hope #3 makes some kinda sense, ;).
All for now...
Rex
and about the Bones naming and the ms3d rearrangement: I see in the Scene Editor's snapshot that the first Bone in the rig's chain is named "Bone,1"....how many Bone,1's are in the list. You cannot have ANY of them named the same...each must be unique, and I've read where appending a Node with a number may cause it to be configed as a Detail level and may allow the engine to render the Nodes...I've never seen this but I've read gS perhaps has 'issues' with that structure. Again, never seen in any Vat here at Rex Heavy Industries...
#9
2. Yeah, should have just made it _dummy.
3. I'll check that all vertexes are rigged.
Thanks man,
Ari.
02/08/2006 (4:22 pm)
1. Damn, you're right, lemme check that.2. Yeah, should have just made it _dummy.
3. I'll check that all vertexes are rigged.
Thanks man,
Ari.
#10
It would be interesting to see the .DMP file of what actually is getting exported as a Node and then what they are named in gS/tS....
02/08/2006 (4:31 pm)
3. NB:...rigged to Nodes that are exporting in the DSQ's and the DTS...otherwise who knows what happens...either borks out the process or perhaps throws them UP the chain to a parent???It would be interesting to see the .DMP file of what actually is getting exported as a Node and then what they are named in gS/tS....
#11
Yeah, I didn't lock the rig (center axis, etc.), LOL.
Besides my lame rigging job, it's looking pretty damn good!
I'm still concerned with everything lining up but I won't know for sure until I clean up the rigging.
Thanks tons,
Ari.
02/08/2006 (4:43 pm)
Sweet!
Yeah, I didn't lock the rig (center axis, etc.), LOL.Besides my lame rigging job, it's looking pretty damn good!
I'm still concerned with everything lining up but I won't know for sure until I clean up the rigging.
Thanks tons,
Ari.
#12
My dump.dmp file is 517KB, I can mail it if you want.
Ari
02/08/2006 (4:47 pm)
When you are talking about Nodes do you mean game nodes like _eye or skeleton nodes?My dump.dmp file is 517KB, I can mail it if you want.
Ari
#13
02/08/2006 (4:56 pm)
Yep all the important Nodes, sure, email the .dmp for the player DTS shape and then a DSQ one...your "root/walk/run". Once inside the engine; Nodes are Nodes[skeleton rotators or C++ code 'helpers'], I think. My public email should be fine...
#14
.dmp file sent.
Ari
02/08/2006 (5:10 pm)
Until I get the animations clean it's just walk and root anims in a .DTS..dmp file sent.
Ari
#15
I see that indeed, each Bone object is uniquely named. There are so many extra bones for such a primitive skeleton. BVH format does that, oh well. Wonder how many of those could be culled and still have the shape work. Meaning only weight to the 'major' Nodes. The ones with actual body part names instead of appending numbers, which makes the rig pass to ms3d. Can't explain why the rig seems to deform in ms3d...??
02/08/2006 (5:37 pm)
I noticed that the walk sequence contains some scaling keys in the Scale Track, and that the mesh has some odd deformations. Wonder if you try deleting the Scale Track from the SE, not sure what it would do to the shape inside tS....of course doing this with a copy of the Scene. None of those 'other' Tracks will pass data to thru the exporter, seems to only notice Scale,Rotatation,Translation keys, whoops, Visibility too. I 'think' you could setup a sequence with the Track instead of forcing the sequence thru the Object Notes, as I do now...not sure though, not tried here.I see that indeed, each Bone object is uniquely named. There are so many extra bones for such a primitive skeleton. BVH format does that, oh well. Wonder how many of those could be culled and still have the shape work. Meaning only weight to the 'major' Nodes. The ones with actual body part names instead of appending numbers, which makes the rig pass to ms3d. Can't explain why the rig seems to deform in ms3d...??
#16
Removing the scale keys didn't seem to help. :(
Still looking at the nodes.
Ari
02/08/2006 (6:00 pm)
Yeah the MS3D thing is scaring me, I only broke it out to see if it would fix my animations.Removing the scale keys didn't seem to help. :(
Still looking at the nodes.
Ari
#17
Still, it seems stretched like the image above. :/
I'm worried that maybe one or more of my nodes may not have locked axis,position, etc.
Ari
02/08/2006 (6:13 pm)
Ok, I went through all the tracks and the only keys I have now are move and rotate in start01 and kinematics in the skeleton.Still, it seems stretched like the image above. :/
I'm worried that maybe one or more of my nodes may not have locked axis,position, etc.
Ari
#18
02/08/2006 (6:30 pm)
May I take a look at a copy of the Scene?? and the .CFG file you're using. I'd like to take a closer look at this.
#19
The scene is of course not what I have this very second though.
I think I have figured it out.
Looking at the .dts root pose the mesh of the player is about 1' higher than than the skeleton.
I may just be missing a position lock on the skeleton or mesh.
I found some stuff that wasn't locked in start01, I'm exporting now to see if that was it.
That's the distortion I'm seeing.
A model of this caliber takes a bit to compile. :)
*Hold the phone!
I was compiling the model while writing the post and it finished.
I had missed locking the center of the object on the skeleton!
Now it's perfect... 8)

Ok, so the lessons learned are:
Always make sure your objects have their axis/centers locked (Rex's and other tutorials explain this).
Even the skeleton... (I was always scared to mess with the skeleton in fear of borking the animation).
Damn Rex, thank you so much!
I knew you were the guy for the job. :)
Well, MagicBones is good to go and now I can start swithing clips and exporting .DSQs.
This was a good lesson, if a single axis/center is missed it can create havoc for a model project.
I need a beer... >:)
Ari
"Bork, bork, bork, bork, bork!" The Chef from The Muppets
02/08/2006 (6:52 pm)
I sent them.The scene is of course not what I have this very second though.
I think I have figured it out.
Looking at the .dts root pose the mesh of the player is about 1' higher than than the skeleton.
I may just be missing a position lock on the skeleton or mesh.
I found some stuff that wasn't locked in start01, I'm exporting now to see if that was it.
That's the distortion I'm seeing.
A model of this caliber takes a bit to compile. :)
*Hold the phone!
I was compiling the model while writing the post and it finished.
I had missed locking the center of the object on the skeleton!
Now it's perfect... 8)

Ok, so the lessons learned are:
Always make sure your objects have their axis/centers locked (Rex's and other tutorials explain this).
Even the skeleton... (I was always scared to mess with the skeleton in fear of borking the animation).
Damn Rex, thank you so much!
I knew you were the guy for the job. :)
Well, MagicBones is good to go and now I can start swithing clips and exporting .DSQs.
This was a good lesson, if a single axis/center is missed it can create havoc for a model project.
I need a beer... >:)
Ari
"Bork, bork, bork, bork, bork!" The Chef from The Muppets
#20
I got ya "Star Wars" right here...
02/08/2006 (7:08 pm)
"...use the Force, Luke. ...let go, Luke. Luke, trust me. Remember; the Force will be with you, always..."I got ya "Star Wars" right here...

Torque Owner BrokeAss Games
BrokeAss Games
Please tell me it's not just a naming convention...