sexta-feira, 13 de novembro de 2009

Edição e Pós produção

Nesse momento foram adicionaremos efeitos especiais como glow, fade-in, fade-out e animação de máscaras com blur ( cena onde o velho pega no sono ).
Em seguida compilamos as imagens com os sons, através de um programa de edição de son e vídeo, resultando no vídeo final. No momento procuramos encontrar uma boa variente em relação à qualidade vs tamanho do arquivo.

Trilha e efeitos sonoros

Terminado o vídeo do curta, e satisfeitos com o trabalho visual chegando ao fim, resolvemos incrementar ainda mais nosso filme, intensificando os movimentos, expressões com efeitos sonoros diversos.
O primeiro seria a música de trila sonora inédita, presente no inicio e final da animação.
O segundo referente aos sons ambientes (pássaros, carros, cães, relógio cuco e etc)
Em terceiro utilizar os sons relativos a movimentação dos personagens ( ranger de madeira, zumbido do vôo do mosquito, pancadas leves e fortes e movimentação em geral)
E por fim, mesmo não obtendo falas os personagens emitem sons bucais.
Alguns dos sons usados foram criados especialmente para a animação ( dublagem dos personagens e trilha sonora).

Render

Antes mesmo de iniciar o render que constatar quais objetos aparecem em cada uma das tomadas e cenas, excluindo os demais (principalmente Hair) proporcionando um render mais rápido.
Apesar de encontrar algumas dúvidas em relação a esta etapa do trabalho, procuramos dividir ao menos uma cena em passes e calcular quanto tempo levaríamos para remover os nós de oclusion encontrados em cada objeto e modelo, criar passes separados de sombra, personagens , back ground e oclusion e comparar com o tempo de render feito por defaut.
Assim constatamos que o trabalho e o tempo gasto para fazê-lo seria semelhante ao por defaut, separando então as tomadas mais pesadas em passes de personagens e back ground. Apesar de poucas, as cenas separadas possuíam alto tempo de render, somente separando os personagens do fundo, resolveu o problema porém ainda tínhamos que resolver a questão de passe de sombra não feito, que ao juntarmos o render do personagem com o fundo por multiply, a sombra possuía certa transparência permitindo visualizar o fundo através dela. Para isso utilizamos máscaras para recortar a imagem do background refletida pela sombra. Outro problema notado no final do render, foi o aparecimento de manchas pretas devido a erros em alguns frames das cenas 3,4,5 onde tivemos que refazer o render destes frames , e outros arrumados no photoshop.

Animação

Procuramos manter um padrão para a animação de cada personagem durante o decorrer do curta, modificando somente o timing dependendo do estado de espírito e ação de cada um.
A animação inicia-se com dois personagens.
Primeiramente o menino andando de bicicleta, que foi animado por translação do objeto mestre, pai e detentor dos constrains, em seguido por rotação animando os pedais que consequentemente animam os pés, pernas e rodas da bicicleta que estão ligados por constrains ou link parameter.
Adicionou-se movimentação ao guidon com rotação que animou os braços do personagem, procuramos estabelecer o tempo correto entre o deslocamento da bicicleta, e a rotação dos pedais e rodas.
O estilo de animação deste personagem é mais voltado para o real.

Para os pássaros presentes na cena utilizamos a mesma animação cujo início acontece em frames distintos para cada um deles.
Para a animação das batidas de asas criou-se o tempo de três frames de subida e dois para decida, adequando-se ao deslocamento dos pássaros durante o vôo, que ocorre com um constrain (curve Path) do COG com uma curva que cria esta trajetória.
O mesmo acontece quando o pássaro apanha o mosquito, diferenciando apenas o tempo e a trajetória do deslocamento, pois a animação não inicia-se de um repouso, o pássaro já está em movimento quando entra em cena.
Assim como o menino a animação do pássaro tem características realistas.


Para o mosquito adotamos um sistema de vôo parecido com os dos pássaros, diferenciando-se
pelas patas, cabeça e o abdômen na qual foram animadas, fortificando curvas sinuosas e mobilidade de vôo.
Para batida de asas utilizamos dois frames de subida e decida, usados no momento de deslocamento normal, e para os de deslocamento rápido usamos um freme para subida e outro para decida.
Em momentos em que está em repouso, utilizamos as animações de cabeça , tórax, antenas e bico, mesmo assim mantivemos alguns movimento de asas. No momento de pouso foi criado constrains das patas e tórax do mosquito com o “bone” da cabeça do velho, assim as patas e tórax seguiam o mesmo movimento que a cabeça.
Diferentemente dos outros personagem , o mosquito apresenta algumas características realistas, mas a predominância é voltada para estilo cartoon, fortificando sua personalidade.

O personagem com maior dificuldade de animação foi o Mr. Vecchio. Devido a movimentação do corpo humano ser assimétrica, os movimentos devem ser suaves e com características arqueadas. Com isso foi utilizado o editor de curvas constantemente para suavizar os movimentos e o Dope Shet que permitia atrasar ou adiantá-los( principalmente controladores de cabeça, pescoço e pulsos).
Durante o curta este personagem participa de apenas uma cena de caminhada, ( cena 2 na qual desce as escadas e caminha após breve pausa).
Além dos controladores do corpo, animamos os olhos por um controlador e expressões faciais nos quais caracterizam os movimentos, reações e sentimentos.

Dificuldades durante a animação

Na primeira cena , a principal dificuldade encontrada foi sincronizar o tempo de chegada do menino com a saída dos pássaros. Resolvemos depois de tentativas, mudar o inicio de deslocamento de cada um através do Dop Shet em seguida fazendo o (capture) para visualizar.
Na cena dois além da animação do velho que necessita de retoques constantes no editor de curvas, tivemos que modificar alguns enquadramentos que não permitiam uma boa transição de corte, e adicionar mais duas tomadas para solucionar o problema.
Na próxima cena encontramos dois problemas. O primeiro referente as entradas e encontros de malha de diferentes modelos, que resolvemos reposicionando alguns deles e em ultimo caso ajustar levemente a câmera.
O segundo problema se refere ao controladores e animação de ombros do personagem, que por hierarquia ao rotacioná-los modificava-se o posicionamento do braço, e em alguns momentos precisávamos rotacionar os ombros mas mantendo a posição dos controladores de IK do braço em certa posição. Para isso antes de ser modificado a rotação de ombros adicionamos constrains dos pulsos com o objeto em que permaneceriam em contato, marcando os Key
frames e removendo os constrains no final.
Nas demais cenas encontramos praticamente todas as dificuldades já citadas, principalmente a sincronia entre o velho, mosquito e o pássaro, resolvendo assim da mesma forma de antes.

Iluminação

Exterior:

A iluminação utilizada nas duas cenas consistem em uma Spot principal simulando o Sol, duas Points mais fracas aplicando a tonalidade azul às sombras e duas Points com areal Light, sendo um para o rebatimento e o outro para sombra de contato mesmo que tenhamos adicionado o AO.
Também adicionamos mais uma point exclusivamente para uma das casas vizinhas que estava pouco iluminada.

Interior:

Adicionamos mais 2 Points pois o interior estava muito escuro.

Cenários _interior_exterior

De início procuramos aplicar texturas procedurais e bump map para os vincos encontrados nas paredes das casas, porém não obtivemos bons resultados. Então a partir de uma primitiva cúbica modificada a fim de simular cada tábua de madeira, removemos faces de contato com as demais extrudadas e aplicamos merge entre elas.
Para as aberturas de portas e janelas, pegamos primitivas cúbicas com as mesmas dimensões de altura e altura, posicionando-as para aplicar Boolean de diferença com a fachada.


Para os gramados das casas usamos grids com uma imagem proporcionando textura de grama.
Já o gramado do velho fizemos o mesmo, porém removemos os polígonos que ficam em baixo da casa e reorganizamos os restantes para aplicação de hair simulando grama e proporcionando um toque especial somente naquela região que estará em destaque.


Para que a cena não ficasse pesada e inclusive facilitasse a modelagem do cenário, adicionamos grids sem sub-divisões e com projeções planares para folhagens, plantas e casas que comporão a cena como imagens de fundo. Todos recebem o mesmo tipo de aplicação de material. Com uma imagem para as cores e outra para transparência ligada a este canal, assim a parte preta da imagem de apha torna-se transparente e mantém a silhueta colorida.
Diferentes shaders foram usados, entre eles Constant para as casas de fundo e Lambert para plantas e folhagens.


A partir de uma semi-esfera com projeção planar, adicionamos uma imagem HDRI de Gama e Exposure customizados, o que proporcionou um ótimo fundo, e o melhor de tudo sem trabalho algum.

Um bom exemplo é o das casas vizinhas à casa do velho, as quais foram removidas após criarmos imagens das mesmas para aplicá-las num grid como feito com as asas de fundo.
Apesar de haver outros objetos crias da mesma forma, o cuco é um dos modelos interessantes de se rever os processos de criação, pois se fosse detalhado modelando levaria muito tempo além de ficar com malha pesadíssima. Mas com os método que utilizamos ficou leve e visualmente bonito mesmo com uma distância consideravelmente próxima.
A partir de uma curva criada com base na base de rotoscope que também será textura do modelo, as duplicamos e ao adicionar loft conseguimos pos pológonos laterais do modelo.
Em seguida ao aplicar o modelo adquirido imerso pela metade numa primitiva cúbica e criando um novo modelo por Bolean de diferença entre os dois, adquirimos os polígonos frontais, agora somente faltando duplicá-lo e aplicar merge aos dois formando a parte frontal do cuco.
Para finalizar modelamos as pinhas a partir de cubos, as correntes com grids e imagens com alpha e a casinha da parte traseira também aplicando texturas com projeções planares em todas.


Assim como o personagem do menino ciclista, também importamos modelos já prontos ou modelados anteriormente.
Mostradas a cima, tanto cozinha (adicionamos a geladeira e o fogão) que fora utilizada durante os exercícios de Global Ilumination e Final Gathering, quanto à moto modelada para avaliação de um dos módulos foram importadas para ajudar a compor as cenas.

Informações adicionais dos demais personagens

Mosquito:


Este foi o ponto alto de nossas discussões. Criamos um segmento de oito bones para o canudo com o Root parente ao Eff da cabeça. Mas como iríamos animá-lo?

De fato queríamos que esse se comportasse de forma semelhante a uma tromba de elefante, e rotacionar cada um individualmente era inviável.
Então habilitamos o Shadow Bone do primeiro bone desta seqüência, e deixamos este problema para ser resolvido por link.

bem interessante e semelhante à de uma tromba de elefante, relacionando a rotação de cada bone do canudo individualmente com o primeiro da corrente de Shadow Bone habilitado, dentro dos eixos Y e Z, positivamente e negativamente, porém de direcionamento igual, intensificando a rotação de cada um deles conforme distanciam-se do bone mestre.

Chickadee:


De início os pássaros da primeira cena iriam levantar vôo da causada à gente da cerca branca. Conseqüentemente os pássaros teriam de levantar vôo a partir do momento que as asas estivessem fechadas e juntas ao tronco, assim tornando os processos do rig, envelope e link com Custom Parameter muito mais complexos, ou até mesmo com Shape Manager.
Então percebemos mudando um pequeno detalhe poderia facilitar e muito o rig nas asas deste personagem. Somente modificamos o roteiro e o storyboard, onde os pássaros levantam vôo de traz do cercado branco, assim não havia necessidade de fazê-lo com movimento de retração das asas.
Sendo assim, simplesmente criamos uma seqüência de 3 bones para cada asa parenteadas ao bone do tronco.
Menino na bicicleta:


A modelagem deste personagem é um caso a parte. A partir de um modelo feito anteriormente (o Naruto), modificamos ou reconstruímos algumas partes como o rosto, pescoço, toca do casaco, pélvis, pernas e pés. Mesmo assim continuou com a malha e formas tão simples quanto antes, além de nos proporcionar tempo para trabalhar nos demais modelos.
A bicicleta também já estava modelada. A pegamos emprestada de um exercício do módulo de iluminação feito em sala de aula.Também a modificamos ao adicionar os aros das rodas, retirar a garupa e faroletes, além de aplicar merge em partes que não serão animáveis como o quadro.
Primeiramente criamos link nas rodas, que rotacionam de acordo com a coroa dentada.
Depois posicionamos o personagem e aplicamos constrains de suas mãos com o guidão, do GOC com o banco e dos pés com os pedais, assim as diferentes partes da bicicleta controlarão os movimentos do personagem.