Creating avatars for VRChat can be an exciting yet intricate process. Model optimization, rigging, and ensuring compatibility often demand significant time and technical expertise. Enter the Cats Blender Plugin, a powerful and user-friendly addon designed to drastically simplify and accelerate your avatar creation journey. This plugin is a game-changer for both novice and experienced creators, offering a comprehensive suite of tools to optimize models from various sources—MMD, XNALara, Mixamo, and more—for seamless integration into VRChat. Say goodbye to tedious manual adjustments and embrace a streamlined workflow that lets you bring your dream avatars to life in minutes, not hours.
Support the developers of Cats Blender Plugin on Patreon and help ensure continued development and updates.
Ready to revolutionize your VRChat avatar creation? Download the Cats Blender Plugin now and unlock its potential: Cats Blender Plugin Download
Key Features of the Cats Blender Plugin
The Cats Blender Plugin is packed with features that address the common challenges of preparing 3D models for VRChat. From optimization to advanced functionalities, this plugin empowers you to create high-quality avatars efficiently. Here’s a breakdown of the core functionalities:
- One-Click Model Optimization: Instantly optimize your 3D models for VRChat performance with a single click. Reduce polygon count and streamline your avatar without sacrificing visual fidelity.
- Automated Lip Sync Creation (Visemes): Effortlessly generate lip-sync animations (visemes) for realistic mouth movements when speaking in VRChat. Enhance the expressiveness of your avatars with minimal effort.
- Eye Tracking Implementation: Bring your avatars to life with automatic eye tracking. Create dynamic eye movements that react to nearby players, adding a layer of realism and engagement.
- Intelligent Decimation with Shape Key Preservation: Reduce the complexity of your models through automatic decimation, all while intelligently preserving crucial shape keys for expressions and animations.
- Simplified Custom Model Creation: Building unique avatars becomes easier than ever. Merge armatures, attach meshes, and customize your models with intuitive tools.
- Texture Atlas Generation: Optimize texture performance by combining multiple textures into a single atlas. Reduce draw calls and boost your avatar’s efficiency in VRChat.
- Root Bone Creation for Dynamic Bones: Prepare your models for dynamic bones simulations with automatic root bone creation, making it simpler to add physics-based effects to hair, clothing, and accessories.
- Material Optimization: Streamline and optimize materials for better performance in VRChat. Reduce material complexity without compromising visual quality.
- Translation Tools for Assets: Overcome language barriers with built-in translation tools for shape keys, bones, materials, and meshes, particularly helpful when working with Japanese models or assets.
- Bone Group Merging for Reduced Bone Count: Decrease avatar complexity and improve performance by merging unnecessary bone groups, optimizing your armature structure.
- Automatic Plugin Updates: Stay up-to-date with the latest features and improvements thanks to the plugin’s auto-updater, ensuring you always have the most efficient tools at your fingertips.
Stay tuned for even more features and enhancements coming soon to the Cats Blender Plugin!
Join the Cats Blender Plugin Community on Discord
Need help, want to share your creations, or have suggestions for the plugin? Join the vibrant Cats Blender Plugin Discord community! Connect with fellow creators, report bugs, and stay informed about the latest updates.
Discord: https://discord.gg/f8yZGnv
System Requirements for Cats Blender Plugin
To ensure optimal performance, the Cats Blender Plugin has minimal system requirements:
- Blender Version: Compatible with Blender 2.79, 2.80, and all subsequent versions (including the latest releases). Running Blender as administrator is recommended for plugin stability.
- mmd_tools Integration: Notably, mmd_tools is NOT required separately! The Cats Blender Plugin conveniently includes a pre-installed version of mmd_tools, simplifying the setup process.
- Python with Numpy (Conditional): If you utilize a custom Python installation that Blender might access, ensure you have the Numpy library installed for full functionality.
Installation Guide for Cats Blender Plugin
Installing the Cats Blender Plugin is a straightforward process, getting you up and running in just a few steps:
-
Download the Plugin: Obtain the latest version of the Cats Blender Plugin from the official GitHub repository: Cats Blender Plugin Download
- Important: Do NOT extract the downloaded ZIP file! Blender requires the zip file directly for installation.
-
Install via Blender Add-ons:
-
For Blender 2.79: Navigate to
File > User Preferences > Add-ons
. Click “Install Add-on from File…” at the bottom of the window. -
For Blender 2.80+: Go to
Edit > Preferences > Add-ons
. Click “Install…” at the top of the window. You no longer need to manually save user settings in these newer versions.
-
Installation process of Cats Blender Plugin in Blender. This example shows Blender 2.79 interface, but the process is similar in newer versions.
- Locate the CATS Menu: After installation, check your Blender 3D viewport. You will find a new menu item labeled CATS. In Blender 2.80 and later, the CATS tab is located on the right-hand side menu, accessible by pressing ‘N’ in the 3D viewport.
The CATS menu is successfully installed and visible in the Blender interface. Access it from the right-hand side menu in Blender 2.80+ by pressing ‘N’.
For visual guidance on using the plugin (note that some aspects may be outdated):
VRChat – Cat
Video tutorial demonstrating the Cats Blender Plugin. Please note that the video may contain outdated information regarding mmd_tools installation.
Important Note: You can skip the “mmd_tools” installation step shown in older video tutorials, as it is now integrated within the Cats Blender Plugin.
VRChat – Importing an MMD to VRChat Megatutorial!
Another video tutorial focused on importing MMD models to VRChat using Blender. While helpful, remember that mmd_tools is now included in Cats.
Code Contributors to the Cats Blender Plugin
The Cats Blender Plugin is a community-driven project, made possible by the contributions of these talented individuals:
- Hotox
- Shotariya
- Neitri
- Kiraver
- Jordo
- Ruubick
- feilen
Exploring the Model Panel Features
The Model panel within the Cats Blender Plugin offers a range of powerful tools for manipulating and optimizing your 3D avatars. Let’s delve into the functionalities available:
The Model panel in Cats Blender Plugin provides quick access to essential avatar fixing and optimization features.
Import/Export Model
- Import Model: Streamlines the import process by automatically applying optimal settings based on the selected model type. Supports various formats, ensuring a hassle-free import experience.
- Export Model: Simplifies exporting your avatar as an .fbx file with pre-configured optimal settings for VRChat, ensuring compatibility and performance.
Fix Model
This feature is a cornerstone of the Cats Blender Plugin, offering automated model repair with a single click. “Fix Model” addresses a multitude of common avatar issues:
- Reparenting Bones: Corrects bone hierarchies to ensure proper rigging and animation.
- Removing Unnecessary Bones: Cleans up the armature by deleting redundant bones, reducing complexity and improving performance.
- Renaming and Translating Objects and Bones: Standardizes naming conventions and translates object and bone names, enhancing organization and readability, especially useful for translated models.
- Mixing Weight Paints: Smooths out weight paint transitions for more natural deformations during animation.
- Rotating the Hips: Corrects hip bone orientation for proper avatar posture and movement in VRChat.
- Joining Meshes: Combines separate meshes into a single object, reducing draw calls and improving rendering efficiency.
- Removing Rigidbodies, Joints, and Bone Groups: Eliminates physics-related components and unnecessary bone groups that are not utilized in VRChat avatars, further optimizing performance.
- Removing Bone Constraints: Clears bone constraints that are incompatible or unnecessary for VRChat, ensuring smooth animation.
- Deleting Unused Vertex Groups: Removes orphaned vertex groups, cleaning up mesh data and potentially reducing file size.
- Using Correct Shading: Applies appropriate shading settings for optimal visual appearance in VRChat.
- Full Body Tracking Compatibility: Prepares your avatar for full body tracking setups by ensuring correct bone structure and proportions.
- Combining Similar Materials: Merges materials with identical properties, reducing material count and improving rendering efficiency.
Start Pose Mode
Quickly enter Pose Mode to test your avatar’s rigging and animations directly within Blender. This allows for immediate feedback and adjustments to bone movements.
Pose to Shape Key
Capture a specific pose and convert it into a new shape key. This is invaluable for creating custom expressions or saving specific animation frames as blend shapes.
Apply as Rest Pose
Define the current pose as the new rest pose for your avatar. This function also intelligently repairs shape keys that may have been distorted due to scaling operations, ensuring your expressions remain intact.
Model Options: Fine-Tuning Your Avatar
The Model Options panel provides a collection of individual tools for granular control over your avatar’s structure and components:
The Model Options panel offers specialized tools for mesh separation, joining, and normal manipulation in the Cats Blender Plugin.
Translation
Leverage the integrated translation feature to convert text data associated with your model—shape keys, bones, materials, and meshes—from Japanese to English. Utilizes both an internal dictionary and Google Translate for comprehensive translation.
Separate by Material / Loose Parts / Shapes
- Separate by Material: Divides a mesh into separate objects based on material assignments, useful for texture organization and material-specific adjustments.
- Separate by Loose Parts: Splits a mesh into individual objects based on disconnected parts, helpful for isolating components.
- Separate by Shapes: Separates mesh sections based on whether they are influenced by shape keys or not, allowing targeted editing of shape key-driven areas.
Join Meshes
- Join all meshes: Combines all separate mesh objects in your scene into a single mesh object, significantly reducing draw calls and optimizing performance.
- Join selected meshes: Merges only the meshes you have selected, providing targeted mesh combination.
Merge Weights
Transfer weights from selected bones to their respective parent bones. This is useful for removing bones while preserving their influence on the mesh, streamlining the armature.
Delete Zero Weight Bones
Clean up your armature by automatically deleting bones that have no direct influence on any vertices, further reducing bone count and improving performance.
Delete Constraints
Remove bone constraints that are often unnecessary for VRChat avatars. This simplifies the rig and can prevent animation conflicts.
Recalculate Normals
Force normals to point inwards on a selected mesh. Generally, avoid using this on well-constructed meshes as it can negatively impact shading. Useful in specific cases for correcting inverted normals.
Flip Normals
Reverse the direction of face normals on a selected mesh. Useful for correcting inside-out faces or achieving specific visual effects.
Apply Transformations
Apply the current position, rotation, and scale transformations to both the armature and its associated meshes. This is crucial for resetting transforms and preventing scaling or rotation issues in VRChat.
Remove Doubles
Merge overlapping vertices and faces within selected meshes. This cleans up mesh geometry, reduces polygon count, and improves overall mesh quality.
Custom Model Creation: Merging and Attaching Assets
The Cats Blender Plugin excels in simplifying custom avatar creation by providing intuitive tools for merging armatures and attaching meshes:
The Custom Model Creation panel simplifies merging armatures and attaching meshes for avatar customization in Cats Blender Plugin.
Merge Armatures
Combine two armatures into one, ideal for adding hair, accessories, or entire outfits from separate models to a base avatar.
How to use Merge Armatures:
-
Fix Both Armatures: Use the “Fix Model” function on both the base armature and the armature you intend to merge. Address any “Bones are missing” warnings if one armature is incomplete (e.g., hair only). Alternatively, ensure both armatures adhere to the CATS bone structure (reference: https://i.imgur.com/F5KEt0M.png). Do not manually delete main bones; CATS will handle bone merging and cleanup.
-
Positioning Options:
- Mesh-Only Movement (Uncheck “Apply Transforms”): Move only the mesh of the merge armature to the desired position relative to the base avatar. CATS will automatically adjust the bones to follow the mesh’s position. Use Move, Scale, and Rotate to position the mesh.
- Armature Movement (Check “Apply Transforms”): Move the entire merge armature (and its mesh) to the intended location. Ensure both meshes and armatures are correctly positioned beforehand, as they will retain their relative positions after merging. Use Move, Scale, and Rotate to position the armature.
-
Select Armatures: In the Merge Armatures panel, select the base armature and the armature you want to merge into it.
-
Bone Structure Detection: If CATS cannot automatically detect the bone structure, manually select a bone on the base armature where you want to attach the merged armature (e.g., “Head” for hair).
-
Merge: Click the “Merge Armatures” button to complete the process.
Attach Mesh to Armature
Attach a selected mesh to a specific bone on an armature. Ideal for adding accessories like rings, earrings, or simple clothing items that move with a single bone.
How to use Attach Mesh to Armature:
-
Position Mesh: Move the mesh to the desired location relative to the base avatar. Use Move, Scale, and Rotate to position the mesh. Note that the mesh will be parented to a single selected bone. Complex attachments like jackets requiring multiple bones are not suitable for this function.
-
Select Armature and Mesh: In the Attach Mesh to Armature panel, select the base armature and the mesh you want to attach.
-
Select Bone: Choose the target bone on the armature to which you want to attach the mesh.
-
Attach: Click the “Attach Mesh” button to finalize the attachment.
Support the Developers
The Custom Model Creation features represent significant development effort. If you find these tools valuable for your avatar creation workflow, consider supporting the plugin developers on Patreon to encourage further development and maintenance:
Decimation: Optimizing Polygon Count
The Decimation panel in Cats Blender Plugin provides tools to automatically reduce the polygon count of your avatars, crucial for performance optimization in VRChat:
The Decimation panel offers various methods for automatically reducing the polygon count of your avatar meshes in Cats Blender Plugin.
Smart Decimation
Intelligently decimate all meshes in your avatar while meticulously preserving all existing shape keys. This is the recommended decimation method for maintaining facial expressions and animations.
Save Decimation
Decimate only meshes that do not have any shape keys. This is suitable for reducing polygon count on static parts of your avatar without affecting expressions.
Half Decimation
Target meshes with fewer than four shape keys for decimation. This option is designed for meshes with minimal shape key usage, often resulting in a good balance between polygon reduction and shape key preservation.
Full Decimation
Aggressively decimate your entire model, including the deletion of all shape keys. Use this method cautiously as it will remove all facial expressions and blend shapes.
Custom Decimation
Provides granular control over decimation. Allows you to selectively choose meshes and specific shape keys that should be excluded from the decimation process, offering maximum flexibility.
Eye Tracking: Adding Life to Your Avatar’s Gaze
The Eye Tracking panel in Cats Blender Plugin enables the automatic creation of eye tracking animations, making your avatar appear more interactive and engaging in VRChat:
The Eye Tracking panel in Cats Blender Plugin enables automatic eye movement and blinking setup for more expressive avatars.
Eye tracking simulates realistic gaze direction changes when other players approach, enhancing social interaction in VRChat. After generating eye tracking, it’s recommended to test the eye movements in the plugin’s testing tab to verify the automatic setup.
Disable Eye Blinking
Deactivate automatic eye blinking. Useful if you only want to implement eye movement and manage blinking through other animation methods.
Disable Eye Movement
Deactivate automatic eye movement. Useful if you only want to enable eye blinking. Important: If disabling eye movement, perform decimation before disabling eye movement, as decimation processes might affect eye tracking setup.
Eye Movement Speed
Adjust the speed of eye movements. Experiment with different speeds to achieve the desired level of responsiveness and naturalness in your avatar’s gaze.
Visemes (Lip Sync): Making Your Avatar Talk
The Visemes panel simplifies the creation of mouth visemes (lip-sync shape keys) for more realistic mouth movements when using voice chat in VRChat:
The Visemes panel in Cats Blender Plugin simplifies lip-sync setup by generating viseme shape keys based on a few base mouth shapes.
The plugin automatically generates 15 standard viseme shape keys based on three user-defined base shape keys representing mouth shapes for the sounds “A,” “OH,” and “CH.” These generated visemes enhance the realism of your avatar’s speech in VRChat.
Bone Parenting: Streamlining Dynamic Bones Setup
The Bone Parenting panel provides tools to simplify the process of creating root bones for Dynamic Bones, which are often used for physics simulations in VRChat:
The Bone Parenting panel in Cats Blender Plugin helps organize bones for Dynamic Bones by creating root bones and parenting related bone groups.
This feature analyzes your armature, identifies bone groups that can be parented together (like hair strands or clothing parts), and lists them for selection. You can then parent these bone groups to new root bones, making Dynamic Bones setup more organized and efficient.
To Parent
Displays a list of bone groups that the plugin identifies as potentially suitable for parenting to root bones. Select a group from the list and click “Parent bones” to create a new root bone and parent the selected bones to it.
Refresh List
Clear the cached bone group list and re-analyze the armature to rebuild the list. Use this after making changes to your model or armature to ensure the list is up-to-date.
Parent Bones
Initiate the bone parenting process for the selected bone group, creating a new root bone (named “RootBone_xyz”) and parenting the child bones to it.
Texture Atlas: Optimizing Textures for Performance
The Texture Atlas panel provides tools for combining multiple textures into a single texture atlas, drastically reducing draw calls and enhancing avatar performance, especially on lower-end hardware in VRChat:
The Texture Atlas panel in Cats Blender Plugin allows you to combine multiple textures into a single atlas, reducing draw calls and improving avatar performance.
Create Atlas
Combine all selected materials into a single texture atlas. If no materials are explicitly selected, the plugin will combine all materials present in your avatar.
Generate Material List
List all materials currently used in your avatar model. This allows you to selectively choose which materials you want to include in the texture atlas, providing control over the atlas creation process.
Useful Tips for Texture Atlasing
- Separate Transparent and Non-Transparent Textures: Create separate texture atlases for transparent and non-transparent materials to avoid potential transparency sorting issues in VRChat.
- Texture Size Considerations: Be mindful of the final atlas texture size. Unity may downscale textures to a maximum of 2048×2048 pixels by default. Either split large texture sets across multiple atlases or reduce the resolution of individual textures before creating the atlas. The MatCombiner tab (likely referring to a related texture combining tool, possibly external to Cats) can assist with texture resizing.
- Unity Texture Size Override: Unity supports textures up to 8K resolution. To utilize larger textures, manually adjust the “Max Size” and/or “Compression” settings for the texture asset in the Unity Inspector panel (as shown in the example image: https://i.imgur.com/o01T4Gb.png).
Bone Merging: Reducing Bone Count
The Bone Merging panel enables you to reduce the overall bone count within specific bone groups, further optimizing avatar performance by minimizing armature complexity: