Expressions/fr: Difference between revisions
Shad0wDark (talk | contribs) No edit summary |
Shad0wDark (talk | contribs) No edit summary |
||
| Line 204: | Line 204: | ||
|- | |- | ||
|Float → Bool | |Float → Bool | ||
| | |Toute valeur Int qui n’est pas 0 définit le bool à True | ||
|- | |- | ||
|Float → Int | |Float → Int | ||
Revision as of 17:18, 6 April 2026

Les expressions sont une fonctionnalité des avatars VRChat, composé de menus personnalisés par les utilisateurs, qui vous permettent d'activer des actions ou éléments de votre avatar, conçu pour être flexible et donner un accès simplifié aux fonctionnalités des avatars.
Plus d'informations disponibles sur la Documentation des créateurs d'avatar.
Menu des expressions
Le menu des expressions est accessible via le menu d'action ou le menu latéral des expressions du menu rapide et menu principal. Les modifications des expressions d'un avatar sont transmises globalement aux autres utilisateurs de la même plateforme et peuvent être réglés pour une synchronisation multiplateforme.
Expressions dans le SDK
Les expressions sont modifiés via de nombreux « parameters » dans le SDK VRChat.
Expressions de bases
Lorsqu'aucune expression n'est configurée, un menu d'expression avec les animations de base suivantes est ajouté à l'avatar :
- Saluer
- Applaudir
- Pointer du doigt
- Encourager
- Danser
- Salto arrière
- Faire le mort
- Tristesse
Expressions personnalisées
Pour ajouter des expressions personnalisées, créez un fichier « Expression Menu », ainsi qu'un fichier « Expression Parameter », puis ajoutez-les sur « VRChat Avatar Descriptor ». Le menu définit l'entrée des « parameters » affichés sur le menu d'expression de votre avatar. Les « parameters » sont les variables que contrôle le menu. Vous pouvez aussi préciser des détails tels que si les « parameters » doivent être synchronisés pour les autres utilisateurs. Vous pouvez avoir jusqu'à 256 bits synchronisés pour un total de 8192 variables.
Each custom parameter can be marked as Saved and Synced. Synced custom parameters count toward the avatar's 256-bit sync budget, while avatars can define up to 8192 total custom parameters. Parameters on this asset can also be changed by Contact Receivers, parameter drivers, PhysBones, and OSC.
The SDK also includes a Default Parameters button. This restores the three alias parameters used by VRChat's default AV3 controllers: VRCEmote, VRCFaceBlendH, and VRCFaceBlendV.
Contrôles
Vous pouvez créer jusqu'à 8 contrôles différents par pages :
- Bouton (Button)
- Activer/Désactiver (Toggle)
- Sous-menu (Sub Menu)
- Contrôle à deux axes (Two Axis Puppet)
- Contrôle à quatres axes (Four Axis Puppet)
- Menu radial (Radial Puppet)
Example du « Puppet Menu »

Lorsque vous déplacez votre joystick, pavé tactile ou souris dans différentes directions, vous modifiez les « parameters » d'animation pour changer d'humeur. (p. ex. « Content » et « Surpris »). Tous les « parameters » peuvent être contrôlés depuis ce menu
Vous pouvez un menu sur quelconque main (ou les deux). Par défaut, effectuez un mouvement de balayage pour sélectionner une option. Vous pouvez choisir d'utiliser la gâchette depuis les paramètres du menu d'action. Pour retourner en arrière, appuyez sur la gâchette.
When a puppet control is open, VRChat synchronizes its live values with the faster IK sync mode. After it is closed, the frozen value remains until it is changed again.
« Expression Parameter »
« Expression parameters » sont utilisés pour contrôler les fonctionnalités des avatars via le menu des expressions, les « contact Receiver », l'OSC, les « parameter drivers » ou les physbones. Ces « parameters » peuvent ensuite être assignés aux « parameters » de l'« Animator Controller » dans les « controllers FX, Gesture ou Action » de votre avatar.
Settings
Each entry in the Expression Parameters asset stores:
- Name, which must match the Animator parameter name exactly.
- Type, which can be
Bool,Int, orFloat. - Default, which is used when the avatar is reset.
- Saved, which controls whether the value persists between sessions.
- Synced, which controls whether the value is sent to other users.
By default, custom parameter sync uses VRChat's Playable sync mode. Puppet controls temporarily use faster IK sync while they are actively open.
Built-in parameters
VRChat also provides built-in Animator parameters. These do not need to be added to the Expression Parameters asset, and they do not count toward the custom parameter budget.
Built-in parameters are read-only. They are added directly to a playable layer's Animator Controller by name, and VRChat updates them automatically at runtime. They are not set on sub-animators, only on playable-layer animators.
Additional built-in parameters include:
Viseme(Int) — Set by lip sync from0(silence) to14(the "u" vowel) when the Avatar Descriptor's Lip Sync is set to Viseme Blend Shape or Viseme Parameter Only.Voice(Float) — Perceived microphone volume from0.0to1.0, affected by distance and earmuff settings.VelocityX,VelocityY,VelocityZ,VelocityMagnitude(Float) — Movement speed in m/s along each axis and total magnitude. Locally, playspace movement does not count; remotely, it does.Upright(Float) —0when prone,1when standing.Grounded(Bool) — Whether the user is touching the ground.MuteSelf(Bool) — Whether the user's microphone is muted.Earmuffs(Bool) — Whether the user has earmuffs enabled.IsOnFriendsList(Bool) — Whether the viewer is friends with the avatar's wearer (shows False locally).ScaleFactor,ScaleFactorInverse,EyeHeightAsMeters,EyeHeightAsPercent(Float) — Scaling-related parameters for avatar scaling.EyeHeightAsMetersis recommended for scale-aware systems because it is linear and does not depend on upload height.
Each built-in parameter has a sync type determining when it is sent to remote users: IK for tracking-derived values (gestures, velocity, grounded), Speech for voice-related values (viseme, voice), Playable for user-state values (mute, earmuffs, tracking type, scale), or None for local-only values (IsLocal, PreviewMode).
Network synchronization
Only synced expression parameters and certain built-in parameters are sent over the network. The full list of data sent for each avatar includes:
- IK targets — Head, jaw, and hands for desktop and 3-point tracking; additionally hip and feet for full-body tracking. Index controller users also sync finger positions.
- Synced expression parameters — Only parameters marked as Synced are transmitted. Values are quantized: Int values sync in the range 0–255, Float values sync as multiples of 1/127 between −1 and 1, and Bools sync as true or false.
- Built-in VRC parameters — Including gestures, velocity, voice, and other runtime parameters.
- PhysBones — Pose position data is sent to late joiners.
For reliable late-joiner support, a recommended pattern is to split animator logic using the IsLocal parameter: local-side layers handle contacts, parameter drivers, and all logic, then set synced parameters, while remote-side layers only read those synced parameters to play the correct visualization.
Gestures and facial expressions
The built-in GestureLeft and GestureRight parameters identify the user's hand gesture, while GestureLeftWeight and GestureRightWeight expose analog trigger pressure. On humanoid avatars, the Gesture playable layer is commonly used for hand poses, while facial expressions are often driven from the FX layer with blendshapes, material properties, or other non-humanoid animations.
On tracked controllers where finger tracking overrides animation by default, creators can use a Tracking Control state behavior to switch the relevant fingers from Tracking to Animation when needed.
« Expression Parameter » non compatible
La non-correspondance des paramètres d’Expression fait référence à la pratique consistant à utiliser des types de paramètres différents entre vos Expression Parameters et les paramètres de votre contrôleur d’animation local. Bien qu’il soit recommandé de garder les types de paramètres cohérents, la non-correspondance est prise en charge et le système convertira les valeurs entre les types selon des règles spécifiques. Ce qui peut être utile dans certaines configurations avancées.
Le système Animator de Unity utilise des flottants en interne pour tous les types de paramètres, tandis que VRChat utilise des SBytes pour le stockage des paramètres. L’interface utilisateur dans Unity et le VRCSDK vous permet de sélectionner des types de paramètres par commodité, mais sous le capot, des conversions sont possibles. Cela signifie que les paramètres ne sont pas convertis (cast), mais plutôt non correspondants. Ce comportement est également pris en charge par des outils populaires tels que Av3Emulator et Gesture Manager.
Paramètre d’Expression Bool
| Type | Expression Bool = False | Expression Bool = True |
|---|---|---|
| Bool → Bool | Bool = False | Bool = True |
| Bool → Int | Int = 0 | Int = 1 |
| Bool → Float | Float = 0.0 | Float = 1.0 |
Paramètre d’Expression Int
| Type | Comportement |
|---|---|
| Int → Bool | Toute valeur Int qui n’est pas 0 définit le bool à True |
| Int → Int | Comportement attendu |
| Int → Float | Conversion directe : ex. Int = 2 → Float = 2.0 |
Paramètre d’Expression Float
| Type | Comportement |
|---|---|
| Float → Bool | Toute valeur Int qui n’est pas 0 définit le bool à True |
| Float → Int | Conversion arrondie : ≥0.5 → 1 ; <0.5 → 0 |
| Float → Float | Comportement attendu |
Ressources
- Monde Avatar 3.0 Hub sur VRChat
- Menu d’Expression et Contrôles sur les Creator Docs
- Action Menu - Menu d’Expression sur les Creator Docs
- Paramètres d’Animator sur les Creator Docs
- Couches jouables sur les Creator Docs
Voir aussi