Pular para o conteúdo principal

Como usar o plugin com personagens personalizados

Este guia orienta você pelo processo de configurar o Runtime MetaHuman Lip Sync para personagens que não são MetaHuman. Este processo requer familiaridade com conceitos de animação e rigging. Se precisar de assistência para implementar isso para seu personagem específico, você pode solicitar suporte profissional em [email protected].

Nota importante sobre modelos de sincronização labial

Compatibilidade com Personagens Personalizados

Personagens personalizados são suportados apenas com o modelo Padrão (Mais Rápido).

O modelo Realista (Maior Qualidade) é projetado para personagens MetaHuman e ARKit e não pode ser usado com outros personagens personalizados. Ao longo deste guia, você deve seguir as instruções do modelo Padrão do guia de configuração principal quando referenciadas.

Plugin de Extensão Obrigatório: Para usar o Modelo Padrão com personagens personalizados, você deve instalar o plugin de extensão Standard Lip Sync Extension conforme descrito na seção de Pré-requisitos do guia de configuração principal.

Esta extensão é obrigatória para todas as implementações de personagens personalizados descritas neste guia.

Pré-requisitos

Antes de começar, certifique-se de que seu personagem atenda a estes requisitos:

  • Possui um esqueleto válido
  • Contém morph targets (blend shapes) para expressões faciais
  • Idealmente possui 10+ morph targets definindo visemas (mais visemas = melhor qualidade de sincronização labial)

O plugin requer o mapeamento dos morph targets do seu personagem para os seguintes visemas padrão:

Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)

Observação: Se seu personagem tem um conjunto diferente de visemas (o que é provável), você não precisa de correspondências exatas para cada visema. Aproximações geralmente são suficientes - por exemplo, mapear o visema SH do seu personagem para o visema CH do plugin funcionaria de forma eficaz, já que são sons postalveolares intimamente relacionados.

Referência de mapeamento de visemas

Aqui estão os mapeamentos entre sistemas comuns de visemas e os visemas exigidos pelo plugin:

O ARKit fornece um conjunto abrangente de blendshapes para animação facial, incluindo várias formas de boca. Veja como mapeá-los para os visemas do RuntimeMetaHumanLipSync:

Visema RuntimeMetaHumanLipSyncEquivalente ARKitNotas
SilmouthCloseA posição neutra/de repouso
PPmouthPressLeft + mouthPressRightPara sons bilabiais, use ambas as formas de pressão juntas
FFlowerLipBiteLeft + lowerLipBiteRight (ou mouthRollLower)Lábio inferior toca os dentes superiores, como nos sons "f" e "v"
THtongueOutO ARKit tem controle direto da língua
DDjawOpen (suave) + tongueUp (se você tiver um rig de língua)Língua toca a crista alveolar; leve queda da mandíbula
KKmouthLeft ou mouthRight (suave)Puxão sutil no canto da boca aproxima sons velares
CHjawOpen (suave) + mouthFunnel (suave)Combine para sons postalveolares
SSmouthFrownUse um leve franzido para sibilantes
NNjawOpen (muito suave) + mouthCloseBoca quase fechada com leve abertura da mandíbula
RRmouthPucker (suave)Arredondamento sutil para sons de R
AAjawOpen + mouthStretchLeft + mouthStretchRight (ou jawOpen + mouthOpen)Boca bem aberta para o som "ah"
EjawOpen (suave) + mouthSmilePosição medianamente aberta com leve sorriso
IHmouthSmile (suave)Leve afastamento dos lábios
OHmouthFunnelForma arredondada aberta
OUmouthPuckerLábios firmemente arredondados

Criando um Ativo de Pose Personalizado

Siga estas etapas para criar um ativo de pose personalizado para seu personagem que será usado com o nó Blend Runtime MetaHuman Lip Sync:

1. Localize a Skeletal Mesh do seu personagem

Encontre a skeletal mesh que contém os morph targets (blend shapes) que você deseja usar para animação de sincronização labial. Pode ser uma mesh de corpo inteiro ou apenas uma mesh facial, dependendo do design do seu personagem.

2. Verifique os Morph Targets e Curves

Antes de prosseguir, verifique se sua skeletal mesh tem morph targets apropriados e curves correspondentes para animação de sincronização labial.

Verifique os Morph Targets: Confirme se sua skeletal mesh contém morph targets (blend shapes) que podem ser usados como visemas para animação de sincronização labial. A maioria dos personagens com suporte a animação facial deve ter alguns morph targets de fonemas/visemas.

Exemplo de morph targets em um personagem

Importante: Verifique a Guia Curves Esta etapa é especialmente crucial para personagens exportados do Blender ou de outros softwares externos:

  1. Abra a guia Curves no editor de Skeletal Mesh
  2. Verifique se você consegue ver curves correspondentes aos seus morph targets
  3. Se a guia Curves estiver vazia mas os morph targets existirem, adicione manualmente novas curves usando exatamente os mesmos nomes dos seus morph targets

Observação: Esse problema ocorre comumente em exportações do Blender onde os morph targets são importados com sucesso, mas as curves de animação não são criadas automaticamente. Sem curves correspondentes, a animação não será preenchida corretamente após o bake para o Control Rig.

Solução Alternativa: Para evitar esse problema durante a exportação do Blender, tente habilitar Custom Properties e Animation nas configurações de exportação FBX, o que pode ajudar a incluir curves de animação junto com os morph targets.

3. Crie uma Animação de Pose de Referência

  1. Vá para Create Asset -> Create Animation -> Reference Pose
  2. Insira um nome descritivo para a sequência de animação e salve-a em um local apropriado
  3. A Animation Sequence criada será aberta automaticamente, mostrando uma animação vazia reproduzindo em loop

Criando um ativo de pose de referência Nomeando o ativo de pose de referência

  1. Clique no botão Pause para parar a reprodução da animação para facilitar a edição

Pausando a reprodução da animação

4. Edite a Animation Sequence

  1. Clique em Edit in Sequencer -> Edit with FK Control Rig
  2. Na caixa de diálogo Bake to Control Rig, clique no botão Bake to Control Rig sem alterar nenhuma configuração

Editando com FK Control Rig Fazendo bake para Control Rig

  1. O editor mudará para o Animation Mode com a guia Sequencer aberta
  2. Defina o View Range End Time para 0016 (o que definirá automaticamente o Working Range End para 0016 também)
  3. Arraste a borda direita do controle deslizante para a extremidade direita da janela do sequenciador

5. Prepare the Animation Curves

  1. Retorne ao ativo Animation Sequence e localize os morph targets na lista Curves (se não estiverem visíveis, feche e reabra o ativo Animation Sequence)
  2. Remova quaisquer morph targets que não estejam relacionados a visemas ou movimentos da boca que você deseja usar para a sincronização labial

6. Plan your viseme mapping

Crie um plano de mapeamento para corresponder os visemas do seu personagem ao conjunto exigido pelo plugin. Por exemplo:

Sil -> Sil
PP -> FV
FF -> FV
TH -> TH
DD -> TD
KK -> KG
CH -> CH
SS -> SZ
NN -> NL
RR -> RR
AA -> AA
E -> E
IH -> IH
OH -> O
OU -> U

Observe que é aceitável ter mapeamentos repetidos quando o conjunto de visemas do seu personagem não tem correspondências exatas para cada visema necessário.

7. Animate each viseme

  1. Para cada visema, anime as curvas do morph target relevante de 0.0 para 1.0
  2. Inicie a animação de cada visema em um frame diferente
  3. Configure curvas adicionais conforme necessário (abertura da mandíbula/boca, posição da língua, etc.) para criar formas de visema com aparência natural

8. Create a Pose Asset

  1. Vá para Create Asset -> Pose Asset -> Current Animation
  2. Insira um nome descritivo para o Pose Asset e salve-o em um local apropriado
  3. O Pose Asset criado será aberto automaticamente, mostrando poses como Pose_0, Pose_1, etc., cada uma correspondendo a um visema
  4. Visualize os pesos dos visemas para garantir que funcionem conforme o esperado

Criando um ativo de pose Nomeando o ativo de pose Ativo de pose com visemas

9. Finalize the Pose Asset

  1. Renomeie cada pose para corresponder aos nomes dos visemas da seção Prerequisites
  2. Exclua quaisquer poses não utilizadas

Setting up audio handling and blending

Uma vez que seu ativo de pose estiver pronto, você precisa configurar os nós de manipulação e mesclagem de áudio:

  1. Localize ou crie o Animation Blueprint do seu personagem
  2. Configure a manipulação e mesclagem de áudio seguindo os mesmos passos documentados no guia de configuração padrão do plugin
  3. No nó Blend Runtime MetaHuman Lip Sync, selecione seu ativo de Pose personalizado em vez do ativo de pose MetaHuman padrão

Selecionando o ativo de pose personalizado

Combining with body animations

Se você deseja realizar a sincronização labial junto com outras animações corporais:

  1. Siga os mesmos passos documentados no guia padrão do plugin
  2. Certifique-se de fornecer os nomes corretos dos ossos para o esqueleto do pescoço do seu personagem, em vez de usar os nomes dos ossos do MetaHuman

Resultados

Aqui estão exemplos de personagens personalizados usando esta configuração:

Exemplo 1: Sincronização labial com personagem personalizado

Exemplo 2: Sincronização labial com sistema de visemas diferente

Exemplo 3: Sincronização labial com sistema de visemas diferente

A qualidade da sincronização labial depende em grande parte do personagem específico e de quão bem seus visemas estão configurados. Os exemplos acima demonstram o plugin funcionando com diferentes tipos de personagens personalizados com sistemas de visemas distintos.