Expressões

"Expressões" são um recurso de avatares do VRChat, que consiste em menus personalizados pelo usuário que permitem ativar ações ou alternar opções em seu avatar; projetadas para acesso fácil e flexível a recursos exclusivos do avatar.
Mais informações estão disponíveis em Documentação para Criadores de Avatares.
Menu de expressões
O menu de Expressões dentro do jogo pode ser acessado através do Menu de Ação, ou da aba Expressões no Menu Rápido e Menu Principal em qualquer versão do VRChat. As alterações nas expressões de um avatar são compartilhadas globalmente com outros usuários na mesma plataforma e podem ser configuradas para sincronização entre plataformas.
Expressões no SDK
As expressões são editadas usando vários parâmetros no SDK do VRChat.
Expressões base
Quando nenhuma expressão é configurada, um menu de expressões padrão com animações base é adicionado ao avatar, contendo as seguintes animações:
- Acenar
- Palmas
- Apontar
- Torcer
- Dança
- Mortal para trás
- Morrer
- Tristeza
Expressões personalizadas
Para adicionar expressões personalizadas, crie um arquivo de "Menu de Expressões" e um arquivo de "Parâmetros de Expressão" e, em seguida, anexe-os ao Descritor de Avatar do VRChat. O menu define as entradas de parâmetros exibidas nos menus de expressão do seu avatar. Os parâmetros são as "variáveis" que o menu controla. Você também especifica detalhes, como se os parâmetros devem ser sincronizados para outros usuários. É possível definir 256 bits para serem sincronizados, com um limite de 8192 variáveis.
Controles
Você pode criar até 8 controles por página. Ao criar um controle, escolha o seu tipo:
- Botão
- Interruptor
- Submenu
- Controle de Dois Eixos (Marionete)
- Controle de Quatro Eixos (Marionete)
- Controle Radial (Marionete)
Exemplo de Menu de Marionetes

Ao mover o joystick, o touchpad ou o mouse em diferentes direções, você altera os parâmetros de animação para misturar diferentes expressões (por exemplo, "feliz" e "surpreso"). Qualquer parâmetro pode ser controlado neste menu.
Você pode abrir um menu com qualquer uma das mãos (ou com ambas). Por padrão, dê um toque para selecionar uma opção. Nas configurações do Menu de Ação, você pode optar por usar o Gatilho. Para sair de uma marionete no menu de Expressões, pressione o gatilho.
Parâmetro de Expressão
Os parâmetros de expressão são usados para controlar as funcionalidades do avatar através do menu de expressões, receptor de contato, OSC, acionadores de parâmetro ou physbones. Esses parâmetros são então mapeados para os parâmetros do Controlador de Animação nos controladores de Efeitos (FX), Gestos ou Ações do seu avatar.
Divergências de parâmetros de expressão
A divergência de parâmetros de expressão refere-se à prática de usar tipos de parâmetros diferentes entre os parâmetros de expressão e os parâmetros do controlador de animação local. Embora seja recomendável manter a consistência dos tipos de parâmetros, existe suporte para essa divergência e o sistema converterá os valores entre os tipos de acordo com regras específicas. Isso pode ser útil em certas configurações avançadas.
O sistema Animator do Unity usa floats no backend para todos os tipos de parâmetros, enquanto o VRChat usa SBytes internamente para armazenamento de parâmetros. A interface do usuário no Unity e no VRCSDK permite selecionar tipos de parâmetros para maior conveniência, mas, internamente, conversões são possíveis. Isso significa que os parâmetros não são convertidos (cast), mas sim divergentes. Esse comportamento também é suportado por ferramentas populares como Av3Emulator e Gesture Manager.
Parâmetro de Expressão Booleano
| Tipo | Expressão Booleana = Falso | Expressão Booleana = Verdadeiro |
|---|---|---|
| Bool → Bool | Bool = False | Bool = True |
| Bool → Int | Int = 0 | Int = 1 |
| Bool → Float | Float = 0.0 | Float = 1.0 |
Parâmetro de Expressão Inteiro
| Tipo | Comportamento |
|---|---|
| Int → Bool | Qualquer valor inteiro diferente de 0 define uma variável booleana como Verdadeiro. |
| Int → Int | Comportamento Esperado |
| Int → Float | Conversão Direta: por exemplo, Inteiro = 2 → Float = 2.0 |
Expression Parameter Float
| Type | Behaviour |
|---|---|
| Float → Bool | Any Float value that isn’t 0 sets bool to True |
| Float → Int | Rounded Conversion: ≥0.5 → 1 ; <0.5 → 0 |
| Float → Float | Expected Behaviour |
Resources
- Avatar 3.0 Hub world on VRChat
- Expression Menu and Controls on Creator Docs
- Action Menu - Expression Menu on Creator Docs
- Animator Parameters on Creator Docs
- Playable Layers on Creator Docs
See also
References