serenity_fall: (pic#1365838)
2014-04-27 02:04 am

The Bare Bones: Milkshape Bone Assignments and You!


Been meaning to get around to this, but laaaazy. Anyways, this is simple walkthrough/tutorial that will hopefully be useful in explaining bone assignments for TS2 hairs. This will not cover body meshes! That is far too complicated to bone head to toe. (Also forgive me if this sounds like jibbish - it's 2am)


Before we get to the actual hair, I'm going to explain this nifty little panel here. The "Joints" tab lists all the joints and bones of the skeleton of the model (in this case, a TS2 female sim model). The "Vertex Weights" section is the most important part; here is where you can show the skeleton (the blue wiry thing), show the bones of selected vertices and even tweak and assign new weights to selected vertices.

As you can see in the image, I've boxed three of the joint slots -- TS2 meshes usually use no more than three joints per vertex (the exception being around the pelvis/thighs). These slots are useful because you can pick a bone or joint in the drop down and then adjust the number in the box next to it, select the vertices you want, and then click assign and it will automatically assign the bones for you.

Here's what I mean:


The hair I will be using for this is Cazy's "West Coast", which is a long hair. First select your entire mesh, then go to the Joints tab and look for "head" in the first tab; set the number in the box next to it to "100" then hit "Assign".


Tick the box that says "Draw vertices with bone colors" and it will make everything colourful. You'll notices that the hair is now all purple (if you tick the box before assigning bones, it will just be all white - this means that there are no bones assigned).

The whole hair is now assigned the head joint and will move wherever it does. This is fine for short hairs and all, but not ideal for long hairs like this one. Longs hair require extra joints in order to animate right and avoid clipping.


Uncheck the bone colours, so you can see what you're selecting and select all the vertices around the head joint and below. In the box - set the first tab to "head - 75" and the second to "spine2 - 25", then hit assign (for smoother animation, select a small row above and set the first tab to "head - 90" and the second to "spine2 - 10").

**Never assign to the neck! Past experiences has made hairs extremely choppy when assigned to the neck than spine. The head and neck move as one either way, so wherever the neck turns, the head will follow.


Around the neck joint, flip the bones so "spine2" is in the first tab and "head" is in the second tab and set the weight to "50" for both.


Somewhere between the neck and spine2 joint, the weight should be set to 75-25; the rest of the vertices at the spine2 joint should be 100 and only assigned to spine2.



Once you've got all the vertices assigned to bones and weighted, hit the "anim" buttom at the bottom right of the screen, then under the "model" tab, select -> Joint and rotate the head and neck to see if the hair moves right. If the movement isn't as smooth as you'd like it to be, hit "anim" again to get out of animation mode, and tweak the bones.

Note that the above is just a basic guideline! You can do smaller, gradual increments if the mesh allows it (in this case, since Cazy hairs are easily 12-20k, it is probably better to do gradual increments for smoother animations).


Once you're satisfied with animation and bones, rename your mesh to an appropriate TS2 hair mesh name, fix the comments (make sure NumWgtSkins is 3!), and export, age converted, etc.

However - there is one little extra thing I like to do with long hair meshes; particularly if they fall in front of the chest like this one.


This is more of a personal pet peeve than anything else, but as you can see above - the clavicle clips through the hair. I know it seems very trivial, but you'd be surprised how much the clavicle moves sometimes. So what I like to do to avoid clipping is to assign the area around it to the clavicle joints to reduce the clipping.


Select the area around the clavicle, go to "Joints" and hit "Show" - this will bring up the bones that already assigned there (in this case, spine2). In the second tab, select the appropriate clavicle (the left for this selection) and set the weight to about 35~45 and hit assign. Select small rows around that area and reduce the clavicle weight in about 10~15 increments till only spine2 is left (or spine2 and head for above the clavicle). Do this for both sides.


When you're done, is should look something like this - very colourful right ;) This will reduce the clipping whenever sims move/twist with their clavicle joint.


If you haven't, rename your mesh to a proper TS2 hair mesh name, and edit the comments. Export as unimesh, convert to other ages and simPE magic technical stuff that I will not explain, plop it in the downloads, retexture, etc and fire it up.

And there you go - one animated hair ready for your simmies~

I hope this was a little bit helpful when assigning bones to long hairs (for hairs that are swishy and bouncy...that's a whoooole another story...).


serenity_fall: (pic#1365888)
2014-02-03 04:18 pm

TS3 to TS2 Clothing Conversion Tutorial

Seeing as there is little to none about converting clothes, I decided to make this tutorial. This is a simple compilation of tips and tricks I’ve learned while converting clothes for The Sims 3 to The Sims 2 – keep in mind this is the way I do it, you are free to go about this any way you want, but I hope this helps. :)

A few things that will be covered in this tutorial:

-          Converting TS3 clothing meshes to TS2

-          Add morphs

-          Adding groups to a file

Some things you will need:

-          s3pe, which can be downloaded here: http://www.den.simlogical.com/denforum/index.php?board=19.0

-          Cmar’s Meshing Toolkit: https://www.modthesims.info/download.php?t=481950

-          Milkshape 1.8.5 (Note that WesH’s GEOM plug-ins: http://www.modthesims.info/showthread.php?t=357403 will not work in older versions!)

-          TRWS plugins: http://www.thesimsresource.com/resources/view/category/creating-sims3-meshing/id/95/

-          Possibly Delphy’s Multi-package extractor (only if you’re working with sims3packs and not .package files)

-          Photoshop or any other advanced paint program.

The mesh I will be converting in this tutorial will be this one: the completely classic women’s suit from the fifth avenue set.

First download the file you need to your computer – you can either download the sets from here: http://freesims3.tumblr.com/ which is slowly uploading all the sims 3 store items (read their FAQ!), or from moreawesomethanyou in this thread: http://www.moreawesomethanyou.com/smf/index.php/topic,15100.0.html

I usually get my files from freesims3.tumblr because the files are already in .package files and I find that thread in MATY to be too disorganized (and the files are sims3packs). Once you have the file, go ahead and open it up using s3pe.



Once you're in s3pe look for the "GEOM" files - you'll notice that there's quite a few of them, but not all of them are the actual mesh. Some of them are morphs which will show up empty in milkshape without the real mesh. To tell them apart, look at the window on the right; you'll see a string of numbers and letters pop up when you click on the GEOM. Look for the GEOMs that say “Shader: 0xXXXXXXX SimSkin”  – this is your mesh. There should be at least 3 GEOMs that say this (if there's more, extract those as well - they could be "chunks" of the mesh that have be separated from the mesh for some reason...)
 

Once you’ve found the three meshes with SimSkin, right-click or go to “Resource” -> export to file and save in a location you’ll remember.

Why are there three GEOMs? TS3 meshes are divided into three levels of detail: High, Mid and Low. We want the high detail mesh for better quality. Some store meshes are already labelled (LOD0 I believe is the high detail), but some aren't. A way to tell which extract GEOM is the high detail is to open your work folder, right-click -> Sort By -> Size. The largest file is the high detail GEOM - the rest you can delete.

*HOWEVER - in the case you had more than three GEOMs, you'll have to check in Milkshape for the missing pieces.
 

After you extract the GEOMs, look for a gray texture in s3pe, and export it the same way you did the GEOM. Another image file I suggest exporting is the masking layer; it usually shows up in s3pe as a red colour block. Why this one? Because it has alphas that specifically mask parts of the mesh for texturing purposes; it's a little easier to separate parts of the mesh for texturing if there's already blocks there for you to use.

Once you have all the files you need, close down s3pe and open up milkshape. Click on “File -> Import -> Q-Mesh Sims 3 GEOM Importer” and location the GEOMs you just extracted.

If you get a message saying "Unable to locate bone file Default Skeleton used", just click “Okay” and it will proceed as normal. Once the mesh is loaded, go the groups tab and rename the mesh to "group_base" - if you have multiple groups, make sure to "regroup" into one group and renaming it "group_base" before exporting - Cmar's toolkit doesn't like more than one group.

Before exporting the mesh, we need to adjust the arms so that they match up with the TS2 skeleton. Go under the “Joints” tab and check “Show Skeleton” and a blue skeleton should appear (TIP: if you're greeted by a blue blob mess, go to File-> Preferences -> Misc -> Joint Size: 0.011000).



Hit the “Anim” button at the bottom of the screen of the right side and the vertices should disappear. Hit the “Model” tab and “Select” -> Select option “Joint”. Select the shoulder joint and click on the rotate button.

Set the rotate option to “User point” and type in “45” in the “Z” box and hit the “Rotate” button.

Set the Z back to 0 (or click on it to “uncheck”), and type in "-6" or “-6.5” in the “Y” box and click rotate.

Next click on the elbow joint and type “-3.5” in the “Y” box and click rotate. Do the same for the other side, but using the numbers opposite of the above (Z = -45, Y= 6.5, 3.5); it should look something like this:



 

To make the new rotations stick once you click out of anim mode, go to “Animate -> RotateAll” and click okay. The skeleton will jump back to its original position, but the arms will stay in place.



Click the Anim button again to stop animation mode and then export your file as a “TSRW Object” and save it under a name you’ll easily recognize (ie: Classic Womens Suit) into your work folder.



Now we need to make a reference mesh – I would highly recommend using the Sims2Default Database (http://sims2defaults.dreamwidth.org/) as a guide when trying to match the right mesh to use a reference. You can also use custom meshes if you know the name of the mesh you’re looking. The closer to the shape of the TS3 mesh you can get, the better the assignment of bones will be. The dress I will be using as reference will be the “Suit” from the base game:

 

Rather than wait a billion years for bodyshop to open and clone a copy, I use SimPE's "Finder" tab -> NameMap Search and use the names from the database to look for what I need. It's faster and we really only need the GMDC mesh and nothing else at this point (if you're using a custom mesh, open it in SimPE and extract the GMDC). Once you've located your reference mesh, extracted it to the same place as your work folder and give it a descriptive name you'll remember (ie: afbodysuit-mesh or TS2 Reference mesh).

Import your reference mesh into milkshape; if you get these messages, click “yes” to both if you plan to use Cmar's toolkit to make morphs. If you plan to do your own morphs by hand, click "no" to "Create blend groups?"

Go to the groups tab and rename “body” to “group_base” and “~00MORPHMOD.1” to “group_fat” (and if the mesh has a pregnant morph “~00MORPHMOD.2” to “group_special”), and export it as a “TSRW object” file. Make sure to name it “Reference Mesh” or something that is clear so you don’t mix the meshes up.

 Open up Cmar’s Mesh Toolkit and hit the “Auto Tools for WSO”; select the file you wish to modify in the first line and then your reference mesh in the second line. This will automatically assign the bones for you and it will prompt you to save the new file. Name it something that will distinct it from the old file and save.

Start a new in milkshape and import your reference mesh first as a unimesh; this will lay down the skeleton base we need, then import the new TSRW file you made with Cmar’s tool. And now we have our mesh will full bone assignments and everything; there is one problem though…


 
When you hit the anim button, you’ll notice that a lot of the vertices will “jump” down – Cmar’s tool has a slight kink that assigns a majority of the vertices to the “auskel”, which can mess up animations majorly. To fix this - go to the "Joints" tab and scroll up the list of joints till you find the "auskel" bone. Double click it and then rename it to anything.

 
Once you've done that, export it as a “Half-life SMD” (it should be the first one at the very top). Make sure you have these settings checked and click okay (name it something you’ll remember, or add “fix” on the end):

 

Start a new in Milkshape and import a TS2 nude body first (in this case, adult females); you can download TS2 body bases here. Click "Yes" to both pop-ups; again, this lays down the TS2 skeleton and joints as foundations. After that, import your TS3 mesh as a "Half-life SMD" and uncheck "rename bones" and hit "OK".


 

And volia~ The vertices should no longer be assigned the auskel bone and shouldn't jump when you hit the anim button. Now for the tedious part - fitting the mesh over the TS2 nude base. This requires a little more know-how and comfort in Milkshape and it's tools. TS3 bodies are a little different from TS2, so some scaling/moving and adjust may be required if you want to keep true to the TS2 shapes; but if you don't mind the little extra hips on females you can leave it be.

 
Hide the TS2 meshes (if you’ve imported the morphs as well, like I’ve done, but I will explain why I did that later), and double-click the mesh to select it. Go to the “Materials” tab and click on the “default.bmp” that will be there and replace it with the texture we extracted earlier. It will show up automatically on the mesh (and make it easier to see where the skin and cloth meet).

 

Now carefully delete the vertices of the skin on the TS3 mesh (arms, neckline, legs, etc) until you have something that looks like this:

 

Unhide the afBody and double-click to select it, hit “Ctrl+D” to duplicate it – you always want to have a back up of this, because if you mess up or the vertices don’t sit right you’ll have to re-import it again since undo can only go so far.



You'll notice that the neck on the TS3 mesh is a little higher and wider then TS2. Select the vertices around the neck and scale it/move it to fit better around the neck. Remember, the top vertices of the TS2 neck can not be moved or altered in any way, since it connects to the head and will look mis-matched if you mess with it. (For meshes like turtlenecks or high-collars, you'll just have to combine two vertices of TS3 mesh to line up with the top of the TS2 neck.)

Now is the tedious part - lining up the vertices of the two meshes together. This part is mostly guess-work and it's really up to your judgement where the best alignment is. Use the "Unimesh Vertex Data Merge" when snapping the vertices together - this will also transfer the bone weight data to the vertices, avoiding potential gaps.

(TIP: Vertex Data Merge will snap to whichever mesh is on top in the groups list: ie - Mesh A is above Mesh B in the groups list, therefore vertices of Mesh B will always snap to the vertices of Mesh A).



Another tip - if you don't want to combine vertices on the TS3 mesh (because it doesn't look great, or because you don't want to deal with mapping issues), you can use the "Divide Edge" (ctrl+p) to create a new vertex between two vertices on the TS2 mesh. However you need to be sure only two vertices are selected, or it'll complain at you (TIP: some vertices overlap on TS2 meshes, which can make it really difficult to follow that "two vertices only!!" rule; you can use the "Extended Manual Edit" to unselect the extra vertex. Open up the edit, then right-click on the vertex you don't need [again, guess work] and an "A" will pop up in the "State" row).

Finish up lining up/adjusting the arms and legs till all the gaps are closed. The end result should look something like this:


Now you can add any shoe you want - I'm just adding some simple pumps for this dress. Rename the TS3 mesh to anything you like; "dress", "Body2", etc - anything that sets it apart from the TS2 nude base. Why? Because TS3 meshes are mapped very differently from TS2 and it's much easier to give its own group than to fuss with making a new UV map. Be sure to give the mesh the appropriate comments as well, it will mess itself up or not show up at all.
 

And now for the morphs - if you prefer to do it by hand, simply duplicate the TS3 mesh and use the TS2 morphs as a guiding base. Be sure to give the morphs their appropriate names and comments as well. However, if you prefer to use Cmar's toolkit, you'll need to do the following.

First save what you have so far in milkshape; then delete all the TS2 groups (including the body with the shoes) till only your TS3 mesh if left. Rename it to "group_base" once again and export it as a "TSRW Object" again.

Now, remember earlier in the tutorial, when we imported the reference mesh we named it and it's morphs as such:

  • group_base
  • group_fat
  • group_special
If you did this earlier, open up Cmar's Toolkit again, "Auto tools for WSO", "Auto-create Morphs". The first line is where you'll load your TS3 mesh; the second line is for the reference mesh. Click create morphs, it'll prompt you to save again - give it a name you'll remember (or just add "-morphs" at the end) and save.


Open up the saved Milkshape file we did earlier (it should have - your TS2 mesh + shoes, the TS2 morphs and the TS3 mesh) and then import the new morphs as a "TSRW Object" and volia~ It should have all the morphs of the reference. Sometimes you may get "black spots" on the meshes when you export a TS3 mesh; I believe it has something to do with the unimesh plugin not liking overlapping faces/vertices which, unfortunately, TS3 does a loooot. I have a tutorial here on how to work around this.


 

Anyways - you can delete the "group_base" since it'll be a duplicate of the TS3 mesh, give everything it's proper name and comments, delete the TS2 morphs and volia~ All done (save again for just in case). Once everything is in working order, you can finally export the mesh with the "Sims2 UniMesh Exporter". Save it the work folder with a name you'll remember (ie: 3t2-afbodyClassicSuit_MESH or so).

Now we’re ready to get this mesh into bodyshop. Open up bodyshop, pick a full-body female adult clothing, export it, name it something like “AFBase” and re-import it back into bodyshop. Close bodyshop and go to your SavedSims folder; click -> sort by date modified and it should be the first one. Cut and paste it into your work folder and open up SimPE.

Make a new file in SimPE, then click “Tools -> PJSE -> Body Mesh Tool -> Extracting Stage” and click on your new base. This will extract the things we need to make a new mesh.
 

Once you’ve extracted the parts, go back to “Tools -> Object Tools -> Fix Integrity” and a window will pop-up. Name it something descriptive (ie: your name-3t2-AFOutfitName); never use underscores! This step is important – if you don’t do this, it will override the original mesh!  Once you’re done, hit “Save As…” and name it “MESH_YourName_3t2_AFOutfit” or however you wish, as long as you can tell what it is. Replace the “GMDC” with your new mesh and save.



Now to link this mesh to our base package; open up the base package in SimPE and click on the 3D ID Referencing File (it will take a minute or two for it to load), then click “Tools -> PJSE -> Body Mesh Tool -> Linking Stage”. You will get two pop-ups - just click "okay" for both and you're done.

 

In order for the file to register our new group in our mesh, we’re going to have to add it. Click on “Property Set” in the resource tree and it will bring up one file in the resource list next to it; click on that file and at the bottom, go into “plugin view” and look for “numoverrides” – change the number from “1” to “2”.
 

Click the next three lines underneath that and click “add”; change the number from “0” to “1” and the text “Body” to “dress” or whatever you named your extra group – do not touch anything else! Hit Commit for each file and then save. Drop your new mesh and modified file into your downloads folder and launch bodyshop.

 

Click on your new mesh – it will look weird because we haven’t given it the correct alpha yet, but first we need it to register the new group.
 

So click export it, and open up the project files in Photoshop or any other advanced paint program you use; you notice that you now have two sets of alphas and two sets of textures. One of those textures and alphas should be labeled “dress” in the title – that is where all your editing of the dress will be.



If you're using Photoshop, open the texture file we extracted and go to “Windows -> Channels”, and click on the “alpha” layer. This will bring up the alpha; select it all (ctrl+a) and copy and paste it onto our project file. 

Click on “RBG” to bring up the texture, copy and paste it onto the “dress” texture file. Set that layer to “overlay” and add a new layer underneath to add colour to the texture. Merge all the layers together and save.

 

Do the same for the “body” texture and alpha for the shoes to show up properly, save and refresh your project in bodyshop. Check the appropriate categories (in this case, I’m doing both casual and formal wear), and the import it back into bodyshop and you’re done~



Oh - one more thing I forgot to mention; some 90% of Maxis meshes have bumpbmaps on them. What are bumpmaps? Skell explains them a bit here. But yeah - they're pretty useless (and most cards don't even support bumpmaps anyways \o/ ), so it's better to just delete them entirely and save some space. Once you've deleted the bumpmap from the file, save and you're done :)

(On a side note - some skirt animations may look wonky sometimes, but if you can live it, okay. Otherwise that requires tedious hours of adjusting the bones by hand in Milkshape with the joint menu if you want smoother animations...)

serenity_fall: (pic#1365888)
2014-01-02 02:18 pm

(no subject)

3t2 Hair Conversion

Greetings! I got a request asking for a TS3 to TS2 Hair Conversion tutorial (though I could've sworn there was one floating around), so here's one. Note that this is the way I do it - you are completely free to do whatever you feel is more comfortable or works better for you! Please note that this is not a tutorial meant for beginners who's never done meshing before! It is recommended that you know some basic meshing before attempting this! That said - on the tutorial!

Things used in this tutorial:
1) Sims3 PE (s3pe) [Link]
2) Milkshape 1.8.5
3) The Sims 2 Bodyshop
4) Adobe Photoshop or any texture editing program

TS3 Surfing Side Braid
First find the hair package you wish to convert (in this case - the Surfing Side Braid from the Surf and Fun set), download it and if it comes as a .sims3pack use Delphy’s Multi-package extractor to make it a .package instead. Next, open your hair package using s3pe.


Once you open the package in s3pe click through the _IMG tags till you find the hair textures that look like the one below, then either right-click or "Resource -> Export -> To File" and save in a location that is easy to remember. Some hairs that come with hats or accessories will have a separate texture from the hair (like this one does here: Surfing Side Braid Tie Texture) so remember to extract those as well.


Next look for the "GEOM" tags, as these are the meshes and look for the ones where it says "Shader: 0xXXXXXXXX (SimHair)" and export them. Since TS3 meshes come in High/Mid/Low versions, you will find at least three of them; as stated above - accessories are separated from the hair, so look for the GEOMs that say (SimSkin) and export them as well.




Once you have all the proper GEOMs extract, click view folders as "Details" and arrange by "size"; look for the biggest GEOM at the top as this will the "high definition" mesh we'll be working with. Sometimes accessories will have large differences as well depending on their complexity, but in this case, the hair tie was the same for all of them.




Once you've found your mesh, open up Milkshape and go to File -> Import -> Q-Mesh Sims 3 GEOM Importer V0.16 and click on your mesh. A message saying "Unable to locate bone file Default skeleton used." should pop up - just click ok and continue on. Do the same for the accessories if needed.


Once you've imported the hair (and any accessories), click "File -> Export -> Wavefront OBJ" and name it something you'll remember, like "TS3 Surfing Side Braid OBJ" or something.


Start a new file in Milkshape and then import a base scalp, face (and for longer hairs, a body) which I've uploaded here: [TS2 Face and Body Bases]. Click "No" for "Create Blend Groups?" and "Yes" to "Some Skin Weights do not total 100%". Once you have the scalp and face bases imported, click "File -> Import -> Wavefront OBJ" and look for the OBJ hair mesh we just exported.


Once the hair is in Milkshape, scale/move/adjust it to fit on to the head. TS3 faces seem to be wider than a normal TS2 face (probably why they look like pudding pops all the time). Be sure to check all angles of the head to make sure none of the scalp is poking through or visible.


Sometimes the hair pokes through the back of the scalp on the inside - depending on the hair, it may or may not be a problem, but if it really bothers you and you don't want to deform/scale the hair any further, you can select the vertices on the scalp and scoot them inward a little.


Looks good all angles...


Once the hair is good and set to go, we can start working on the bone assignments. This is important since this tells the hair how to move in relation with the sim's head and body. Select the whole hair, then go to the Joints tab and highlight "head" and click "Assign". If you tick the "Draw vertices with bone colors", you'll see it turn pink which means all the vertices in the hair are now assigned to the head and will move wherever it goes.


Now, assigning the entire hair to the head works alright for shorter hairs, but for longer hairs that go past the neck and down the shoulder, require more joints for smoother animation. You can use Cmar's Toolkit to auto-assign bones if you can find hairs that are similar in shape and length, but I prefer to do mine by hand. You can use whichever method is easiest for you :)
(If you wish to do bones by hand, I have a quick tut here on how to go about doing that. Note that this is a very rough outline and you are free to assign the bones are you see fit.)


Once all the vertices have new assignments, you should have a pretty colourful mesh by the end like so. You can test the movements by going into animation mode by pressing the "Anim" button at the bottom right and selecting a joint and then rotating it around.


Once you're satisfied with the animations, go back to the groups tab and click on your GEOM mesh and hit comment. Change the comment to what's written below; once you change the comments, rename the mesh to whatever name you put in the comments.
 
*Opacity: I will probably explain this horribly if I try, so here's a post that hopefully explains it better than I could [Hair Layers and Transparencies]

**NumSkinWgts is important! This more or less tells the game how many joints are attached to a mesh. If this number doesn't match the number of joints assigned on a mesh, it will be bork on export and mess up the animations. 3 is the universal number for body and hairs meshes and probably your best bet to go with.


Once everything is set, animated and renamed and commented probably, delete the body and face but keep the hair and export your new mesh as a Unimesh into a folder you'll remember. Name it something you'll remember or distinctive, like "NAME-3t2HairName-AGE-MESH".

After you export the adult mesh, you can move to convert them for the other ages; for gender conversions, remember that teen-elders male and female have different size heads, so remember to adjust them accordingly (toddlers and kids have the same head size for both genders).


Now open up bodyshop and clone a hair if you haven't yet; gender doesn't matter as you can easily change that. I recommand cloning either the comb over for males, or the low bun for females. Once you've exported and imported the hair in bodyshop, exit out of bodyshop and find the new file in your savedsims folder. Cut and paste the clone file into your work folder and now for the hard part.

SimPE work! This will probably sound daunting if you're not familiar with meshing, so I'll try to explain this as clearly as possible.


Open up SimPE and create a new file (File -> New), then click "Tools -> PJSE -> Body Mesh Tool -> Extracting stage" and a dialouge box will pop up. Look for the hair clone you just recently made in bodyshop and open it; a pop-up message will appear saying "multiple groups were found" - just hit yes and it will load a whole lot of files. These are the meshes for the different ages (toddler-adult/ya/elder).


Once all the meshes are extracted, click "save as" and save the different age groups (ie: HairMesh_AF_MESH, HairMesh_TF_MESH, etc), then go through each package and delete the unnecessary ages in each file. Once you've done that, go to "Tools" -> "Object Tools" -> "Fix Integrity".


Another pop-up will appear; not only will this describe what the mesh is, it will also prevent it from overriding the original mesh it was cloned from (very important). Once you've typed in the new name, click "update" and then okay.



Once the integrity fix is done, click on the _gmdc line and in the Plugin view, highlight and copy the name in "Filename:". Then right-click on your GMDC line and click "replace". Find the appropriate mesh you made in Milkshape and click it. Another pop-up will appear saying so and so was replaced, refresh and make changes? Click yes, then highlight "Filename" in the plugin and paste in the line you copied earlier (no, you don't have to do this, but it's one of my pet peeves and personally drives me NUTS when there's one line not named the same as the others...).


Once that's done, click "Fix TGI" and then commit.

Do this for the rest of the ages meshes and once you're done with that, we need to link the meshes to the clone package file you made. So start a new in SimPE and open that file up. First thing you do is click on the "Instance" tab to re-arrange the files in a number order. Why do this? Because we need to click on the 3D ID Reference line to link up the mesh with the files. But wait - how can we tell which 3IDR line goes to which age?



As you can see in the photo, the different ages have their own instance numbers; in this case, toddlers (pu) are 0x00000001. This will not always be the case (accessories especially), but this does help narrow down which 3D ID Reference line belongs to what age. For Adults/Young Adults/Elders it doesn't matter so much, since they all share the same mesh.


Once you know the corresponding 3D ID Reference, highlight it then click "Tools -> PJSE -> Body Mesh Tool -> Linking Stage" and pick the corresponding age mesh. It may lag for a minute or two before a window pops up; click okay and move on to link the rest of the ages. It may look like it hasn't done anything, but pay attention to the "Resource Node:" line in the plugin view, when you click off it and click on it again, the numbers will change.


Once all the references have been linked to the proper meshes, go the Property Set lines and make sure the gender is the correct one if you didn't start with it (1=female, 2=male, 3=unisex). Also make sure that the line in "override1subset" is labeled the same name as your mesh file. If you've made any changes to the property set, hit commit and save.


After all the property sets are changed and saved, go to the TXTR files, right-click the texture window in the plugin view and click "Build DXT" (Build DXT is greyed out/not available).



Change the "Sharpen" from smoothing to none, and use either DXT3 or DXT5 for format (I've personally never really seen a difference between these two, but I know DXT1 seems a little more 'crunchier' than 3 or 5), then click open and add a texture file, commit and save. (Converting .dds files to PNG). Alternatively you can use the "Import DDS..." option too; just be sure to delete the extra groups if you do so (the smallest you want to go is 512x512 at most!).

*This doesn't seem like it would affect anything, but the size does. If the size of the texture doesn't match up with the set template, it will refuse to load in simPE. I've admittedly already yelled at simPE for 10 minutes because I didn't realise the texture wasn't the right size.


Once everything is linked, groups made and textures changed and the base package is saved, create a new file in simPE and right-click anywhere in the resource list and click "add".  Change the drop down to "DBPF Package" and select all the individual age mesh files we made and linked earlier. "Save As..." the mesh to something descriptive (ei: Name-3t2-HairName_MESH), then copy and paste both your new mesh and base package into your downloads folder and fire up bodyshop.


 
Once bodyshop loads, go looking for your new hair mesh and check that it works. If everything looks good, then go ahead and retexture it however you like! :) And volia~ You're done!