Forum > Modelling and Animation

[Research] .anim files : How do they work ?

(1/4) > >>

spik96:
Hi Modcraft !

My question sounds simple: how do .anim files work ?
Their purpose is to store animations that are not often used.
By the wiki I understand they are only parsed when the flags of the animation & 0x30 == 0.
The timestamps & values are then extracted using the offset like they would have been in the m2, but just in the .anim file. That's where I wonder : which one ?

.anim file example : taunkamale0069-02.anim

What does 0069-02 stands for ?
I guess 0069 is some kind of ID, but is it the AnimID ? It is likely (as 69 is EmoteDance, that would make sense) but if someone is sure about that..

Then 02. There is also for this model 0069-00 and 0069-01 so that must be the # of a particular animation (physical animation, not playable animation). But how should I be able to identify it ?

schlumpf:
http://pxr.dk/wowdev/wiki/index.php?tit ... ldid=18599

spik96:
Well... Thanks. You could not answer it better.

schlumpf:
Not sure if that was sarcasm.

spik96:
That was not sarcasm.
Are you sure about the flags ? Sometimes I have anims with &30 ==0 but it seems there is no .anim file attached to it. So I don't know where this information is stored. But after all, the WoW Model Viewer guys managed to do it and their program is open source so I should just look there.
EDIT : I found the part of their code l.1000 in model.cpp which handles .anim files so I will try to understand it.
EDIT2 : I'm locked as I can't find at all their "init" method they use on animation blocks... I'm stupid.
I found informations here about flags tho : http://www.pxr.dk/wowdev/wiki/index.php ... animations , I will try to follow them.

EDIT3 : There is a conflict with these informations.
On the main wiki, .anim files are loaded when flags & 0x30 == 0.
On the anim talk, .anim files are loaded when (flags & 0x20 == 0) && (flags & 0x40 == 0).
I think I can safely say it is equal to flags & 0x60.
This is different :
1st check) bits 4&5 have to be 0.
2nd check) bits 5&6 have to be 0.

Navigation

[0] Message Index

[#] Next page

Go to full version