Blender animations test thread.

For those working on art content.

Blender animations test thread.

Postby Smoking_Mirror » Mon Jul 28, 2008 7:23 am

This is where I'm going to be posting the experiments in creating IK driven animations using blender and the all new Blender to torque 0.96 exporter.

The fact that it's not version 1.0 suggests there's still going to be issues, but I don't think they are going to be insurmountable.

I'll post the results of my tests here and also ask that people can help me out with testing these in Torque as I don't have a license.

Initially I'm going to start with basic tests, and then move up to the fully rigged and animated mech.

EDIT; animation now working, just need to iron out the bugs.

(P.s. how tall should the vindicator be in game? apparently 1.3 Blender units are 1 meter in torque. I think BTS is half scale though, so I guess 1.3 blender units equal 2 meters.

So how many blender Units should equal 1 Vindicator?)
Last edited by Smoking_Mirror on Tue Aug 19, 2008 2:02 pm, edited 1 time in total.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby adamsderk » Mon Jul 28, 2008 4:19 pm

Smoking_Mirror,

You are missing some information to be able to test the animation, but you can do it yourself.

First, name your animation "run" then export the dts using a mech name (check the /bts/data/models/mechs/ directory for all the mech files). Copy your dts to the appropriate mech directory (I suggest you rename the real one) and fire up the game. Use instant action to select your mech and start the mission. Use the normal controls to move and hit tab to get an external view so you can watch the animation.

The units in Torque are meters and you are right that I am running at half scale. So divide the height of the mech by .65 and you will have the number of Blender units.

Thanks.
Image
adamsderk
Site Admin
 
Posts: 1404
Joined: Tue Apr 19, 2005 11:52 pm
Location: Western Washington

Postby Smoking_Mirror » Thu Aug 07, 2008 10:55 am

I'm going to take a run at this today with my grasshopper model.

Using your system I worked out the height of the mech to be 13.75 meters.

Times that by 1.3 and cut it in half for the half scale and you get around 9 blender units. (8.9)

I'll try that out and see how it looks. Please tell me now if it's really wrong.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby Smoking_Mirror » Thu Aug 07, 2008 3:25 pm

Made some progress with the rig today. Still yet to test it in game, but I'm pretty sure it'll work.

It's actually two rigs. One simple IK'd rig which holds the animations, and a second rig which deforms the mesh and is constrained to copy the movements of the control rig.

When it comes time to export, you simply bake the IPO positions of the secondary mesh, delete the control mesh and export.

I think it's going to work, we will have to wait and see. There may be an even easier way, but I don't know if it'll work yet, so I'll try the one I'm pretty sure actually will work.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby Smoking_Mirror » Fri Aug 08, 2008 1:27 pm

Here's the walk cycle I've been working on.

Please give me some feedback.

Grasshopper walk cycle.

BTW Derk, I noticed that you originally had both a walk, and a run cycle, but that the export list only shows (what I'm assuming is) the walk.

Obviously, this is the better choice if you have to choose just one. With a walk, you have 1 foot on the ground at all times. That means it will work for even really slow movement.

However, is it possible to blend in a run cycle at higher speeds, or just use two movement animations?

A walk cycle is really hard to make well for both high speed and low speed movement...

EDIT:

Well.... It does show up in game. All the objects are there, they walk as expected (sometimes. I'm not sure why it's showing up sometimes and sometimes not. I used frames 360-396), and had the test texture attached. However, the mech is back to front and buried up to his waist in the ground.

Height seems almost right though. ^-^

Image

I'm going on holiday with friends this weekend so I won't be able to work on this again until next week.

Doesn't seem to be any shadows though. Maybe because of the ground issue, I'll try again next week and see if I can get something better going on.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby Smoking_Mirror » Mon Aug 11, 2008 3:32 pm

Image

Yes, he's walking!

Had lots of trouble trying to understand how to get this to work, but finally the model is in game, walking around and working perfectly.

Next I'm going to add some mount points to get it to mount the weapons in the right place. Also I need to go back and re-do all the animations. During the process of getting it to work I found that I needed to rotate the whole skeleton 180 degrees to get it facing the right way. This messed up all the animations, and I had to just do some lame placeholder ones to test in game.

I'll make two mech animations (human legged and bird legged), and send them to Derk. You can tell me what you think.

Even the lame placeholder animations look much more lifelike and "fun" in the game. I'm also going to see if I can get the torso twisting for non-split torsos to work. That is, a 45 degree twist for mechs without a lower torso. I'm pretty sure it should work, but we'll have to wait and see... ^-^

p.s. the size was wrong. Can you give me some feedback on how big the mechs should be. I had to reduce it by 20% to get it around the right size, and it's still a little bigger than it perhaps should be. :(

Also, you may be interested in this. Derk, check what is being said here triangles vs triangle strips

What are you using? Triangles, triangle strips, or triangle lists? It says the lightwave exporter doesn't support triangle lists or strips, don't know about the milkshape one, there doesn't seem to be any options...

Aparently there is a massive performance boost to using triangle lists rather than standard triangles.

Also please see the bit about the shadow bug in pre 1.5 torque. You'll notice the the screenshot I posted above doesn't have a shadow. I'm not sure what the bug is as I can't access that part of the development forum.

Here's the fix for the shadow bug. Again, I can't access the thread because I don't have the developer access.

Shadow bug
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby adamsderk » Mon Aug 11, 2008 4:33 pm

Smoking_Mirror,

The animation looks great. Right now the engine only has a run cycle. I originally made the walk cycle, but when it is sped up to run speeds it looks really dorky. Ideally it would be good to have it switch between the walk and run animations. If you put them both in, the run animation is the one that is called, but having the walk will allow be to improve it in the future.

The size for a Mech is based on the following (non-simplified) equation:

((((tonnage-20)/5)/(16/6))+10)*modifier

with modifiers being:

Man 1.0
Dog 0.9
Chick 0.8
Quad 0.6

The size is in meters, but I don't know how to convert them to Blender. Also remember the game size is actually have of the "real" height in meters. In Milkshape I shrink it 50% during the export, so I work in 100% size.

Also, don't forget to add the "side" animation to be able to animate the sidestep (it is really slow for non-quads).

As for triangles versus triangle strips, I have no idea. I thought it was strips as that is the call during render that I had to modify to darken the damaged sections. But I'm not sure.

Good find on the shadow bug, I've put in the fix.

Thanks.
Image
adamsderk
Site Admin
 
Posts: 1404
Joined: Tue Apr 19, 2005 11:52 pm
Location: Western Washington

Postby adamsderk » Mon Aug 11, 2008 4:38 pm

Smoking_Mirror,

I just looked over the shadow bug fix and since the fix is applied rendering the triangle strips and your model doesn't have a shadow and mine do, then mine are triangles, not strips.

If you get it working, you'll have to teach me how to export them so we can switch them all over to strips (and new animations).

Thanks.
Image
adamsderk
Site Admin
 
Posts: 1404
Joined: Tue Apr 19, 2005 11:52 pm
Location: Western Washington

Postby SandMan » Mon Aug 11, 2008 4:51 pm

And then teach me how to do it, so Derk can focus on game improvement and not have to worry about the gruntwork of updating each and every model.

//SandMan
For Davion!
ImageImage
SandMan
 
Posts: 172
Joined: Mon Jan 07, 2008 4:48 pm

Postby Smoking_Mirror » Mon Aug 11, 2008 11:12 pm

OK, Once I've optimized the process I'll write a tutorial with lots of pictures.

The other performance issue is that on the Torque forum, they said that if you have your model set to double sided polys (that is, when rendered the back faces are rendered too, where they are visible) torque actually creates a whole extra duplicate set for triangles, and flips them. This means that 1000 triangles becomes 2000 triangles, and 2000 triangles, becomes 4000 triangles.

I don't know about milkshape, but in blender, double sided is the standard setting. So they'll have to be set to single sided before export.

Recently even on my crappy PC I've been getting pretty good performance speed from BTS anyway, but it'd be great if we can really speed it up.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby adamsderk » Tue Aug 12, 2008 10:26 pm

Smoking_Mirror,

Sounds good. I know that Milkshape does single sided because I put the eye inside the head and you can see "through" the model, but if you turn the eyepoint, you can see the arm, but not the torso (in Mechs with the head as part of the torso).

I would love to have an increase of speed of about a hundred fps (from the article), it would make large battle more practical.

Thanks.
Image
adamsderk
Site Admin
 
Posts: 1404
Joined: Tue Apr 19, 2005 11:52 pm
Location: Western Washington

Postby Smoking_Mirror » Fri Aug 15, 2008 6:07 am

I've got a list of weapon mounts from the archer. Are there some missing?

2,8,14,18,21,22,28 and 29 seem to be missing. Are these for weapons and equipment such as jumpjets, not included on the archer?
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby SandMan » Fri Aug 15, 2008 8:55 am

The number of weapon mounts is determined by looking through all of the canon variants and determining where everything is distributed. Then, mount points are added which allows all of the canon variants to be constructed from the model.

If, for example, a 'Mech has no variants with weapons in the left torso, the left torso mount points (4 through 8) will be left off of the model.

//SandMan
For Davion!
ImageImage
SandMan
 
Posts: 172
Joined: Mon Jan 07, 2008 4:48 pm

Postby Smoking_Mirror » Fri Aug 15, 2008 9:24 am

OK, can I have a list of all the potential mounts, and their game engine numbers and locations, in the following format;

mount number {location}[special requirement]

mount0 {belly}[none]
mount11 {right shoulder, 2nd from top}[parented to mount 10]

Or can I have an unmodified milkshape model with all the mounts attached so I can place them on the blender DTS export template?

On a different subject, I tried an experiment with a non twisting torso, but I'm not able to get it to work, sadly. I think it's maybe something which may be possible later, when I know something more about the exporter, but right now definitely not. So all mechs need a twisting torso, even if twisting range is limited.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Postby Smoking_Mirror » Tue Aug 19, 2008 2:08 pm

Derk, how difficult would it be if I wanted to change the names of the bones?

I don't need to change the names of the objects attached, just the bones.

The thing is that larmtop is not recognized by blender as being the "left" version of the top arm bone. but if I rename it armtop_l or armtop.l blender can automatically see that it's the "left" hand version of armtop_r and that allows some very useful actions, like mirror editing of the armature and copying and pasting poses as a mirrored form.

I can imagine that it would cause some problems with your code, as no doubt BTS uses larmtop to display damage an for other things. It's going to be much more difficult to work with the armatures if I have to use the current naming system.
Smoking_Mirror
 
Posts: 370
Joined: Wed Jul 04, 2007 2:38 pm
Location: South Korea (English)

Next

Return to Artwork

Who is online

Users browsing this forum: No registered users and 1 guest

cron