top of page
Buscar

janeiro e fevereiro de 2023 - cenas 3 e 4

  • Foto do escritor: DIANA DAVID
    DIANA DAVID
  • 15 de jul. de 2024
  • 5 min de leitura

Modelação e animação das Cena 03 e 04 da história A, Cena 03 da história B no Blender e implementou-se no Unity.

Foi implementado animação a partir do Quill, também.


Cena 3 da narrativa A:



Esta cena acabou por ser aliminada por não ser interessante e prejudicar a sncronia das narrativas paralelas.

------------------------

Cena 4 da narrativa A:

Problema da personagem em duplicado:

Esta cena tem a personagem em duplicado: uma a subir as escadas e a olhar para cima e outra, virada de cabeça para baixo e pendurada sobre o observador, a olhar para nós enquanto suspira de cansaço e impaciência ao ver a escadaria infinita.

A duplicação da personagem trouxe problemas devido ao modo como o Blender nomeia cada objecto.  Como o programa não aceita que um objecto tenha o mesmo nome que outro, este acrescenta .001 à frente do nome de todos os objectos em duplicado.  Isto torna impossível que se anime uma personagem duplicada e se possa aproveitar  a animação com esse modelo.  Pois mesmo que se importe para  o Unity apenas  o ficheiro de animação esta não pode ser aplicada no modelo já existente e  "igual" dentro  do programa. No entanto, se se tiver o modelo original na cena do Blender, é possível exportá-lo  (mesmo que não se tenha animado com ele), pois todos os clips de animação irão com o ficheiro.

Esta cena ainda precisa de algumas melhorias:

  • Eliminar o cubo de referência

------------------------


Cena 3 da narrativa B:

Maquete feita no Blender


Esta cena tem um diferença na sua construção em relação às outras cenas: animação feita diretamente em Realidade Virtual.

A imagem acima mostra a maquete no Blender, onde foi extremamente fácil inserir a animação do chão feita a partir do Quill. No entanto, a sua reconstrução no Unity foi extramente problemática devido a incompatibilidades nos formatos utilizados.


Constatações durante a implementação da animação feito no Quill no Unity:

  • A animação do Quill não deve ser levada para o Blender para se fazerem pequenos ajustes. Estes devem ser feito diretamente no Quill.

  • A informação do Quill é pesada e faz "crashar" muito o Unity.

  • Não há um shader tão compatível (chave na mão) como aquele que se tem no Blender.

  • Foram experimentados os shader fornecido pelo Quill (https://quill.fb.com/assets/QuillShader.shader ) e o shader externo Smoothly-lit VR Vertex Colour Shader for Unity ( https://gumroad.com/watarucg ). Optou-se pelo último por este ter uma reação às luzes. No entanto, este último não é possível visualizá-lo quando se faz "play" no Unity e se observa com os Quest 2 ligados ao PC. É necessário fazer sempre um export da .apk e instalar no Quest 2, antes de se poder ver.


Problema:A animação feita no Quill e exportada em  .alembic para o Unity funciona quando reproduzida no computador. Contudo, esta animação não aparece quando se cria um .apk para se visualizar apenas com o Quest 2.Isto acontece porque o packadge fornecido pela Unity não é compativel com Android.. apenas com Windows, IOS, Linux e Stadia.

A solução seria tentar utilizar .FBX, ou correr a experiência a partir do Windows em vez do Android, ou encontrar outro programa de animação em RV que exporte noutro formato (o Anim VR só exporta em alembic, e o Tvori e o MasterpieceVR não fornecem ferramentas para animar deste modo, apesar de exportarem em .fbx).

Optei pela primeira solução que parece ser mais fiel ao que estava planeado inicialmente. 


Exportar FBX do Quill:


O que esta exportaçao faz é transformar cada frame numa geometria única.

Isto pode tornar a cena muito pesada porque em vez de uma única geometria animada (procedural) como no formato Alembic, no formato FBX pode haver 250 ou mais geometrias, dependendo no número de frames da animação.


ATENÇÃO!: É obrigatório haver alguma coisa na 1ª frame. Não pode estar vazia.


Passos para importar um FBX com animação do QUILL para o Unity:

1 - Arrastar para a pasta de projeto o fbx do quill

2 - Selecionar esse .fbx e no inspector dar um material com um shader especial que vá buscar informação ao Color Space Gamma (opção que se selecionou na exportação no Quill).

2.1 - O Quill fornece um Shader (não reage a luzes), nem funciona em visão estereoscópica (quando o Quest 2 está ligado por cabo ao Unity), fornecido pelo site do Quill,  pode ser baixado aqui.

2.2 - Em alternativa o Shader "Smoothly-lit VR Vertex Colour Shader for Unity" reage a luzes (mas é pago - 15$), nem funciona para os dois olhos na visão estereoscópica. Pode ser encontrado aqui.

2.2.1. - Uma vez feito o download deve arrastar-se o ficheiro para a pasta de projeto dentro do Unity e nessa mesma pasta deve criar-se dois materiais:

um com o nome Double Sided e outro Simples.

2.2.2. -  Uma vez criados os materiais é só arrastar para cima deles o ficheiro do shader e depois ir ao Inspector de cada material e verificar se no material que tem o nome "Double sided" se tem  essa opção ativada e o outro não.

2.3. -  Em alternativa podemos utilizar um shader criado por nós que vá buscar as informações às cores dos vértices, também, como nos shaders do ponto 2.1 e 2.2. Para isso basta criar um material (imagem abaixo). A cor não fica tão brilhante como nas outras opções mas funciona em visão estereoscópica quando o Quest2 está ligado por cabo ao Unity.

2.4 - Depois desse material aplicado no fbx é só  fazer Apply

3 - Arrastar esse .fbx da pasta de projeto para a hierarquia.


Reproduzir animação do FBX - Abordagem 1

Loop infinito de animação, sem controlo de início e fim.


Depois de se fazerem os passos acima pode-se adicionar o Quill Anim Component no Inspector (primeiro instalar o package https://watarucg.gumroad.com/l/unityquillfbx?layout=profile)


1 - Se se fizer play é possível ver-se a animação a acontecer num loop eterno. Contudo não há qualquer hipótese de controlo por parte do artista para poder definir quando a animação começa ou acaba.


Reproduzir animação do FBX - Abordagem 2

Controlo da animação através da timeline (esta foi a abordagem escolhida)

Depois de se fazerem os passos até ao ponto 3 deve-se:

1 - Adicionar uma timeline

2 - Adicionar uma Control Track na timeline

3 - Adicionar individualmente cada mesh e definir a sua duração.

3.1- Se a duração dos frames/mesh for sempre a mesma, pode-se utilizar o ficheiro Python, desenvolvido pelo outro elemento desta equipa - Alexandre Pimentel - , que facilita o processo da alteração do tempo de duração de cada elemento:  time_scaler.py

3.3.1- Para isso deve abrir-se o ficheiro Python (com duplo clique);

3.1.2.- Arrastar para dentro da nova janela o ficheiro da timeline.playable que se tinha criado para esta cena;

3.1.3. - Colocar o valor inicial da duração desso keyframe;

3.1.4. - Colocar o valor de duração que se pretende;

3.1.5. - Colocar o nome da Layer que se deu inicialmente dentro do Quill e que corresponde ao prefixo de cada mesh.

3.1.6 - Enter


 
 
 

Posts recentes

Ver tudo
setembro de 2024

Durante a produção (março de 2024) percebeu-se que o formato de exportação Alembic (.abc) não era reproduzivel no Quest, quando não...

 
 
 
maio de 2024

Reunião com o orientador para mostrar o trabalho. Comentários do orientador para melhorar a narrativa: - algumas ações parecem rápidas...

 
 
 

Comentários


Informações de contato

Doutorada em Arte Multimédia,

pela Faculdade das Belas-Artes

da Universidade de Lisboa

 

Mestre em 3D Computer Animation, pela Bournemouth University

 

Erasmus em Animation, Games 
na Southampton Solent University

 

Licenciada em Arte Multimédia,pela Faculdade das Belas-Artes

da Universidade de Lisboa

  • Instagram
  • LinkedIn

Mensagem enviada!

bottom of page