View Full Version : Assigning Secondary Vertices in MS3D
14th Apr 2006, 8:55 PM
I have read the tutorials and have finally been able to get some degree of progress in meshing. I am using Milkshape 3d Version 1.7.7a, exported via SimPE, and have just downloaded the .8beta. One of the tools associated with MS3D allows you to see the secondary bone assignments, but not edit them. Originally, I read a tutorial by Dr. Pixel where you can modifiy the secondaries via the "MorphMods". A lot of the meshes that I am trying to modify (e.g. add shoes, etc.) only have one basic mesh and no morphnames for the "fat" and "pregnant" states. So, here is my conundrum....
How do I assign the secondary vertices with MS3D when I add objects to the mesh?
Any help would be greatly appreciated!
14th Apr 2006, 11:18 PM
If you use the Unimesh plugins, there'll be a menu under the Vertex menu that'll allow you to change the multiple bone assignments... I believe the editing of assignments via the morphs was a thing done with the now-obsolete BodyChop plugins. I'm sure someone with a little more technical knowledge on the subject could explain better, but essentially, get Unimesh. :)
15th Apr 2006, 12:33 AM
HP is correct.
More specifically, Milkshape all by itself does NOT support sims body meshes in any sort of real capacity - it only supports one bone weight assignment per vertex.
In order to have the meshes behave properly and animate smoothly, parts of the meshes need 2-3 (and with Nightlife they introduced 4 on some meshes, no idea why) assigments on vertices around the joints and the stomach region.
So... if you use the simpe milkshape export, it will only support one bone per vertex.
Correct solutions for body meshes involve taking the data in the gdmc, translating it into something we can edit, and then translating it all back. This includes the morph data, and multiple bone assignments.
Wes took on the challenge of trying to give us more support for bone assignments in the limited structure that Milkshape had - and give us a way to edit the morph data -- because the morphs are NOT actually separate meshes, they're just data... but for us to be able to *edit* them as human beings, we need to see/edit a mesh shape.
So his first solution was the bodychop plugin. Because there was no other place to *put* the secondary bone assignments, when his plugin built the secondary morph mesh, the secondary bone assignments were stored there on the corresponding vertices, and then his plugin rebuilt things on export to be in the right place.
Bodychop is retired, Wes created the new Unimesh plugins for Milkshape, after getting with Mete (Milkshape's creator) and having him add _comment fields_ to all the vertices... so the bone assignments are now stored in the comment fields. Unimesh reads them in from *an original maxis mesh gdmc* and put the data in place, gives us ways to change it, and then later writes it all out rebuilding a working gdmc.
Unimesh has a beginner tutorial, and a manual (and there's interesting stuff in the thread too) for you to learn exactly how to use it and create sim bodies and accessories with good bone assignments. You'll find it in a sticky at the top of the forum.
17th Apr 2006, 2:26 AM
I agree essentially with all you have said.
Except that there aren't actually comment fields for the vertices, but actually an extra 6 bytes per vertex added in MilkShape. This was a big deal because each vertex now consumes more ram/filespace for everyone using MilkShape, regardless of whether they are using the data space or not. MilkShape has users for older games that were less advanced in a 3D sense than TS2, and needed only single bone assignments.
I have released the source for all the plugins (in the Tools forum here), so perhaps someone who is better at user-interface creation can make a better bone tool than I did.
<* Wes *>
17th Apr 2006, 7:42 PM
I am really impressed with the insight that all of you have provided. I really appreciate it! I now know where to turn to for more assistance if I need it.
vBulletin v3.0.14, Copyright ©2000-2013, Jelsoft Enterprises Ltd.