Creare un’animazione in Blender

In questo post spiego come creare un’animazione molto simile a quella della casa cinematografica Focus Features utilizzando Blender. Cominciamo con l’esaminare l’animazione originale.

L’animazione dura 12 secondi. Inizia con una dissolvenza dal nero. Sullo sfondo, posti su piani diversi, si muovono dei cerchi semitrasparenti di colore diverso. I cerchi sono sfocati e creano un effetto Bokeh. Dopo 4 secondi compare in primo piano la scritta Focus Features al centro dell’inquadratura. La scritta diventa progressivamente nitida mentre la O di Focus rimane sfocata. In questo tutorial vedremo come creare i cerchi e il loro movimento, come attivare la profondità di campo per l’effetto Bokeh e come animare la messa a fuoco sulla scritta.

Effetto Bokeh

Bokeh (pronunciato /bɒkɛ/ o talvolta /ˈboʊkə/) è un termine del gergo fotografico derivato dal vocabolo giapponese “boke” (暈け o ボケ), che significa “sfocatura” oppure “confusione mentale”. A partire dalla metà degli anni novanta, si è affiancato all’uso terminologico tradizionale di espressioni come contributo delle aree fuori fuoco o resa dello sfocato.

La parola bokeh indica propriamente le zone contenute nei piani fuori fuoco di un’immagine fotografica e la qualità estetica della sfocatura; per estensione, si riferisce anche alla tecnica che permette di ottenere un gradevole effetto “sfocato” tramite un utilizzo creativo delle proprietà ottiche degli obiettivi.

fonte Wikipedia

L’animazione che propongo, anche se piuttosto semplice, offre la possibilità d’imparare l’uso di strumenti e funzioni molto interessanti, come:

  • il sistema di particelle di Blender;
  • la gestione della profondità di campo;
  • l’animazione basata su keyframe;
  • il video sequence editor;
  • l’encoding video per il caricamento su YouTube.

1.Posizionare la camera e la luce

Andiamo con ordine, prepariamo la scena e gli elementi per l’animazione. Aprire Blender e dalla scena di default eliminare il cubo centrale:

  • selezionarlo (tasto destro del mouse);
  • eliminarlo (tasto X).

screen1-default

Impostiamo la camera per puntare direttamente all’origine degli assi XYZ. Selezionare la camera e nella scheda Object impostare i valori di location rotation visibili nell’immagine seguente.

Camera position

Configuriamo la luce principale, quella che illuminerà la scritta. Per le impostazioni fare riferimento alle immagini.

2.Creare i cerchi per l’effetto Bokeh

Spostarsi nel Layer 2 e impostare la vista frontale (tasto 1 del tastierino numerico). Creare gli oggetti circle per il sistema di particelle (Particle System). Per creare i cerchi procediamo come segue:

  • assicurarsi che il cursore di Blender sia al centro degli assi (SHIFT+C);
  • creare un cerchio, Add (SHIFT+A) > Mesh > Circle;

I parametri per la creazione del cerchio sono:

– vertices: 12
– radius: 1
– fill type: ngon
– align to view: attivo

  • applicare il modificatore Subsurf al cerchio appena creato (scheda modificatori > Add Modifier);
  • duplicare (SHIFT+D) il cerchio, spostarlo di lato, ripetere l’operazione fino a formare una riga di tre cerchi;
  • selezionare i tre cerchi, creare un gruppo (CTRL+G), dare al gruppo il nome  Particle group;

Impostare un materiale diverso per ogni cerchio. Il materiale assegnato ai cerchi è costituito da due shader uniti attraverso un Mix Shader. Gli shader sono un Trasparent shader e un Translucent shader. Il colore del materiale è determinato da un input di tipo RGB  che viene assegnato ad entrambi gli shader. I tre materiali differiscono per il colore e per le caratteristiche di trasparenza e transulcenza ottenute dal mix dei due shader.

3.Creare la scritta

Tornare nel Layer 1 e creare la scritta per l’animazione:

  • assicurarsi di essere nella front view, (tasto 1 del tastierino numerico);
  • crare l’oggetto text, Add (SHIFT+A) > Text (impostare Align to view per orientare il testo verso la camera);
  • selezionare l’oggetto Text, premere il tasto Tab e scrivere il testo desiderato;
  • nella scheda Text (quella con l’icona F) impostare la proprietà Align del paragrafo a Center, questo centrerà la scritta nell’asse X;
  • opzionalmente cambiare gli altri parametri dell’oggetto Text. Per questo tutorial ho lasciato tutti i parametri predefiniti tranne l’Align del paragrafo;
  • assegnare un materiale al testo (immagine di riferimento).

4.Impostare e animare la profondità di campo

Attivare la profondità di campo sulla Camera:

  • aggiungere un oggetto Empty che sarà il punto di messa a fuoco per la Camera;
  • assegnare un nome all’empty (es. DOF_target);
  • selezionare la Camera e configurare le proprietà per il Depth of field;

Animare l’empty dal frame 0 al frame 40 per ottenere un effetto di messa a fuoco progressiva sulla scritta.

  • inserire il primo keyframe al frame 40:
    • spostare il cursore della timeline al frame 40;
    • selezionare l’empty (tasto destro del mouse);
    • posizionare il puntatore del mouse sul campo Y, inserire il valore 0 e premere il tasto I;
  • spostare il cursore della timeline al frame 0;
  • selezionare l’empty e spostarlo verso la camera (sull’asse Y):
    • posizionare il puntatore del mouse sul campo con il valore Y, inserire il valore -7 e premere il tasto I;

In questo modo dal frame 0 al frame 40 l’empty si muoverà verso la scritta che passerà da sfocata a nitida. Il grado di sfocatura è dato dalla distanza tra l’empty e la camera e dalle impostazioni dell’apertura di diaframma inserite nelle proprietà Depth of field.

5.Creare gli emettitori di particelle

Vediamo come creare il cuore dell’animazione, i cerchi che si muovono in modo casuale sullo sfondo. Per ottenere l’effetto che si vede nell’intro della Focus Features utilizzeremo il Particle System di Blender. Alla base del sistema c’è un generatore di particelle chiamato Emitter. Il comportamento delle particelle viene governato dalle impostazioni del Particle System. Dalle impostazioni si possono controllare:

  • la modalità di nascita, vita e morte delle particelle;
  • le interazioni con forze esterne;
  • la modalità di visualizzazione delle particelle.

Come emitter useremo un oggetto cube e per le particelle useremo i cerchi creati al paragrafo 2.

Per impostazione predefinita il sistema di particelle simula la fisica di Newton, la forza di gravità è attiva e influenza il movimento delle particelle. Se lasciassimo le impostazioni predefinite, le particelle, una volta generate, cadrebbero verso il basso a causa della forza di gravità. Per evitare questo comportamento assegniamo alla forza di gravità il valore 0. Accedere alla scheda Field Weights e inserire 0 nel campo Gravity.

Per avviare una simulazione del sistema di particelle dobbiamo eseguire un’animazione. Stabilire la durata dell’animazione impostando i frame d’inizio e fine nella scheda Properties.

Nel sistema di particelle impostare l’inizio e la fine dell’emissione delle particelle al frame 0, in questo modo tutte le particelle nasceranno insieme al primo frame. Impostare l’attributo Lifetime a un valore maggiore o uguale il numero di frame dell’animazione per far vivere le particelle fino alla fine dell’animazione. Nelle immagini sono visibili i parametri utilizzati per la simulazione.

Nell’animazione originale i cerchi differiscono per dimensione e colore, possiamo configurare il sistema per generare le particelle come istanze casuali degli elementi del Particle group (il gruppo di cerchi creato al paragrafo 2).  In questo modo avremo la nascita di particelle di colore diverso. Per gestire la variazione nella dimensione delle particelle configuriamo i campi Size e Random size nella scheda Physics o nella scheda Render. I valori nelle due schede sono gli stessi quindi non ha importanza in quale scheda vengono impostati.

Posizioniamo il cursore della timeline al frame 0 e avviamo l’animazione (ALT+A). Noteremo che non accade nulla, le particelle, ovvero i cerchi, restano fermi nell’emettitore. Questo perché non ci sono forze ad influenzare le particelle, abbiamo disattivato la forza di gravità e non c’è nessun movimento dell’emitter. Per riprodurre il movimento casuale che vediamo nell’animazione originale dobbiamo assegnare un valore al campo Brownian che si trova nella scheda Physics. Il valore del campo Brownian stabilisce la quantità di moto Browniano da applicare alle particelle. Questa proprietà simula il movimento disordinato delle particelle presenti in un fluido. Più è alto il valore di questa proprietà e maggiore è il movimento delle particelle. Se avviamo nuovamente l’animazione vedremo le particelle muoversi e dopo un po’ fuoriuscire dall’emettitore e disperdersi. Quanto veloce sia questa dispersione dipende dal valore del campo Brownian e dalla durata dell’animazione.

Per confinare le particelle all’interno del volume dell’oggetto emettitore dobbiamo utilizzare un oggetto per contenerlo. Chiameremo il contenitore constraint emitter. Per fare in modo che le particelle una volta raggiunti i bordi del contenitore rimbalzino indietro e restino nel contenitore, attiviamo la fisica collision sull’oggetto constraint emitter.

5.Completare la scena

Adesso che sappiamo come creare e configurare l’emitter e il contenitore, possiamo assemblare la scena finale. Per dare un effetto di maggiore profondità all’animazione e avere un miglior controllo sulle particelle, usiamo 3 emitter su 3 piani diversi: foreground, middleground e background. Ogni emitter deve avere un contenitore ed un sistema di particelle dedicato. In questo modo possiamo differenziare la velocità dei movimenti delle particelle, le dimensioni delle particelle e la predominanza dei colori in base al piano di appartenenza.

screen22-ScenaFinale

Al paragrafo 1 abbiamo creato la luce per illuminare la scritta, questa luce non è sufficiente per illuminare i cerchi, dobbiamo inserire un’altra luce. Per ottenere l’effetto finale di translucenza posizioniamo un’area light sullo sfondo.

Per completezza riporto l’outliner che contiene la gerarchia degli oggetti impiegati nella scena.

6.Impostare la cache per il sistema di particelle

La prima volta che attiviamo il particle system (ALT+A), Blender esegue una simulazione e ne salva in memoria il risultato. Se eseguiamo nuovamente l’animazione lo stato delle particelle viene caricato dalla memoria invece che essere ricalcolato. Qualsiasi variazione alle impostazioni del sistema di particelle, ai frame o alle mesh coinvolte nella simulazione rendono necessario un ricalcolo della simulazione.

Una volta trovate le impostazioni che ci soddisfano è consigliabile salvare i dati della simulazione su disco e bloccarli con un’operazione di bake. Il bake “fissa” il risultato della simulazione in modo che ogni esecuzione dell’animazione porti sempre allo stesso risultato. Per sbloccare la simulazione occorre pulire i dati di bake e rieseguire l’animazione.

Il bake diventa prezioso nei casi in cui dovessimo renderizzare nuovamente alcuni frame dell’animazione oppure se dovessimo ripartire da un certo frame dopo un crash del sistema. Senza il bake della simulazione un nuovo rendering sarebbe incoerente con quanto già renderizzato, questo perché la simulazione, basandosi su dati casuali, non produrrebbe gli stessi risultati se eseguita in momenti diversi.

7.Rendering dell’animazione

Preparata la scena passiamo alle impostazioni per il rendering. Cambiare il colore del background nella scheda World e impostarlo a nero.

Per i parametri del rendering fare riferimento alle immagini di dettaglio riportate di seguito, sono tutte relative alla scheda Properties. Le sezioni non presenti nelle immagini conservano i valori predefiniti.

Impostare l’output per salvare i singoli frame dell’animazione come file png. Il vantaggio di avere i fotogrammi separati in immagini piuttosto che un unico file video è quello di poter suddividere il rendering in più sessioni, poter renderizzare solo alcuni frame in seguito a delle modifiche e disporre di ogni fotogramma alla massima qualità possibile, pronto per qualsiasi impiego si abbia in mente.

Eseguire qualche render di test (tasto F12) e verificare che il risultato sia quello atteso. Controllare il frame 0 e 40 per verificare l’effetto della profondità di campo, e l’ultimo frame per vedere la composizione finale. Possiamo avere un preview del risultato finale attivando lo shading di tipo render e spostandoci tra i frame.

Come possiamo vedere le immagini finali contengono un po’ di rumore (hanno una finitura puntiforme) questo a causa del materiale translucido che ha bisogno di un maggior numero di samples (sezione Sampling) per essere renderizzato correttamente. Il numero di samples da utilizzare è dato dal giusto compromesso tra la qualità del render che volete ottenere e i tempi di render che siete disposti ad aspettare, sta a voi decidere. Ovviamente i tempi sono determinati dalla potenza della vostra macchina. Se avete una scheda grafica NVIDIA (architettura CUDA), non dimenticate di attivare il render in GPU.

8.Video editing ed export per caricamento su YouTube

Completato il rendering il nostro lavoro non è ancora fintio. Dobbiamo mettere insieme tutti i fotogrammi dell’animazione che sono stati salvati come singoli file png. Per quest’operazione utilizziamo il Video Sequence Editor. Cambiamo il layout predefinito dell’interfaccia e selezioniamo il layout per il “Video Editing”.

VSE-changeLayout

Importiamo i file png come sequenza d’immagini, dalla finestra del sequencer: Add (SHIFT+A)>Image. Nella finestra di import impostare il numero di frame dell’animazione e selezionare tutti i file png. Blender creerà una strip con tutti i fotogrammi selezionati.

Eseguire l’animazione (ALT+A) per vedere il risultato finale. A questo punto c’è ancora qualche modifica da apportare:

  • inserire una musica di sottofondo;
  • inserire una dissolvenza dal nero all’inizio ;
  • inserire una dissolvenza sul nero alla fine.

Se dobbiamo pubblicare il nostro video online, assicuriamoci di non utilizzare musica coperta da copyright. Per il mio video ho utilizzato una musica con licenza CC (Creative Commons) presa da un sito di Free Music.

Per l’inserimento della traccia audio selezionare il  comando Add (SHITF+A)  > Sound. Per le sfumature in ingresso e uscita in procedere questo modo:

  • selezionare la strip delle immagini (tasto destro del mouse);
  • posizionare il cursore del sequencer sul frame dove vogliamo che termini la dissolvenza iniziale (o inizi la dissolvenza finale);
  • tagliare la strip alla posizione del cursore (tasto K);
  • selezionare la porzione di strip tagliata (all’inizio o alla fine dell’animazione);
  • inserire un effect strip di tipo transform: Add (SHIFT+A) > Effect Strip > Transform;
  • selezionare la strip Trasform iniziale, impostare un keyframe all’inizio e alle fine della strip, impostare il campo opacity a 0 in un keyframe e a 1 nell’altro;
  • selezionare la strip Trasform finale, impostare un keyframe all’inizio e alle fine della strip, impostare il campo opacity a 1 in un keyframe e a 0 nell’altro;
  • lo stesso tipo di approccio può essere utilizzato per sfumare l’audio alla fine dell’animazione. Selezionare la strip audio, inserire un keyframe nel punto in cui si vuole che inizi la sfumatura, inserire un keyframe alla fine dell’animazione. Nel primo keyframe impostare il volume della strip a 1 e nell’ultimo keyframe impostarlo a 0.

Terminato l’editing, impostiamo i parametri finali per l’output. Dobbiamo scegliere il formato video e l’encoder. Prima di questo passaggio consiglio d’installare sulla propria macchina il codec pack K-Lite. Di seguito i parametri che ho utilizzato per produrre il video finale.

Il formato e il codec più diffusi per internet sono l’ mp4 e l’H.264, anche se il nostro file ha estensione avi non avremo problemi a caricarlo su YouTube.

Il tutorial è finito, adesso non vi rimane che usare quello che avete appreso per creare la vostra animazione unica e personale. Provate a cambiare gli oggetti per il particle system, i materiali, il movimento dell’empty, il limite è dato solo la vostra immaginazione.

Se trovate utile ed interessante questo post, lasciate un commento. Grazie.

Per approfondire il processo di montaggio video in Blender leggete il post:
Impariamo il montaggio video con Blender

3 Comments

  1. Sto seguendo con molta attenzione quanto spiegato ma gradirei sapere come fare a modificare il cubo ingrandendolo e ad appiattirlo in modo che diventi un piano, come cambiare carattere e colore delle scritte, come si vede sto iniziando ad usare Blender ed ogni informazione mi sarà utile
    Grazie anticipatoper la cortesia
    Saluti
    Giancarlo

    • Ciao Giancarlo, il ‘making of’ mostra i passaggi per realizzare l’animazione e prevede una conoscenza base del software. Provo a risponderti velocemente con degli esempi.

      SCALE
      Per ridimensionare qualsiasi oggetto in Blender si usa la funzione SCALE. Premi il tasto S e muovi il mouse, l’intero oggetto verrà scalato rispetto al suo punto d’origine. Premendo S + XYZ (inteso come tasto S e subito dopo tasto X o Y o Z), puoi bloccare la trasformazione sull’asse selezionato. Per esempio, con S + X puoi scalare l’oggetto solo nell’asse X.

      La stessa cosa la puoi fare nella finestra Properties > Transform > Scale. Guarda le immagini che seguono.

      Ridimensionare un oggetto in Blender.
      Scale di un oggetto in Blender.

      TEXT
      Per quanto riguarda il Font, dopo aver aggiunto un oggetto Text allo spazio 3D.

      Oggetto text in Blender.

      Seleziona l’oggetto text e accedi alla finestra Properties > Text > Font. In questa finestra devi caricare il font che t’interessa (Regular, Bold, Italic, Bold & Italic). I font li puoi trovare in C:\windows\font (se usi Windows) o li puoi caricare da file con estensione ttf.

      Caricamento Font in Blender.

      Per cambiare il colore dell’oggetto TEXT, come per tutti gli oggetti in Blender, devi assegnargli prima un materiale.

      Assegnare un materiale ad un oggetto Text in Blender.

      Prima di proseguire con questo tutorial ti consiglio di studiare almeno le funzioni base di Blender. A questoLINK trovi dei video che spiegano il funzionamento base di Blender.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *