So confused and lost, ridiculous.
by Mikey Busch · in Artist Corner · 06/26/2005 (3:50 am) · 8 replies
So here is my problem, im not new to game developement, ive worked on alot of half life mods as a character artist and animator, so i got a basic premises on how things work, but torque, jesus...
I use milkshape since that is what i learned on, that is what i use but i cant find a skeleton to use for our game that works with the standard dsq animations, and i dont understand the animation process for torque at all. The Mr.Blue guy skeleton does not work for my player model (i bought adam pack so i could understand characters a little easier, and how they work, no help) so here is my steps, please step in and correct me.
1) I need a working skeleton of the ORIGINAL orc, mr.blue doesnt work, etc.
2)build model, put mr.blue's skeleton on it, export to player.dts, loads in but no animations.
3)make animation, export over the dsq file (with the correct seq:run=1-15,cyclic,fps=15) no animation plays.
so my question is, what the hell am i doing wrong? please help me out with this one im got a wicked headache.
I use milkshape since that is what i learned on, that is what i use but i cant find a skeleton to use for our game that works with the standard dsq animations, and i dont understand the animation process for torque at all. The Mr.Blue guy skeleton does not work for my player model (i bought adam pack so i could understand characters a little easier, and how they work, no help) so here is my steps, please step in and correct me.
1) I need a working skeleton of the ORIGINAL orc, mr.blue doesnt work, etc.
2)build model, put mr.blue's skeleton on it, export to player.dts, loads in but no animations.
3)make animation, export over the dsq file (with the correct seq:run=1-15,cyclic,fps=15) no animation plays.
so my question is, what the hell am i doing wrong? please help me out with this one im got a wicked headache.
About the author
#2
The file is named, "Mr. Box", it's a segmented shape. There is a caveat with producing shapes that will load the defaults SDK sequences[which were produce with a skinned mesh as reference] and that is they need to be skinned mesh and not rigid vertex assignment/weighting. For example, you could have a segmented shape such as Mr. Box, with many different parts, as long as each individual part or segment, was assigned to more than one joint/bone. Regrouping also does this, however; may bork any UV coordinates spread across textures as Milkshape won't put a single group's UV's across two distinct textures.
Success involves rigging to the 'Root' pose due to Milkshape's issue of no Frame 0 for referencing the .dts shape[uses the Scene root frame[1] instead], and resetting rotations on the joints if additions are made.
This rig does work with the SDK's default sequences. A note, if you want to add newer sequences[ .dsq filetypes], you'll need to use the .dts with the Milkshape skeleton inside. I've tried producing .dsq's that the default 'player' .dts shape will load; but it ends in a nasty mess. When I switched over to the Milkshape3D 'player', sequences produced on the farm will work with the older ones. Kinda goofy, but it does work. I tried a simple rotation .dsq out of Milkshape and it loaded into a shape that had the SDK sequences previously loaded. :).
06/26/2005 (8:18 am)
In the documentation for the DTSPlus! exporter from Chris Robertsonhere, there is a rig that will load the default SDK .dsq sequences that the orc, blue-guy, .starterKit green-guy all share; once exported thru Milkshape3D.The file is named, "Mr. Box", it's a segmented shape. There is a caveat with producing shapes that will load the defaults SDK sequences[which were produce with a skinned mesh as reference] and that is they need to be skinned mesh and not rigid vertex assignment/weighting. For example, you could have a segmented shape such as Mr. Box, with many different parts, as long as each individual part or segment, was assigned to more than one joint/bone. Regrouping also does this, however; may bork any UV coordinates spread across textures as Milkshape won't put a single group's UV's across two distinct textures.
Success involves rigging to the 'Root' pose due to Milkshape's issue of no Frame 0 for referencing the .dts shape[uses the Scene root frame[1] instead], and resetting rotations on the joints if additions are made.
This rig does work with the SDK's default sequences. A note, if you want to add newer sequences[ .dsq filetypes], you'll need to use the .dts with the Milkshape skeleton inside. I've tried producing .dsq's that the default 'player' .dts shape will load; but it ends in a nasty mess. When I switched over to the Milkshape3D 'player', sequences produced on the farm will work with the older ones. Kinda goofy, but it does work. I tried a simple rotation .dsq out of Milkshape and it loaded into a shape that had the SDK sequences previously loaded. :).
#3
The DTS exporters are written to provide a form of error checking so that you can quickly track down and sort out problems, for example if the data wont export to the DTS or DSQ then theres something that you have not done right in your scene. Yes this path might seem more convoluted but it is incredibly easy to learn and in the long run is far better for ensuring that good data gets into your game engine versus letting anything pass through.
06/26/2005 (9:18 am)
Also keep in mind that the DTS exporters are far more powerful, versatile and offer way more control than the hack editors that the modding communities put out there. You have a vast gamut of options available to you (even more in an application like Max or Maya) that in no way, shape or form hinders your work.The DTS exporters are written to provide a form of error checking so that you can quickly track down and sort out problems, for example if the data wont export to the DTS or DSQ then theres something that you have not done right in your scene. Yes this path might seem more convoluted but it is incredibly easy to learn and in the long run is far better for ensuring that good data gets into your game engine versus letting anything pass through.
#4
06/26/2005 (9:40 am)
.
#5
Don't get me wrong though, once you figure out the quirks of the exporter it does work quite well. Took me about a week or two to get up to speed with the max exporter, but then again I usually have a knack for figuring things out. But given some time and a lot of trial and error most oddities can be worked around.
I've never tried using the default skeleton though (or milkshape for that matter) so I can't really give any input on this. One important thing to keep in mind with dts/dsq files is that while you can have bones in the DTS file that aren't in the DSQ, all bones in your DSQ have to exist (with the same name of course) in the DTS or it won't load the DSQ.
Also note that the exporters may automatically remove bones that it deems "unnessesary" at will, so make sure you include all important bones in the "AlwaysExport" list in your config file (and make sure the exporter use the right config both when exporting the mesh and animation files).
06/26/2005 (9:49 am)
I agree mostly Foster, but the "in no way, shape or form hinders your work" isn't _entirely_ true... there are quite a lot of things to keep in mind with both the dts format, and various quirks in the exporters. For example I have at least half a dozen of things I'd like fixed in the max exporter (and that I'll look into fixing if/when my workload eases up a bit =), and I've written probably at least as many max scripts to work around some other problems. So saying it has no problems wouldn't be quite fair. Don't get me wrong though, once you figure out the quirks of the exporter it does work quite well. Took me about a week or two to get up to speed with the max exporter, but then again I usually have a knack for figuring things out. But given some time and a lot of trial and error most oddities can be worked around.
I've never tried using the default skeleton though (or milkshape for that matter) so I can't really give any input on this. One important thing to keep in mind with dts/dsq files is that while you can have bones in the DTS file that aren't in the DSQ, all bones in your DSQ have to exist (with the same name of course) in the DTS or it won't load the DSQ.
Also note that the exporters may automatically remove bones that it deems "unnessesary" at will, so make sure you include all important bones in the "AlwaysExport" list in your config file (and make sure the exporter use the right config both when exporting the mesh and animation files).
#6
06/28/2005 (9:25 pm)
Ok, so i have my model, i made it all the same skeleton for the animations, do i need to 'build' a cfg file, or anything else? the animations still do not play, i have them all scaled exactly the same size, etc. and also, on a secondary note, how to i 'mount' objects? such as i have 4 mount points on my model...does this matter?
#7
All this morning, I've been busy, heh, heh....
I took Chris R.'s default DTSPlus! rig and edited it to include a new MountPointNode[mount3]. This is a Node intended to simulate LeftHand weapon control for Left hand favoring developers, utilizing the Milkshape and DTSPlus! rig!!! Hope you like it, I'll see if Chris wants this additional example; since I'm in the process of donating a few example files focusing on Visibilitiy Animation sequences...
Normally, the transforms get reset in Milkshape3D when a new Joint is added to a chain/parent. I've gotten a new Node added and near perfect mirror alignment of the mountpoint to ensure proper grip posture when the weapon is mounted. This rig does not bork the sequences when exported; I'm watching the rig with a pistol mounted on this new Left handed Noded and it looks very, very good; it's got all the look*.dsq's loaded and it's cycing player_forward.dsq!! I would need someone usinge a lefthanded rig to confirm if my work has been beneficial; otherwise each weapon's script might need tweaking to get it all right.
I do like the Milkfarmers out there.....
Rex
06/29/2005 (1:42 pm)
You'll need to create a script and execute it during some part of initialization to get a .DTS shape to 'load' the .DSQ sequences['actions'/Threads] during the engine firing up. Follow the player.dts/player.cs example in the Shapes folderTree. Notice the form of the TSSConstructor file takes and the path/naming used to get it all together. This example 'validation'/loading occurs[gets executed] from within the script for the player.CS dataBlock. As long as you follow the caveat of using the same skeleton that is within the target sequences, you'll be fine.All this morning, I've been busy, heh, heh....
I took Chris R.'s default DTSPlus! rig and edited it to include a new MountPointNode[mount3]. This is a Node intended to simulate LeftHand weapon control for Left hand favoring developers, utilizing the Milkshape and DTSPlus! rig!!! Hope you like it, I'll see if Chris wants this additional example; since I'm in the process of donating a few example files focusing on Visibilitiy Animation sequences...
Normally, the transforms get reset in Milkshape3D when a new Joint is added to a chain/parent. I've gotten a new Node added and near perfect mirror alignment of the mountpoint to ensure proper grip posture when the weapon is mounted. This rig does not bork the sequences when exported; I'm watching the rig with a pistol mounted on this new Left handed Noded and it looks very, very good; it's got all the look*.dsq's loaded and it's cycing player_forward.dsq!! I would need someone usinge a lefthanded rig to confirm if my work has been beneficial; otherwise each weapon's script might need tweaking to get it all right.
I do like the Milkfarmers out there.....
Rex
#8
06/29/2005 (1:51 pm)
While I haven't checked out the adam pack, the jill pack comes fully rigged and there is a ms3d version native. They also give some good backround information on animation, key frames, nodes. The jill pack was built as a learning tool where the adam pack seems to be more or less built as a main character model pack.
Torque Owner Berserk