A tool designed to shorten steps needed to import and optimize models into VRChat. Compatible models are: MMD, XNALara, Mixamo, DAZ/Poser, Blender Rigify, Sims 2, Motion Builder, 3DS Max and potentially more
- Optimizing model with one click!
- Creating lip syncing
- Creating eye tracking
- Automatic decimation
- Creating texture atlas
- Creating root bones for Dynamic Bones
- Optimizing materials
- Translating shape keys, bones, materials and meshes
- Merging bone groups to reduce overall bone count
- Auto updater
More to come!
- Blender 2.79 (run as administrator)
- powroupi/mmd tools (dev_test branch)
- Install this Blender plugin if you don't have it already: mmd_tools
- Download the plugin: Cats Blender Plugin
- Install the the addon in blender like so:
- Check your 3d view and there should be a new menu item called CATS ....w00t
- If you need help figuring out how to use the tool:
- Hotox
- Shotariya
- Neitri
- Kiraver
This tries to completely fix your model with one click.
Fixes your model automatically by:
- Reparenting bones
- Removing unnecessary bones
- Renaming and translating objects and bones
- Mixing weight paints
- Rotating the hips
- Joining meshes
- Removing rigidbodies, joints and bone groups
- Removing bone constraints
- Deleting unused vertex groups
- Using the correct shading
Cleans up the bones hierarchy, because MMD models usually come with a lot of extra bones that don't directly affect any vertices.
Imports a model.
Separatres a mesh by materials
Joins all meshes into one
Deletes the selected bones and adds their weight to their respective parents.
Can translate certain entities from any language to english Works by sending a request to the Google translate service. This feature can be slow for entities with a large amount of items.
Decimate your model automatically
This will only decimate meshes with no shape keys.
This will only decimate meshes with less than 4 shape keys as those are often not used.
This will decimate your whole model deleting all shape keys in the process.
Eye tracking is used to artificially track someone when they come close to you It's a good idea to check the eye movement in pose mode after this operation to check the validity of the automatic eye tracking creation.
The mesh with the eyes vertex groups
Head bone name
Eye bone left name
Eye bone right name
The name of the shape key that controls wink left
The name of the shape key that controls wink right
The name of the shape key that controls lowerlid left
The name of the shape key that controls lowerlid right
Disables eye blinking. Useful if you only want eye movement.
Disables eye movement. Useful if you only want blinking. IMPORTANT: Do your decimation first if you check this!
Configure eye movement speed
Mouth visemes are used to show more realistic mouth movement in-game when talking over the microphone The script generates 15 shape keys from the 3 shape keys you specified. It uses the mouth visemes A, OH and CH to generate this output. This is still an experimental feature and will be fine tuned over the course of time
The mesh with the mouth shape keys
Shape key containing mouth movement that looks like someone is saying "aa"
Shape key containing mouth movement that looks like someone is saying "oh"
Shape key containing mouth movement that looks like someone is saying "ch". Opened lips and clenched teeth
Controls the strength in the creation of the shape keys. Lower for less mouth movement strength.
Useful for Dynamic Bones where it is ideal to have one root bone full of child bones This works by checking all bones and trying to figure out if they can be grouped together, which will appear in a list for you to choose from. After satisfied with the selection of this group you can then press 'Parent bones' and the child bones will be parented to a new bone named RootBone_xyz
This is a list of bones that look like they could be parented together to a root bone. Select a group of bones from the list and press "Parent bones"
This will clear the group bones list cache and rebuild it, useful if bones have changed or your model
This will start the parent process
Texture atlas is the process of combining multiple textures into one to save processing power to render one's model If you are unsure about what to do with the margin and angle setting, then leave it default. The most important setting here is texture size and target mesh.
Margin to reduce bleed of adjacent islands
Lower for more projection groups, higher for less distortion
Lower for faster bake time, higher for more detail.
Weight projections vector by faces with larger areas
The mesh that you want to create an atlas from
Texture baking and multiple textures per material can look weird in the end result. Check this box if you are experiencing this. If any experienced blender user can tell me how to fix this more elegantly please do let me know!
Lets you reduce overall bone count in a group set of bones This works by checking all bones and trying to figure out if they can be grouped together, which will appear in a list for you to choose from. After satisfied with the selection of this group you can then set a percentage value how much bones you would like to merge together in itself and press 'Merge bones'
This is a list of bones that look like they could be merged together. Select a group of bones from the list and press "Merge bones"
This will clear the group bones list cache and rebuild it, useful if bones have changed or your model
This will start the merge process
There is an auto updater in the plugin so you don't have to keep checking for new version. This is how to check for updates:
- Added: Model: A lot more models are now compatible (please report non working models to us)
- Added: Model: Added "Pose to Shape Key" button when in pose mode. This converts the current pose into a shape key
- Changed: Eye Tracking: Improved error messages
- Fixed: Eye Tracking: Fixed a bug where the mouth would stay open after creating eye tracking
- Fixed: Decimation: Fixed a bug where decimation would failed due to division by zero
- Fixed: Model: Fixed a bug where root bones created by cats got deleted
- Fixed: Materials: Fixed an error when the texture files don't exist
- Fixed: Translation: Shape keys created by cats no longer get translated
- Fixed: Small spelling mistake
- Fixed: More bugs
- Added: Model: Added support for DAZ/Poser, Blender Rigify, Sims 2, Motion Builder and 3DS Max models
- Added: Model: Added support for models with more than 2 spines
- Added: Model: Added conversion of mmd bone morphs into shape keys
- Added: Model: Added import option for XNALara and FBX
- Added: Model: Now resets the pivot to the center
- Added: Model: Added Export button
- Added: Model: Importing and Exporting now automatically sets the optimal settings
- Added: Decimation: Added custom decimation tab, allows you to whitelist meshes and shape keys
- Added: Decimation: Added option to exclude fingers from decimation
- Added: General: Warning when Blender is outdated
- Fixed: Atlas: Fixed transparency issue after creating auto atlas
- Fixed: Material: Fixed an issue where materials were wrongly merged together (Thanks kiraver!)
- Fixed: Model: Multiple parenting issues
- Fixed: Bugs from every corner
- Added: Automatic Decimation! (experimental)
- Added: Model: A lot more models are now compatible (please report non working models to us)
- Added: Model: Added support for XNALara models! (.xps, .mesh) (experimental) (please report non working models to us)
- Added: Translation: Error message when Blender version is too old
- Added: Model: Changes bone draw type to wire, octahedral and xray (standard mmd_tools draw type)
- Added: Now enables international fonts and compressed saves on startup
- Added: Model: Joining meshes now has a loading bar
- Changed: Eye Tracking: Eye position sliders now update in realtime!
- Changed: Eye Tracking: Clearer vision of the model by hiding unimportant bones
- Changed: Model: Clearer error message when bones are missing
- Changed: Model: Joining meshes now restores the original shape key order
- Fixed: Eye Tracking: When disabling eye blinking, shape keys were still required
- Fixed: Translation: Sometimes bones were not fully translated
- Fixed: Buggy bugs
See the full changelog here.
- Full body tracking support
- MOAR updates on the armature code
- Texture translation should have an option to rename the filename also
- Automatic lower lid creation for eye tracking
- Manual bone selection button for root bones
Do you love this plugin or have you found a bug? Post a response in this thread or send your feedback to the official discord server of the plugin for real-time communication: https://discord.gg/f8yZGnv and look for people with the developer role ;)