HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Some advanced MDL editing questions

05-23-2003, 12:23 PM#1
Xaran Alamas
Seeing as Cookie doesn't seem to reply to my PMs I've got some advanced MDL questions. Note I have done some experimentation but it keeps crashing whenever I try :bgrun:

First how can I transfer an animation from one unit to another, for instance transfering the DH's hair animations to another unit or the Dryad's spear throwing animation to the Nerubian. Does it have something to do with the bone rotations? It's just I know you've done it in the past and I'm willing to learn how to do it if you'll teach me ;)

Second is combining GEOSets, I'd really appreciate it if you could help me with these things please, thank you :D
05-23-2003, 02:24 PM#2
Guest
transferring animation to another is a cumbersome work, and it never guaranties a succes. Its possible though in theory.

Lets take a easy example: the child and the goblin merchant inside thegoblin merchant shop model. Lets say you want to give the goblin the animation of the child. the goblin has matrice groups that are most likely identical of the child (hand, head, feet). translate those values into the values of the child. For example, if the goblin 's head is bound to bone objectid 9 in the merchant model, but in child model the head is bound to objectid 10, then you have to change the 9 of the goblin into 10. etc.

You can also just add the values of the animation into each bone and recalculate the animation frames, but the problem would be the fact that the pivotpoint of each model is different (for instance, the head pivotpoint of infernal is way higher then the pivotpoint of the head of a child). To fix this, you have to translate the animations into a correct value (this only applies to translation, not for rotation), which is a cumbersome work.

I suggest this never, as it takes alot of work




=============================================

combining geosets is easy when you know which geoset represents what. This can be seen handy in milkshape, as they are all grouped. (depends howeer on the model). Just copy the entire geoset data from the mdl to a empty txt file, correct it, then implent in the other mdl. The most important aspects are the matrice groups and the materialid. Matrice represents a group of vertexes that are bound to a bone (the number represents the objectid) and materialid represents what material is used on the geoset.

Just correct these points and the geoset works. A example would be the hero glow. This geoset has matrice 0,1 and 2 usualy, representing the hero glow animation. Just add the bones, object id and animation into it, then paste the geoset with te corrected values. Also dont forget to add the pivotpoints etc. I can hardly explain it here, so I suggest to experiment with the heroglow geosets etc.
05-23-2003, 04:42 PM#3
Xaran Alamas
hmm animation transferring does sound like too much work (lol it would probably be easier to make all new animations lol) but thanks about the Geoset thing :ggani: :D
06-03-2003, 05:54 AM#4
Xaran Alamas
ok I managed to succesfully combine GEOSets however I've now got the problem that WE crashes when a) the Decay Flesh anim gets to the bit where it shows the bones and b) the decay bone animation. I'm not quite sure what's going on so I'll attach the MDL and hope that someone can help.
BTW the original model is the Crypt fiend
06-03-2003, 08:34 AM#5
Guest
Simple,: when you add a geoset you must take into acount that the geosetanim is correct and the bones too. For example, in the Koten project I was in charge of animating the ricehouse (goddamn hopesfall put it in cryostasis). The problem was that there were various geosets in the model; which were totally new and have no bone asssignment, geosetanims and crap.

Whenever you have a new geoset that does NOT have a legit BoneId in the matrice field (means a number that DOES exist in the mdl; if you have a model with 58 bones and the new geoset requires a boneId of 231, go figure) it will either disappear and appear on the next unit you select which DOES have the BoneID (like, a knight with the geoset attached to his head, following its movement) .

To prevent these issues i recommend to add a new boneId and give that number exclusively to the geoset. Of course if youre lazy to do it, most assumable is that you give the geoset a boneid that is already used and appears in a cetain frame. The fact that its used is no problemo, the fact that it only appears at a certain frame does (it creates the problem that the geoset will not follow the model but attach itself to others). Also, Bones have a geosetId and geosetanimId. If those two does NOT match with the geoset number and its geosetanim=crash

You can just of course change
GeosetId Multiple,
Geosetanim None,

but this is a half solution. Best option is to add a new bone and fix the entire pivot-bonesystem and give a new geosetanim to the geoset.

============================================================================================

The issues you must fix in your mdl if you have a small file are the following:

give the new geoset a unique BoneId for usage in the Matrice section in the geosetdata.

create a new geosetanim that should have the settings from the body of the unit (so that the attached geoset appears and disappear with the body, like when decaying) and make sure the GeosetId that it uses, reflexts the number of your geoset

create a new Bone with a new Id, which represents your geoset. problem is that with large models with lot of bones, you must rearrange all their object ids and the pivotpoint section -_-

============================================================================================

in case of BIG files with a large bone structure, I suggest to go to the boneid your geoset is using, and change the
GeosetId Multiple
GeosetanimID None

Of course this might cause some problems with the decay geoset, as if it has no geosetanimid, it will aways be visible...

yur pick which solution is best. Imo the first option is the cleanest and best solution you can have.
06-03-2003, 02:16 PM#6
Xaran Alamas
thanks, I will try it out (I knew those GEOSet animations must be for something lol ://// )

Oh another thing, is there any special way of working out what part of a GEOSet is a certain object (like a sword or something) or is it just guess and check (which I should think would be very time consuming...
06-04-2003, 07:56 AM#7
Guest
you mean what geoset represents what in the model (if the sword is in one geoset with the body, dont bother splitting the geoset...only option is to scale the body without screwing up the Tverts)...welll in milkshape they have grouped in geoset groups. easy to select and work....in 3ds i dont know what they did to that.
06-04-2003, 09:54 AM#8
Xaran Alamas
I was talking about a sub-part of a GEOSet so eg if the sword was a GEOSet along with the body but nvm.
06-04-2003, 11:27 AM#9
Guest
Quote:
Originally posted by Cookie
.....................(if the sword is in one geoset with the body, dont bother splitting the geoset...only option is to scale the body without screwing up the Tverts)..................


thats your answer :ggani:
06-17-2003, 01:17 PM#10
Xaran Alamas
just a question about Matrices. What do the two numbers after groups mean? Here's a sample:
Quote:
Groups 120 249 {

I assume the first number is the number of "Matrices { x }," entries (I counted) but what is the second? It's just that most of the GEOSet combining I'm doing I'm adding GEOSets from new static models I've exported from 3dsmax and they all have the second number defaulted to 1.
EDIT: BTW the sample is from the first GEOSet of the Knight model
06-17-2003, 02:48 PM#11
Guest
Groups 120 249 {
Matrices { 4, 5 },
Matrices { 4, 5, 6 },
Matrices { 4, 5, 10 },
Matrices { 4, 6, 7 },
Matrices { 4, 7 },

the number 120 represents how many matrice groups, the number 249 represents total object id's (in my example you see 13 objectid's currently but 5 matrice groups)

doesnt matter anyways, mdl converter should corigise that values correctly anyways
06-17-2003, 06:44 PM#12
Xaran Alamas
so my models must be crashing cause I haven't set up the new bones/GEOSet anims correctly then :-/
06-17-2003, 07:54 PM#13
Guest
well if you cant figure it out put the mdl and more data here, so we can figure out what crashes..

but i can give ya a hint: usually bones and matrices =D
06-18-2003, 12:03 AM#14
kdub
dude just learn max and make a new ****ing model. editing shit is a waste of time and shows nothing of what you can do other than tedius mdl editing bullshit.
06-18-2003, 04:40 AM#15
Xaran Alamas
I am learning max but untill someone makes an importer that imports the original game animations correctly this is my best bet for how to make models that retain their original animations :////