Ir para o conteúdo

Transform Sync (.anm / .pvt)

Vídeo tutorial — em breve

Dois tipos de arquivo carregam movimento, não arte:

Arquivo Vem de Carrega
.anm Octo Transform Sync pegs animados — posição, rotação e escala, por frame
.pvt um bake de ossos do Blender uma hierarquia de ossos com os transforms de repouso

Os dois podem ser navegados e colocados em staging, e nenhum dos dois vira um drawing. Eles constroem pegs.

O que pousa na árvore

Soltar qualquer um dos dois te dá um slot invólucro com o nome do arquivo, carregando um peg, um group e um composite (Peg Order: Parent, Comp Order: Inside). Esse invólucro é organização de staging, não parte do rig.

Abaixo dele, um peg por osso, com o nome do osso. Se o exportador já escreveu os sufixos -P / -G / -C do Harmony, eles são removidos — o slot adiciona os dele, e arm-P-P não ajuda ninguém.

Todo peg vindo desses arquivos nasce com:

Ajuste Valor Por quê
Enable 3D como declarado no arquivo um bake 3D precisa de pegs 3D
Position 3D Path ou Separate, como declarado o exportador sabe qual ele escreveu
Exclude AutoPivot ligado os pivots são do bake, e o AutoPivot não pode sobrescrevê-los

Um peg de câmera no arquivo é pulado — a cena tem a dela.

O que o Assemble escreve

Para um .anm, os keyframes são aplicados por frame no peg:

  • POSITION.X / Y / Z
  • ROTATION.ANGLEX / ANGLEY / ANGLEZ
  • SCALE.X / Y / Z

Posições são convertidas de unidades OpenGL para as unidades da própria cena no caminho de entrada, usando a conversão de field of view da cena — então um bake feito contra outra resolução de projeto ainda pousa no lugar certo.

position.SEPARATE é definido como true antes de os keys serem escritos, porque canais separados são o que os atributos por eixo endereçam.

A pose de repouso também atravessa

Mesmo sem keyframes, um peg carrega a rotação Euler que o arquivo declara (rotation.anglex/y/z). Um .pvt sem animação ainda é um esqueleto usável.

A ida e volta

O fluxo pretendido é:

  1. Blender / Maya — animar ou assar.
  2. Octo Transform Sync — exportar .anm.
  3. OSA — colocar o .anm em staging ao lado da arte que ele dirige, e montar a cena inteira numa passada.

É por isso que esses arquivos estão no Browser: a hierarquia de pegs e os drawings que pendem dela não deveriam ser duas importações separadas com um passo manual de reaparentamento no meio.

Validação

Um .anm é verificado antes de qualquer coisa entrar em staging. Ele precisa declarar format: octo_anm e carregar uma chave pegs; se não carregar, o OSA diz isso no log e não coloca nada em staging, em vez de construir uma hierarquia vazia que parece uma importação fracassada.

.pvt é um bake do Blender, não um arquivo de pivot do Harmony

A extensão é fácil de ler errado. Um .pvt aqui é um JSON de bake de ossos; não tem nada a ver com os dados de pivot do próprio Harmony.