FaceNinja

Referência · ARKit · rastreamento facial

Os 52 blendshapes ARKit, em uma cabeça de verdade.

O ARKit descreve um rosto com 52 blendshapes: pesos de 0 a 1 para movimentos como jawOpen ou eyeBlinkLeft. O rastreamento facial de um iPhone envia esses pesos, e o Live Link Face, apps de VTubing e engines de jogos os reproduzem em qualquer cabeça que tenha os mesmos 52 blendshapes. Aqui estão cada nome, o que ele move e uma cabeça que tem todos.

Grátis Crie uma conta grátis e baixe 20 cabeças de exemplo MetaHuman de alta qualidade: pele 4K, 52 blendshapes ARKit, GLB/FBX/MetaHuman ZIP.

Todos os 52, por parte do rosto

Os nomes estão exatamente como a Apple os escreve. Left e Right são a esquerda e a direita do próprio rosto, não de quem olha.

Olhos14 blendshapes

  1. eyeBlinkLeft
    eyeBlinkRight
    Fecha a pálpebra.
  2. eyeLookDownLeft
    eyeLookDownRight
    As pálpebras acompanham um olhar para baixo.
  3. eyeLookInLeft
    eyeLookInRight
    As pálpebras acompanham um olhar em direção ao nariz.
  4. eyeLookOutLeft
    eyeLookOutRight
    As pálpebras acompanham um olhar para longe do nariz.
  5. eyeLookUpLeft
    eyeLookUpRight
    As pálpebras acompanham um olhar para cima.
  6. eyeSquintLeft
    eyeSquintRight
    Aperta o olho: a pálpebra inferior e a bochecha sobem.
  7. eyeWideLeft
    eyeWideRight
    Arregala o olho: a pálpebra superior sobe.

Mandíbula4 blendshapes

  1. jawForwardProjeta a mandíbula para a frente.
  2. jawLeftMove a mandíbula para a esquerda do rosto.
  3. jawRightMove a mandíbula para a direita do rosto.
  4. jawOpenAbre a mandíbula.

Boca23 blendshapes

  1. mouthCloseFecha os lábios enquanto a mandíbula fica aberta; usado junto com jawOpen.
  2. mouthFunnelArredonda os lábios abertos em forma de funil, como ao dizer “u”.
  3. mouthPuckerProjeta os lábios fechados para a frente, como num beijo.
  4. mouthLeftMove os dois lábios para a esquerda do rosto.
  5. mouthRightMove os dois lábios para a direita do rosto.
  6. mouthSmileLeft
    mouthSmileRight
    Levanta o canto da boca.
  7. mouthFrownLeft
    mouthFrownRight
    Abaixa o canto da boca.
  8. mouthDimpleLeft
    mouthDimpleRight
    Puxa o canto da boca para trás, em direção à covinha.
  9. mouthStretchLeft
    mouthStretchRight
    Estica o canto da boca para o lado e para baixo.
  10. mouthRollLowerEnrola o lábio inferior para dentro, sobre os dentes.
  11. mouthRollUpperEnrola o lábio superior para dentro, sobre os dentes.
  12. mouthShrugLowerEmpurra o lábio inferior para cima e para fora.
  13. mouthShrugUpperEmpurra o lábio superior para cima e para fora.
  14. mouthPressLeft
    mouthPressRight
    Pressiona o lábio inferior contra o superior daquele lado.
  15. mouthLowerDownLeft
    mouthLowerDownRight
    Puxa o lábio inferior para baixo daquele lado.
  16. mouthUpperUpLeft
    mouthUpperUpRight
    Levanta o lábio superior daquele lado.

Sobrancelhas5 blendshapes

  1. browDownLeft
    browDownRight
    Abaixa a parte externa da sobrancelha.
  2. browInnerUpLevanta as pontas internas das duas sobrancelhas.
  3. browOuterUpLeft
    browOuterUpRight
    Levanta a parte externa da sobrancelha.

Bochechas3 blendshapes

  1. cheekPuffInfla as duas bochechas.
  2. cheekSquintLeft
    cheekSquintRight
    Levanta a bochecha em volta da pálpebra inferior.

Nariz2 blendshapes

  1. noseSneerLeft
    noseSneerRight
    Levanta a lateral do nariz, como numa careta de desdém.

Língua1 blendshapes

  1. tongueOutPõe a língua para fora da boca.

Fonte dos nomes: a documentação do ARKit da Apple.

Mova os blendshapes em uma cabeça de verdade

Estas são as cabeças de exemplo, como o FaceNinja as fez a partir de uma foto cada. Carregue uma e arraste os controles: cada controle é um blendshape ARKit naquele rosto, e as expressões misturam vários.

Bancada de inspeçãoImagem estática

Cabeças de exemplo

A cabeça 3D MetaHuman que o FaceNinja criou a partir da foto S-07

As setas giram a cabeça. Mais e menos dão zoom. Zero redefine a vista. Esc sai do visualizador.

Expressão
Vista
Iluminação

Leitura ARKit

Os valores seguem a expressão. Arraste um slider para definir um.

Pessoa sintéticaA prévia é comprimida para a web. O download traz os mapas 4K completos.

Seis expressões e os blendshapes que as formam

Uma expressão é uma mistura de blendshapes. Cada imagem abaixo é o exemplo S-16 com os blendshapes listados embaixo ativados; o rosto neutro não tem nenhum.

  • Exemplo S-16, uma pessoa sintética, com NeutraNeutra
    —
  • Exemplo S-16, uma pessoa sintética, com mouthSmileLeft, mouthSmileRightSorriso
    mouthSmileLeft mouthSmileRight
  • Exemplo S-16, uma pessoa sintética, com jawOpen, browInnerUpSurpresa
    jawOpen browInnerUp
  • Exemplo S-16, uma pessoa sintética, com browDownLeft, mouthFrownLeftCarrancuda
    browDownLeft mouthFrownLeft
  • Exemplo S-16, uma pessoa sintética, com mouthPuckermouthPucker
  • Exemplo S-16, uma pessoa sintética, com eyeBlinkLefteyeBlinkLeft

Por que tongueOut precisa de uma língua

tongueOut só aparece em uma cabeça com língua e com uma boca que abre o suficiente. As cabeças do FaceNinja têm as duas coisas, então o GLB e o FBX trazem os 52 blendshapes, tongueOut incluído.

Perfect Sync: os 52 blendshapes no VTubing

No VTubing, um avatar com os 52 blendshapes ARKit se chama Perfect Sync (パーフェクトシンク): o rastreamento de um iPhone controla cada blendshape diretamente, em vez de alguns presets. Apps baseados em VRM precisam de um arquivo VRM, que o FaceNinja não faz. O nosso Creator Kit gratuito segue o outro caminho: a sua cabeça vira um MetaHuman no Unreal Engine, controlado pelo Live Link Face ou por uma webcam.

Onde os 52 blendshapes ficam em cada engine

Os mesmos 52 nomes em quatro engines
EngineOnde estão os blendshapesObservação
Unreal EngineMorph targets no Skeletal Mesh; o Live Link Face os controla pelo nome.Importe com os morph targets ativados e marque Used with Morph Targets nos materiais da cabeça (docs EN).
UnityBlend shapes no Skinned Mesh Renderer, a partir do FBX.Import BlendShapes vem ativado por padrão nas configurações de importação do modelo.
Godot 4Blend shapes no MeshInstance3D, a partir do GLB.find_blend_shape_by_name() dá o índice para set_blend_shape_value().
three.jsmesh.morphTargetDictionary liga cada nome ao seu índice em mesh.morphTargetInfluences.Carregue o GLB com o GLTFLoader.

Perguntas sobre blendshapes ARKit

01O que são blendshapes ARKit?
Os 52 movimentos faciais com nome que a Apple definiu para o rastreamento facial no iPhone e no iPad. Cada um é um peso de 0 a 1, e qualquer expressão é uma mistura deles.
02Quantos blendshapes ARKit existem?
52: 14 para os olhos, 4 para a mandíbula, 23 para a boca, 5 para as sobrancelhas, 3 para as bochechas, 2 para o nariz e 1 para a língua.
03Preciso de um iPhone?
Para capturar os 52 ao vivo, você precisa de um aparelho com o rastreamento facial da Apple, como um iPhone com Face ID; o Live Link Face usa isso. Para reproduzi-los, serve qualquer engine que leia blendshapes, sem iPhone.
04As cabeças do FaceNinja incluem tongueOut?
Sim. O GLB e o FBX trazem os 52 blendshapes, tongueOut incluído, feitos para cada rosto.
05O que é Perfect Sync?
Um termo do VTubing para um avatar que tem os 52 blendshapes ARKit, de modo que o rastreamento facial controla cada um diretamente.
06Posso testar uma cabeça com os 52 blendshapes?
Sim. Cadastre-se grátis e baixe as 20 cabeças de exemplo: todo GLB e FBX tem os 52.

Posso testar uma cabeça com os 52 blendshapes?

Sim. Cadastre-se grátis e baixe as 20 cabeças de exemplo: todo GLB e FBX tem os 52.