PDA

View Full Version : Converting a TS3 dress to TS4 using CAS Tools, Milkshape, and GIMP


CmarNYC
28th Aug 2016, 9:10 PM
What this tutorial will do: Show you how to convert an item of TS3 clothing to TS4 using CAS Tools, Milkshape, and GIMP. You can use the same general method to convert original clothing meshes to TS4 format, keeping in mind that the closer the mesh is to Sims-style geometry the better the conversion will be. At the very least, the neck/waist/ankle seams must be matched exactly and the hands (for a top or body mesh) must match very closely to exactly. In an optional step in the tutorial I'll talk about grafting arms from a TS4 mesh onto your mesh for better hands and shoulder matching.

This will not cover meshes that have more than 60 bones and are split into two pieces. Maybe in another tutorial.

What this tutorial will not do: Teach you the basics of meshing or how to edit textures. And if you're expecting a quick and easy conversion process, this isn't for you - there's a lot of moderately advanced meshing and uv editing involved.

Difficulty level: Fairly advanced. This dress mesh presents most of the difficulties you'd be likely to encounter in converting a TS3 clothing mesh.

And a note about using Milkshape - CAS Tools will convert OBJ meshes to TS4 format so you can convert and import a mesh created with another meshing tool. However, CAS Tools does not support modifing a TS4 mesh using the OBJ format so you wouldn't be able to export/tweak/import with anything but Milkshape, but you could export as OBJ, tweak, and convert again to modify anything except bones, uv1, and vertex color.

Tools:
CAS Tools: http://www.modthesims.info/download.php?t=582348
Milkshape 3D (costs $35 with 30 days free trial. I've heard plugins don't work in the trial version, but you can convert TS3 to OBJ with CAS Tools if necessary.): http://www.milkshape3d.com/ms3d/download.html
Sims-related Milkshape plugins: 1) http://www.modthesims.info/showthread.php?t=357403 - download QMeshPlugins.rar and install the .dlls as explained in the program notes. 2) http://www.modthesims.info/showthread.php?t=122399 - download UniMeshPlugins.zip and install msTS2NDM.dll (Normal Data Merge) and msTS2VDM.dll (Vertex Data Merge)
GIMP with the DDS plugin, Photoshop with the DDS plugin, or Paint.net
CAS Texture Unitool (CTU), s3oc, or another way of extracting meshes and textures from TS3

1) Extract the Sims 3 meshes and textures you want to convert to Sims 4. I used CTU to find the afBodyDressShortFlared_folds and clicked the "Extract Meshes" and "Extract Textures" buttons to extract into my working folder. You should have a lod1, lod2, and lod3 mesh. In this tutorial I'll be converting the lod1 mesh to a TS4 lod0 mesh.

2) Prepare Sims 4 guide meshes. Using CAS Tools you could clone the nude top and bottom, open the cloned packages in the Clone Package Editor tab, go to the Mesh Manager sub-tab and extract to MS3D format. (Mesh cloning and extraction are explained in more detail in the next step.) I've attached the nude male, female, and child MS3D meshes to this tutorial for convenience. The most important thing you're going to need for conversion purposes is the neck, waist, and ankle seams, and if you chose to graft the arms you'll need those too. For this particular mesh the only seams we need to do are the neck and ankles.

3) In the CAS Tools 'Cloning Tools' tab, clone a similar clothing item to use both as a package to import your modifications into and to get a TS4 texture to work with. In some cases, like this one, we also need a reference mesh to get bone assignments, uv1, etc. from. Look for something similar to what you're converting - the most important things are that it be the same type (top, bottom, body) and that it has the same number of mesh parts. Neither of these are absolutely necessary but make things easier. Skirts/dresses must use a skirt or dress of about the same length as a reference. And for full version compatibility you should pick a basegame item.

http://www.modyourpanties.com/hosting/72699_160828182043Tut3.jpg

In this case we need a dress that's about the same length as the TS3 dress I'm converting to use as a reference mesh. Sadly the closest basegame mesh is the yfBody_DressPanels, which has two parts in lod1 but one in the other lods. Go ahead and clone that by giving it a suitable name that you want to use for the final item, picking whatever colors you want (I'll just pick the first one for simplicity), and clicking Clone.

Now to get the reference mesh. In the Mesh Manager tab, at the bottom left change the view to 'By Meshpart'. This displays all individual meshes instead of grouping them by lod, and lets you import/export TS4 format. Right next to it, for 'Export Settings', select TS4. Then click the Export button for each mesh.

http://www.modyourpanties.com/hosting/72697_160828181725Tut3a.jpg

We're not doing lod1 in this tutorial, but I'll show you how to get the reference mesh for lod1 from the two lod1 mesh parts for this dress. You've extracted lod1_0 and lod1_1, which have to be combined to make a complete reference mesh. In CAS Tools, go to the Mesh Tools / GEOM Tools tab and under that to the Combine GEOM meshes tab. For 'TS4 mesh one' select lod1_0, for 'TS4 mesh two' select lod1_1. (The order only matters if the two meshes are different formats, in which case the second will be converted to the format of the first.) Click the Combine Meshes button and save. If there are more than 60 bones in the resulting mesh the program will warn you. (Too many bones result in distortion in the game.) In this case the bones should be fine and I have no idea why EA split the mesh.

Last, I want only one mesh part for all lods so I go to the Mesh Manager tab and delete the smaller lod1 mesh. This leaves a hole in the lod1 dress but in a full conversion it'll be replaced anyway.

http://www.modyourpanties.com/hosting/72698_160828181925Tut3b.jpg

4) Open Milkshape. We need to have both the TS3 mesh we're working on and the TS4 guide mesh(es) loaded. First import the TS3 mesh - that's File/Import/Q-Mesh Sims 3 GEOM Importer V0.16 - By Wesley Howe. Select the lod1 mesh. You'll get a message about the bone file not being found; just click okay. Now open the TS4 lod0 guide mesh(es) using File/Merge. In the Groups tab, make sure all your groups are named so you won't get confused about which mesh is which.

Note: TS3 uses 3 lod levels for clothing while TS4 uses 4. My suggestion is to convert the TS3 lod1 for both TS4 lod0 and lod1.

5) In this pic I've turned on colored groups (right-click in the textured model window and tick Color Groups) and the TS3 dress is yellow while the TS4 top is blue. (I also have the head mesh loaded - just ignore it.) As you examine the meshes you'll see that the TS3 neck is a little bigger, the back is farther back, the inner calves are bigger, the TS4 breasts are bigger, etc. We need to tweak the TS3 mesh to match the TS4 shape as closely as possible but the most essential part is exactly matching the TS3 neck and ankle vertices to the TS4 mesh.

http://www.modyourpanties.com/hosting/72700_160828182333Tut5.jpg

For general shape editing, I find it helpful to hide the mesh I'm working with, then select the entire guide mesh by vertex, then do Edit / Hide Selection. This grays out the guide mesh and ensures I can't accidentally change it. Then I can unhide the TS3 mesh and do whatever scaling, moving, etc. is needed. Don't hesitate to split edges or faces or make whatever changes you need to. If you can get the neck, waist, and legs (whichever are applicable) closer to the TS4 guide shape in particular it'll be easier to match the seam vertices. It's also a good idea to get the shoulders closer to the TS4 shoulders so hair and necklaces won't clip into them.

6) Move the group with your TS3 mesh to the bottom in the Groups tab. It must be below the TS4 meshes for the seam matching since data is copied from top to bottom in the groups.

Okay, now for some seam matching. Let's start with the neck. First hide all the groups except the TS3 dress and TS4 top, then select the visible vertices of both meshes below the neck seam and do Edit / Hide selection to get them out of the way and make the seam verts easier to see. You can also right-click the shaded model window and click Wireframe Overlay to get a 3-D view. Now select one neck seam vertex of the TS3 mesh and the corresponding vertex of the TS4 mesh. And now do Vertex / Sims 2 Unimesh Vertex Data Merge and then Vertex / Sims 2 Unimesh Normal Data Merge. The TS3 mesh vertex will snap to the location of the TS4 vertex and the bones and normals will also be copied. Continue around the neck until all the vertices are done. Yes, it's difficult to tell which vertex goes with which on the other mesh, not to mention hard to see which verts are selected sometimes. Go slowly and check often in the textured model window and the other viewports. It's easy to grab a vertex on the other side of the mesh by mistake and get distortion. If you make a mistake you can undo and try again.

http://www.modyourpanties.com/hosting/72701_160828182639Tut6.jpg

7) On to the ankles. This one is trickier because the TS3 ankles have one less vertex than the TS4 ankles so we'll have to split an edge. Move down to one ankle and unhide the TS4 leg and go through the same process of hiding vertices above the seam, then matching and merging vertices. When you come to the last vert of the TS4 mesh that has no corresponding TS3 vert, select the two merged vertices on each side of it, hide the TS4 mesh, then do Vertex / Divide Edge. A new vertex and face will appear. The face will be black so you have to align the normals. In the Model tab switch the Select mode to Face and select that new vertex, then do Vertex / Align Normals. The black face should look normal now. Then you can switch your select mode back to vertex, unhide the TS4 mesh, select the new vertex and the remaining TS4 vertex, and do the data/normal merge. For safety, select each of the two other, previously merged vertices (one at a time) as well and repeat the normal merge so the normals will match the TS4 foot.

If you need to remove a vertex, just select two vertices and click Vertex / Snap Together and then Vertex / Weld Together.

Repeat for the other ankle.

8) Now to prepare a texture for the converted mesh. Open the TS3 multiplier texture (the one that's a grayscale image of the dress texture) and the 'yfBodyCompleteUV0.jpg' I've attached to this tutorial which will be a guide to the correct placement of the dress texture. Copy the TS3 texture and paste it as a new layer over the guide image. Move and scale it to fit. If the texture has a sleeve on the left side you'll have to cut that part and paste it on the right side, again using the guide for placement. When you're done, right-click the pasted layer and click Layer to Image Size, delete the guide layer, and export as a DDS. Be sure to select DXT5 compression and Generate Mipmaps.

You could color the texture at this point but I find the light grayscale to make it easy to spot problems.

http://www.modyourpanties.com/hosting/72702_160828182856Tut8a.jpg http://www.modyourpanties.com/hosting/72703_160828182919Tut8b.jpg

9) Adjust the TS3 mesh uv mapping to fit the TS4 standard. In the Milkshape Groups tab, select the dress mesh. Then in the Materials tab click New, then select your new texture in the top button that says <none>. Then click the Assign button. In the Window menu, click Texture Coordinates Editor. Using the image as a guide, scale and move the mesh to fit the dress texture. It takes some fiddling to get right. Select the arm on the left and move it to the right side of the other arm.

http://www.modyourpanties.com/hosting/72704_160828183059Tut9c.jpg

Once you have the dress looking right in the preview pane in Milkshape, go back to the Materials tab and select the same yfBodyCompleteUV0 guide image I've attached to this tutorial. This image shows you the correct mapping for the nude/underwear body. Use it as a guide to adjust the neck, arms, and legs in the Texture Coordinates Editor. The neck and shoulders in particular may be tricky - you'll have to select those vertices and get it as close to the guide as you can. The legs will probably have to be shortened in the UV editor and require some work to get them really in line with the TS4 mapping. You can see where the knees belong on both the mesh and the guide so that may help.

You may (or may not) save some time by grafting the TS4 arms to the mesh as described in the next step, which means no adjusting the uv on the arms but extra work on the shoulders of the mesh and getting the uv to match at the arm seams. Same for the legs.

It took me an unholy amount of time to get the UV right, or close to it. I had to load the af skin texture into Materials and use that for final tweaking of the arm joins to get rid of an obvious skin color mismatch (I grafted the TS4 arms), and the legs to get the fronts and knees looking right (I kept the TS3 legs). I've attached skin textures to this tutorial as well.

10) In this step I'm going to graft the TS4 arms to the TS3 dress. This should only be necessary if the clothing you're converting has bare shoulders, like this dress. You can also use the same technique to graft the legs if you want.

The TS3 (first pic) and TS4 (second pic) uv mapping is similar enough that you can scale the TS3 uv and move it to the standard location for TS4, moving the arm on the left over to the TS4 position and doing some tweaking. The problem here is that the tops of the arms are mapped quite differently and without a lot of fiddling you'll get a visible seam in the skin. So I'm going to (maybe) reduce the problem by taking the TS4 arms and putting them on the TS3 body.

http://www.modyourpanties.com/hosting/72705_160828183454Tut10a.jpg http://www.modyourpanties.com/hosting/72706_160828183517Tut10b.jpg

You should still have a texture assigned to the dress mesh. Go ahead and select the TS4 top in the Groups tab and assign the texture to that as well, and hide the dress and the bottom. Make sure you don't have the Select button active in the Model tab - click on Move instead. In the Texture Coordinates window, select the Top from the dropdown, click Select, and select only the torso vertices. When you go back to the main Milkshape window and click on one of the mesh editing viewports, you'll see the arm vertices are now unselected. In the Model tab with the Move button active, move the torso away from the arms. Now you can click Select, select the torso by itself, and delete it. Same process in reverse for the dress - make Move active in the Model tab, hide the arms in the Group tab, unhide the dress, select it, in the Texture window select the arms only, back to main window, move the arms away, select them, and delete them.

And now unhide the arms and go around the arm seams, using the same process you used to match the neck and ankle seams, making sure the TS3 mesh is at the bottom of the groups and doing a data copy and normal copy to match the TS3 shoulder vertices to the TS4 arms. If necessary you can add or remove vertices. In this case I had two extra vertices and had to weld them together in the armpit. In hindsight, it might have been better to create a couple of new faces to fill in the gap at the armpit instead of just moving verts up to the arm. When done, select both the arms and dress in the Groups tab and hit Regroup.

Note: After welding verts, in the Texture Coordinates / UV Editor window you may see wierdness like the welded verts appearing separately but being unable to select them individually. If this happens, go to Tools / Model Cleaner. (not Clean.) Click No to the popup.

11) Delete all the groups except the modified TS3 dress and save. (You should probably have been keeping some saves of every step along the way.) You can close Milkshape.

12) Go back to CAS Tools and go to the Mesh Tools / Auto Tool: Conversion/Auto Assignments tab. Select the ms3d mesh you just saved as the mesh to convert. Select Part Type: Full Body, Gender: Female, Age: Teen/YA/Adult/Elder, and LOD: 0. Click the Select Reference Mesh option and select the TS4 lod0 dress mesh you exported previously. Leave the Autoassign options at the defaults. You can experiment with using the Clean Mesh option - in some cases it may mess up the UV mapping but I think that's pretty much eliminated now. Click Go, wait for the process to complete, and save the converted TS4 mesh.

Note: When converting most fairly form-fitting meshes like most tops and pants, the standard reference mesh built into the program should do fine. You'll need a custom reference for dresses/skirts/robes and accessories.

And a note about the vertex colors here: If for whatever reason you're using a reference mesh that's not the same type (top, bottom, body, etc) as your mesh, your best option is probably to override the vertex color alpha only. The alpha tells CAS what type of part it is, while the rest of the color tells the game how to morph it - as a nude body or as clothing. This does make a difference, especially for skirts. And especially note that if you use the standard reference which consists of separate head, nude top, bottom, and feet; the part type may be different so you should override the alpha. In most cases the program will set the options for you correctly.

13) Go to the Clone Package Editor tab and open the cloned game dress package you created earlier if you don't already have it open. In the Mesh Manager tab, set the view to By Meshpart, and click the Import button for the lod0 mesh. Import the converted mesh you just made. Click Commit. In the Recolor Manager tab, click the image of the game dress texture, and in the popup Import the new texture you made previously. Click Save, then Commit Changes. Check it out in the Previewer tab.

http://www.modyourpanties.com/hosting/72707_160828184304Tut13a.jpg

You can see seams at the neck and ankles because I didn't copy the normals properly. There's a quick fix - in the General Mesh Manager tab click the "Fix Part Seams" button, which corrects seam bones, normals, and fixes/adds the seam stitching necessary for gender-swapping. Click Commit. That's better.

http://www.modyourpanties.com/hosting/72708_160828184554Tut13g.jpg

In-game, I see in the fat morph the thighs get distorted and blocky. This is because of the vertex color - because of differences in the shape of the TS3 mesh and the TS4 mesh, the tops of the legs are getting assigned the wrong vertex color. To repeat what I said above, the high-order (alpha) byte of the color controls what kind of mesh (top, bottom, etc) it is, and the low-order byte controls how it's morphed - as nude body (0) or as clothing (255). To fix this, export the mesh to ms3d and open it in Milkshape. Select the upper legs and do Vertex / Sims 3 Extra Data Tool. The low-order byte of the color (called the tagval in this tool) is what we need to change. It's the number on the left, labeled 0. Change the 255 to 0 and the 'To All' button under it, then Save All. Save the mesh, and back in CAS Tools / Mesh Manager import the modified ms3d.

http://www.modyourpanties.com/hosting/72709_160828184639Tut13h.jpg

Note: When I tried this conversion using the standard reference (nude/underwear) mesh, everything looked fine except in the fat morph there was an indentation at the crotch. This was because the vertex colors were being set to a nude body morph for the skirt.

There are still glitches - the armpits and backs of the shoulders aren't exactly right. Blotches of gray at the neck means the straps of the dress texture are overlapping onto the area reserved for the head so the texture needs some work. There's some unwanted shadowing on the skin above the dress neckline, also a texturing issue. The knee contouring and shadows on boots show up too high on the legs so the leg uvs need to be moved up a bit. The old shadow texture, specular, swatches, and bumpmap should be removed or replaced. The property flags and colors have to be updated as necessary. Of course proper recolors of the texture should be done. And you have to rinse and repeat the meshing and uv editing for the other three lods or make them by decimation! Whew.

http://www.modyourpanties.com/hosting/72710_160828184914Tut13d.jpg http://www.modyourpanties.com/hosting/72711_160828184939Tut13e.jpg

Remember EMID - Every Mesh Is Different. Converting this dress was not an easy project and went into several difficulties and ways to resolve them. Other items will present unique challenges. :)