9.1. Introdução.
A animação consiste na modificação da posição, da forma, ou de uma qualquer outra característica visível de um objecto ao longo do tempo, e é conseguida muito simplesmente através da apresentação de uma sequência de imagens a um ritmo suficientemente elevado (por exemplo o padrão PAL é de 25 imagens por segundo) para que, em resultado da persistência da visão, possa criar a ilusão de uma evolução contínua.
Seria uma tarefa extremamente morosa se tivesse que ser feita imagem a imagem. Como veremos, existem no Blender diversas funcionalidades que permitem reduzir muito significativamente o tempo de produção de uma animação.
Ainda assim, há um dos aspectos que não pode ser contornado: o tempo de renderização de cada uma das imagens.
Sendo uma sequência de imagens, uma animação pode ter tanta qualidade quanta a julgada necessária. Dependendo da complexidade da iluminação e das características dos materiais envolvidos, uma imagem pode demorar de alguns segundos a alguns dias a renderizar. Por exemplo, se a cada uma das imagens de uma animação estiver associado um tempo de renderização de 5 minutos, as 37500 imagens de um pequeno filme de 25 minutos de duração demorarão 4 meses a ser renderizadas.
9.1.1. KeyFrames e F-Curves.
No Blender, a animação pode ser conseguida em resultado de uma sequência de 3 diferentes tipos de acções:
• Actuar sobre o objecto como um todo, modificando a sua posição ou dimensões ao longo do tempo.
• Actuar sobre os elementos que constituem o modelo 3D do objecto (vértices, etc.), modificando a sua forma ao longo do tempo.
• Actuar sobre uma armação associada ao objecto (Existe no Blender um sistema articulado, designado por Armature, que constitui uma espécie de esqueleto do objecto, facilitando a obtenção de movimentos articulados, como por exemplo o andar, saltar, etc.).
Dado que uma animação consiste na mudança ao longo do tempo de um qualquer aspecto visível do enquadramento a renderizar, é necessário a existência de um mecanismo que registe essas modificações.
Por outro lado, dado que o número de enquadramentos necessários para produzir uma animação é extremamente elevado, é necessário um mecanismo que automatize a construção de cada um dos enquadramentos com base nas modificações que é necessário introduzir relativamente aos enquadramentos anteriores.
No Blender, como na maior parte do sofware de animação 3D, o registo das características de um enquadramento especialmente relevante no fluxo da animação é feito numa KeyFrame (Quadro Chave), e o cálculo das características dos enquadramentos entre cada uma das keyframes é feito por interpolação e registado em curvas, designadas por Curvas IPO nas versões anteriores, e na actual versão designadas por F-Curves.
O número correspondente à Frame (Enquadramento) da animação
que está a ser apresentada na janela 3D é dado no canto
inferior esquerdo.
Utilize as teclas dos cursores para modificar a frame representada na janela 3D.
Pressionando [RA] avança uma frame.
Pressionando [LA] recua uma frame.
Pressionando [Shift] + [UA] avança 10 frames.
Pressionando [Shift] + [DA] recua 10 frames.
Pressionando [Shift] + [RA] avança para a última frame.
Pressionando [Shift] + [LA] recua para a 1ª frame.
Os cardinais da 1ª e da última frame são definidos na janela Timeline, ou no contexto Render, como veremos mais à frente.
9.1.2. Janela Timeline.
Na configuração Default, por baixo da janela 3D está
aberta uma janela do tipo Timeline.
Note que ao modificar a frame representada na janela 3D quando pressiona os cursores, a risca verde vertical muda de posição.
No exemplo da figura, a 20ª frame está representada na janela 3D, como pode ver pelo número no canto inferior esquerdo da janela, e na janela Timeline a risca verde está na posição correspondente, como é indicado na numeração da escala horizontal da janela.
Pode modificar a frame representada na janela 3D seleccionando a risca verde, [LMB], e arrastando o rato. Note que ao modificar a posição da risca a numeração correspondente à frame representada é actualizada na janela 3D.
Note ainda que na barra da janela Timeline,
imediatamente a seguir à indicação da primeira
e da última frame da animação, que, para além de estarem
definidos no contexto Render, como veremos mais à frente,
podem ser definidos aqui, é indicada qual a frame representada
na janela 3D, no presentente exemplo a 20ª.
A edição deste campo, ou a activação dos pequenos triângulos à esquerda e à direita constitui uma terceira opção de alteração da frame representada na janela 3D.
Para definir a primeira e a última frame da animação
pode também recorrer ao menu da barra da janela Timeline,
Frame > Set Start/End Frame, ou às teclas dedicadas.
Com o cursor do rato sobre a janela Timeline, pressione [S] para definir a primeira frame da animação.
Com o cursor do rato sobre a janela Timeline, pressione [E] para definir a última frame da animação.
A região da janela Timeline entre a primeira e
a última frame da animação é representada num
tom cinzento mais claro.
9.1.3. KeyFrames.
Para inserir uma keyframe pressione [I].
Abra o Blender.
Verifique que o número entre parêntesis no canto inferior esquerdo é 1 e o cubo está seleccionado.
Pressione [I] e seleccione Location no menu que surge no ecrã.
A opção Location regista a posição das coordenadas, no sistema de eixos global, do centro do objecto seleccionado.
Note que informação no canto inferior esquerdo da janela 3D
está agora representada a cor de laranja, indicando que o objecto
seleccionado tem, para a frame representada, uma keyframe associada.
Na barra da janela Info, seleccione a pré-configuração Animation.
A pré-configuração Animation é constituída pelo conjunto de janelas mais comummente utilizadas no processo animação, que em seguida se descrevem brevemente.
9.1.4. Janela Outliner.
Na janela Outliner, seleccione, [LMB], o símbolo + à
esquerda do objecto Cube, de modo a expandir a informação.
Pode ver que ficou registada a existência de uma Animação associada ao objecto.
Seleccione o símbolo + à esquerda de Animation de modo a expandir a informação.
Pode ver que ficou registada a existência de uma Acção, de nome CubeAction, associada ao objecto.
9.1.5. Janela GraphEditor.
Na janela Graph Editor, pode ver que o objecto Cube
tem associada a acção CubeAction, composta pelo
Canal Location.
Seleccione, [LMB], o triângulo invertido à esquerda de Location de modo a expandir a informação.
Pode ver que o canal Location é, por sua vez, composto por 3 canais, X, Y e Z Location.
Neste momento a janela não tem grande informação, porque apenas inserimos uma keyframe, representada por um pequeno rectângulo laranja.
9.1.6. F-Curves.
Avance para a frame 11, [UA].
Seleccione o cubo e, por exemplo, actuando sobre os transformadores, proceda a uma translação sobre X, sobre Y e sobre Z.
Insira uma nova keyframe, [I].
Avance para a frame 21, [UA].
Seleccione o cubo e proceda a uma translação sobre X, sobre Y e sobre Z.
Insira uma nova keyframe, [I].
Observe agora a janela Graph Editor. Pode ver representadas
3 curvas, designadas por F-Curves, tendo cada uma delas
3 pontos, que representam as 3 keyframes que inserimos,
a 1ª na frame 1, a 2ª na frame 11, e a 3ª na frame 21,
como se pode ver pela escala horizontal.
Note que a cor de cada curva corresponde à cor do quadrado representado à esquerda de cada um dos canais.
As curvas descrevem a evolução temporal das características do cubo relevantes para a presente animação, no caso presente, a posição da origem do cubo no sistema de eixos global.
Pode eliminar a representação de cada uma delas por desactivação, [LMB], do quadrado colorido à esquerda do nome de cada um dos canais.
Cada um dos pontos das curvas corresponde à posição da respectiva coordenada da origem do cubo, escala vertical, em cada uma das frames, escala horizontal, ou seja, ao longo do tempo, e foi calculado por interpolação, a partir da informação de cada keyframe.
O método segundo o qual os valores são interpolados é seleccionável. Falaremos mais tarde desses pormenores.
9.1.7. Active and Automatic Keying.
Como vimos, na sequência da inserção de uma keyframe por recurso à tecla [I], é necessário seleccionar o tipo de características a registar a partir do menu que surge no ecrã.
Active Keying Set..
Quando se pretende inserir uma sequência de keyframes
do mesmo tipo, é possível automatizar o processo seleccionando
o tipo de keyframe a inserir no menu dropdown disponível
na célula Active Keying Set da barra da janela Timeline.
Uma vez especificada uma Active Key, esta é automaticamente inserida sempre que a tecla [I] for pressionada.
Alternativamente à tecla [I], pode inserir a keyframe activa pressionando o botão com o símbolo de uma chave, imediatamente à direita da célula Active Keying Set.
O botão seguinte permite eliminar as keyframes, do tipo da Active Key, previamente inseridas.
Automatic Keyframe..
Independentemente da existência de uma Active Key,
o registo de keyframes pode ser automatizado pressionando
o botão com o círculo vermelho à esquerda da célula Active
Keying.
Uma vez activada a função Automatic Keying, serão inseridas automaticamente keyframes em todas a F-Curves que na janela Graph Editor estejam em modo edição, sempre que o objecto activo sofrer qualquer transformação.
Se em simultâneo estiver pressionado o botão à direita com o símbolo de uma chave, as keyframes só serão inseridas automaticamente nas F-Curves associadas ao Active Keying Set seleccionado.
9.1.8. Janela DopeSheet.
A janela DopeSheet corresponde a um nível superior
de abstracção da janela Graph Editor.
Pode ver que o objecto Cube tem associada a acção CubeAction, composta pelo Canal Location, tendo à direita, representada sob a forma de um losango, a informação sobre quantas keyframes foram inseridas e em que instantes.
9.1.9. Animação.
A combinação de teclas [Alt] + [A] desencadeia a pré-visualização da animação na janela 3D.
Coloque o cursor sobre a janela 3D e pressione [Shift] + [LA] para saltar para a 1ª frame.
Pressione [Alt]+[A] e observe a evolução do cubo na janela 3D.
Se procedêssemos à renderização da cena obteríamos, porque temos 21 frames e admitindo uma especificação de 25 frames por segundo, um vídeo com aproximadamente 1 segundo.
Também pode ver a pré-animação activando o símbolo
"forward" na barra da janela Timeline.
Note que na janela Timeline as keyframes existentes estão representadas por linhas amarelas verticais.
Alternative Star/End Frame.
Ainda na barra da janela Timeline, a activação do botão
com o símbolo do relógio permite definir valores
alternativos da primeira e última frame da animação,
para efeito de pré-visualização.
Os valores alternativos podem ser inseridos quer
através das teclas [S], [E], quer por edição das respectivas
células, e são relevantes apenas em pré-animação.
Isto é, não alteram os valores considerados para
efeito da renderização da animação.
Para alternar entre os dois conjuntos de valores da primeira e última frame a ter em conta em pré-animação basta activar/desactivar o botão Alternative Start/End Frame.
9.1.10. Células Activas.
Vá para a primeira frame, [Shift]+[LA], seleccione o cubo, e abra a tabela de propriedades, [N].
Pode ver que as células Location XYZ do painel Transform,
estão coloridas a amarelo. Isto deve-se ao facto de,
relativamente a estes parâmetros, existir uma keyframe
na fame 1. Se tal não se verificasse as células estariam
coloridas a branco.
Incremente a frame representada na janela 3D, [RA].
Verifique que as células Location XYZ estão
coloridas a verde. Isto significa que os valores
nelas representados são valores interpolados.
Incremente sucessivamente a frame representada na janela 3D, [RA], e vá até a frame 11.
Pode ver que, porque existe uma keyframe relativa a estes parâmetros na frame 11, as células estão novamente coloridas a amarelo.
Note que, a menos que esteja em modo edição das F-Curves , os valores dos parâmetros Location XYZ não retêm qualquer alteração, quer seja feita directamente nas células, quer seja feita por translação do objecto na janela 3D, retomando sempre o valor imposto pela curva de interpolação.
Coloque o cursor do rato sobre as células Rotation XYZ e pressione [I]. Salve o ficheiro para futura utilização
Pode ver que as células passaram à cor amarela, em resultado da inserção de uma keyframe relativa aos parâmetros Rotation XYZ.
Pode inserir uma keyframe relativamente a qualquer parâmetro de qualquer célula editável de qualquer painel da interface do Blender.
Na figura pode ver, a título de exemplo, os canais e
respectivas curvas de interpolação que descrevem a
evolução, frame a frame, ou seja, ao longo do tempo, dos parâmetros:
• Cor de Wold Zenith.
• Coordenadas da origem do cubo.
• Mirror Reflectivity do material associado ao cubo.
• Cor da fonte de luz.
• Distância focal da câmara.
A atribuição de keyframes a qualquer parâmetro editável significa que qualquer parâmetro editável pode ter associada uma curva de interpolação (F-Curve), ou seja, o único limite às possibilidades de animação de todas as características de uma cena é a sua criatividade.