Overview
Animao tradicional Animao por Key-Frame Interpolando rotaes Animao comportamental Animao fsica Animao procedimental Motion capture
Viso unificada
Modelos tem parmetros: posio dos polgonos, normais, pontos de controle de splines, ngulos de juntas, parmetros de cmera, iluminao, cor
1) comea no incio do caminho 2) define valores dos parmetros do seu modelo 3) renderiza a imagem 4) move para o prximo ponto do caminho Uma curva para cada parmetro
So altamente acopladas
Modelagem: o que so os pontos de controle e o que eles fazem? Animao: como variar pontos de controle para gerar movimento desejado?
Construo de modelos fceis de controlar super importante: modelagem hierrquica Onde termina modelagem e comea animao?
Meio confuso!
Overview
Tcnicas de animao
Animao tradicional (quadro a quadro), Keyframing, Procedimental (procedural), Comportamental (behavior based), Baseada em performance (motion capture), Baseada em fsica (dinmica) Rotaes, cinemtica inversa
Problemas em modelagem:
Animao tradicional
Fatores da produo
Organizado por razes de eficincia e custo Renderizar quadros sistematicamente
Animao tradicional
Fatores artsticos
Viso artstica deve ser convertida numa seqncia de quadros estticos Quadros estticos devem ser corretos tambm em movimento Difcil de ver o movimento dados os estticos (assista um vdeo quadro a quadro e v se entende o que ocorre)
Story board
Seqncia de desenhos com descries Descrio baseada em histria Desenhar uns poucos quadros importantes
Quadros intermedirios
Desenhar o resto dos quadros (ganha pouco $) Redesenha (acetato) e colore (ganha muito menos $)
Pintura
Movimento em camadas
Encolhe-estica representar personalidade Temporizao velocidade representa massa, personalidade Antecipao prepara a platia Segue-atravs (followthrough) e overlap continuidade com prxima ao Cmera lenta e rpida velocidade de transio representa momentos importantes Arcos movimento geralmente curvo Exagerao - enfatiza contedo emocional Ao secundria movimento como conseqncia Apelo platia deve gostar de assistir
Squash-stretch
Squash Stretch
Antecipao
Insero automtica de quadros intermedirios Interpola automaticamente entre desenhos de linhas Difcil conseguir coisa certa
Intermedirios no parecem natural Que parmetros interpolar? Tcnica no muito usada
Gerar imagens por renderizao do modelo 3D Variar parmetros para produzir animao Fora bruta:
Acerta parmetros manualmente (todo quadro) Para n parmetros, 1440n valores por minuto Animadores desenham quadros importantes Pessoal mal pago desenha os intermedirios Animadores criam quadros chaves com modelos 3D Computadores desenham os intermedirios Modelo de produo dominante
Interpolao
Apesar do nome, no so keyframes em s Para cada varivel, especificar seu valor em quadros realmente importantes (nem todas as variveis tm valores importantes no mesmo quadro) Ento, key-values ao invs de key-frames
Keyframing
Aspectos do keyframing
O que devem ser os key-values? Quando os key-values devem ocorrer? Como especificar os key-values? Como interpolar os key-values? Que tipo de COISA ERRADA pode ocorrer no processo de interpolao?
Configuraes invlidas (atravessar paredes) Movimentos no naturais
Splines: no uniforme, C1 suficiente Precisa controlar velocidade nos keyframes Exemplo clssico: bola pingando (gravidade)
Velocidade vertical zero no incio Velocidade vertical alta antes de cada impacto Velocidade vertical alta aps impacto (menor) Movimento usando spline no natural (funciona) Hermite funciona bem
Rotaes 3D
Solues
P: Que tipo de rotao composta se consegue girando em torno de cada um dos 3 eixos com velocidade constante? R: No a que voce quer
Interpolao funciona bem para rotaes simples (eixo-ngulo) Ruim para outras rotaes
Animao procedimental
Animador deve ser um programador Keyframing torna-se procedimental se expresses so adicionadas Em algum nvel de complexidade, melhor e mais eficiente que keyframing.
Dinmica
Soluo numrica para equao diferencial Exemplo de algoritmo usando Euler para f = ma:
Inicialize dx (posio e velocidade) loop eterno:
ddx = f()/m (ddx acelerao, f() atualiza fora) dx += ddx*dt (dx = velocidade) x += dx*dt (x = posio) t += dt
f() pode ser gravidade ou qualquer outra fora em funo de tempo, posio ou outro estado
Fsica/dinmica na prtica
Varia desde objetos no entram em paredes at dinmica de fludos completa e modelagem com elementos finitos Ou pode-se animar sem realismo fsico Em geral, coisas tem que rodar rpido
Platia pode ser tolerante a coisas como batdas incorretas O mudar de preciso para fast-and-looks-good distingue CG baseada Fsica de cincias numricas
Animao comportamental
Modelos respondem mudanas no ambiente Programas implementam as regras Movimento funo dos objetos ao redor Comportamento emergente: nevasca Rei Leo: estourada de animais foi feita assim
Sistema de partculas: usualmente comportamentos simples Smart Objects: agentes autnomos (comportamentos sofisticados)
Baseada em performance
Usa vdeos reais e tira movimento de objetos Usa dispositivos que pegam posio/orientao Acompanha movimento de pontos no espao, por meio magntico, tico, etc (exo-esqueletos, face ou rosto) Converte para espao ngulo-juntas Usa ngulos para derivar modelo 3D articulado Caminhos do movimento podem ser modificados
Motion capture
Cinemtica
Prov movimento em termos de juntas, ngulos, velocidades e posies Usado por keyframing e procedimental Determina ngulos e juntas a partir de posio Calcula parmetros de rotao para o ombro, cotovelo, pulso para colocar as mos ali. Bom para interao Configuraes podem ser sub ou sobre-determinadas (sem configurao ou vrias para mesmo alvo) Muito usada em Robtica
Cinemtica inversa
Idia principal: juntar animaes complexas de uma biblioteca de movimentos Linguagens de script
Descreve os eventos Descreve suas seqncias
Hierarquia da animao