View Full Version : [Question]Regarding AnimTrees
Hello, I'm a C++/C#/Simple LUA programmer who have been using UDK since it's release. I'm working alone and not in a team. I've been trying to use my own assets when I ever can. I've created custom materials of Rock, Wood, Sand, Grass, etc, etc. I came to the point where i want to actually use my own character so I bought the Dungeon character pack from Arteria3D, and have been trying to get the skeleton, so far the only problem was the size of it, however, I don't want to look in that for now, it's just a matter of scaling.
Now I got a fully rigged and animated charcter in content browser, I've followed the Custom NPC Tutorial to get it first, tryed it and it worked. Now comes the problem, what are AnimTrees? Why don't my character animated when running it on a custom controller?
Denny
02-04-2010, 05:11 AM
AnimTree's are a node based system for setting up the structure of a character animation. In the AnimTree you can specify which connections a mesh should use depending on states, for example there are built in features checking what PHYS-state the pawn is in and change connections depending on that. For example a pawn can be in PHYS_Walking or PHYS_Falling, just using the AnimTree you can make the character play a walk animation with directional movement, sync it up to the ground and when the pawn jumps it changes to PHYS_Falling and you make a jump animation. This without a single line of script. You can also create your own custom nodes in UC and add those to your AnimTree. It's very common to use AnimSlots and similar to call on through code and tell it to play a specific animation.
AnimTree's help a lot as you can define how certain nodes blends to specific parts of the body, so you can call for an animation to play on the upper body by just specifying the node rather than going through the whole hassle of specifying joint hierarchies, blend time and so forth.
I really recommend you look into it, it will help your animation workflow a lot. :)
AnimTree's are a node based system for setting up the structure of a character animation. In the AnimTree you can specify which connections a mesh should use depending on states, for example there are built in features checking what PHYS-state the pawn is in and change connections depending on that. For example a pawn can be in PHYS_Walking or PHYS_Falling, just using the AnimTree you can make the character play a walk animation with directional movement, sync it up to the ground and when the pawn jumps it changes to PHYS_Falling and you make a jump animation. This without a single line of script. You can also create your own custom nodes in UC and add those to your AnimTree. It's very common to use AnimSlots and similar to call on through code and tell it to play a specific animation.
AnimTree's help a lot as you can define how certain nodes blends to specific parts of the body, so you can call for an animation to play on the upper body by just specifying the node rather than going through the whole hassle of specifying joint hierarchies, blend time and so forth.
I really recommend you look into it, it will help your animation workflow a lot. :)
Forgive me that I came from a programming background, I came from OpenGL/Unity background. Shouldn't it just be simple, that i've got my AnimSet ready using key framed animations. Wouldn't it just be for the controller to be (in pseudo code):
if(Player.State == NULL}
Player.Animation.CrossFade("Idle")
switch(InputKey)
case 'W':
Player.Animation.CrossFade("Walk")
Player.Controller.Move();
[...]
All what i have is an animated keyframed model with animations for nearly everything from idle to swimming to jumping, may you explain more please?
Denny
02-04-2010, 07:58 AM
The purpose of the AnimTree is for rapid prototyping and work from an Artist standpoint, it's supposed to relieve the programmer of animation duties. Look at the image below and I think you'll understand why it's a lot simpler to use. It doesn't stop you from making your own animation system though.
http://dl.dropbox.com/u/1123397/AnimTreeExample.png
The purpose of the AnimTree is for rapid prototyping and work from an Artist standpoint, it's supposed to relieve the programmer of animation duties. Look at the image below and I think you'll understand why it's a lot simpler to use. It doesn't stop you from making your own animation system though.
http://dl.dropbox.com/u/1123397/AnimTreeExample.png
Well, Had to figure out the very basics, insufficient documentation on UDN :(.
Thank you. That way they will leave everything in the game play to artists, and programmers will be working only on Tech :(.
What about this very simple thing:
http://i50.tinypic.com/2en3trm.png
The purpose of AnimTrees is just managing animations?
Denny
02-04-2010, 10:44 AM
The AnimTree is used for maintaining animation, morph targets and skeletal controllers. Yes would be the short answer.
If you want to make a simple tree for your character, standing still or moving, I recommend replacing Blender 1 with an AnimNodeBlendBySpeed. What it does is check what velocity the pawn is at and plays the specific animation according to that. You shouldn't even have to call anything through script.
The AnimTree is used for maintaining animation, morph targets and skeletal controllers. Yes would be the short answer.
If you want to make a simple tree for your character, standing still or moving, I recommend replacing Blender 1 with an AnimNodeBlendBySpeed. What it does is check what velocity the pawn is at and plays the specific animation according to that. You shouldn't even have to call anything through script.
Thank you, I've been lost trying to make a good script, didn't know about AnimNodeBlendBySpeed.
Also, I would like your recommendations for the tool that should be used by a programmer who is new to art, Max, Modo or Maya?
Denny
02-05-2010, 06:58 AM
Max or Maya if you're using UDK. Modo doesn't have proper tools yet for export to UDK, it's still a good contender if you want to just make stuff in the 3d application. Blender could be worth to look at but I recommend you wait until 2.5 has reached some more milestones due to the whole application revamp. Honestly though most principles are the same between apps so even if you become good at modelling in Maya or Max, you can still change application and spend some time to get back on track. Your modelling/animation skills won't just disappear if you change your mind and want to change application. Bevel is still bevel and so on.
Good luck. :)
Max or Maya if you're using UDK. Modo doesn't have proper tools yet for export to UDK, it's still a good contender if you want to just make stuff in the 3d application. Blender could be worth to look at but I recommend you wait until 2.5 has reached some more milestones due to the whole application revamp. Honestly though most principles are the same between apps so even if you become good at modelling in Maya or Max, you can still change application and spend some time to get back on track. Your modelling/animation skills won't just disappear if you change your mind and want to change application. Bevel is still bevel and so on.
Good luck. :)
I settled on Modo with .FBX export and import, it works right with UDK. I love Modo's Simple UI :D. Hate Max's UI, Maya is simply too complicated. Thank you :).
Denny
02-05-2010, 02:23 PM
I'm interested in Modo myself but I'll have to wait until character support is complete, both in regard to Modo itself and export to UDK. It's a powerful subd modeller and I've recently gained a lot of interest in the subject.
david.clifford
11-29-2010, 06:36 AM
Does anyone know where i can find a useful template on setting up an entire character movement set? One Which will show me (an animator not a programmer) which blend nodes to use where and so on.
Or if anyone has any helpful comments on how far someone can go with the anim tree without needing programming type skills id appreciate it. Im trying to learn how to set up a simple anim tree but i need to know if it will take a substantial smount of learning to get it game-ready. Otherwise i will need help of some programmers on team.
Any help much appreciated!
biGGer
12-11-2010, 12:54 PM
you can open up AT_CH_Human animtree, it ships with the UDK
Powered by vBulletin® Version 4.2.0 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.