Arrière-plan de bannière
[Unity Tool - VRChat] Facial Expression Creator – Create & Edit Facial Animations | 64 Gesture Combinations, BlendShape Browser, Expression Menu Controls & Non-Destructive Controller Editing [PC - Quest - iOS] | English, Español, 日本語, Deutsch, 한국어, 简体中文

[Unity Tool - VRChat] Facial Expression Creator – Create & Edit Facial Animations | 64 Gesture Combinations, BlendShape Browser, Expression Menu Controls & Non-Destructive Controller Editing [PC - Quest - iOS] | English, Español, 日本語, Deutsch, 한국어, 简体中文

Description du produit

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📋 CHANGELOG

Version 04.06.12 — 11-08-2026

• Initial release of Facial Expression Creator.

Facial Expression Creator is available at a reduced launch price for a limited time. Once the promotion ends, it will return to its regular price.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎭 CREATE, EDIT AND INSTALL FACIAL EXPRESSIONS FROM ONE UNITY WINDOW

Facial Expression Creator is a Unity Editor tool for VRChat avatars that brings facial animation creation, clip editing, gesture combinations, Expressions Menu toggles and lock controls into one workflow.

The tool can detect the face automatically from the Face Mesh assigned to Lip Sync in the VRC Avatar Descriptor. You can also assign a GameObject or Skinned Mesh Renderer directly when you only want to work with a specific face mesh.

Four work modes are included:

• New Animation Clip

• Edit Clips

• Gesture Matrix

• Menu Gestures

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

✅ MAIN FEATURES

• Create facial Animation Clips from the avatar's BlendShapes.

• Edit existing clips manually or detect them from an avatar's FX controller.

• Browse hundreds or thousands of BlendShapes with visual thumbnails.

• Preview expressions directly on the avatar without losing its previous BlendShape values.

• Build all 64 GestureLeft × GestureRight combinations.

• Import compatible facial animations from an existing FX controller.

• Create facial-expression toggles controlled by one shared Int parameter.

• Create and organize real and pending Expressions Menu submenus before generation.

• Add independent Hand Lock and Face Lock toggles.

• Generate a new FX controller without modifying the original controller asset.

• Available in six languages. English is used by default on first launch.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎬 CREATE NEW FACIAL ANIMATION CLIPS

Choose the BlendShapes you want to animate, set their values and save a new Animation Clip in the selected folder.

• Every BlendShape starts at 0 inside the tool.

• Moving a slider automatically enables its Modify checkbox.

• Sliders can still be tested without saving them until their checkbox is enabled.

• Select All and Deselect All buttons are included.

• Preview applies the configured expression to the avatar.

• Disabling Preview restores the BlendShape values the avatar had before previewing.

• After saving, selected checkboxes and slider values are cleared so you can immediately begin another expression.

• The clip name is also cleared after saving, while the shared save path remains unchanged.

• The tool warns you when a clip with the same name already exists in the selected folder.

Only BlendShapes whose Modify checkbox is enabled are written to the new clip.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

✏️ EDIT EXISTING ANIMATION CLIPS

Existing facial clips can be loaded into the BlendShape editor in three ways:

• Manual — Assign any Animation Clip directly.

• VRChat Clips — Detect the common Default, Fist, Open Hand, Point, Victory, Rock 'n Roll, Gun and Thumbs Up clips.

• Matrix — Detect the unique clips used in the Gesture Matrix without listing reused clips more than once.

VRChat clips can be detected using either method:

• By Name — Searches the FX controller for the expected clip names.

• By Position — Reads facial states controlled by GestureLeft and GestureRight and assigns clips according to gesture values 0 through 7.

Two editing operations are available:

• Add — Adds or updates the selected BlendShape curves while preserving the rest of the clip.

• Replace — Offers two scopes:

• BlendShapes: replaces the facial BlendShape curves while preserving animation for other properties.

• Everything: clears the clip and writes only the BlendShapes selected in the tool.

Editing mode intentionally modifies the selected Animation Clip asset. Duplicate important clips first if you want to keep an untouched copy.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔎 VISUAL BLENDSHAPE BROWSER

Every detected BlendShape is displayed with:

• A Modify checkbox.

• Its name.

• A value slider from 0 to 100.

• A visual thumbnail captured from the current Scene view.

During capture, the tool temporarily sets every BlendShape on the target face to 0 and applies only the BlendShape being captured at 100. Original values are restored when capture finishes.

Thumbnail display modes:

• No Filter — Shows the original captured image.

• Affected Area — Darkens the image while leaving a rectangle around the deformed area visible.

• Affected Vertices — Darkens unaffected geometry and highlights the vertices moved by the BlendShape.

Thumbnail options:

• Capture resolution from 50 px to 600 px.

• Adjustable thumbnail display size.

• Affected-area zoom that does not require recapturing the thumbnails.

• Show the complete avatar or only the target face mesh during capture.

• Reload all thumbnails or regenerate an individual thumbnail.

Thumbnails are cached on disk beside the tool and reused when possible. The selected avatar and display settings are also kept between window openings, reducing the need to repeat expensive captures.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

⚡ OPTIMIZED FOR LARGE BLENDSHAPE LISTS

The list uses cached data, virtualization and incremental thumbnail loading so the editor does not need to construct every visible element and load every texture during the same frame.

This is especially useful for avatars with hundreds or more than one thousand BlendShapes. Initial thumbnail capture time still depends on the avatar, selected resolution and computer performance.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔍 FILTER, SEARCH AND SORT

Choose exactly which BlendShapes appear in the list:

• Names beginning with vrc.*

• BlendShapes referenced by the VRC Avatar Descriptor, including Lip Sync, blinking and eye-look shapes.

• Other BlendShapes.

• Empty BlendShapes that do not move vertices.

• Items with enabled Modify checkboxes.

• Items with disabled Modify checkboxes.

You can also search by name and sort the current results:

• Alphabetically by name.

• By slider value, with the highest values first.

• Invert either order.

The search filter is considered disabled when its field is empty. When sorting by value, an item is repositioned only after you finish manipulating its slider, preventing the row from moving while it is being edited.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🧩 64 GESTURELEFT × GESTURERIGHT COMBINATIONS

The Gesture Matrix provides one cell for every combination of GestureLeft and GestureRight from 0 to 7.

• 0 represents Default.

• 1 through 7 represent Fist, Open Hand, Point, Victory, Rock 'n Roll, Gun and Thumbs Up.

• The same Animation Clip can be reused in multiple cells.

• Each matrix cell has a facial thumbnail and an Animation Clip slot.

• Thumbnail resolution and display size are configurable.

• Transition duration between facial states can be adjusted.

The tool can inspect an existing FX controller and import facial clips from layers driven by GestureLeft and GestureRight. If a transition uses only one of those parameters, the missing hand is interpreted as value 0.

Convenient Auto Fix buttons can reuse a left-hand or right-hand expression in its mirrored and matching diagonal positions when those cells are empty. A cell is not auto-filled when it already contains a clip or when the suggested clip is the Default clip.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🛡️ CONSISTENT FACIAL CLIPS

Facial expressions can combine incorrectly when different clips animate different sets of BlendShapes. The matrix checks for two common problems:

• A non-default clip contains facial BlendShapes that are missing from Default.

• Default contains facial BlendShapes that are missing from one or more expression clips.

Two red diagnostics explain these cases. Their Auto Fix actions add the missing curves with a value of 0, helping every expression explicitly reset the same facial shapes instead of leaving old values stuck on the avatar.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🎛️ SAFE FX CONTROLLER GENERATION

The matrix detects the avatar's FX controller and compatible facial-expression layer. Both selections can be changed manually if automatic detection is not the desired choice.

When generating the matrix, the tool creates a new FX controller asset instead of editing the original controller:

• Create Another Layer — Keeps the detected facial layer and adds the new matrix layer.

• Replace Facial Layer — Omits the detected GestureLeft/GestureRight facial layer from the generated copy and replaces it with the new matrix.

Other copied layers are preserved in the generated controller. The new FX can then be assigned to the avatar from the same window.

If the avatar has no FX controller, the tool displays a red diagnostic with an Auto Fix option and expands the relevant Avatar Descriptor section after assigning the generated asset.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

😀 FACIAL EXPRESSIONS FROM THE EXPRESSIONS MENU

Create facial expressions that are activated from the VRChat Expressions Menu instead of hand gestures.

Each menu gesture includes:

• An Animation Clip.

• A display name.

• A Texture2D icon.

• Its assigned value in the shared Int parameter.

• A thumbnail of the facial expression.

• A selectable destination inside the Expressions Menu structure.

All facial-expression toggles share one configurable Int parameter:

• 0 means Off and returns control to the currently active GestureLeft/GestureRight matrix expression.

• Values 1, 2, 3 and onward activate the configured menu expressions.

• Save State can be enabled when the selected menu expression should persist.

• The generated Expression Parameter is network synchronized.

While a menu expression is active, it overrides the matrix expression instead of adding both facial animations together. When the toggle is disabled, the avatar returns to the matrix combination currently selected by GestureLeft and GestureRight.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📁 SMART EXPRESSIONS MENU PLANNING

Select an existing Expressions Menu destination or plan new submenus before creating any assets.

• Navigate through real submenus already present in the avatar.

• Navigate through pending virtual submenus configured in the tool.

• See planned menu usage and remaining capacity, including real controls, pending toggles and pending submenus.

• Receive a warning when only one slot remains.

• Receive an error when the selected destination has no available slots.

• Configure overflow submenus when additional controls no longer fit.

• New toggles inherit the previous toggle's destination by default, but every destination remains editable.

• Pending submenu chains are created only when the complete system is generated.

The common save path is used for generated controller and menu assets. Missing Expression Parameters or Expressions Menu assets are reported only in the work mode that needs them, with Auto Fix actions that create and assign the required files.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🔒 HAND LOCK AND FACE LOCK

Optional lock toggles can be installed together with the menu gestures.

• Face Lock preserves the current GestureLeft/GestureRight matrix expression while the player continues changing hand gestures. It does not block facial expressions activated through the Expressions Menu.

• Hand Lock preserves the active hand pose while facial expressions continue changing through either the matrix or menu toggles.

Each lock has its own menu name, Bool parameter name, icon, Save State setting and editable menu destination. The Bool parameters are network synchronized.

You can also enable Create Menu for Lock Toggles to plan a dedicated submenu. Both lock controls are routed to that pending submenu automatically, while still allowing their destinations to be changed manually.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🧰 SHARED AND PERSISTENT WORKSPACE

• All save-path fields share the same value. Changing the path in one work mode updates the others.

• Thumbnail resolution, thumbnail size, affected-area zoom and filter settings are preserved as appropriate between window openings or during the current Unity session.

• The previously selected avatar and compatible cached thumbnails can be restored when the tool is reopened.

• The complete window uses a vertical scroll area, while primary save actions remain visible at the bottom when needed.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🚀 BASIC WORKFLOW

1. Add your avatar or face mesh to Avatar / Face.

2. Create a new facial clip or load an existing clip for editing.

3. Adjust BlendShapes and verify the result with Preview.

4. Save the selected changes.

5. Assign clips to the 8 × 8 Gesture Matrix and/or configure Menu Gestures.

6. Review diagnostics and use Auto Fix where appropriate.

7. Generate the new FX controller and menu assets.

8. Assign the generated FX to the avatar and test it in Unity or VRChat.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

💡 WHAT CAN YOU CREATE?

• Standard VRChat hand-gesture expressions.

• Unique two-hand facial combinations.

• Menu-controlled smiles, blinks, eye states and stylized expressions.

• Mood and roleplay expression sets.

• Alternate faces for photos or performances.

• Independent hand-pose and matrix-face locks.

• Organized expression collections distributed across submenus.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

🌍 AVAILABLE IN 6 LANGUAGES

• English

• Español

• 日本語

• Deutsch

• 한국어

• 简体中文

English is the default language for first-time users and can be changed from Dayzuke Tools preferences.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

📌 REQUIREMENTS AND IMPORTANT NOTES

• Unity 2022.3.22f1.

• VRChat SDK3 - Avatars installed in the project.

• A Skinned Mesh Renderer containing facial BlendShapes.

• For automatic face detection, the Avatar Descriptor must have a Face Mesh assigned under Lip Sync. Otherwise, assign the target face object or renderer directly.

• Generated avatar systems are suitable for PC, Quest and iOS avatars when the clips, shaders and other avatar assets are compatible with the target platform.

• Editing an existing Animation Clip, Expressions Menu or Expression Parameters asset writes changes to that selected asset. Keep a project backup or use version control before making major changes.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

💬 WANT A NEW FEATURE?

Feel free to reach out and request new features through any of my channels:

• X (Twitter): https://x.com/Dayzuke_Azmodeo

• Instagram: https://www.instagram.com/dayzukeazmodeo/

• Discord: dayzukeazmodeo

🎮 JOIN MY DISCORD SERVER!

Get early and free versions of my tools, see my latest work updates, and request new features directly:

👉 https://discord.gg/BZ3bHvqmU4

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━