• Nenhum resultado encontrado

INF 1366 Computação Gráfica Interativa. Animação por Computador

N/A
N/A
Protected

Academic year: 2021

Share "INF 1366 Computação Gráfica Interativa. Animação por Computador"

Copied!
27
0
0

Texto

(1)

Alberto Raposo – PUC-Rio

INF 1366 – Computação Gráfica Interativa

Animação por Computador

Alberto B. Raposo abraposo@tecgraf.puc-rio.br

http://www.tecgraf.puc-rio.br/~abraposo/INF1366

Animação Animação ? ?

Modificação no tempo de parâmetros, de tal forma que

possamos perceber este “movimento”

de forma natural.

• Movimento de objetos

• Metamorfose

• Variação da cor

• Variação da intensidade da luz

(2)

Alberto Raposo – PUC-Rio

Exemplo – Tecgraf / Petrobras

Alberto Raposo – PUC-Rio

TRADICIONAL

Sistemas de Pintura

Editores Gráficos

Sistemas de Interpolação

Controle de Câmera, etc.

AUXILIADA (2D)

KEYFRAMING

CINEMÁTICA DINÂMICA

Máquinas de Estado Campos Potenciais Inteligência Artificial

Biológico, etc.

Outros Modelos PROCEDIMENTAL (Local / Global) MODELADA (3D) POR COMPUTADOR

ANIMAÇÃO

(3)

Alberto Raposo – PUC-Rio

Animação Tradicional

• Desenha-se cada quadro da animação

– Grande controle – Trabalhoso

• Animação por células (cel animation)

– Camadas, keyframe, inbetween…

Animação Auxiliada por Computador

• Parte da renderização, do cálculo das

interpolações, etc. é feita no computador.

(4)

Alberto Raposo – PUC-Rio

Animação Modelada por Computador

• Keyframing

• Procedural

– Baseada em física

• Cinemática (direta e inversa)

• Dinâmica (direta e inversa) – Motion Capture

• Comportamental

• Outras técnicas

Alberto Raposo – PUC-Rio

Keyframing

• Animação gerada a partir da interpolação de quadros-chave

– Automatiza o “inbetweening”

– Bom controle

– Menos trabalhosa que tradicional

– Ainda requer muito “talento” dos animadores

(5)

Alberto Raposo – PUC-Rio

Keyframing

•Descrição dos movimentos dos objetos como função no tempo de um conjunto de posições- chave.

•Em resumo: computar os quadros

intermediários

ACM © 1987 “Principles of traditional animation applied to 3D computer animation”

( ) s t

MIT EECS 6.837, Durand and Cutler

Keyframing

• Usa-se interpolação linear ou então a interpolação de alguma curva para a geração do movimento

( )

x t

t t t

8-degree

polynomial spline spline vs.

polynomial

0 0 0

( ,x y t, )

1 1 1

( , , )x y t

2 2 2

( ,x y t, )

(6)

Alberto Raposo – PUC-Rio

Interpolação de Key Frames

• A interpolação (por splines, por ex.) pode gerar interpenetrações indesejadas

– “Talento” do animador precisa corrigir esses e outros problemas da interpolação de quadros

ACM © 1987 “Principles of traditional animation applied to 3D computer animation”

Alberto Raposo – PUC-Rio

VRML – Animação por Interpolação

usuário clica sobre um objeto

TouchSensor TimeSensor

start

a cada pulso de relógio

PositionInterpolator

nova posição calcula

função de interpolação

geométrico

move

(7)

Alberto Raposo – PUC-Rio

Princípios da Animação Tradicional

•Artigo clássico de John Lasseter (presidente da Pixar e diretor de Toy Story, Vida de Inseto, Monstros S.A…):

– "Principles of Traditional Animation Applied to 3D Computer Graphics,“ SIGGRAPH'87, pp.

35-44.

Squash e stretch

Squash: achatar objeto ou personagem com seu próprio peso

Stretch: aumenta senso de velocidade e enfatiza squash por contraste

(8)

Alberto Raposo – PUC-Rio

Timing

•Timing é afetado pelo peso:

– Objeto leve move rápido

– Objeto mais pesado move mais lentamente

• Linha de escala de tempo para controlar o desenho dos quadros intermediários.

Alberto Raposo – PUC-Rio

Animação Procedimental

• Animação descrita por algoritmo

– Animação como função de um número de parâmetros

• Ex: bouncing ball

• Abs(sin(ωt+θ0))*e-kt

MIT EECS 6.837, Durand and Cutler

(9)

Alberto Raposo – PUC-Rio

CINEMÁTICA:

Descrição de um movimento através de equações do tipo:

deslocamento = f (tempo)

sen, cos, ...

A discretização no tempo associará o deslocamento a um determinado instante (quadro) da animação.

Ex. de Animação Cinemática:

Pêndulo Simples

θ

Na figura:

: ângulo entre o pêndulo e a normal

l : comprimento do fio que sustenta a esfera de massa qualquer g : valor da gravidade

O fio que sustenta a esfera é inextensível e de massa desprezível.

(10)

Alberto Raposo – PUC-Rio

A equação que descreve o modelo do pêndulo simples é:

Trata-se de uma equação diferencial não linear ! Para simplificar a solução, adotar (para pequenas amplitudes):

s e n (θ ) ≅ θ

d d t

g l

2 2

θ = − ⋅ s e n ( θ )

Alberto Raposo – PUC-Rio

Solução

:

onde:

= (g / l) 1 / 2

k = amplitude inicial do movimento (constante)

= fase inicial do movimento (constante) ω

β

θ = ⋅ k cos( ω ⋅ + t β )

(11)

Alberto Raposo – PUC-Rio

DINÂMICA:

Descrição de um movimento através de equações do tipo:

deslocamento = f (tempo, forças, torque)

A discretização no tempo associará o deslocamento a um determinado instante (quadro) da animação.

Um modelo dinâmico pode ser aplicado a uma animação de forma a termos uma simulação visual.

Vantagens:

• Maior “grau de realismo” do movimento.

• Possibilidade de simulação de um grande número de fenômenos físicos.

Desvantagens:

• Modelo mais complexo.

• Maior no.de variáveis com as quais o usuário terá de interagir.

• O “animador” deve dominar alguns conhecimentos de Mecânica.

• O resultado visual nem sempre compensa o alto custo dosmodelos dinâmicos.

(12)

Alberto Raposo – PUC-Rio

Exemplo: Amortecedor

O modelo abaixo representa, simplificadamente o amortecedor:

Fmola

Fatrito

Fexterna

Fresultante= Fexterna+ Fmola+ Fatrito

Alberto Raposo – PUC-Rio

Fresultante = Fexterna+ Fmola + Fatrito

m d x

dt F k x b dx

externa dt

⋅ = − ⋅ − ⋅

2 2

x é a posição do objeto em movimento, mé a massa do objeto em movimento, k é a constante de elasticidade da mola, b é o coeficiente de atrito viscoso do

pistão do amortecedor e

Fexternaé a força externa aplicada ao conjunto

(13)

Alberto Raposo – PUC-Rio

O modelo descrito pode ser discretizado na forma:

dx

dt x x x

t d x

dt

x x t

x x x

t

i

i i

i i i i i

= = −

= −

= − ⋅ +

1

2 2

1 1 2

2

2

∆ (∆ )

onde∆tequivale ao intervalo de amostragem.

Logo:

Finalmente:

m x x x

t

F k x b x x

t

i i i

ext i

i i

⋅ ⎡ − ⋅ +

⎣⎢

⎦⎥ =

− ⋅ − ⋅ ⎡ −

⎣⎢

⎦⎥

2

1 2

2

1

x t F b t m x m x m k t b t

i

ext i i

= ⋅ + ⋅ + ⋅ − ⋅ + ⋅ + ⋅

∆ ∆

∆ ∆

2

1 2

2

2

( )

(14)

Alberto Raposo – PUC-Rio

Modelos Articulados

•Modelos Articulados:

– Partes rígidas

– Conectadas por juntas

•Podem ser animados especificando-se os ângulos das juntas como função do tempo.

t1 t2

qi q ti( )

t1 t2

MIT EECS 6.837, Durand and Cutler

Alberto Raposo – PUC-Rio

Cinemática Direta

•Descreve as posições das partes do corpo em função dos ângulos das juntas.

1 DOF:

1 DOF: joelhojoelho 2 DOF: punho2 DOF: punho 3 DOF: 3 DOF: braçobraço

MIT EECS 6.837, Durand and Cutler

(15)

Alberto Raposo – PUC-Rio

DOF: Degree of Freedom (Graus de Liberdade)

MIT EECS 6.837, Durand and Cutler

Cinemática Direta

(16)

Alberto Raposo – PUC-Rio

Cinemática Inversa

• Dada a posição da extremidade e uma posição final desejada, como mudar os parâmetros das juntas?

– Cálculo mais difícil que o da cinemática direta – Mais de uma solução

( ) s

S p v

vs vs , , , , ,

h h h h h h

x y z q f s

t, ,t t

q f s

qc

f, f

q f

%w v

MIT EECS 6.837, Durand and Cutler

Alberto Raposo – PUC-Rio

Cinemática Inversa

Resultado nem sempre é único

(17)

Alberto Raposo – PUC-Rio

Dinâmica Inversa

• Dinâmica direta: usa forças para criar o movimento

• Dinâmica inversa: calculas as forças necessárias para realizar um movimento

http://www.squiresoftgames.com/invdyn/

Captura de Movimentos

• Maior realismo: nuances, movimentos súbtos, estilo...

• Observar algum movimento.

MIT EECS 6.837, Durand and Cutler

(18)

Alberto Raposo – PUC-Rio

Animação Comportamental

• Personagens autônomos determinam suas próprias ações, pelo menos até certo ponto.

http://accad.osu.edu/~mlewis/Class/behavior.html

Alberto Raposo – PUC-Rio

Animação de Partículas [Reeves, 1983]

Start Trek, The Wrath of Kahn

(19)

Alberto Raposo – PUC-Rio

Objetos Deformáveis

• Formas se deformam com o contato

• Problema precisa ser discretizado

Debunne et al. 2001

Animação de Roupas

•Discretização

•Equações físicas

•Integração

•Detecção de colisão

(20)

Alberto Raposo – PUC-Rio

Animação de roupas

http://www.cs.caltech.edu/~mmeyer/Research/Cloth/

Alberto Raposo – PUC-Rio

Simulação de Fluidos

•Discretização do volume do fluido

•Equações de Navier Stokes

•Integration numérica

•Desafios:

– Integração robusta, estabilidade – Velocidade

– Superfícies realísticas

Fedkiw et al. 2001

Enright et al. 2002 MIT EECS 6.837, Durand and Cutler

(21)

Alberto Raposo – PUC-Rio

Animação de Cabelos

http://www-faculty.cs.uiuc.edu/~yyz/research/hair/

Como são feitos os filmes?

•A maior parte em keyframing

•Figuras articuladas com cinemática inversa

•Skinning

– Pele deformável, músculos

•Controles hierárquicos

– Olhos piscando, etc.

•Grande parte do tempo gasto com modelagem 3D, os esqueletos e seus controles

•Simulação física para movimentos secundários

– Cabelos, roupas, líquidos, sistemas de partículas

MIT EECS 6.837, Durand and Cutler

(22)

Alberto Raposo – PUC-Rio

Stuart Little

• Modelagem

Alberto Raposo – PUC-Rio

Stuart Little

• Fluido

(23)

Alberto Raposo – PUC-Rio

Stuart Little

• Sistemas de Partículas

Stuart Little

• Animação Facial

(24)

Alberto Raposo – PUC-Rio

Stuart Little

• Pelos

Alberto Raposo – PUC-Rio

Stuart Little

• Roupas

(25)

Alberto Raposo – PUC-Rio

Números – Final Fantasy

http://www.arstechnica.com/wankerdesk/01q3/ff-interview/ff-interview-2.html

Números – Final Fantasy

• Personagens principais > 300.000 polys

• 3.000.000 renders (se cada quadro fosse renderiazado apenas 1 vez)

– Normalmente, foram 5 revisões de renderizações – Tempo de renderização de 1 quadro = 90 min

• 934.162 dias de render em 1 CPU

– Usaram 1200 CPUs = 778 dias de renderização

(26)

Alberto Raposo – PUC-Rio

Final Fantasy

• Software de renderização: Renderman (Pixar)

• Modelagem: Maya

• Cabelos

– Modelados como splines

Alberto Raposo – PUC-Rio

Exemplo – Paul Debevec

http://www.debevec.org

(27)

Alberto Raposo – PUC-Rio

Bibliografia Adicional

• A. Watt, M. Watt. “Advanced Animation and Rendering Techniques”. Addison- Wesley, 1992

• N. M. Thalmann. “Computer animation:

Theory and Practice”. Springer, 1990

• M. Giambruno. “3D Graphics &

Animation”.New Riders, 2002

Referências

Documentos relacionados

As curvas de abundancia e biomassa sugerem que ocorreu algum tipo de perturbação na região de intervenção (praia da Aparecida), uma vez que ao analisar os gráficos ABC

O objetivo deste artigo é, através de revisão da literatura, correla- cionar a presença da deglutição atípica, com o aparecimento de sinais e sintomas relacionados com as

SOU SBAO GESTÃO ESTRATÉGICA QUALIDADE Técnicas e instrumentos para organizar a administração de uma clínica oftalmológica Os novos médicos administradores: dicas para gerenciar

 Exemplo programa rotatingHelix2.cpp, uma ligeira modificação de rotatingHelix1.cpp, onde apertando a tecla espaço faz com que as rotinas increaseAngle() e NULL (fazer nada)

Caso receba uma mensagem informando que a entrega em sua cidade ou CEP não está disponível, após inserir essas informações no sistema, você deverá selecionar

Também foram observadas outras complicações específicas durante ou após OVH e/ou OVE, tais como hemorragia intra-abdominal, trauma ou ligadura acidental do ureter,

Artigo 1º - Os candidatos selecionados para a segunda etapa das provas deverão entregar no Serviço.. de Graduação da ECA, prédio 1, 1º andar, sala 113, nos dias 21 ou 22 de maio

(Epoetina alfa e beta administração SC redução de 25% da dose necessária, para atingir mesmo valor de Hb, se administradas EV)..  Dose de EPO inter individual é