Download - 255.53 KB
Unzip all files into a folder and run MeshToolKit.exe. You must have .NET 3.5 or higher installed. This should also run under Wine or Mono on Mac / Linux, and I'd like feedback from anyone who tries.
Delete the files.
Here's the lovely Jessi, who arrived as half a woman with no bones or morphs. After auto-bone assignment using a swimsuit mesh as reference here she is with vertex colors based on bones - I had to fix a few verts between her fingers but that was all:
List of functions
- Examine Mesh - display GEOM data: Select a GEOM (.simgeom or .geom) file and its contents will be displayed. Click the 'Display Faces' and 'Display Vertex Data' buttons for listings of detail face and vertex information.
- FrankenMesh - select one to three modified (or unmodified) base meshes, with their original morphs, and make a new combined base with combined morphs. If only one mesh is selected it will be renumbered and its morphs will be updated to match it. Morphs can be either morph GEOMs or the BGEO files the game and most custom packages use.
- Match Morphs - select a modified base GEOM mesh and its original morphs, and update the morphs to work with the modified base mesh. Morphs can be either GEOM or BGEO.
- Number/Renumber Meshes - select a set of a base GEOM and its morphs (GEOM or BGEO) and renumber vertex IDs or add them to meshes with no numbering.
- Combine Meshes - combines up to three meshes with no other changes.
- Replace Values - select a source GEOM and target GEOM and copy selected data from one to the other - useful if you want to revert to original UV or bones or whatever without losing other changes.
- Convert to TSRW WSO - just what it says. Select a set of base GEOM and its morphs (GEOM or BGEO) and make a .wso file suitable for importing into TSRW.
- Mesh Tangent Fixer - recalculates tangents, useful to fix muscle definition distortion in meshed edited with Milkshape or Blender. Select a GEOM base mesh and save a recalculated mesh file. Can also be used on TSRW meshes - export project contents as a .package, extract GEOM meshes, recalculate with this tool, and replace the GEOMS in the package with the fixed ones.
- Examine WSO - select a .wso mesh file and display its contents. Click on the meshes listed (base, fat, fit, thin, special) for a detail listing of vertex and face information.
- FrankenMesh - select one to three WSO meshes and they will be combined into one with morphs updated to match altered bases. If you select only one mesh the morph update only will be done.
- Match Morphs - select a .wso mesh and the morphs will be updated to match an edited base.
- Examine BGEO - select a BGEO morph data file and display its contents. Click each section for each age/gender/species (if there's more than one) to display a detail listing of morph data.
- Make Clothing/Hair BGEO - enter a unique name for the specific item and morph (Ex: cmar_amDemoTopModifed_fat), select morph meshes for each lod, and make a BGEO suitable for clothing or hair. Makes one morph at a time. Up to three meshes (ex: lod1, lod1_1, etc.) can be selected for each lod.
- Make Slider BGEO - enter a unique name for your morph, select the age/gender/species, and select a morph mesh for each applicable lod. Click the 'Add new Age/Gender/Species Group' button to include more ages, genders, or species. Takes the selected morph meshes and makes a BGEO suitable for sliders.
- Convert to Mesh - select a BGEO morph data file and the corresponding base mesh(es) and make morph meshes to match the bases.
- Examine SKCON - select a .skcon skeleton data file and display the contents.
- Bone Scan - select a GEOM or TSRW .wso mesh file and this tool will scan it for underweighted bones, missing bones, etc. Problems will be fixed if possible and a new mesh can be saved.
- Match Bones at Seams - Milkshape rounds off bone assignments which can result in a small gap at seams between meshes, usually at the waist, which appears only in the game. This function takes a mesh and a reference unaltered EA mesh and changes the bone assignments of all vertices at the same positions to fix this problem.
Auto tools for GEOM
- Auto-assign bones - select a base GEOM mesh to assign bones to (target mesh) and a similar reference GEOM base mesh to get bone information from. Reads the bone assignments from the reference mesh and applies them with optional interpolation to the target mesh. All vertices in the target mesh can be processed or only ones with no bone assignments.
- Auto-create morph - select the base mesh you're working on and a similar reference base mesh and its morph (GEOM or BGEO). Reads morph data from the reference base and morph pair and applies them to make a new morph GEOM mesh with optional interpolation. Makes one morph (fat, fit, thin, special) at a time.
- Auto-assign UV - select a base GEOM mesh to assign UV coordinates for and a similar reference GEOM base mesh. Reads UV coordinates from the reference mesh and applies them with optional interpolation to the target mesh. This is of very limited use since seams are not handled well, but it might be a starting point or handy for texture assignment in Milkshape or Blender.
- Auto-assign Vertex ID - select a GEOM mesh with missing vertex IDs and an optional, similar reference GEOM mesh. Copies vertex IDs from the nearest vertices, either from the reference mesh or the same mesh.
- Mesh Mirror - Select a GEOM base mesh and its morphs (GEOM or BGEO). The mesh will be flipped horizontally, including creating new morphs, and including flipping bones and UV coordinates. The mirror can be saved as a separate mesh or combined with the original.
Auto tools for WSO
(added in V1.1)
- Auto-assign bones - select a WSO mesh to assign bones to (target mesh) and a similar reference WSO mesh to get bone information from. Reads the bone assignments from the reference mesh and applies them with optional interpolation to the target mesh. All vertices in the target mesh can be processed or only ones with no bone assignments.
- Auto-create morph - select the WSO mesh you're working on and a similar reference WSO mesh with working morphs. Reads morph data from the reference mesh and applies them to make morph meshgroups for your mesh with optional interpolation. Makes all morphs at the same time.
(added in V1.3)
- Name Those Files - adds names for unnamed resources in packages containing CASPs (the vast majority of clothing/hair/accessories/makeup/tattoo/etc. packages).
- Add Morphs to Clothing/Hair - easy addition of morphs to CASP packages. Lets you import either morph meshes or BGEOs. Imported morph meshes can be added to the package either automatically converted to BGEO format or in mesh format. (BGEOs are the standard method and should be used for the final product unless there is some reason not to. The morph mesh format may be useful during development and in special cases.) Please note the procedure for use:
- Open the package
- Add each morph
- Save the package
- Close the package
- Fix Tangents - recalculates tangents for all the GEOM meshes in a package in one easy step.
To-do for a future version
- Extend the copy data, mesh mirror, and auto UV functions to TSRW WSO
- Add a mesh trouble-shooter
- Add a shader editor
- Add conversion from .sims3pack to .package