General Questions about DSQ animations
by Nicolai Dutka · in Artist Corner · 04/23/2010 (2:36 pm) · 7 replies
So, can a character playback more than one DSQ simulatenously? My understanding was that a DSQ file could contain information about animating specific bones such as a hand wave or a foot tap. What if I wanted the character to wave their hand and tap their foot at the exact same moment? How would I do that?
My intention is to have a 'Equip Weapon' and 'Unequip Weapon' animation for EACH hand (4 animations total). I want the player to be able to holster their weapon at any time they want and equip it any time thereafter. I've already made the engine code changes that makes this work, I just need the animations to play. I currently have the weapons themselves animate when you switch weapons (when you switch, first animate the current weapon to 'unequip', then mount the new weapon, then play the new weapon's 'equip' animation). This works beautifully, especially in first person, but causes shadow aligntment issues. Basically, if you look at your shadow while doing this, you can see the shadow for the gun being holstered, but the player's arm is still in a forward 'ready' position, so you see 2 shadows that aren't doing the same thing. So, instead of animating the gun, I need to animate the character's hand. However, I don't want this animation interfering with other animations such as run or jump.
Currently, all of my animations are baked in to the character's DTS file. I'll be spending the weekend changing that so the animations are in DSQ files instead of baked in. We have at least a dozen other characters that all need the same animations and are almost exactly the same size, all human, so the rig should be 'shareable' which is like the foundation of DSQ animations if I am understanding correctly... The character meshes need to have the same rig in order for the DSQ files to be compatible, correct?
Ok so...... Does the engine allow me to playback simultaneous animations such as the hand wave + foot tap, or do I need to have animations created for every possible combination?
My intention is to have a 'Equip Weapon' and 'Unequip Weapon' animation for EACH hand (4 animations total). I want the player to be able to holster their weapon at any time they want and equip it any time thereafter. I've already made the engine code changes that makes this work, I just need the animations to play. I currently have the weapons themselves animate when you switch weapons (when you switch, first animate the current weapon to 'unequip', then mount the new weapon, then play the new weapon's 'equip' animation). This works beautifully, especially in first person, but causes shadow aligntment issues. Basically, if you look at your shadow while doing this, you can see the shadow for the gun being holstered, but the player's arm is still in a forward 'ready' position, so you see 2 shadows that aren't doing the same thing. So, instead of animating the gun, I need to animate the character's hand. However, I don't want this animation interfering with other animations such as run or jump.
Currently, all of my animations are baked in to the character's DTS file. I'll be spending the weekend changing that so the animations are in DSQ files instead of baked in. We have at least a dozen other characters that all need the same animations and are almost exactly the same size, all human, so the rig should be 'shareable' which is like the foundation of DSQ animations if I am understanding correctly... The character meshes need to have the same rig in order for the DSQ files to be compatible, correct?
Ok so...... Does the engine allow me to playback simultaneous animations such as the hand wave + foot tap, or do I need to have animations created for every possible combination?
#2
Then I'll be able to get the blend animations I need. :)
The only problem I can see (at first glance) is that.... there is no example of this mysterious .CFG file I keep reading about. I have yet to see one in action...
04/23/2010 (4:33 pm)
Good info thanks. These are going to have to be split up into the categories as that documentation suggested: Arms only, lower body only, upper body only, head only, etcThen I'll be able to get the blend animations I need. :)
The only problem I can see (at first glance) is that.... there is no example of this mysterious .CFG file I keep reading about. I have yet to see one in action...
#3
Does it matter what I name it?
Do I have to execute it?
Should I use Max to generate it, or can I make one manually?
Is a bone considered a node?
Where is the rest of the documentation on this?
04/23/2010 (4:39 pm)
Where does the .CFG file go?Does it matter what I name it?
Do I have to execute it?
Should I use Max to generate it, or can I make one manually?
Is a bone considered a node?
Where is the rest of the documentation on this?
#4
If I start with the main body (visually, the inner most mesh) and attach the other objects, creating a single mesh... Then my character doesn't export properly because it goes over the 10,000 poly threshold. However, if I leave them all separate, none of them are more than 10k poly on their own, so the whole thing exports without issue.
The problem is, I've never done a full character made of multiple meshes like this. I understand I can set up the hierarchy linking the head to the body, jacket to body, eyes to head, hair to head, etc, but then what do I do about the skin modifier? Does each piece get the entire skeleton added to the skin, or just the bones that piece needs in order to animate? Can more than one mesh use the same set of bones?
04/23/2010 (4:45 pm)
What if my character is made up of more than 1 mesh? Do I apply the entire skeleton to each mesh that needs to be animated, or just the bones needed to animate that one mesh? We have a 15,000 poly character divided into separate meshes for: Head, eyes, hair, main body (chest, arms, and legs), feet, jacketIf I start with the main body (visually, the inner most mesh) and attach the other objects, creating a single mesh... Then my character doesn't export properly because it goes over the 10,000 poly threshold. However, if I leave them all separate, none of them are more than 10k poly on their own, so the whole thing exports without issue.
The problem is, I've never done a full character made of multiple meshes like this. I understand I can set up the hierarchy linking the head to the body, jacket to body, eyes to head, hair to head, etc, but then what do I do about the skin modifier? Does each piece get the entire skeleton added to the skin, or just the bones that piece needs in order to animate? Can more than one mesh use the same set of bones?
#5
Put the .cfg file into the directory of the .max file.
Open the max file.
Export.
an example of a default cfg file:
04/24/2010 (6:41 am)
Not 100% sure as i'm not an artist but i believe you can control the dts exporter with it.Put the .cfg file into the directory of the .max file.
Open the max file.
Export.
an example of a default cfg file:
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 +Error::AllowEmptySubtrees +Error::AllowCrossedDetails +Error::AllowUnusedMeshes -Error::AllowOldSequences -Error::RequireViconNode -Param::CollapseTransforms //=Params::T2AutoDetail -1
#6
you will want to watch out with the blend animations as they stack On Top of the base animation, use a non-blend animation if you can, i too will be tearing into the animation sequences in the next few weeks for a torque project.
ie:
#1= Base animation (idle animation)
#2= Blended animation #1 (arms up/down)
3#? ...then the reload animation? = it wont line up properly.
instead
get your reload into the #2 slot and ignore the arms aiming code, or make each a non-blended animation.
also, over 10k poly mesh? ouch get the artist to re-typography it down. most games are maybe 3k game models and only go higher for cinematic non-real time shots.
usually game characters are not whole layers of clothes, you delete any polys covered by clothes. I make the whole character one mesh, which is deformed by the skeleton/Armature. any of his equipment can be attached in game like the weapons, backpack, belt junk, shoulder armor...etc anything that he can put on/take off is another object (non deforming)
if you want him to change clothes, then its another model most of the time, or your hiding/revealing meshes, but that takes up raycast checks I THINK to ignore each hidden mesh, i have to check into that still.
05/02/2010 (4:51 am)
its been a few years since i did some torque characters, gotta dig em back out... stuff may (read probably has) changed since 2005.you will want to watch out with the blend animations as they stack On Top of the base animation, use a non-blend animation if you can, i too will be tearing into the animation sequences in the next few weeks for a torque project.
ie:
#1= Base animation (idle animation)
#2= Blended animation #1 (arms up/down)
3#? ...then the reload animation? = it wont line up properly.
instead
get your reload into the #2 slot and ignore the arms aiming code, or make each a non-blended animation.
also, over 10k poly mesh? ouch get the artist to re-typography it down. most games are maybe 3k game models and only go higher for cinematic non-real time shots.
usually game characters are not whole layers of clothes, you delete any polys covered by clothes. I make the whole character one mesh, which is deformed by the skeleton/Armature. any of his equipment can be attached in game like the weapons, backpack, belt junk, shoulder armor...etc anything that he can put on/take off is another object (non deforming)
if you want him to change clothes, then its another model most of the time, or your hiding/revealing meshes, but that takes up raycast checks I THINK to ignore each hidden mesh, i have to check into that still.
#7
"Does it matter what I name it?" = Yes, the CFG file should be named as the file you intend to use it with; "myShape.dts" would have a CFG named, 'myShape.CFG', and "myShape_mySequence.dsq" would have a CFG named, 'myShape_mySequence.CFG'. 'Normally', if you specify to use a CFG file and one is not found in the folder of the file[to export], 'default' values are used...beware! So, name them, place them. I don't rely upon exporters for that, unless I check to make certain there is a CFG file ready to go. Many times, I've not changed the name[after copying an existing one], and get the 'default' flavoured one..lol. Extra nodes, etc...bah.
"Do I have to execute it?" = No, auto executes with export process.
"Should I use Max to generate it, or can I make one manually?" = Depends upon exporter. I 'normally' create it by hand[well copy over an existing one...and edit as needed.] There are a lot of parameters you can set in a CFG file....;)
"Is a bone considered a node?" = Yes
"Where is the rest of the documentation on this?" = Check you target modeling programs exporter documentation. Blends have an explanation in the Official Documentation. I believe there is a good explanation of the CFG file in the DTSPlus! exporter Resource by Chris Robertson.
Hope this helped to answer some of your DSQ questions!
There really isn't a lot of details on the CFG file, the above example leaves out some parameters....you can specify a weighting limit on vertex[how many nodes can affect a single vertex], you can specify a delta level to determine if a node has been 'animated'...a few more goodies as well...
Here are some of the 'xtra' parameters you can set....and my crazy values I input!
05/02/2010 (5:03 am)
"Where does the .CFG file go?" = in the folder where the DTS will be generated."Does it matter what I name it?" = Yes, the CFG file should be named as the file you intend to use it with; "myShape.dts" would have a CFG named, 'myShape.CFG', and "myShape_mySequence.dsq" would have a CFG named, 'myShape_mySequence.CFG'. 'Normally', if you specify to use a CFG file and one is not found in the folder of the file[to export], 'default' values are used...beware! So, name them, place them. I don't rely upon exporters for that, unless I check to make certain there is a CFG file ready to go. Many times, I've not changed the name[after copying an existing one], and get the 'default' flavoured one..lol. Extra nodes, etc...bah.
"Do I have to execute it?" = No, auto executes with export process.
"Should I use Max to generate it, or can I make one manually?" = Depends upon exporter. I 'normally' create it by hand[well copy over an existing one...and edit as needed.] There are a lot of parameters you can set in a CFG file....;)
"Is a bone considered a node?" = Yes
"Where is the rest of the documentation on this?" = Check you target modeling programs exporter documentation. Blends have an explanation in the Official Documentation. I believe there is a good explanation of the CFG file in the DTSPlus! exporter Resource by Chris Robertson.
Hope this helped to answer some of your DSQ questions!
There really isn't a lot of details on the CFG file, the above example leaves out some parameters....you can specify a weighting limit on vertex[how many nodes can affect a single vertex], you can specify a delta level to determine if a node has been 'animated'...a few more goodies as well...
-Param::SequenceExport -Param::CollapseTransforms =Params::AnimationDelta 0.0001 =Params::SkinWeightThreshhold 0.0001 =Params::SameVertTOL 0.00005 =Params::SameTVertTOL 0.00005 =Params::weightsPerVertex 4
Here are some of the 'xtra' parameters you can set....and my crazy values I input!
Torque 3D Owner Hans Cremers
Kinda like walking and aiming up and down right?
http://docs.torquepowered.com/artist/official/3D%20Studio%20Max/Animation.html#Blend_Animations: