HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Rotation animation not going farther then 180 degrees?

12-27-2004, 05:37 PM#1
UnknownCzar
I have created a sort of gear that goes in a 360 degree animation, it looked perfect in 3d-max, so I exported it and after a few skin problems got it to look perfectly.

But now I have another problem! The Animation goes to 180 degrees (5 seconds) and then stops! Then 5 seconds later it moves immediately back to the starting position of the animation and start over!

I have had so many problems with this model that I am about near death... Could some of you guys please tell me what I am doing wrong or what is wrong with the model??
12-28-2004, 01:55 PM#2
Guest
From your mdl:

Rotation 2 {
Linear,
0: { 0.0, 0.0, 0.0, 1.0 },
9600: { 360, 0.0, 0.0, 1.0 },
}

You are trying to use Euler rotations. Mdls use Quaternion ones.
Go to http://wct.wc3campaigns.com/Rotation.htm, choose Euler coordinates and put 360 degrees in the x field. Above you will see what the Quaternion values are.
12-29-2004, 12:49 AM#3
UnknownCzar
I am sorry but I do not understand how to use that tool... The only thing that could be changed to Euler was the "Euler Angles" and putting 360 into the "X" box did nothing... I put it in the "1st" box that appeared, but that gave me a number of which I had no idea of how to use.... Could you please explain it a bit easier?
12-29-2004, 02:47 PM#4
Oinkerwinkle
I made a program that does a similar thing but is specifically for MDLs here.

Ok, firstly, there can be a maximum of 90 degrees between any two rotation keys. So, you can't just go from 0 to 360. You have to go 0-90-180-270-0. By the naming standards of that program, you will want to be affecting the 'Bank' field, which is rotation on the forward/backward axis.
So, first you enter 0 for the bank (other 2 still at 0) and click 'Calculate'. You get "{ 0, 0, 0, 1 },". Paste that in as a rotation key, becoming, "0: { 0, 0, 0, 1 },". Change the bank to 90 and recalculate. By adding the appropriate frame, ou get the key "2400: { 0.707107, 0, 0, 0.707107 },". Continue, and you should eventually get this.

Code:
Bone "Bone01" {
	ObjectId 0,
	GeosetId Multiple,
	GeosetAnimId None,
	Rotation 5 {
		Linear,
		0: { 0, 0, 0, 1 },
		2400: { 0.707107, 0, 0, 0.707107 },
		4800: { 1, 0, 0, 0 },
		7200: { 0.707107, 0, 0, -0.707107 },
		9600: { 0, 0, 0, 1 },
	}
}
(You don't need your rotation or scaling frames since neither takes place.)

Another random thing: You might want to change 'black.blp' in your Textures section to Textures\Black32.blp so that you can use in in-game texture and not have to import.
12-29-2004, 03:20 PM#5
UnknownCzar
Thanks everyone! I can finnaly finish this model ^_^

also thanks for the black32.blp idea, i didint know there was such a texture in the game!