33 0 18MB
Blender Manuale Di Utente
24 aprile 2006
2
Indice I
INTRODUZIONE
13
1 Introduzione 1.1 Cos’`e Blender? . . . . . . . . . . . . . . . 1.2 La Storia di Blender . . . . . . . . . . . . 1.3 Il Software Libero e la GPL . . . . . . . . 1.4 Ottenere Supporto - Le Comunit`a Blender
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
17 17 18 20 21
2 Installazione 2.1 Download ed installazione della distribuzione binaria 2.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Installazione Rapida . . . . . . . . . . . . . . 2.2.2 Istruzioni approfondite . . . . . . . . . . . . . 2.3 OSX . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Installazione . . . . . . . . . . . . . . . . . . 2.4 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Installazione Rapida . . . . . . . . . . . . . . 2.4.2 Istruzioni approfondite . . . . . . . . . . . . . 2.5 FreeBSD . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Installazione . . . . . . . . . . . . . . . . . . 2.6 Irix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.1 Installazione . . . . . . . . . . . . . . . . . . 2.7 Solaris . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7.1 Installazione . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
23 23 24 24 24 24 24 25 25 25 27 27 27 27 28 28
3 Compilazione di Blender dal sorgente 3.1 Prelevare il sorgente . . . . . . . . . . . . . 3.2 Prelevare l’ultimo pacchetto sorgente stabile 3.3 Prelevare gli ultimi sorgenti da CVS . . . . 3.4 Librerie esterne necessarie . . . . . . . . . . 3.5 Strumenti necessari . . . . . . . . . . . . . . 3.6 Compilare Blender . . . . . . . . . . . . . . 3.7 Supporto tecnico . . . . . . . . . . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
29 29 29 29 30 31 31 31
4 L’Interfaccia 4.1 Il concetto di Interfaccia 4.2 Tastiera e mouse . . . . 4.3 Il sistema a finestra . . . 4.4 Tipi di finestre . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
33 33 33 34 35
in Blender . . . . . . . . . . . . . . . . . . . . . . 3
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
4
INDICE 4.5 4.6 4.7 4.8
Contesti, Pannelli e Pulsanti . . Toolbox (Scatola degli attrezzi) Schermate . . . . . . . . . . . . Scene . . . . . . . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
37 39 39 40
5 Navigare nello Spazio 3D 5.1 La direzione della vista (rotazione) 5.2 Traslare ed Ingrandire la Vista . . 5.3 Prospettiva e Proiezioni Ortogonali 5.4 Modalit` a di Disegno . . . . . . . . 5.5 Vista locale . . . . . . . . . . . . . 5.6 Il sistema dei Livelli . . . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
43 43 43 44 45 46 46
6 Le funzioni vitali 6.1 Caricamento di files . . . . . . . . 6.2 Salvataggio dei file . . . . . . . . . 6.3 Il Rendering . . . . . . . . . . . . . 6.4 Preferenze dell’utente e Temi . . . 6.5 Impostazione della scena di default
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
49 49 49 50 51 52
7 La tua prima animazione in 30 + 30 minuti Parte I 7.1 Riscaldamento . . . . . . . . . . . . . . . . . . . . . . 7.2 Costruzione del corpo . . . . . . . . . . . . . . . . . . 7.3 Vediamo a cosa assomiglia Gus . . . . . . . . . . . . . 7.4 Materiali e Texture . . . . . . . . . . . . . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
53 53 54 60 65
. . . .
75 75 77 80 84
8 La tua prima animazione in 8.1 Allestimento [Rigging] . . 8.2 Rivestimento [Skinning] . 8.3 Posizionamento . . . . . . 8.4 Gus cammina! . . . . . . .
II
30 . . . . . . . .
. . . .
+ 30 minuti Parte II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
MODELLAZIONE
87
9 Booleane
91
10 Oggetti Elementari
93
11 Modalit` a Edit [EditMode] 11.1 Strutture: Vertici, Lati e Facce 11.2 Modalit` a Vertici, Lato e Faccia 11.3 Modifiche elementari . . . . . . 11.4 Smoothing . . . . . . . . . . . . 12 Modellazione Elementare della 12.1 Extrude (Estrusione) . . . . . 12.1.1 La lama . . . . . . . . 12.1.2 L’impugnatura . . . . 12.1.3 L’Elsa . . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
101 102 104 105 106
Mesh . . . . . . . . . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
111 111 112 113 115
. . . .
. . . .
INDICE
5
12.2 Spin and SpinDup . . . . . . . . . . 12.2.1 Spin: Estrusione circolare . . 12.2.2 SpinDup: Roto-Duplicazione 12.3 Avvitamento [Screw] . . . . . . . . . 12.4 Warp: Strumento per la Curvatura .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
115 116 119 122 123
13 Superfici di suddivisione 129 13.1 Superfici di suddivisione col metodo Catmull-Clark . . . . . . . . . . . . 129 13.2 Frastagliature (irregolarit`a) pesate per superfici suddivise . . . . . . . . 134 14 Strumenti per Lati e Facce 14.1 Selezione di Spigolo/Faccia . . . . . . . . . . . . . 14.1.1 Selezione Esplicita dello Spigolo . . . . . . . 14.1.2 Selezione Implicita dello Spigolo . . . . . . 14.1.3 Selezione Esplicita della Faccia . . . . . . . 14.1.4 Selezione Implicita della Faccia . . . . . . . 14.1.5 Selezione degli spigoli consecutivi (looping) 14.1.6 Selezione di facce consecutive (looping) . . 14.1.7 Selezione di Spigoli e Facce tramite Regione 14.2 Divisione di sequenze di facce . . . . . . . . . . . . 14.2.1 Divisione percentuale di sequenze di facce . 14.2.2 Divisione proporzionale di sequenze di facce 14.3 Cancellazione di sequenze di spigoli . . . . . . . . . 14.4 Strumento Coltello/Cut Type . . . . . . . . . . . . 14.4.1 Taglio di tipo Exact Line (linea esatta) . . 14.4.2 Taglio di tipo Midpoints (punti medi) . . . 14.4.3 Taglio di tipo MultiCut (taglio multiplo) . 14.5 Strumenti Speciali per gli Spigoli . . . . . . . . . . 14.5.1 Rotazione Oraria/Antioraria di Spigoli . . . 14.5.2 Scorrimento di uno Spigolo . . . . . . . . . 14.6 Strumenti di Smussatura . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . .
139 139 139 140 140 140 140 141 142 143 145 146 147 147 149 149 150 150 151 152 153
15 Modellazione Avanzata della Mesh 15.1 Modellazione Simmetrica . . . . . 15.2 Proportional Editing Tool . . . . . 15.3 Rumore . . . . . . . . . . . . . . . 15.4 Strumento Decimatore . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
155 155 157 161 163
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
16 Curve 167 16.1 B´ezier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 16.2 NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 17 Esempio pratico
171
18 Estrusione lungo un percorso
177
19 Curve Taper
181
20 Skinning
183
6
INDICE
21 Curve Deformanti 187 21.1 L’interfaccia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 21.2 Esempio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
III
MATERIALI
191
22 Diffusione
195
23 Riflessione Speculare
197
24 Materiali in pratica 199 24.1 I Colori dei Materiali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 24.2 Gli Ombreggiatori [Shaders] . . . . . . . . . . . . . . . . . . . . . . . . . 200 24.3 Modifiche dei Materiali . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 25 Ramp Shaders 205 25.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 25.2 L’interfaccia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 25.3 Esempio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
IV
TEXTURES
211
26 Mappatura da 2D a 3D 215 26.1 Spostamento di coordinate. Scalatura e Trasformazione . . . . . . . . . 216 27 Introduzione 27.1 L’editor UV . . . . . . . . . . . 27.2 Strumenti per Scucire . . . . . 27.3 Modifica delle coordinate UV . 27.4 Scucitura [Unwrap] LSCM . . . 27.5 Dipingere Texture . . . . . . . 27.6 Il rendering e le coordinate UV 28 Texture Plugins
V
LUCI
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
219 219 221 223 224 226 226 227
229
29 Tipi di luci
233
30 Luce del Sole
237
31 Luce Semisferica (Hemi)
239
32 Luce di tipo Lampada (Lamp)
241
33 Faretto (Spot) 245 33.1 Spot Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 33.2 Pulsanti del Faretto (Spot) . . . . . . . . . . . . . . . . . . . . . . . . . 246
INDICE
7
34 Luce Areale (Area) 249 34.1 Opzioni della Luce Areale . . . . . . . . . . . . . . . . . . . . . . . . . . 249 34.2 Pulsanti della Luce Areale . . . . . . . . . . . . . . . . . . . . . . . . . . 250 35 Buffer delle Ombre
253
36 Luce Volumetrica
257
37 Regolazione del Buffer delle Ombre 37.1 I tre punti Luce . . . . . . . . . . . . . . . . . . . . 37.2 I tre punti luce - Esterno . . . . . . . . . . . . . . . 37.3 Pseudo-Area Luminosa . . . . . . . . . . . . . . . . 37.4 Illuminazione Globale (ed Ombreggiatura Globale)
VI
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
IL MONDO E L’UNIVERSO
261 264 266 269 273
279
38 Lo sfondo del mondo
283
39 Ambient Occlusion
285
40 Foschia
291
41 Stelle
293
VII
ANIMAZIONE
295
42 Blocco IPO
299
43 Le curve IPO e le chiavi IPO 43.1 Le curve IPO . . . . . . . . . 43.2 Chiavi IPO . . . . . . . . . . 43.3 Altre applicazioni delle Curve 43.4 La IPO del Tempo . . . . . .
VIII
. . . . . . IPO . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
DEFORMAZIONI
44 Oggetti Hook (Ganci) 44.1 Aggiungere hooks . . . 44.2 Uso degli hooks . . . . 44.3 Opzioni in Modo Edit 44.4 Il Pannello Hooks . . . 45 Introduzione
. . . .
301 301 305 307 307
309 . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
313 313 313 314 314 317
46 Uso 319 46.1 Creazione di Chiavi di Forma . . . . . . . . . . . . . . . . . . . . . . . . 319 46.1.1 Inserimento della mesh di base . . . . . . . . . . . . . . . . . . . 319 46.1.2 Inserimento di chiavi addizionali . . . . . . . . . . . . . . . . . . 319
8
INDICE 46.1.3 Modifica delle chiavi di forma 46.1.4 Puntaspilli . . . . . . . . . . 46.1.5 Galleria di chiavi di forma . . 46.2 Miscelare chiavi di forma . . . . . . 46.2.1 Il Pannello Shapes . . . . . . 46.2.2 La finestra Action Editor . . 46.2.3 La finestra IPO . . . . . . . . 46.2.4 Le guide IPO [Drivers] . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
319 320 320 321 321 321 321 322
47 Vertici Chiave Assoluti 323 47.1 Curve e Superfici Chiave . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 47.2 Lattice Chiave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 48 Chiavi di Vertici Relative [Relative VertexKeys]
329
49 Animazione del Lattice
337
IX
SOFT BODIES E FLUIDI
341
50 Soft Bodies 345 50.1 Le basi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 50.2 Interfaccia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 50.3 Esempio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 51 Simulazione Fluidi 51.1 Visione d’insieme del flusso di lavoro . . . 51.2 Spiegazione delle impostazioni della GUI: 51.3 Qualche informazione di riferimento . . . 51.4 Ulteriori informazioni . . . . . . . . . . . 51.5 Ringraziamenti . . . . . . . . . . . . . . .
X
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
RENDERING
351 351 352 354 355 355
357
52 Antiscalettatura [Antialiasing]
361
53 Rendering di Animazioni
363
54 Formati di output
365
55 Opzioni per il Rendering 55.1 Rendering Parziali . . . 55.2 Rendering Panoramici . 55.3 Motion Blur . . . . . . . 55.4 Profondit` a di Campo . . 55.5 Bordi da Vignetta . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
367 367 367 370 372 376
56 Il Rendering Unificato
381
57 Yafray
383
INDICE
9
58 Preparare il proprio lavoro per il video 385 58.1 Saturazione del Colore . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 58.2 Il rendering in quadri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
XI
RADIOSITY
389
59 Radiosity Rendering 393 59.1 Il metodo per la Radiosit` a di Blender . . . . . . . . . . . . . . . . . . . 393 59.2 Il Rendering con la Radiosit`a . . . . . . . . . . . . . . . . . . . . . . . . 394 60 La Radiosit` a come strumento di Modellazione 60.1 Fase 1: Selezionare le Mesh . . . . . . . . . . . 60.2 Fase 2: Limiti della suddivisione . . . . . . . . 60.3 Fase 3: Suddivisione Adattativa . . . . . . . . . 60.4 Fase 4: Modifica della soluzione . . . . . . . . .
XII
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
TECNICHE DI MODELLAZIONE SPECIALI
399 399 400 400 402
405
61 Particelle 61.1 Particelle Semplici . . . . . . . . . . . 61.2 Un primo Sistema di Particelle . . . . 61.3 Il Rendering di un sistema di particelle 61.4 Oggetti come particelle . . . . . . . . . 61.5 Fare il fuoco con le particelle . . . . . 61.5.1 Il sistema di particelle . . . . . 61.5.2 Il materiale del fuoco . . . . . . 61.6 Una semplice esplosione . . . . . . . . 61.6.1 I materiali . . . . . . . . . . . . 61.6.2 I sistemi di particelle . . . . . . 61.7 Fuochi d’artificio . . . . . . . . . . . . 61.8 Controllo di Particelle con un Lattice . 61.9 Particelle Statiche . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
407 407 407 409 410 411 411 413 415 416 417 417 419 422
62 Interazione di Particelle 62.1 Introduzione . . . . . . . . . . 62.2 L’interfaccia . . . . . . . . . . 62.2.1 Campo Forza/Vortice 62.2.2 Deflessione . . . . . . 62.3 Esempio . . . . . . . . . . . . 62.4 Render di esempio . . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
425 425 426 426 426 427 427
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
63 Capelli, pellicce, piume in Blender 429 63.1 Visione d’insieme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429 63.2 Emettere fili dalla mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . 430 63.3 L’ombreggiatore Strand (fibra): . . . . . . . . . . . . . . . . . . . . . . . 431
10
INDICE
64 Effetto Costruzione e Onde 441 64.1 Effetto Build (Costruzione progressiva) . . . . . . . . . . . . . . . . . . . 441 64.2 Effetto Onda (Wave) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 65 Duplicazione ai Vertici [DupliVerts] 445 65.1 DupliVerts come uno Strumento di Dislocazione . . . . . . . . . . . . . . 445 65.2 DupliVerts per Modellare un Singolo Oggetto . . . . . . . . . . . . . . . 451 66 Duplicazione nei Fotogrammi [DupliFrame] 455 66.1 Modellare coi DupliFrame . . . . . . . . . . . . . . . . . . . . . . . . . . 455 66.2 Disposizione di oggetti col DupliFrame . . . . . . . . . . . . . . . . . . . 459 66.3 Ancora Animazione e Modellazione . . . . . . . . . . . . . . . . . . . . . 461
XIII
SEQUENZE
467
67 Editor di Sequenze Video 67.1 Imparare ad usare l’Editor di Sequenze . . . . . . . . . . . . . . . 67.2 Prima Animazione: due cubi . . . . . . . . . . . . . . . . . . . . 67.3 Prima Sequenza: Cubo a Fil-di-Ferro ritardato . . . . . . . . . . 67.4 Seconda Animazione: Un cubo pieno in ritardo . . . . . . . . . . 67.5 Terza Animazione: un tunnel . . . . . . . . . . . . . . . . . . . . 67.6 Seconda Sequenza: Utilizzo del tunnel come sfondo . . . . . . . . 67.7 Quarta Animazione: un logo saltellante . . . . . . . . . . . . . . 67.8 Quinta Animazione: barre di particelle . . . . . . . . . . . . . . . 67.9 Terza Sequenza: Combinazione del logo e delle barre di particelle 67.10Sesta Animazione: ingrandimento del logo . . . . . . . . . . . . . 67.11Assemblaggio di tutto quanto creato finora . . . . . . . . . . . . 67.12Conclusione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67.13Plugins dell’editor di sequenze . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
. . . . . . . . . . . . .
68 Editor delle Sequenze Audio
XIV
495
ESTENDERE BLENDER
497
69 Creare uno Script ’Bundled’ 70 Scripts Integrati 70.1 Import . . . . 70.2 Export . . . . 70.3 Object . . . . 70.4 Mesh . . . . . 70.5 Animation . . 70.6 Help . . . . . 70.7 Websites . . . 70.8 System . . . . 70.9 Wizards . . . 70.10FaceSelect . . 70.11UV . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
471 471 471 473 477 480 483 484 484 487 488 489 492 492
501
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
503 503 503 504 505 505 505 506 506 506 506 506
INDICE
11
71 Script in Python 71.1 Impostazione della variabile d’ambiente PYTHONPATH . . . . 71.1.1 Impostazione di PYTHONPATH su Win95,98,Me . . . 71.1.2 Impostazione di PYTHONPATH su WinNT,2000,XP . 71.1.3 Impostazione di PYTHONPATH su Linux e altri UNIX 71.2 Un esempio di Python in funzione . . . . . . . . . . . . . . . . 71.2.1 Intestazioni, importazione di moduli e variabili globali . 71.2.2 Disegno della GUI . . . . . . . . . . . . . . . . . . . . . 71.2.3 Gestione degli eventi . . . . . . . . . . . . . . . . . . . . 71.2.4 Gestione delle Mesh . . . . . . . . . . . . . . . . . . . . 71.2.5 Conclusioni . . . . . . . . . . . . . . . . . . . . . . . . . 71.3 Python Reference . . . . . . . . . . . . . . . . . . . . . . . . . . 71.4 Scripts in Python . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
507 509 509 509 509 510 510 510 511 511 512 512 512
72 Il Sistema di Plugin di Blender 72.1 Scrivere un Plugin Texture . . . . . . . . . . . . . . 72.1.1 Specifiche: . . . . . . . . . . . . . . . . . . . . 72.1.2 Interazione tra Texture e Materiale . . . . . . 72.1.3 Plugin di Texture Generico: . . . . . . . . . . 72.1.4 Le nostre Modifiche: . . . . . . . . . . . . . . 72.1.5 Compilazione: . . . . . . . . . . . . . . . . . . 72.2 Scrittura di un Plugin di Sequenza [Sequence Plugin] 72.2.1 Specifiche: . . . . . . . . . . . . . . . . . . . . 72.2.2 Plugin di Sequenza Generico: . . . . . . . . . 72.2.3 Le nostre modifiche: . . . . . . . . . . . . . . 72.2.4 Compilazione: . . . . . . . . . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
515 515 516 516 517 517 517 518 518 519 519 519
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
12
INDICE
Parte I
INTRODUZIONE
13
15 Questa prima parte della documentazione vi guider`a attraverso il download, l’installazione, e se si decide di scaricarsi i sorgenti, la compilazione di Blender. Blender ha un’interfaccia veramente insolita, altamente ottimizzata per la produzione di grafica 3d. Questo pu` o apparire strano ai nuovi utenti, ma si prover`a la sua potenza a lungo termine. Si raccomanda vivamente di leggere con cura il Capitolo L’interfaccia , sia per familiarizzare con l’interfaccia che con le convenzioni usate nella documentazione. L’ultimo capitolo di questa parte, il La tua prima animazione in 30 30 minuti Parte I , dar` a anche una scorsa alle capacit`a di Blender. Ovviamente, Blender pu`o fare molto di pi` u di questo, ma questa `e solo una partenza veloce.
16
Capitolo 1
Introduzione 1.1
Cos’` e Blender?
Blender `e un insieme integrato di strumenti per la creazione di un’ampia gamma di contenuti 3D. Esso offre tutte le funzionalit`a per la modellazione, il rendering, l’animazione, la post-produzione, la creazione e la riproduzione di contenuto interattivo 3D con i singolari benefici dell’operabilit`a tra pi` u piattaforme e la dimensione del file da scaricare `e di circa 5MB. Indirizzato ai professionisti dei media ed agli artisti, Blender pu`o essere usato per creare visualizzazioni 3D, sia diapositive come che video di qualit`a televisiva, mentre l’inclusione di un motore 3D in tempo reale permette la creazione di contenuti 3D interattivi per riproduzioni stand-alone. Sviluppato originariamente dalla societ`a ’Not a Number’ (NaN), ora Blender viene portato avanti come ’Software Libero’, con i sorgenti disponibili sotto GNU GPL. Principali caratteristiche:
• Piattaforma di creazione completamente integrata, in grado di offrire una vasta gamma di strumenti essenziali per la creazione di contenuti 3D, compresa la modellazione, l’animazione, il rendering, la post produzione video e la creazione di giochi; • Multi piattaforma, con GUI uniforme per tutte le piattaforme basata su OpenGL, pronto all’uso su tutte le versioni di Windows, Linux, OSX, FreeBSD, Irix e Sun; • Architettura 3D di alta qualit`a che consente la creazione rapida ed efficace di un flusso di lavoro; • Canale di supporto gratuito tramite http://www.blender3d.org ; • Una comunit` a di pi` u di 250.000 persone nel mondo; • Piccola dimensione dell’eseguibile, per una facile distribuzione; 17
18
CAPITOLO 1. INTRODUZIONE
L’ultima versione di Blender si pu` o scaricare su http://blender.org/cms/Blender.31.0.html .
1.2
La Storia di Blender
Nel 1988 Ton Roosendaal ha co-fondato lo studio di animazione olandese NeoGeo . NeoGeo `e diventata rapidamente il pi` u grande studio di animazione 3D dell’Olanda ed una delle principali case di animazione in Europa. NeoGeo ha creato delle produzioni vincitrici di premi (European Corporate Video Awards 1993 e 1995) per grandi aziende come clienti come la Philips, multinazionale dell’elettronica. All’interno di NeoGeo, Ton `e stato responsabile sia della direzione artistica sia dello sviluppo interno del software. Dopo un’attenta riflessione, Ton decise che l’insieme dei strumenti 3D propri della NeoGeo era troppo vecchio ed ingombrante da mantenere ed aggiornare e bisognava riscriverle daccapo. Nel 1995 `e iniziata questa riscrittura ed fu destinata a diventare la piattaforma di creazione di software 3D che noi tutti conosciamo come Blender . Dato che NeoGeo ha continuato a rifinire e migliorare Blender, divent`o chiaro a Ton che Blender potesse essere usato come strumento per altri artisti, al di fuori della NeoGeo. Nel 1998, Ton decise di fondare una nuova azienda chiamata Not a Number (NaN) come spin-off della NeoGeo per altri mercati e per lo sviluppo di Blender. Nel cuore della NaN c’era il desiderio di creare e distribuire gratuitamente una piattaforma di creazione 3D compatta e multi-piattaforma. Inizialmente fu un concetto rivoluzionario dato che la maggior parte dei modellatori costavano migliaia di dollari americani. La NaN ha sperato di portare ad un livello professionale gli strumenti di modellazione 3D e di animazione prima di raggiungere il grande pubblico. Il modello aziendale della NaN era legato alla fornitura di prodotti commerciali e servizi intorno a Blender. Nel 1999 la NaN ha partecipato alla sua prima conferenza Siggraph nello sforzo di un’ulteriore promozione di Blender. La prima convention del Siggraph 1999 di Blender `e stata un grande successo ed ha suscitato un enorme interesse sia della stampa che dei partecipanti. Blender `e stato un successo ed `e stato confermato il suo potenziale! Sulla scia del successo del Siggraph all’inizio del 2000, la NaN aveva un finanziamento privilegiato di 4.5 milioni di Euro da dai capitalisti d’impresa. Questo grande afflusso di cassa ha consentito alla NaN di espandersi rapidamente nelle sue operazioni. Ben presto la NaN ha raggiunto i 50 dipendenti sparsi nel mondo per migliorare e promuovere Blender. Nell’estate del 2000, fu rilasciato Blender v2.0. In tale versione di Blender fu aggiunto il motore per i giochi alla piattaforma 3D. Per la fine del 2000, il numero di utenti registrati sul sito web della NaN superava i 250.000. Sfortunatamente, le ambizioni della NaN e le opportunit`a non incontrarono le capacit`a dell’azienda e la realt` a del mercato del momento. Questa ristrutturazione port`o ad un riavvio della NaN con nuovi finanziatori ed un’azienda pi` u piccola nell’aprile 2001. Sei mesi dopo, fu lanciato il primo prodotto software commerciale della NaN, Blender Publisher . Questo prodotto era destinato al mercato emergente dei media 3D interattivi basati su web. A causa delle vendite deludenti e del clima di difficolt`a economiche in corso, i nuovi investitori decisero di fermare tutte le operazioni della NaN. La chiusura includeva anche la cessazione dello sviluppo di Blender. Sebbene la versione di allora di
1.2. LA STORIA DI BLENDER
19
Blender fosse chiaramente difettosa, con una complessa architettura software interna, le caratteristiche incomplete ed un modo non-standard della GUI, si ebbe un entusiastico supporto della comunit` a di utenti e di clienti che hanno acquistato Blender Publisher nel passato, Ton non poteva lasciare che Blender sparisse nell’oblio. Dal riavvio della societ` a con un team abbastanza ampio di sviluppatori non fu possibile, nel Marzo 2002 Ton Roosendaal ha fondato l’organizzazione non-profit Blender Foundation . Il primo obiettivo della Blender Foundation `e stato di trovare un modo per continuare lo sviluppo e la promozione di Blender come un progetto fondato sulla comunit`a Opensource . Nel luglio del 2002, Ton `e riuscito ad ottenere dagli investitori della NaN il passaggio unico alla fondazione Blender per tentare di rilasciare Blender come Open Source. La campagna Free Blender ha cercato di raggiungere e100.000 affinch´e tale Fondazione potesse acquistare i diritti dei codici sorgenti di Blender e la propriet`a dei diritti intellettuali dagli investitori della NaN e di conseguenza il rilascio di Blender alla comunit`a open source. Con un gruppo di entusiastici volontari, tra cui diversi ex impiegati della NaN, inizi` o la campagna per raccogliere fondi per Liberare Blender. Con piacevole sorpresa di tutti la campagna raccolse e100.000 in sole sette settimane. La domenica del 13 ottobre 2002, Blender `e stato rilasciato al mondo nei termini della GNU General Public License (GPL). Lo sviluppo di Blender continua in questi giorni condotto da un vasto gruppo di volontari da tutto il mondo guidati dal creatore originale di Blender, Ton Roosendaal. Storia di Blender e tappe principali • 1.00 Gennaio 1995 Blender sviluppato nello studio di animazione NeoGeo • 1.23 Gennaio 1998 SGI Versione pubblicata su web, IrisGL • 1.30 Aprile 1998 Versioni per Linux e FreeBSD, porting per OpenGL ed X • 1.3x Giugno 1998 Fondazione della NaN • 1.4x Settembre 1998 Rilasciate le versioni per Sun e Linux Alpha • 1.50 Novembre 1998 Pubblicato il primo Manuale • 1.60 Aprile 1999 C-key (nuove caratteristiche bloccate, $95), rilasciata versione per Windows • 1.6x Giugno 1999 Rilasciate versioni per BeOS e PPC • 1.80 Giugno 2000 Fine della of C-key, Blender di nuovo completamente libero • 2.00 Agosto 2000 Motore interattivo 3D e in tempo reale • 2.10 Dicembre 2000 Nuovo motore, simulazione leggi fisiche e Python • 2.20 Agosto 2001 Sistema di animazione dei Personaggi • 2.21 Ottobre 2001 Lancio di Blender Publisher • 2.2x Dicembre 2001 Versione per Mac OSX • 13 Ottobre 2002 Blender diventa Open Source, Prima Blender Conference
20
CAPITOLO 1. INTRODUZIONE • 2.25 Ottobre 2002 Blender Publisher diventa liberamente disponibile • Tuhopuu1 Ottobre 2002 Viene creata la ramificazione sperimentale di Blender, un’arena di programmatori • 2.26 Febbraio 2003 Il primo vero Blender Open Source • 2.27 Maggio 2003 Il secondo Blender Open Source • 2.28x Luglio 2003 La prima della serie 2.28x • 2.30 Ottobre 2003 Alla seconda Blender Conference viene presentato il rifacimento della UI della 2.3x • 2.31 Dicembre 2003 Aggiornamento al progetto stabile 2.3x UI • 2.32 Gennaio 2004 Importanti revisioni delle funzionalit`a interne del rendering • 2.33 Aprile 2004 Ambient Occlusion, Nuove Textures Procedurali, torna il game engine! • 2.34 Agosto 2004 Grandi miglioramenti: Interazione delle Particelle, LSCM UV mapping, integrazione funzionale con YafRay, increspature pesate [Weighted creases] nelle Subsurfaces, Ramp shaders, OSA completo, e molto altro ancora. • 2.35 Novembre 2004 Un’altra versione piena di migliorie: Oggetti Ganci [hooks], curve deformanti [deforms] e curve modellanti [tapers], duplicatori di particelle e molto altro. • 2.36 Febbraio 2005 Un po’ pi` u che una versione di stabilizzazione, molto lavoro dietro le quinte, poche nuove funzionalit`a, soprattutto mappatura Normale e di Spiazzamento [Displacement]. • 2.37 Giugno 2005 Un grande salto: Strumenti di trasformazione e widgets, Corpi molli [Softbodies], Campi di forza, deflessioni, Suddivisione incrementale di Superfici, Ombre Trasparenti, ed il rendering Multithreaded.
1.3
Il Software Libero e la GPL
Quando si sente di software libero, la prima cosa che viene in mente `e che non costa nulla. Mentre ci` o `e vero per la maggior parte dei casi, il termine software libero [free software] `e usato dalla Free Software Foundation (iniziatori del Progetto GNU e creatori della GNU General Public License) nel senso di libero come in libert`a anzich´e senza costo, gratis. Il software libero in questo senso `e un software che si `e liberi di usare, copiare, modificare, ridistribuire, senza limiti. Di contro questo con la licenza della maggior parte dei programmi commerciali, `e consentito caricare il software su un solo computer, non `e permesso fare copie n´e vedere il codice sorgente. Il software libero concede un’incredibile libert` a all’utente finale; inoltre, dato che il codice sorgente `e disponibile universalmente, ci sono molte possibilit` a che i bachi vengano trovati e corretti. Quando un programma `e distribuito con sotto la licenza GNU General Public License (la GPL):
` BLENDER 1.4. OTTENERE SUPPORTO - LE COMUNITA
21
• si ha il diritto di usare il programma per qualsiasi scopo; • si ha il diritto aver accesso al codice sorgente e di poterlo modificare; • si ha il diritto di copiare e distribuire il programma; • si ha il diritto di migliorare il programma e rilasciare le proprie versioni. In cambio di questi diritti, si hanno alcune responsabilit`a se si distribuisce un programma GPL, per proteggere la propria e l’altrui libert`a: • Si deve fornire una copia della GPL col programma, in modo che il destinatario sappia i suoi diritti sotto la licenza. • Si deve includere il codice sorgente o renderlo liberamente disponibile. • Se si modifica il codice e si distribuiscono le versioni modificate, si devono licenziare le proprie modifiche sotto la GPL e rendere disponibile il codice delle modifiche. (Non si pu` o usare il codice sotto GPL in un programma proprietario). • Non si possono applicare restrizioni alla licenza del programma sotto i termini della GPL. (Non si pu` o trasformare un programma GPL in un prodotto proprietario). Per ulteriori informazioni sulla GPL, si controlli il sito Web del Progetto GNU . Per riferimento, una copia della GNU General Public License `e inclusa nel Volume II.
1.4
Ottenere Supporto - Le Comunit` a Blender
Essere liberamente disponibile all’inizio, col fatto di avere il codice sorgente disponibile, ha favorito molto l’adozione di Blender. Una grande, stabile ed attiva comunit`a di utenti si `e raccolta attorno a Blender sin dal 1998. La comunit` a ha mostrato il meglio nella liberazione dello stesso Blender, sotto la licenza GNU GPL alla fine dell’estate 2002. La comunit` a stessa ora `e suddivisa in due, grandi siti sovrapposti: 1. La Comunit` a di Sviluppo, intorno al sito della Blender Foundation www.blender.org . Questo `e il centro di sviluppo del progetto, comitati delle Funzionalit`a e della Documentazione, il repository CVS con i sorgenti di Blender, tutta la documentazione dei sorgenti, ed i relativi forum pubblici di discussione. Gli sviluppatori che producono codice per lo stesso Blender, per Python, scrittori della documentazione e chiunque lavori per lo sviluppo di Blender in generale pu`o essere trovato qui. 2. La Comunit` a degli utenti, intorno al sito indipendente www.elysiun.com . Qui gli artisti di Blender, creatori di giochi e fan si radunano per mostrare le loro creazioni, ricevere critiche, e rispondere per aiutare per una migliore percezione delle funzionalit` a di Blender. Qui si trovano anche i tutorial di Blender e la Base della Conoscenza.
22
CAPITOLO 1. INTRODUZIONE
Questi due siti web non sono le uniche risorse di Blender. La comunit`a mondiale ha creato una moltitudine di siti indipendenti, in lingue locali o dedicati ad argomenti specifici. Un elenco costantemente aggiornato delle risorse di Blender lo si pu`o reperire presso i siti summenzionati. Per una risposta immediata online ci sono tre canali IRC di chat permanentemente aperte su irc.freenode.net . Ci si pu`o unire tramite il client IRC client preferito. I canali IRC sono #blenderchat , #blenderqa e #gameblender .
Capitolo 2
Installazione Blender `e disponibile sia come eseguibile binario che come codice sorgente sul sito della Fondazione ( http://www.blender.org/ ). Dalla pagina principale si cerchi la sezione ’Downloads’. Ad ogni modo, per un uso corretto di tale libro, `e consigliabile usare la versione fornita sul CDROM della Guida 2.3. Laddove nel testo seguente si menzioner`a un download, si dovr` a intendere il recupero dal CDROM.
2.1
Download ed installazione della distribuzione binaria
La distribuzione binaria `e in 6 versioni base: • Windows • Linux • MacOSX • FreeBSD • Irix • Solaris La versione Linux `e in 4 diverse sotto-versioni, per architetture Intel e PowerPC, con librerie collegate staticamente o caricate dinamicamente. La differenza tra la versione statica e quella dinamica `e importante. La versione statica ha le librerie OpenGL compilate internamente. Questo fa s`ı che Blender giri sul sistema senza usare acceleratori grafici hardware. L’uso della versione statica `e per controllare se Blender gira quando fallisce la versione dinamica! OpenGL viene usato in Blender per tutti i disegni, inclusi i men` u ed i pulsanti. Questa dipendenza richiede una opportuna installazione conforme di OpenGL secondo i requisiti del proprio sistema. Non tutti 23
24
CAPITOLO 2. INSTALLAZIONE
i fornitori di schede 3D forniscono tale conformit`a, specie le schede economiche per il mercato dei giochi. Ovviamente dato che il rendering viene eseguito da motore del rendering di Blender nella memoria centrale e dalla CPU principale della propria macchina, una scheda grafica con accelerazione hardware non modifica i tempi del rendering stesso.
2.2 2.2.1
Windows Installazione Rapida
Si scarica il file blender-2.3#-windows.exe , (dove 2.3# `e il numero della versione) dalla sezione downloads del sito Web di Blender. Si avvia l’installazione con un doppio click sul file. Vengono poste alcune domande, su quale debbano essere i default giusti. Una volta completata l’installazione, si pu`o subito avviare Blender, o usare le voci nel men` u Start.
2.2.2
Istruzioni approfondite
Si scarica il file blender-2.3#-windows.exe dalla sezione downloads del sito Web di Blender. Si sceglie di scaricarlo (se richiesto), si seleziona una posizione e click su Save. Con Explorer si cerca la posizione dove si `e salvato il file e doppio click per avviare l’installazione. La prima dialog presenta la licenza. Viene richiesto di accettarla se si vuole che l’installazione proceda. Dopo aver accettato la licenza, si selezionano i componenti che si vogliono installare (ce n’`e solo uno, Blender) e le ulteriori azioni che si vogliono intraprendere. Queste sono tre: Aggiungere una scorciatoia [shortcut] nel men` u Avvio [Start], Aggiungere l’icona di Blender sulla Scrivania [desktop], associare i file .blend a Blender. Per default sono tutti marcati. Se non si vogliono alcune di esse basta semplicemente smarcarle. Una volta fatto, click su Next . Si seleziona una directory in cui installare i file (il default dovrebbe andar bene), e click su Next per installare Blender. Si preme Close quando l’installazione `e finita. In seguito verr` a chiesto se si vuol avviare immediatamente Blender. Ora Blender `e installato e pu` o essere avviato dal men` u Start (dalla routine di installazione `e stata creata una voce Blender Foundation) o doppio click su un file Blender ( *.blend ).
2.3 2.3.1
OSX Installazione
si scarica il file blender-2.3#-darwin-6.6-powerpc.dmg dalla sezione downloads del sito Web di Blender. Lo si estrae con un doppio click sul file. Questo aprir`a una direc-
2.4. LINUX
25
tory con diversi file. Dato che Blender usa OpenGL per tutta la GUI, ed anche il Mac OSX disegna tutta la Scrivania [Desktop] con OpenGL si dovr`a controllare prima di avere VRAM sufficiente nel proprio sistema. Sotto gli 8 MB di VRAM Blender non gira affatto. Fino a 16 MB di VRAM si avr` a bisogno di impostare il sistema a 1000s of colors (System Preferences -> Displays). Ora si pu` o usare Blender con un doppio click sulla sua icona. Oppure trascinare l’icona di Blender sul Dock per creargli un alias. Blender inizia per default in una finestra pi` u piccola. Si usa il pulsante + nell’intestazione della finestra per ampliarla al massimo. Ulteriori consigli e suggerimenti sulla versione OSX si possono reperire nel file OSX tips.rtf nella directory di installazione.
2.4 2.4.1
Linux Installazione Rapida
Si scarica il file blender-2.3#-linux-glibc#.#.#-ARCH.tar.gz dalla sezione downloads del sito Web di Blender. Qui 2.3# `e la versione di Blender, #.#.# `e la versione glibc e ARCH `e l’architettura della macchina, o i386 o powerpc . Si deve prelevare quella coincidente col proprio sistema, si ricordi di scegliere tra la versione statica e la dinamica.
Si scompatta l’archivio in un posto a propria scelta. Ci`o creer`a la directory blender-2.3#-linux-glibc#.#.#-ARC , in cui si potr` a trovare il file binario blender . Per avviare blender basta aprire una shell ed eseguire ./blender , ovviamente quando sta girando X.
2.4.2
Istruzioni approfondite
Si scarica il file blender-2.3#-linux-glibc#.#.#-ARCH.tar.gz dalla sezione downloads del sito Web di Blender. Si sceglie di scaricarla (se richiesto), si seleziona una posizione e click su Save. Quindi si naviga verso la posizione in cui si vuol installare Blender (per es. /usr/local/ ) e si scompatta l’archivio (con tar xzf /path/to/blender-2.3#-linux-glibc#.#.#-ARC ). Se si vuole, si pu` o rinominare la directory risultante da blender-2.3#-linux-glibc#.#.#-ARCH a qualcosa di pi` u breve, per es. solo blender . Ora Blender `e installato e pu` o essere avviato sulla linea di comando immettendo in una shell /path/to/blender seguito dalla pressione del tasto Enter. Se si usa KDE o Gnome si pu` o avviare Blender usando il proprio file manager navigando sull’eseguibile di Blender e doppio click su di esso. Se si usa il gestore di finestre Sawfish, si potrebbe dover aggiungere una linea simile a ( Blender (system blender &)) al proprio file .sawfish/rc .
26
CAPITOLO 2. INSTALLAZIONE
Per aggiungere le icone del programma in KDE 1. Si seleziona il Menu Editor dal sottomen` u System del men` u K. 2. Si seleziona il sottomen` u chiamato Graphics nel men` u list. 3. Click sul pulsante New Item. Apparir`a una dialog box che chieder`a di creare un nome. Si crea e si digita un nome appropriato click OK. Blender o Blender 2.3# sarebbero delle scelte logiche, ma questo non influisce sul funzionamento del programma. 4. Si dovr` a tornare nel men` u list, e si espander`a il sottomen` u Graphics, con la nuova voce evidenziata. Nella sezione giusta ci si assicuri che siano riempiti i seguenti campi: Name, Comment, Command, Type e Work Path. • Il campo Name dovrebbe gi`a essere riempito, ma lo si pu`o cambiare in qualsiasi momento. • Si riempie il campo Comment. Qui `e dove si definisce l’etichetta [tag] che appare quando si passa sull’icona. • Click sull’icona della cartella [folder] alla fine del campo Command per cercare l’icona del programma blenderpublisher. Si seleziona l’icona del programma e click su OK per tornare al Men` u Editor. • Il Type dovrebbe essere Application.
• Il Work Path dovrebbe essere lo stesso del Command, col nome del programma rimosso. Per esempio, se il campo Command indica /home/user/blender-publisher-#.##-linux, Work Path dovrebbe essere /home/user/blender-publisher-#.##-linux-glibc#.#.#-ARCH/ . 5. Click su Apply e si chiude il Men` u Editor. Per aggiungere un collegamento [link] a Blender sul KPanel, click destro su un punto vuoto del KPanel, quindi su Add, Button, Graphics, e si seleziona Blender (o qualsiasi cosa si sia immessa al punto 3). In alternativa, si pu`o navigare attraverso il sottomen` u Configure Panel del men` u K, per Add, Button, Graphics, Blender. Per aggiungere un’icona sul Desktop per Blender, si apre Konquerer (lo si trova sul Pannello per default, o nel sottomen` u System del men` u K) e si naviga per l’icona del programma dove lo si `e scompattato. Click e si tiene premuto sull’icona del programma, e la si trascina da Konquerer in uno spazio vuoto sul proprio Desktop. Verr`a richiesto Copy Here, Move Here o Link Here, si sceglie Link Here.
Per aggiungere un’icona per Blender in GNOME 1. Si seleziona Edit menus dal sottomen` u Panel del men` u GNOME. 2. Si seleziona il sottomen` u Graphics, e click sul pulsante New Item. 3. Nella parte destra, si riempiono i campi Name:, Comment: e Command:. Si riempie il campo Name: col nome del programma, per esempio Blender. Lo si pu`o chiamare come si vuole, questo `e quello che apparir`a nel men` u, ma non riguarda
2.5. FREEBSD
27
il funzionamento del programma. Si riempie il campo Comment: con un commento descrittivo. Questo `e quello che apparir`a come tooltips. Si riempie il campo Command: col path completo del programma blenderpublisher, per esempio, /home/user/blender-publisher-#.##-linux-glibc#.#.#-ARCH/blender 4. Click sul pulsante No Icon per scegliere un’icona. Ci pu`o essere o meno un’icona per Blender nella locazione di default. Se ne pu`o creare una, o guardare le icone che vengono con KDE. Questa dovrebbe essere /opt/kde/share/icons/hicolor/48x48/apps/blender.png . Se la directory di installazione `e diversa, la si pu`o cercare in un Terminale o una Console col comando: find / -name blender.png -print 5. Click sul pulsante Save e si chiude il Men` u Editor. Per aggiungere un’icona al Pannello, click destro su un’area vuota del Pannello, quindi si seleziona Programs, Graphics, Blender. In alternativa, click sul men` u GNOME, quindi si seleziona Panel, Add to panel, Launcher from menu, Graphics, Blender. Per aggiungere un’icona al Desktop per Blender, si apre Nautilus (doppio click sull’icona Home nell’angolo in alto a sinistra del proprio Desktop, o click sul men` u GNOME, quindi Programs,Applications, Nautilus). Si naviga per la cartella che contiene l’icona del programma blenderpublisher. Click destro sull’icona, e la si trascina sul Desktop. Un men` u chieder` a di Copy Here, Move Here, Link Here o Cancel. Si seleziona Link Here.
2.5 2.5.1
FreeBSD Installazione
Si scarica il file blender-2.3#-freebsd-#.#-i386.tar.gz dalla sezione downloads del sito Web di Blender. Qui 2.3# `e la versione di Blender, #.# `e la versione di FreeBSD e i386 `e l’architettura della macchina. Per avviare Blender basta aprire una shell ed eseguire ./blender , ovviamente quando gira X.
2.6 2.6.1
Irix Installazione
Si scarica il file blender-2.3#-irix-6.5-mips.tar.gz dalla sezione downloads del sito Web di Blender. Qui 2.3# `e la versione di Blender, 6.5 `e la versione di Irix e mips `e l’architettura della macchina. Per avviare Blender basta aprire una shell ed eseguire ./blender , ovviamente quando gira X. Blender `e stato originariamente sviluppato per la piattaforma IRIX, ma attualmente non `e mantenuta in modo attivo per tutte le versioni delle workstation IRIX. Per qualche workstations sono stati riportati dei problemi di prestazioni.
28
2.7 2.7.1
CAPITOLO 2. INSTALLAZIONE
Solaris Installazione
Si scarica il file blender-2.3#-solaris-2.8-sparc.tar.gz dalla sezione downloads del sito Web di Blender. Qui 2.3# `e la versione di Blender, 2.8 `e la versione di Solaris e sparc `e l’architettura della macchina. Attualmente non sono disponibili ulteriori istruzioni per Sun Solaris. Si prega di usare i forum del sito web di Blender per un supporto.
Capitolo 3
Compilazione di Blender dal sorgente Questo documento descrive gli strumenti necessari per compilare Blender dai sorgenti, sia da CVS che da un pacchetto sorgente. La compilazione da CVS richiede l’uso di pi` u strumenti. Mentre questo pu` o essere un po’ pi` u fastidioso che costruire da un pacchetto sorgente, pu` o essere necessario per alcune persone. Per esempio, quando si vuol compilare Blender per una piattaforma non supportata o quando si vogliono implementare delle nuove funzionalit` a. La versione di questo documento `e molto in anticipo. Questo vuol dire che `e incompleto e che qualche procedura o qualche concetto possono non essere corretti per il proprio sistema Si prega ti ricordarsi ci` o durante la lettura. Si consideri anche che Blender `e un prodotto complesso per cui si richieder`a di creare l’ambiente giusto.
3.1
Prelevare il sorgente
Il seguente paragrafo descriver` a come e ove prelevare i sorgenti necessari per compilare Blender.
3.2
Prelevare l’ultimo pacchetto sorgente stabile
I sorgenti sono disponibili sul CDROM di accompagnamento di questo libro. Si possono anche scaricare dal sito web http://www.blender3d.org/Download/?sub=Source
3.3
Prelevare gli ultimi sorgenti da CVS
CVS sta per Concurrent Versioning System (Sistema di Versioni Concorrenti). Esso `e uno strumento software di configurazione che tiene i vari file sorgenti in un magazzino [repository] centrale CVS consente agli sviluppatori di aggiornasi rapidamente con 29
30
CAPITOLO 3. COMPILAZIONE DI BLENDER DAL SORGENTE
l’ultimo stato del repository ed inviare le modifiche. Lo strumento tiene traccia delle modifiche per ciascuna versione di un file. Per avere lo stato corrente del repository, bisogna avere un username per accedere ai sorgenti. Questa caratteristica `e opzionale, ma in uno sviluppo opensource, `e quasi un’esigenza. Per inviare modifiche verso il repository, per` o, bisogna avere l’accesso da sviluppatore. Dato che questo documento descrive solo come prelevare i sorgenti nell’ultimo stato, la procedura di invio non viene descritta qui. Per avere i sorgenti dell’ultimo stato si usa: export CVSROOT = :pserver:[email protected]:/cvs01 ) cvs login password: ENTER cvs -z3 co blender Si prega di non usare un livello pi` u alto di compressione per accedere al server di Blender. Se si sta gi` a lavorando su un set di file ottenuti dal server, si pu`o usare il comando update per aggiornare i sorgenti allo stato attuale del repository. cd per l’albero del sorgente di Blender sul proprio sistema e si digita il seguente comando: cvs -z3 update .
3.4
Librerie esterne necessarie
Blender `e un pacchetto che usa tanti altri pacchetti esterni per espandere le sue funzionalit` a. Ciascuno di tali pacchetti ha, proprio come Blender, una storia di modifiche. Nessuna versione di tale pacchetto probabilmente avr`a pi` u funzionalit`a e meno problemi noti.Per sviluppatore `e eccitante lavorare con le ultime funzionalit`a disponibile dell’ultimo strumento uscito. Ad ogni modo, il numero di sviluppatori l`a fuori `e molto basso rispetto al numero di utenti cui non interessano le ultime funzionalit`a, tali utenti vogliono un’applicazione che funziona. Dato che Blender gira su pi` u piattaforme, tutte queste piattaforme hanno le stesse funzionalit`a minime disponibili in pacchetti esterni. La tabella seguente mostra i pacchetti necessari e la versione minima di tali pacchetti. Straordinariamente `e possibile che tali versioni minime vengano aumentate come richiesta per nuove funzionalit` a sia alta. Non tutte le librerie riguardano tutte le piattaforme. La seguente tabella d`a una panoramica sulle piattaforme attualmente supportate e le librerie richieste. Una ’X’ indica che la libreria `e necessaria, un ’-’ indica che non lo `e ed una ’O’ indica che `e opzionale.
3.5. STRUMENTI NECESSARI
3.5
31
Strumenti necessari
Avere le librerie necessarie installate ed i sorgenti di Blender scaricati sul sistema significa che si `e ora in grado di compilare Blender. L’intero processo di compilazione richiede che sia disponibile qualche strumento sul proprio sistema. La tabella seguente, mostra l’elenco degli strumenti con la versione minima. La terza colonna mostra se lo strumento `e richiesto solo per il CVS (’X’). Se lo strumento non `e richiesto per la compilazione dei sorgenti, appare un ’-’.
Python: Python non `e incluso in questa tabella sebbene venga usato per compilare Blender. Il motivo `e che Py
3.6
Compilare Blender
Ci sono due sistemi di compilazione usando i compilatori gcc o cc; normali Makefile, che provengono dal periodo in cui Blender era sviluppato per la NaN, e lo stile di configure automake/autoconf. Usando configure si sovrascrivono i Makefile della NaN, quindi se ne deve scegliere uno. Per Windows MSVC, Blender supporta l’uso dei file di progetto ed i workspace. I file che descrivono dettagliatamente le informazioni della compilazione sono localizzati nella directory principale di Blender: • INSTALL: informazione generale, link di download per le librerie • INSTALL.AUTO: uso degli script autoconf e configure • INSTALL.MAKE: uso dei normali makefile • INSTALL.MSVC: uso dei file di progetto Microsoft Visual C
3.7
Supporto tecnico
• portale: http://www.blender.org • panoramica: http://www.blender.org/docs/get involved.html • mailing list: http://www.blender.org/mailman/listinfo/bf-committers/ • bug tracker: http://projects.blender.org/tracker/?group id=9 • IRC: #blendercoders presso irc.freenode.net
32
CAPITOLO 3. COMPILAZIONE DI BLENDER DAL SORGENTE
Capitolo 4
L’Interfaccia Se si `e nuovi di Blender, si dovrebbe afferrare bene come si lavora con l’interfaccia utente prima di cominciare con la modellazione. I concetti che stanno dietro l’interfaccia di Blender non sono standard, e differiscono da altri pacchetti software 3D. Specialmente gli utenti Windows dovranno abituarsi al diverso modo con cui Blender gestisce i controlli, come le scelte dei pulsanti ed i movimenti del mouse. Ma questa differenza `e infatti uno dei maggiori punti di forza di Blender: una volta capito il modo lavorare con Blender, si trover` a che si pu` o lavorare molto velocemente e produttivamente. Inoltre, l’interfaccia di Blender `e cambiata molto nel passaggio dalla versione 2.28 alla versione 2.3, cosicch´e anche gli utenti esperti possono beneficiare di questo capitolo.
4.1
Il concetto di Interfaccia in Blender
L’interfaccia utente `e il mezzo per un’interazione a due vie tra l’utente ed il programma. L’utente comunica col programma tramite la tastiera ed il mouse; il programma d`a una risposta tramite lo schermo ed il suo sistema a finestre.
4.2
Tastiera e mouse
L’interfaccia di Blender utilizza un mouse a tre pulsanti ed una gran quantit`a di tasti attivi o scorciatoie [hotkeys] (per una discussione completa ed approfondita si faccia riferimento al Volume II). Se il mouse ha solo due pulsanti, `e possibile emulare il pulsante centrale del mouse (la Sezione Preferenze dell’utente e Temi descrive come fare). Si pu` o usare un mouse con la rotellina, ma non `e necessario, poich´e ci sono anche delle appropriate scorciatoie da tastiera. Questo manuale usa le seguenti convenzioni per descrivere l’input dell’utente: • I pulsanti del mouse sono chiamati LMB (pulsante sinistro [Left Mouse Button]), MMB (pulsante medio [Middle Mouse Button]) e RMB (pulsante destro [Right Mouse Button]). 33
34
CAPITOLO 4. L’INTERFACCIA • Se il mouse ha una rotellina, MMB indica il cliccare sulla rotellina come se fosse un pulsante, mentre MW indica la rotazione della rotellina. • Le lettere dei tasti attivi sono indicate accodando KEY alla lettera, cio`e con GKEY ci si riferisce alla lettera g della tastiera. I tasti possono essere combinati con i modificatori SHIFT , CTRL e/o ALT . Per i tasti modificatori viene generalmente omesso il suffisso KEYKEY , per esempio CTRL-W o SHIFT-ALT-A . • Da NUM0 a NUM9 , NUM+ e cos`ı via ci si riferisce ai tasti sul tastierino numerico. NumLock dovrebbe generalmente essere attivato. • Agli altri tasti ci si riferisce coi loro nomi, come per ESC , TAB , da F1 a F12 . • Altri tasti speciali degni di nota sono quelli freccia, FRECCIASU , FRECCIAGIU e cos`ı via.
Dato che Blender fa un uso esteso sia del mouse sia della tastiera, si `e sviluppata una regola d’oro tra gli utenti di Blender: tieni una mano sul mouse e l’altra sulla tastiera! Se si usa normalmente una tastiera molto diversa dalla tastiera inglese o americana, si dovrebbe pensare seriamente a sostituirla con una inglese o americana quando si lavora con Blender. I tasti pi` u frequentemente usati, sono raggruppati in modo da essere raggiungibili con la mano sinistra in posizione standard (il dito indice su FKEY ) sulla tastiera inglese. Ci` o presuppone che si usi il mouse con la destra.
4.3
Il sistema a finestra
Ora `e tempo di avviare Blender e cominciare a provare. La scena di default di Blender mostra lo schermo che si dovrebbe avere all’avvio di Blender (eccetto il testo aggiunto e le frecce). Di norma questo `e suddiviso in tre finestre: il men` u principale in alto, la grande Finestra 3D e la Finestra dei Pulsanti (o Pulsantiera) in basso. La maggior parte delle finestre hanno una testata [ header ] (la striscia su fondo grigio chiaro contenente i pulsanti icona - per tale ragione ci si riferisce alla testata come alla Barra degli strumenti [ ToolBar ] della finestra); se presente, la testata pu` o essere posizionata in cima (come nella pulsantiera) o in basso (come nella Finestra 3D) nell’area di una finestra. Spostando il mouse su una finestra, si nota che la testata cambia in un grigio pi` u chiaro. Questo annuncia che essa ha il focus; tutti i tasti attivi che si premono influiranno sul contenuto di tale finestra. Si pu` o facilmente personalizzare il sistema a finestre di Blender per seguire le proprie necessit` a e desideri. Si pu` o creare una nuova finestra dividendone a met`a una esistente. Questo si fa ponendo il focus sulla finestra che si vuol dividere (si sposta il mouse in essa), cliccando sul bordo con MMB o RMB , e selezionando Split Area ( Il men` u Split per creare nuove finestre ). Ora si pu`o regolare la posizione del nuovo bordo cliccando con LMB , o cancellare l’operazione premendo ESC . La nuova finestra inizier`a come clone della finestra suddivisa, ma pu`o in seguito essere impostata ad un tipo diverso, o per mostrare la scena da un altro punto di vista.
4.4. TIPI DI FINESTRE
35
Figura 4.1: La scena di default di Blender. dimensionare ciascuna finestra trascinandone un bordo con LMB . Per ridurre il numero di finestre, si clicca su un bordo tra due finestre con MMB o RMB e si sceglie Join Areas . La finestra risultante riceve le propriet`a della finestra che possedeva in precedenza quella col focus. Per stabilire la posizione di una testata si clicca con RMB sulla testata e si sceglie Top o Bottom . Si pu` o anche nascondere la testata scegliendo No Header , ma questo `e consigliabile solo se si conoscono tutti i tasti attivi pertinenti. Si pu`o di nuovo mostrare una testata nascosta cliccando sul bordo della finestra con MMB o RMB e selezionando Add Header .
4.4
Tipi di finestre
36
CAPITOLO 4. L’INTERFACCIA
Ogni cornice di finestra pu`o contenere diversi tipi e gruppi di informazioni, secondo la cosa su cui si sta lavorando. Questi possono includere modelli 3D, animazioni, materiali della superficie, script Python e cos`ı via. Si pu`o selezionare il tipo di ciascuna finestra cliccando sul pulsante pi` u a sinistra della propria teFigura 4.2: stata con LMB ( Il men` u per la selezione del tipo di finestra Il men` u ). Split per creare Saranno spiegate le funzioni e l’uso dei rispettivi tipi di finestre nel senuove guito di questo libro. Per adesso si ha bisogno solo di ci`o che rifinestre guarda i tre tipi di finestre gi`a forniti nella scena di default di Blender: Viewport o Inquadratura 3D Finestra dei Pulsanti o Pulsantiera Preferenze dell’utente (Men` u principale) Ci sono diverse novit`a in Blender 2.30. Prima di tutto le testate [headers] delle finestre tendono ad essere molto pi` u pulite, meno zeppe di pulsanti, ed i men` u ora sono presenti in molte testate.
Figura 4.3: Il men` u per la selezione del tipo di finestra.
La maggior parte delle testate, immediatamente dopo questo primo pulsante Men` u Tipo di Finestra [Window Type] espone una serie di men` u; questa `e una delle principali nuove caratteristiche dell’interfaccia 2.30. I men` u ora consentono di accedere direttamente a molte regolazioni e comandi che precedentemente erano accessibili solo con tasti scorciatoia o arcani pulsanti. I men` u possono essere nascosti o essere visibili tramite il pulsante triangolare accanto ad essi.
I men` u non sono solo sensibili alla finestra (essi cambiano col tipo di finestra) ma sono sensibili anche al contesto (cambiano con l’oggetto selezionato) in modo da essere sempre molto compatti, mostrando solo le azioni che possono veramente essere eseguite. Tutte le voci di men` u mostrano il tasto attivo pertinente, se c’`e. Il flusso di lavoro di Blender d` a il meglio quando si usano i tasti attivi. Pertanto il resto di questo Libro presenter` a per lo pi` u i tasti attivi, invece che le voci dei Men` u. I men` u sono comunque preziosi dato che danno la pi` u completa panoramica possibile di tutti gli strumenti e comandi che Blender offre. Una caratteristica delle finestre che talvolta risulta comoda per una modifica precisa, `e l’ingrandimento a tutto schermo: se si usa la voce di men` u appropriata View>>Maximize Window o il tasto attivo CTRL-FRECCIAGIU , la finestra col focus sar`a ampliata fino a riempire l’intero schermo. Per tornare alle dimensioni normali si usa ancora il pulsante
4.5. CONTESTI, PANNELLI E PULSANTI
37
View>>Tile Window o CTRL-FRECCIASU .
4.5
Contesti, Pannelli e Pulsanti
I pulsanti di Blender sono molto pi` u avvincenti di quelli nella maggioranza delle altre interfacce utenti, ed essi sono diventati pi` u belli nella 2.30. Questo `e dovuto per lo pi` u al fatto che sono basati su vettori e disegnati in OpenGL, cosa che li rende eleganti e ridimensionabili. I pulsanti sono raggruppati principalmente nella Pulsantiera. Con Blender 2.3 la pulsantiera mostra sei contesti principali, che possono essere scelti tramite la prima riga di icone nella testata ( Contesti e Sub-Contesti ), ciascuno dei quali pu`o essere suddiviso in un numero variabile di sub-contesti, che si possono scegliere con la seconda riga di icone nella testata ( Contesti e Sub-Contesti ):
• Logic - scorciatoia F4 • Script - nessuna scorciatoia • Shading - scorciatoia F5 – Lamp - nessuna scorciatoia – Material - nessuna scorciatoia – Texture - scorciatoia F6 – Radio - nessuna scorciatoia – World - scorciatoia F8 • Object - scorciatoia F7 • Editing - scorciatoia F9 • Scene - scorciatoia F10 – Rendering - nessuna scorciatoia – Anim/Playback - nessuna scorciatoia – Sound - nessuna scorciatoia Una volta che `e stato selezionato dall’utente il Contesto, il sub-contesto `e solitamente determinato da Blender sulla base dell’Oggetto attivo. Per esempio, col contesto Shading, se `e selezionato un Oggetto Lampada allora il sub-contesto mostra i Pulsanti della Lampada, Se `e selezionata una mesh o un altro oggetto visualizzabile nel rendering, allora `e attivo il sub-contesto Material, e se `e selezionata una Telecamera il sub-contesto attivo `e World.
38
CAPITOLO 4. L’INTERFACCIA
La novit`a pi` u notevole nell’interfaccia `e probabilmente la presenza di Pannelli per raggruppare logicamente i pulsanti. Ciascun pannello Figura 4.4: Contesti e Sub-Contesti ha le stesse dimensioni. Essi possono essere spostati nella Pulsantiera con LMB cliccando e trascinandone la loro testata [header]. I pannelli possono essere allineati con RMB sulla Pulsantiera e scegliendo la disposizione [layout] desiderata dal Men` u che appare ( Il men` u della Pulsantiera ). MW fa scorrere i Pannelli nella loro direzione di allineamento, CTRL-MW e CTRL-MMB ingrandiscono e riducono i pannelli. I singoli pannelli possono essere richiusi/espansi con LMB cliccando il triangolo sulla sinistra della loro testata. I Pannelli particolarmente complessi sono organizzati in Fincature [Tab]. Cliccando LMB su un Tab nella testata del Pannello cambiano i pulsanti mostrati ( Pannello con Fincature [Tabs] ). I Tab possono essere estratti dal pannello per formare pannelli indipendenti cliccando LMB sulle loro testate e trascinandoli via. Allo stesso modo Pannelli separati possono essere riuniti in un singolo pannello con Tab rilasciando la testata di un Pannello in un altro. Figura 4.5: Il men` u della Pulsantiera.
Come ultimo argomento nella catena dell’interfaccia, ci sono diversi tipi di pulsanti disposti nei Tab del Pannello:
• Pulsanti Operazione. • Pulsante Selettore [Toggle button]. Figura 4.6: Pannello con Fincature [Tabs].
Figura 4.7: Un Pulsanteoperazione • Pulsanti Radio. • Pulsanti Numerici.
Alcuni pulsanti possono avere anche un terzo stato che `e identificato dal testo che diventa giallo (il pulsante Ref nella figura I pulsanti selettori ). Solitamente il terzo stato significa negativo, ed il normale stato on significa positivo.
4.6. TOOLBOX (SCATOLA DEGLI ATTREZZI)
Figura 4.8: selettori
39
I pulsanti
• Pulsanti Men` u.
Oggetti scollegati: I dati scollegati non vengono persi fin quando non si esce da Blender. Q
4.6 Figura 4.9: I pulsanti numerici
Toolbox (Scatola degli attrezzi)
Premendo SPAZIO nell’Inquadratura [Viewport] 3D, o tenendo premuto LMB o RMB col mouse fermo per pi` u di mezzo secondo si apre la scatola degli attrezzi [Toolbox]. Questa contiene sei contesti principali, organizzati in due file, ciascuno dei quali apre dei men` u e sottomen` u. Tre di questi contesti aprono gli stessi tre men` u presenti della testata della Viewport 3D, degli altri tre, Add permette di aggiungere nuovi Oggetti alla scena mentre Edit e Transform mostrano tutte le possibili operazioni sugli oggetti selezionati ( La Toolbox ).
Figura 4.10: I pulsanti per collegare il Datablock
4.7
Schermate
La flessibilit`a di Blender con le finestre consente di creare ambienti di lavoro personalizzati per diversi compiti come la modellazione, l’animazione e lo scripting. Spesso `e utile spostarsi rapidamente tra i diversi ambienti all’interno dello stesso file. Ci` o `e possibile creando diversi schermi: Tutte le modifiche alle finestre sono descritte nella Sezione Il sistema a finestra e nella Sezione Tipi di finestre e vengono salvate all’interno di uno schermo, cos`ı se si cambiano le finestre in uno schermo, gli altri schermi restano invariati. Ma la scena su cui si sta lavorando resta la stessa in tutti gli schermi. Con Blender vengono forniti tre schermi di default; essi sono disponibili tramite i pulsanti Men` u SCR nella testata della Finestra delle Preferenze Utente mostrata nella figura ( Selettori dello Schermo e della Scena ). Per spostarsi nello schermo alfabeticamente successivo, si preme CTRL-FRECCIADESTRA ; per spostarsi nello schermo alfabeticamente precedente, si preme CTRL-FRECCIASINISTRA .
40
CAPITOLO 4. L’INTERFACCIA
Figura 4.11: La Toolbox
4.8
Scene
Figura 4.12: Selettori dello Schermo e della Scena
` possibile anche avere diverse scene alE l’interno dello stesso file Blender. Le scene possono usare oggetti di altre scene o essere completamente separate dalle altre. Si possono selezionare e creare scene col Pulsante Men` u SCE nella testata della Finestra delle Preferenze Utente ( Selettori dello Schermo e della Scena ).
Quando si crea una nuova scena, si possono effettuare quattro scelte per controllarne il contenuto:
• Empty crea una scena vuota. • Link Objects crea la nuova scena con gli stessi contenuti della scena attualmente selezionata. Le modifiche in una scena saranno effettuate anche nell’altra. • Link ObData crea la nuova scena in base a quella attualmente selezionata, con gli stessi collegamenti alle mesh, ai materiali e cos`ı via. Questo significa che si possono cambiare le posizioni degli oggetti e le relative propriet`a, ma le modifiche
4.8. SCENE
41
alle mesh, ai materiali, e cos`ı via si ripercuoteranno anche nelle altre scene senza dover fare delle copie ad utenza singola. • Full Copy crea una scena totalmente indipendente con la copia del contenuto della scena attualmente selezionata.
42
CAPITOLO 4. L’INTERFACCIA
Capitolo 5
Navigare nello Spazio 3D Blender consente di lavorare nello spazio tri-dimensionale, ma gli schermi dei monitor sono solo bi-dimensionali. Per essere in grado di lavorare in tre dimensioni, si deve essere in grado di cambiare il proprio punto di vista cos`ı come la direzione visiva della scena. Questo `e possibile in tutte le Inquadrature [Viewports] 3D. Anche se si descriveranno le Finestre di Viewport 3D, la maggior parte delle finestre non-3D una serie equivalente di funzioni, per esempio `e possibile anche traslare ed ingrandire una Pulsantiera ed i suoi Pannelli.
5.1
La direzione della vista (rotazione)
Blender normalmente fornisce tre direzioni di vista: Laterale, Frontale e dall’Alto. Giacch´e Blender usa un sistema di coordinate ’destrorso’ con l’asse Z che punta verso l’alto, laterale corrisponde ad osservare lungo l’asse X, in direzione negativa, frontale lungo l’asse Y, e dall’Alto lungo l’asse Z, in direzione negativa. Si pu`o selezionare la direzione della vista per una Inquadratura [Viewport] 3D con le voci del Men` u View ( Il men` u di visualizzazione di una Inquadratura [Viewport] 3D ) o premendo i tasti scorciatoia NUM3 per laterale, NUM1 per frontale e NUM7 per dall’alto. Tasti attivi o scorciatoie [Hotkeys]: Si ricordi che la maggior parte dei tasti attivi riguardano la finestra che ha Oltre a queste tre direzioni di default, la visuale pu`o essere ruotata di qualsiasi angolo si desidera. Si clicca e si trascina MMB sull’area della Viewport: iniziando dal centro della finestra e muovendo sopra e sotto o destra e sinistra, la vista ruota attorno al centro della finestra. Iniziando dal bordo e senza spostarsi verso il centro, si pu`o ruotare attorno al proprio asse visivo. Si provino queste funzioni fino ad acquisire una certa dimestichezza nell’utilizzo. Per cambiare l’angolo visivo, ad intervalli discreti, si usano NUM8 e NUM2 , che corrispondono al trascinamento verticale di MMB . O NUM4 e NUM6 , che corrispondono al trascinamento orizzontale di MMB .
5.2
Traslare ed Ingrandire la Vista 43
44
CAPITOLO 5. NAVIGARE NELLO SPAZIO 3D Per traslare la vista, si tiene premuto SHIFT e si trascina MMB nella Viewport 3D. Per intervalli discreti, si usano i tasti attivi CTRL-NUM8 , CTRL-NUM2 , CTRL-NUM4 e CTRL-NUM6 come per la rotazione. Si pu`o ingrandire o rimpicciolire tenendo premuto CTRL e trascinando MMB . Le scorciatoie sono NUM+ e NUM- . Il Sub-men` u View>>Viewport Navigation contiene anche queste funzioni.
Rotellina del mouse: Se si ha un mouse con la rotellina, s Figura 5.1: Il men` u di visualizzazione di una Inquadratura [Viewport] 3D.
Se ci si dovesse perdere...: Se ci si dovesse perdere nello s
5.3 Prospettiva e Proiezioni Ortogonali Ogni Inquadratura [Viewport] 3D supporta due diversi tipi di proiezione. Queste sono descritte nella figura Proiezione ortogonale (a sinistra) e prospettica (a destra) .
Figura 5.2: Proiezione ortogonale (a sinistra) e prospettica (a destra). in quanto gli oggetti distanti appaiono pi` u piccoli. La proiezione ortogonale spesso sem-
Il nostro occhio `e usato per la visione prospettica
` DI DISEGNO 5.4. MODALITA
45
bra essere un po’ strana all’inizio, giacch´e gli oggetti restano della stessa dimensione indipendentemente dalla distanza: `e come vedere la scena da un punto infinitamente distante. Tuttavia, la vista ortogonale `e molto utile (essa `e il default in Blender e nella maggior parte delle altre applicazioni 3D), poich´e fornisce una percezione pi` u tecnica della scena, rendendola pi` u facile da disegnare e per valutare le proporzioni.
Prospettica ed Ortogonale: La vista prospettica viene geometricamente costruita in questo modo: si ha una sce Per cambiare la proiezione di un Viewport 3D, si scelgono le voci di men` u View>>Orthographic o View>>Perspective ( Il men` u di visualizzazione di una Inquadratura [Viewport] 3D ). L’hotkey NUM5 passa da un modo all’altro.
Proiezione telecamera: Si noti che il cambiamento della proiezione di una Viewport 3D non influisce sul modo i La voce di Men` u View>>Camera imposta la Viewport 3D in Modo Telecamera (Hotkey: NUM0 ). La scena viene quindi mostrata cos`ı come apparir`a nel rendering ( Esempio di vista telecamera ): l’immagine del rendering conterr`a tutto ci`o che `e compreso dal rettangolo esterno tratteggiato. In questa vista `e possibile ingrandire o rimpicciolire, ma per cambiare il punto di vista, si deve spostare o ruotare la telecamera.
5.4
Modalit` a di Disegno A seconda della velocit`a del proprio computer, della complessit`a della propria Scena e del tipo di lavoro che si sta facendo, si pu`o passare tra le diverse modalit`a di disegno: • Textured - Cerca di disegnare tutto il pi` u completamente possibile, sebbene non `e ancora un’alternativa al rendering. Si noti che se non si ha illuminazione nella propria scena, tutto quanto rester`a nero.
Figura 5.3: Esempio di vista telecamera.
• Shaded [Ombreggiata] - Disegna le superfici solide includendo il calcolo dell’illuminazione. Come nel disegno textured, non si vede
niente senza luci. • Solid - Le superfici vengono disegnate come solidi, ma la visualizzazione funziona anche senza luci. • Wireframe [a Fil-di-ferro] - Gli oggetti sono costituiti da linee che
46
CAPITOLO 5. NAVIGARE NELLO SPAZIO 3D ne rendono riconoscibili le sagome. Questa `e la modalit`a di disegno di default.
Bounding Box [Inscatolata] - Gli oggetti non vengono affatto disegnati; al loro posto appaiono solo delle scatole rettangolari che corrispondono alla forma ed alla dimensione di ciascun oggetto. La modalit` a di disegno pu` o essere selezionata col Pulsante Men` u appropriato nella testata ( Il pulsante della modalit` a di disegno di un’Inquadratura [Viewport] 3D ) o con i tasti attivi: ZKEY passa tra la visualizzazione a fil-di-ferro e quella solida, SHIFT-Z passa dalla visualizzazione a fil-di-ferro a quella ombreggiata.
5.5
Vista locale
Figura 5.4: Il pulsante della modalit` a di disegno di un’Inquadratura [Viewport] 3D.
Quando si `e nella vista locale, vengono mostrati solo gli oggetti selezionati, che possono essere modificati pi` u facilmente in scene complesse. Per entrare nella vista locale, si selezionano prima gli oggetti desiderati (si veda la la Sezione Selezionare oggetti ) e poi si seleziona la voce del Men` u View>>Local View ; si usa la voce di Men` u View>>Global View per tornare nella Vista Globale. (Figura 3-13). Il tasto attivo `e NUM/ , che alterna tra la Vista Locale e quella Globale.
5.6
Il sistema dei Livelli
Le scene 3D spesso diventano esponenzialmente pi` u confuse al crescere della complessit` a. Per tenerle sotto controllo, gli oggetti possono essere raggruppati in livelli (o strati) [layers], in modo che solo i livelli selezionati siano visibili in un dato momento. I livelli 3D sono diversi dai livelli conosciuti dalle applicazioni grafiche 2D: essi non influiscono sull’ordine di disegno (degli oggetti) ed esistono quindi (eccetto che per alcune funzioni speciali) unicamente per fornire al modellatore una migliore panoramica. Blender `e dotato di 20 livelli; si possono scegliere quali debbano essere visibili tramite i pulsantini senza etichetta nella testata ( I Pulsanti dei livelli di una Viewport 3D ). Per selezionare solo un livello, si clicca sul pulsante appropriato con LMB ; per selezionarne pi` u di uno, si tiene premuto SHIFT mentre si clicca. Per selezionare i livelli tramite la tastiera, si preme da 1KEY a 0KEY (sull’area principale della tastiera) per i livelli dall’1 al 10 (la riga in alto dei pulsanti), e da ALT-1 ad ALT-0 per i livelli dall’11 al 20 (la riga in basso). Il tasto SHIFT per le selezioni multiple funziona anche per questi. Normalmente, il pulsante col catenaccio subito a destra dei pulsanti dei livelli, risulta premuto; questo vuol dire che le modifiche ai livelli
5.6. IL SISTEMA DEI LIVELLI
47
visibili riguardano tutte le Viewports 3D. Per selezionare solo certi livelli in una finestra, si deve prima deselezionare il catenaccio. Per spostare gli oggetti selezionati in un livello diverso, si preme MKEY , si seleziona il livello voluto men` u che appare, quindi si preme il pulsante Ok.
Figura 5.5: I Pulsanti dei livelli di una Viewport 3D.
48
CAPITOLO 5. NAVIGARE NELLO SPAZIO 3D
Capitolo 6
Le funzioni vitali 6.1
Caricamento di files
Blender usa il formato di files .blend per registrarvi qualsiasi cosa: Oggetti, scene, texture, ed anche tutte le impostazioni dell’interfaccia a finestra. Per caricare un file Blender dal disco, si preme F1 . La finestra attiva quindi si trasforma temporaneamente nella Finestra di Selezione del File come mostrato nella figura La Finestra di Selezione del File - caricamento . La barra sulla sinistra pu`o essere trascinata con LMB per lo scorrimento. Per caricare un file, lo si seleziona con LMB e si preme INVIO , o semplicemente click su di esso con MMB . La text box in alto mostra il percorso della directory corrente, quella sotto contiene il nome del file selezionato. Col pulsante P ( PKEY ) ci si sposta nella directory genitore ed il pulsante col trattino contiene un elenco dei percorsi usati recentemente. Sui sistemi operativi Windows, quest’ultima contiene anche l’elenco di tutti i drive (C:, D: ecc). Figura 6.1: La Finestra di Selezione del File - caricamento.
6.2
Nota: Blender ritiene che si sappia cosa fare! Quand
Salvataggio dei file
Il salvataggio dei file `e simile al caricamento dei file: Quando si preme F2 , la finestra attiva si trasforma momentaneamente in una Finestra di Selezione del File, come mo49
50
CAPITOLO 6. LE FUNZIONI VITALI
strato nella figura La Finestra di Selezione del File - salvataggio . Si clicca sull’edit box per immettere un nome di file. Se esso non finisce con .blend, l’estensione viene accodata automaticamente. Quindi si preme INVIO per scrivere il file. Se esiste gi`a un file con lo stesso nome, si dovr` a confermare che si vuol salvare il file alla richiesta di sovrascrittura. La dialog del salvataggio contiene una piccola funzionalit`a per aiutare a creare versioni multiple del proprio lavoro: Premendo NUM+ o NUM- si incrementa o decrementa un numero contenuto nel nome del file. Per salvare semplicemente sul file attualmente caricato e saltare la dialog, si pu`o premere CTRL-W invece che F2 e confermare quando richiesto. Figura 6.2: La Finestra di Selezione del File - salvataggio.
6.3
Il Rendering
Questa sezione fornir`a solo una rapida panoramica di quello di cui si ha bisogno per effettuare il rendering della propria scena. Si trover` a una descrizione dettagliata di tutte le opzioni nel Capitolo 17. Le impostazioni del rendering sono nel Contesto Scene e nel sub-contesto Rendering Buttons ( Le opzioni del Rendering nella Pulsantiera del Rendering ) raggiungibili cliccando su , o premendo F10 .
Figura 6.3: Le opzioni del Rendering nella Pulsantiera del Rendering. nello Format . La dimensione (numero di pixels orizzontalmente e verticalmente) ed il formato del file per l’immagine da creare vengono scelti qui. Si pu`o indicare la dimensione usando i pulsanti SizeX e SizeY . Cliccando sul rettangolo di selezione sotto (nella
6.4. PREFERENZE DELL’UTENTE E TEMI
51
Figura Le opzioni del Rendering nella Pulsantiera del Rendering , `e stato scelto Targa) si apre un men` u con tutti i formati di uscita disponibili per le immagini e le animazioni. Per le immagini fisse, si pu` o scegliere, per esempio, Jpeg. Ora che sono state eseguite le impostazioni, si pu` o fare il rendering della scena pigiando sul pulsante RENDER nel Pannello Render o premendo F12 . A seconda della complessit`a della scena, ci`o richiede da pochi secondi a diversi minuti, e l’avanzamento appare in una finestra separata. Se la scena contiene un’animazione, viene effettuato il rendering solo del frame corrente. (Per effettuare il rendering dell’intera animazione, si veda la Sezione Rendering di Animazioni ). Se non si vede niente nella vista del rendering, ci si assicuri che la scena sia stata costruita in modo appropriato. C’`e l’illuminazione? La telecamera `e sistemata correttamente, puntando nella giusta direzione? Sono visibili tutti i livelli di cui si vuole effettuare il rendering?
Nota: L’immagine di un rendering non viene automaticamente salvata sul disco. Se si `e soddisfatti del renderin
Estensioni dei file: Blender non aggiunge automaticamente il tipo di estensione all’immagine dei file! Si deve es
6.4
Preferenze dell’utente e Temi
Blender ha poche opzioni che non vengono salvate assieme a ciascun file, ma applicate invece a tutti i files di un utente. Queste preferenze riguardano principalmente i dettagli di gestione dell’interfaccia utente, e le propriet`a del sistema come il mouse, i fonts e le lingue. Dato che le preferenze dell’utente sono raramente necessarie, esse sono abilmente nascoste dietro il men` u principale. Per renderle visibili, si abbassa il bordo della finestra del men` u (di solito il bordo pi` u alto nello schermo). Le impostazioni sono raggruppate in sette categorie che possono essere selezionate coi pulsanti violetti mostrati nella Figura La finestra delle preferenze utente .
Figura 6.4: La finestra delle preferenze utente. no autoesplicativi o mostrano un tool-tip d’aiuto se ci si sofferma sopra col mouse, non saranno descritti in dettaglio qui. Sar`a data, invece, solo una panoramica delle categorie delle preferenze: • View & Controls
52
CAPITOLO 6. LE FUNZIONI VITALI • Edit Methods • Language & Fonts • Themes • Auto Save • System & OpenGL • File Paths
6.5
Impostazione della scena di default
Non piace l’impostazione della finestra di default di Blender, o si vogliono specificare le impostazioni del rendering per ciascun nuovo progetto da iniziare, o si vuol salvare il proprio Tema? Nessun problema. Si pu`o usare qualsiasi file della scena come default quando si avvia Blender. Si renda la scena corrente quella di default premendo CTRLU . La scena quindi verr` a copiata nel file chiamato .B.blend nella home directory. Si pu`o cancellare il progetto su cui si sta lavorando e ripristinare la scena di default in qualsiasi momento premendo CTRL-X . Ma ci si rammenti di salvare prima le modifiche alla scena precedente!
Capitolo 7
La tua prima animazione in 30 + 30 minuti Parte I Questo capitolo ti guider` a passo passo attraverso l’animazione di un personaggio: un Omino di Pan di Zenzero. Saranno completamente descritte tutte le azioni, ma si supporr` a la lettura di tutto il Capitolo L’interfaccia , e che si siano apprese le convenzioni usate in tutto questo libro. Nei primi 30 minuti di questo tutorial costruiremo un uomo di pan di zenzero fermo . Quindi, nei successivi 30 minuti, lo forniremo di uno scheletro ed animeremo un ciclo di camminata.
7.1
Riscaldamento
Iniziamo.
1. Avvia Blender con un doppio click sulla sua icona o avvialo dalla linea di comando. Blender si aprir` a mostrando, dalla vista dall’alto, l’impostazione di default: una telecamera ed un piano. Il piano `e rosa, vuol dire che `e selezionato ( La finestra di Blender appena avviato ). Cancella il piano con XKEY e conferma cliccando sulla voce Erase Selected nella dialog che appare. Ora seleziona la telecamera con RMB e premi MKEY . Sotto il tuo mouse apparir`a un piccolo toolbox, come quello nella Figura Il toolbox per il controllo dei livelli [layer] , col primo pulsante premuto. Premi il pulsante pi` u a destra sulla riga in alto e poi il pulsante OK. Questo sposter` a la telecamera nel livello [layer] 10. Blender ti fornisce 20 layer per aiutarti ad organizzare il tuo lavoro. Puoi vedere quali layer sono attualmente visibili dal gruppo dei venti pulsanti nella toolbar della finestra 3D ( Controlli di visibilit` a del Layer ). Puoi cambiare il layer visibile con LMB ed alternare la visibilit`a con SHIFT-LMB .
53
54
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Figura 7.1: La finestra di Blender appena avviato.
Figura 7.2: Il toolbox per il controllo dei livelli [layer].
7.2
Costruzione del corpo
Spostati nella vista frontale con NUM1 ed aggiungi un cubo premendo SPAZIO e selezionando il men` u Add , sottomen` u Mesh , sotto-sottomen` u Cube . (Nel libro useremo SPAZIO >>ADD>>Mesh>>Cube per abbreviare questo tipo di azioni). Apparir`a un cubo ( Il nostro cubo in EditMode, tutti i vertici selezionati ). Il cubo appena aggiunto `e in Modo Edit , un modo in cui puoi spostare i singoli vertici che compongono la mesh. Per default, tutti i vertici risultano selezionati (evidenziati in giallo - i vertici non
7.2. COSTRUZIONE DEL CORPO
55
selezionati sono rosa).
Figura Controlli visibilit` a Layer.
7.3: di del Chiameremo il nostro uomo di Pan di Zenzero Gus. Il nostro primo compito `e quello di costruire il corpo di Gus lavorando sul nostro cubo in Modo Edit . Per vedere gli strumenti di Blender che useremo per fare ci`o, si preme il pulsante che ha un quadrato con i vertici gialli nella Finestra dei Pulsanti ( Il pulsante della Pulsantiera di Edit ), o si preme F9 .
Figura 7.4: Il nostro cubo in EditMode, tutti i vertici selezionati.
Si cerchi il pulsante Subdivide nel pannello Mesh Tools e lo si prema una volta ( La Pulsantiera di Edit per una Mesh ). Questo divider`a in dueciascun lato del cubo, creando nuovi vertici e nuove facce ( Il cubo, suddiviso
una sola volta ).
Figura 7.5: Il pulsante della Pulsantiera di Edit.
Figura 7.6: La Pulsantiera di Edit per una Mesh. Col cursore del mouse nella finestra 3D premi AKEY per deselezionare tutti gli elementi. I vertici diventeranno rosa. Ora premi BKEY ; il cursore si trasformer`a in una coppia di linee grigie ortogonali. Muovi il cursore sopra l’angolo in alto a sinistra del cubo, tieni premuto LMB , quindi trascina il mouse gi` u ed a destra in modo che il rettangolo grigio racchiuda tutti i vertici pi` u a sinistra. Ora lascia il LMB . Questa sequenza, con cui selezioni un gruppo di vertici in un rettangolo, `e riassunta nella Figura La sequenza della selezione Delimitata [Box] per un gruppo di vertici .
56
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Selezione Delimitata [Box]: In molte occasioni si possono avere dei vertici nasco Ora premi XKEY e, dal men` u che appare, seleziona Vertices per cancellare i vertici selezionati ( Il men` u pop-up della cancellazione ( XKEY ) ).
Figura 7.7: Il cubo, suddiviso una sola volta.
Figura 7.8: La sequenza della selezione Delimitata [Box] per un gruppo di vertici.
Ripristino [Undo]: Introdotto nella versione 2.3, Blender ha la possibilit` a di ripristina Ora, usando la sequenza appena appresa, con la Selezione Delimitata, seleziona i due vertici pi` u in alto a destra ( Estrusione del braccio in due passi ). Premi EKEY e click sulla voce Extrude del men` u per estruderli. Questo creer`a nuovi vertici e nuove facce che si potranno spostare e che seguiranno il mouse. Spostali a destra. Per costringere ad un movimento orizzontale o verticale, clicca MMB mentre ci si sposta. Puoi tornare al movimento svincolato, cliccando ancora MMB . Alternativamente puoi usare XKEY per vincolare il movimento Figura 7.9: Il men` u all’asse x, YKEY per l’asse y, e cos`ı via. Creiamo le braccia pop-up della cancella- e le gambe di Gus. Muovi questi nuovi vertici un quadrato e mezzo a destra, quindi click con LMB per confermare la pozione (XKEY). sizione. Estrudi ancora con EKEY e sposta i nuovi vertici di un altro mezzo quadrato a destra. La Figura Estrusione del braccio in due passi illustra questa sequenza. Gus dovrebbe ora avere un bracFigura 7.10: Estrusione del braccio in due passi. cio sinistro (lui guarda noi). Costruiremo la gamba sinistra allo stesso modo estrudendo i vertici in basso. Prova ad ottenere qualcosa come quello mostrato nella Figura Met` a corpo .
7.2. COSTRUZIONE DEL CORPO
57
Nota: Viene usato lo strumento di Estrusione tre volte per formare la gamba. Non ci si preoccupa dei gomiti, m
Vertici coincidenti: Se estrudi, e durante il processo dello spostamento cambi id
Nota: Il CD contiene un file .blend con questo esempio, salvato durante varie fa Ora `e il momento di creare l’altra met`a di Gus: • Seleziona tutti i vertici ( AKEY ) e scegli la voce 3D Cursor nel Men` u Rotation/Scaling Pivot nell’intestazione [header] della Finestra 3D. ( Impostazione del centro di riferimento nel cursore ).
Figura 7.11: Met` a corpo.
• Premi SHIFT-D per duplicare tutti i vertici, i lati e le facce selezionate. I nuovi oggetti sono in Modo Traslazione [Grab], premi ESC per uscire da questa modalit`a senza spostare i vertici.
• Premi MKEY per aprire il Men` u Mirror Axis . Scegli Global X . Il risultato appare nella Figura Ribalta la copia della met` a del corpo per ottenere un corpo intero .
Figura 7.12: La Pulsantiera di Edit.
Figura 7.13: Impostazione del centro di riferimento nel cursore. • Deseleziona tutto e riseleziona tutto premendo AKEY due volte, quindi elimina i vertici coincidenti premendo il pulsante Remove doubles ( La Pulsantiera di Edit’). Apparir` a un box, notificandoti che sono stati eliminati otto vertici.
58
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Centro di riferimento: In Blender, dimensionamento, rotazione ed altr
Spostare il cursore: Per piazzare il cursore in uno specifico punto della Gus ha bisogno di una testa:
Figura 7.14: Ribalta la copia della met`a del corpo per ottenere un corpo intero.
• Sposta il cursore in modo che sia esattamente un quadrato della griglia sopra il corpo di Gus ( La sequenza per aggiungere la testa , a sinistra). Aggiungi qui un nuovo cubo ( SPAZIO >>ADD>>Mesh>>Cube).
• Premi GKEY per andare in modalit`a Grab e sposta gi` u i vertici appena creati, limitando il movimento con MMB , per circa un terzo di una unit`a di griglia ( La sequenza per aggiungere la testa , a destra).
• Questo produce appena una figura grezza. Per renderla pi` u arrotondata cerca il pulsante-commutatore [Toggle] SubSurf ( La Pulsantiera di Edit ) nel pannello Mesh ed attivalo. Accertati che entrambi i due pulsanti numerici, sotto, siano impostati a 2.
Nota: Il SubSurfacin
•
Figura 7.15: La sequenza per aggiungere la testa.
cambia dall’attuale modalit`a di default fil-di-ferro [Wireframe] a Solido con ZKEY per avere una visione di Gus. Esso dovrebbe apparire come nella Figura L’impostazione per l’arrotondamento di Gus a sinistra.
Esci dal Modo Edit ( TAB ) e
7.2. COSTRUZIONE DEL CORPO
59
Figura 7.16: La Pulsantiera di Edit. • Per far apparire Gus pi` u liscio, si preme il pulsante SetSmooth nella Figura La Pulsantiera di Edit . Gus ora apparir`a liscio ma con delle buffe linee nere al centro (Figura 4-17, al centro). Queste linee appaiono perch´e la mesh pi` u precisa ottenuta col SubSurf viene calcolata usando le informazioni della mesh grezza riguardo le direzioni delle normali, che possono non essere coerenti, vale a dire che, se `e stata fatta un’estrusione o applicato un ribaltamento, alcune delle normali possono puntare verso l’esterno, altre verso l’interno. Per azzerare le normali, si torna in modo edit ( TAB ), si selezionano tutti i vertici ( AKEY ), e si preme CTRL-N . Click con LMB sul rettangolo Recalc normals outside che appare. Ora Gus dovrebbe essere bello liscio, come mostrato nella Figura L’impostazione per l’arrotondamento di Gus , a destra. Premi MMB e trascina il mouse per vedere Gus da tutte le angolazioni. Oops, `e troppo spesso! Per rimediare, cambia in vista laterale NUM3 . Ora, entra in Modo Edit (se non lo sei gi` a), e torna in modalit` a fil-di-ferro [Wireframe] ( ZKEY ), e seleziona tutti i vertici con AKEY ( Assottigliare Gus col ridimensionamento vincolato , a sinistra).
Figura 7.17: L’impostazione per l’arrotondamento di Gus. Assottigliamo Gus: • Premi SKEY e comincia a spostare il mouse orizzontalmente. (Click su MMB per vincolare il ridimensionamento lungo solo un asse o premi YKEY per ottenere lo
60
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I stesso risultato). Se ora muovi il mouse verso Gus dovrebbe diventare pi` u sottile ma restare della stessa altezza. • I tre numeri sulla toolbar della Finestra 3D mostrano il fattore di scala. Dopo aver vincolato il dimensionamento, solo uno di questi numeri cambier`a. Si pigia e si tiene premuto CTRL . Ora il fattore di scala varier`a a passi discreti del valore di 0.1. Riduci Gus in modo che il fattore sia 0.2 e conferma le dimensioni cliccando con LMB . • Torna nella vista frontale e nella modalit`a Solida ( ZKEY ), quindi ruota la tua vista con MMB . Gus `e molto meglio ora!
7.3
Vediamo a cosa assomiglia Gus
Figura 7.18: Assottigliare Gus col ridimensionamento vincolato.
Siamo pronti per vedere il nostro primo rendering, ma prima, c’`e
un po’ di lavoro da fare. • SHIFT-LMB sul piccolo pulsante in alto a destra nei pulsanti di visibilit`a del layer nella toolbar della finestra 3D ( Rendere visibili sia il layer 1 che il 10 ) per rendere visibili sia il Layer 1 (il layer di Gus’) che il Layer 10 (il layer con la telecamera).
Nota: Ricorda che l’ultimo layer selezionato `e il layer attivo, quindi tutte le seguenti ag
Figura 7.19: Making both layer 1 and 10 visible.
• Seleziona la telecamera ( RMB ) e spostala nei pressi di (x=7, y=-10, z=7). Lo si fa premendo GKEY e trascinando la telecamera mentre si tiene CTRL premuto per spostarla a passi di 1 unit`a di griglia. Immissione di posizioni e rotazioni precise: Se preferisci immettere valori numerici per
7.3. VEDIAMO A COSA ASSOMIGLIA GUS
Figura 7.20: Il Pannello per l’immissione numerica della posizione/rotazione ecc. di un oggetto.
61
Per fare in modo che la telecamera punti verso Gus, si lascia la telecamera selezionata quindi si seleziona Gus con SHIFT-RMB . La telecamera dovrebbe diventare magenta e Gus rosa chiaro. Ora premi CTRLT e seleziona la voce Old Track nel men` u che appare. Questo forzer`a la telecamera a tracciare Gus puntando sempre su di esso. Questo vuol dire che potrai spostare la telecamera ovunque ed essere sicuro che Gus stia nel centro della vista telecamera.
Inseguimento [Tracking]: Se l’oggetto inseguitore ha gi`a una propria rotazione, com
La Figura Posizione della Telecamera rispetto a Gus mostra le viste dall’alto, frontale, laterale e da telecamera di Gus. Per ottenere la vista Telecamera premi NUM0 .
Figura 7.21: Posizione della Telecamera rispetto a Gus. vista dall’alto ( NUM7 ), e fuori dalla modalit`a Edit, aggiungi un piano ( SPAZIO >>ADD>>Mesh>>Plane).
` importante essere fuori dal Modo Edit, altrimenti gli oggetti appena aggiunti farebbero parte dell’ogge Nota: E • Cambia in Modo Oggetto e vista Frontale ( NUM1 ) e sposta ( GKEY ) il piano sotto il piede di Gus, usando CTRL per tenerlo allineato con Gus.
62
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I • Cambia il centro di riferimento dal cursore (dove l’abbiamo impostato inizialmente) all’oggetto premendo il pulsante evidenziato nella Figura Imposta il centro di riferimento al centro dell’Oggetto .
• Vai nella vista Telecamera ( NUM0 ) e, col piano sempre selezionato, premi SKEY per iniziare il ridimensionamento.
• Allarga il piano, in modo che i suoi lati si estendano oltre l’area di visione della telecamera, come `e indicata da un rettangolo esterno punteggiato nella vista Telecamera.
Ed ora, qualche luce!
• Nella vista dall’Alto ( NUM7 ), aggiungi una semplice Lampada ( SPAZIO >>ADD>>Lamp) di fronte a Gus, ma sul lato opposto alla telecamera; per esempio in (x=-9, y=-10, z=7) ( Inserimento di una Lampada ).
Figura 7.22: Imposta il centro di riferimento al centro dell’Oggetto.
• Vai nella Pulsantiera della Lampada nel contesto dell’Ombreggiatura [Shading] col pulsante con una lampada nella toolbar della Pulsantiera ( Il pulsante della Pulsantiera delle Luci ) o con F5 .
7.3. VEDIAMO A COSA ASSOMIGLIA GUS
63
Figura 7.23: Inserimento di una Lampada.
Figura 7.24: Il pulsante della Pulsantiera delle Luci.
3. Nella Pulsantiera, Pannello Preview , premi il pulsante commutatore Spot per trasformare la lampada in Faretto [Spot] ( Le impostazioni del faretto ) di colore giallo pallido (R=1, G=1, B=0.9). Regola il pulsante numerico ClipSta : a 5, il Samples : a 4, ed il Soft : a 8.
• Si faccia in modo che questo Faretto insegua Gus, esattamente come fatto per la telecamera, selezionando il Faretto, SHIFT , selezionando quindi Gus, e premendo CTRL-T . Se hai aggiunto il faretto nella Vista dall’Alto non dovresti aver bisogno di cancellarne la rotazione con ALT-R .
• Aggiungi una seconda luce nella stessa posizione dello spot, ed ancora nella Vista dall’Alto, con ( SPAZIO >>ADD>>Lamp). Rendi questa lampada di tipo Hemi con energia a 0.6 ( Le impostazioni della Lampada Hemi ).
64
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Figura 7.25: Le impostazioni del faretto.
Figura 7.26: Le impostazioni della Lampada Hemi
dering. Come prima cosa, andiamo nel contesto della Scena e nei pulsanti del Rendering premendo l’icona simile ad un’immagine nella barra degli strumenti della pulsantiera ( I pulsanti del rendering nella Pulsantiera ) o F10 .
Nei Pulsanti del Rendering, Pannello Format , imposta la dimensione dell’immagine a 640x480 coi pulsanti Numerici in alto a destra. Nel PanFigura 7.27: I pulsanti del rendering nella nello Render imposta il CommutaPulsantiera. tore Shadows al centro in alto a On, ed il Commutatore OSA al centro a sinistra anch’esso a On ( La Pulsantiera del Rendering ). Questi ultimi controlli consentiranno di avere le ombre ed il sovracampionamento (OSA) che eviteranno i bordi frastagliati.
Ora premi il pulsante RENDER o F12 . Il risultato, mostrato nella Figura Il tuo primo rendering. Congratulazioni! , `e attualmente molto misero. Abbiamo bisogno dei materiali ed un sacco di dettagli, come gli occhi, e cos`ı via.
7.4. MATERIALI E TEXTURE
65
Figura 7.28: La Pulsantiera del Rendering
Salvataggio: Se non lo hai gi` a fatto,
7.4 Materiali e Texture ` ora di daE re a Gus un bel materiale biscottato:
Figura 7.29: Il tuo primo rendering. Congratulazioni!
• Si seleziona Gus. Quindi, nell’header della Pulsantiera, si seleziona il Contesto dell’Ombreggiatura [Shading] premendo il pulsante col pallino rosso ( Il Pulsante per la Pulsantiera del Materiale ) o usando il tasto F5 .
66
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Figura 7.30: (Salva).
Il men` u Save
• La Pulsantiera sar` a quasi vuota, in quanto Gus non ha ancora dei materiali. Per aggiungere un materiale, si clicca sul Pulsante Men` u nel Pannello Material (quello con due triangoli puntati verso l’alto ed il basso) e si seleziona Add New ( Il pulsante del Men` u del Materiale ).
Figura 7.31: Il Pulsante per la Pulsantiera del Materiale. • La finestra dei Pulsanti sar` a popolata dai Pannelli e Pulsanti e da una stringa contenente il nome del Materiale, per default Material, che apparir`a di seguito al pulsante col rettangolo bianco. Lo si cambi con qualcosa di pi` u significativo, come GingerBread (PanDiZenzero). • Modifica i valori di default come in Figura La Pulsantiera del Materiale ed un primo materiale GingerBread (PanDiZenzero) per ottenere una prima bozza del materiale.
Figura 7.32: Il pulsante del Men` u del Materiale. • Si preme Pulsante Men` u nell’area del Pannello delle Texture ( Il pulsante del men` u delle Texture nei Pulsanti del Materiale ) e si seleziona Add new . Abbiamo aggiunto una texture nel primo canale. Chiamalo GingerTex.
7.4. MATERIALI E TEXTURE
67
Figura 7.33: La Pulsantiera del Materiale ed un primo materiale GingerBread (PanDiZenzero). • Si selezionano i Pulsanti della Texture cliccando sul pulsante in Figura Il pulsante per la Pulsantiera della Texture o premendo F6 .
Figura 7.34: Il pulsante del men` u delle Texture nei Pulsanti del Materiale • Dalle colonne di Commutatori che appaiono nel pannello Texture si seleziona Stucci e si impostano tutti i parametri come nella Figura La Pulsantiera della Texture con una texture stucci .
Figura 7.35: Il pulsante per la Pulsantiera della Texture. • Si torni sulla pulsantiera del Materiale ( F5 ) e si impostino le fincature [tab] Map Input e Map To del Pannello Texture come in Figura Le impostazioni della texture Stucci nella finestra dei Pulsanti del Materiale . De-seleziona l’Interruttore Col e imposta l’interruttore Nor alzando lo slider Nor a 0.75. Queste modifiche faranno in modo che la texture Stucci agisca come una mappa di rugosit`a [bumpmap] e faccia assomigliare di pi` u Gus ad un biscotto.
68
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Figura 7.36: La Pulsantiera della Texture con una texture stucci. • Si pu` o aggiungere anche una seconda texture, di nome Grain (Grano) e fare in modo che funzioni solo la propriet`a Ref con una Var di 0.4 ( Le impostazioni per una ulteriore texture di tipo Noise nel canale 2 ). La stessa texture `e una semplice texture Noise (rumore).
Figura 7.37: Le impostazioni della texture Stucci nella finestra dei Pulsanti del Materiale.
Figura 7.38: Le impostazioni per una ulteriore texture di tipo Noise nel canale 2. priato, come il blu scuro mostrato nella Figura Un materiale molto semplice per il pavimento . Per dare dei tocchi finali, aggiungeremo gli occhi e qualche altro dettaglio. • Prima di tutto si renda visibile solo il Livello 1 cliccando su LMB sul pulsante del livello 1 ( I pulsanti di visibilit` a del livello sulla barra degli strumenti ). Questo nasconder` a le luci, la telecamera, ed il pavimento.
Diamo al pavimento un materiale appro-
7.4. MATERIALI E TEXTURE
69
Figura 7.39: Un materiale molto semplice per il pavimento. • Si pone il cursore al centro della testa di Gus. (Ci si ricordi che si `e in 3D e che quindi si hanno bisogno di almeno due viste di controllo per essere sicuri!) • Si aggiunge una sfera ( SPAZIO >>ADD>>Mesh>>UVsphere). Sar`a chiesto il numero dei Segments : (meridiani) e quello dei Rings : (paralleli) con cui suddividere la sfera. Il default di 32 `e eccessivo per i nostri bisogni quindi si usa il valore 16 per entrambi. La sfera `e la prima immagine in alto a sinistra della sequenza nella Figura La sequenza per la creazione degli occhi . • Si riduce la sfera ( SKEY ) di un fattore 0.1 in tutte le dimensioni, quindi si cambia in vista laterale ( NUM3 ) e si riduce nella sola direzione orizzontale ( YKEY ) di un ulteriore fattore di 0.5 (Le seconde due immagini nella Figura La sequenza per la creazione degli occhi ).
Figura 7.40: I pulsanti di visibilit` a del livello sulla barra degli strumenti. • Si ingrandisce un po’, se necessario, tramite NUM+ , MW , o CTRL-MMB , e si trascina la sfera ( GKEY ) sulla sinistra, in modo che stia a met`a nella testa (come mostrato nella prima immagine della seconda riga della Figura La sequenza per la creazione degli occhi ). • Si torna nella vista frontale ( NUM1 ) e si sposta la sfera di fianco a destra. La si pone dove Gus dovrebbe avere un occhio. • Si ribalta [flip] un duplicato attorno al cursore seguendo la sequenza appresa quando si `e ribaltato il corpo di Gus. (Si seleziona il pulsante con la crocetta dalla barra degli strumenti, in modo Edit, AKEY per deselezionare tutto, SHIFT-D , ESC MKEY , e la voce Global X del men` u). Ora Gus ha due occhi. • Si esce dal Modo Edit ( TAB ), e si pone il cursore il pi` u vicino possibile al centro della faccia di Gus. Si aggiunge una nuova sfera e la si ridimensiona e
70
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I sposta esattamente come prima, ma rendendola pi` u piccola e piazzandola pi` u in basso e pi` u sulla destra del cursore, centrata sul vertice della mesh Sub-Suddivisa [SubSurfed] ( La creazione della bocca con gli strumenti di Ribaltamento [Spinning] ).
Figura 7.41: La sequenza per la creazione degli occhi. • Ora, tra i Pulsanti di Edit ( F9 ), si cerchi il gruppo di pulsanti in basso nel pannello Mesh Tools ( I pulsanti per gli Strumenti di Ribaltamento [Spin] nella Pulsantiera di Edit ). Si imposti Degr: a 90, Steps: a 3, e si verifichi che l’interruttore Clockwise: sia premuto. Quindi, con tutti i vertici ancora selezionati, si preme SpinDup . Questo creer` a tre duplicati dei vertici selezionati su un arco di 90 gradi centrato sul cursore. Il risultato dovrebbe essere la bocca di Gus, come l’ultima immagine della sequenza mostrata nella Figura La creazione della bocca con gli strumenti di Ribaltamento [Spinning] .
Figura 7.42: La creazione della bocca con gli strumenti di Ribaltamento [Spinning]. Ora che si `e appreso il trucco, aggiungiamo altri tre di questi ellissoidi per formare i bottoni di Gus. Una volta creato un bottone, semplicemente si esce dal modo Edit, si preme SHIFT-D per creare un duplicato, e si mette in posizione il duplicato, come mostrato nella Figura Gus al completo! .
7.4. MATERIALI E TEXTURE
71
Figura 7.43: I pulsanti per gli Strumenti di Ribaltamento [Spin] nella Pulsantiera di Edit.
Diamo agli occhi un materiale simile al cioccolato, come quello mostrato in alto nella Figura I materiali di qualche altro dolciume . Diamo alla bocca un materiale simile allo zucchero bianco, come il secondo mostrato della Figura I materiali di qualche altro dolciume , e diamo ai bottoni un materiale simili allo zucchero rosso, bianco e verde. Anche questi sono mostrati anche nella Figura I materiali di qualche altro dolciume dall’alto verso il basso.
Figura 7.44: Gus al completo!
Oggetti che condividono un materiale: Per dare ad un oggetto lo stesso mate
72
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Figura 7.45: I materiali di qualche altro dolciume.
Una volta completata l’assegnazione dei materiali, si rende nuovamente visibile il livello 10 (si dovrebbe sapere come fare), in modo che appaiano anche le luci e la telecamera, e fare un nuovo rendering ( F12 ). Il risultato dovrebbe assomigliare pi` u o meno a quello della Figura Il rendering della foto di Gus completo .
7.4. MATERIALI E TEXTURE
Figura 7.46: La selezione di un materiale esistente dal Men` u Materiale.
73
Si salva l’immagine, se si vuole, premendo F3 . Si immette il nome dell’immagine nella finestra del file e si salva.
Tipi di immagini ed estensioni: Biso
Figura 7.47: Il rendering della foto di Gus completo.
Figura 7.48: Il men` u di selezione del tipo di file nella finestra dei Pulsanti del Rendering.
74
CAPITOLO 7. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE I
Capitolo 8
La tua prima animazione in 30 + 30 minuti Parte II 8.1
Allestimento [Rigging]
Se vogliamo un’immagine ferma, a questo punto il nostro lavoro `e sufficiente, ma noi vogliamo che Gus si muova! Il passo successivo sar`a quello di dargli uno scheletro, o Armatura, con cui potr` a muoversi. Questa `e la bella arte dell’allestimento [rigging]. Gus avr` a un allestimento molto semplice, quattro arti (due braccia e due gambe) ed un paio di giunture(nessun gomito, solo ginocchia), ma senza piedi o mani. Per aggiungere l’allestimento:
• Si ponga il cursore dove star`a la spalla, si preme SPAZIO >>Add>>Armature. Apparir` a un oggetto romboidale, un osso del sistema dell’armatura, teso dal cursore al puntatore del mouse. Si ponga l’altra estremit`a dell’armatura nella mano di Gus ( L’aggiunta del primo osso, un braccio senza gomito ) con LMB . Questo fisser` a l’osso e ne creer` a uno nuovo a partire dall’estremit`a finale del precedente, producendo una catena di ossa. Non abbiamo bisogno di nessun’altro osso, quindi si preme ESC per uscire.
• Si resta in modo Edit, quindi si sposta il cursore dove c’`e la giuntura dell’anca e si aggiunge un altro osso ( SPAZIO >>Add>>Bones) scendendo fino al ginocchio. Si preme LMB e vi dovrebbe apparire automaticamente un nuovo osso. Tale osso si tira fino al piede ( L’aggiunta del secondo e del terzo osso, la catena ossea della gamba ). 75
76 CAPITOLO 8. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE II
Figura 8.1: L’aggiunta del primo osso, un braccio senza gomito.
Posizionamento dell’osso: Le ossa che saranno aggiunte deformeranno la mes • Ora si pone il cursore al centro e si selezionano tutte le ossa con AKEY . Si duplicano con SHIFT-D e si esce dal modo traslazione [grab] con ESC quindi si ribaltano con MKEY relativamente al cursore e all’asse X globale come fatto con le mesh ( L’armatura completa dopo la duplicazione ed il ribaltamento ). Una volta selezionate tutte le ossa ( AKEY ), la Pulsantiera di Edit dovrebbe mostrare un Pannello Armature Bones che contiene i pulsanti dell’Armatura ( La Pulsantiera di Edit per un’armatura ). Figura 8.2: L’aggiunta del secondo e del terzo osso, la catena ossea della gamba.
Figura 8.3: L’armatura completa dopo la duplicazione ed il ribaltamento.
8.2. RIVESTIMENTO [SKINNING]
77
Si preme il pulsante Draw Names per vedere i nomi delle ossa, quindi SHIFT-LMB sui nomi nella Pulsantiera di Edit ( La Pulsantiera di Edit per un’armatura ) per cambiarli in qualcosa di appropriato come Arm.R, Arm.L, UpLeg.R, LoLeg.R, UpLeg.L e LoLeg.L. Si esce dal modo Edit con ( TAB ).
Figura 8.4: La Pulsantiera di Edit per un’armatura.
zione dell’armatura provochi una deformazione del corpo. Questo `e fatto col Rivestimento [Skinning] che assegna i vertici alle ossa in modo che i primi siano assoggettati ai movimenti di questi ultimi.
• Si seleziona il corpo di Gus, quindi SHIFT e si seleziona l’armatura in questo modo il corpo `e violetto e l’armatura `e rosa chiaro.
• Si preme CTRL-P per imparentare il corpo all’armatura. Apparir`a un men` u ( Il men` u che appare quando s’imparenta un Oggetto ad un’armatura ). Si seleziona la voce Use Armature .
• Appare un nuovo men` u, chiedendo se si vuole che Blender non faccia nient’altro, crei dei gruppi di vertici vuoti, o crei e popolino dei gruppi di vertici ( Scelte per il Rivestimento Automatico ).
78 CAPITOLO 8. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE II
Figura 8.5: Il men` u che appare quando s’imparenta un Oggetto ad un’armatura. • Useremo la funzionalit` a del rivestimento automatico. Si prosegue e si seleziona Create From Closest Bones . Ora si seleziona solo il corpo di Gus e si va in Modo Edit ( TAB ). Si noti, nella Pulsantiera di Edit ( F9 ) e nel Pannello Mesh Tools 1 , la presenza di un men` u dei Gruppi di Vertici e dei pulsanti ( I pulsanti dei gruppi di vertici nella Pulsantiera di Edit di una mesh ).
Figura 8.6: Scelte per il Rivestimento Automatico. Premendo il Pulsante Men` u appare un men` u con tutti i raggruppamenti di vertici disponibili (sei nel nostro caso, ma in personaggi veramente complessi, con mani e piedi completamente articolati se ne possono avere dieci di questi! Il men` u con i raggruppamenti di vertici creati automaticamente dal processo di rivestimento ). I pulsanti Select
8.2. RIVESTIMENTO [SKINNING]
79
e Deselect mostrano quali vertici appartengono a quale gruppo.
Figura 8.7: I pulsanti dei gruppi di vertici nella Pulsantiera di Edit di una mesh. Si seleziona il gruppo Braccio Destro (Arm.R) e, con tutti i vertici de-selezionati ( AKEY , se necessario) si preme Select . Si vedr`a qualcosa di simile alla Figura Gus in modo Edit con tutti i vertici del gruppo Arm.R selezionati .
I vertici evidenziati coi cerchi gialli nella Figura Gus in modo Edit con tutti i vertici del gruppo Arm.R selezionati appartengono al gruppo di deformazione, ma non Figura 8.8: Il men` u con dovrebbero esserlo. Il processo di autorivestimento ha i raggruppamenti di vertici trovato che essi risultano molto prossimi all’osso quindi creati automaticamente dal li ha aggiunti al gruppo di deformazione. Non vogliamo che essi siano in questo gruppo in quanto, alcuni sono processo di rivestimento. della testa ed altri del petto, aggiungendoli al gruppo di deformazione si deformerebbero queste parti del corpo. Per rimuoverli dal gruppo, si deselezionano tutti gli altri vertici, quelli che devono restare nel gruppo usando la selezione Delimitata [Box selection] ( BKEY ), ma usando MMB , non LMB , per definire il rettangolo, cos`ı tutti i vertici all’interno del rettangolo diventano deselezionati. Una volta che solo i vertici ’indesiderati’ sono selezionati, si preme il pulsante Remove ( I pulsanti dei gruppi di vertici nella Pulsantiera di Edit di una mesh ) per eliminarli dal gruppo Arm.R. Si deseleziona tutto ( AKEY ) quindi si controlla un altro gruppo. Si controllano tutti in modo da essere sicuri che assomigliano a quelli nella Figura I sei gruppi di vertici .
80 CAPITOLO 8. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE II
Figura 8.9: Gus in modo Edit con tutti i vertici del gruppo Arm.R selezionati.
Gruppi di v
Altri dettag
8.3
Figura 8.10: I sei gruppi di vertici.
carci come se fosse una bambola, muovendogli le ossa ed osservando il risultato.
• Si seleziona solo l’armatura, quindi si seleziona Pose Mode dal Men` u Mode ( L’interruttore per commutare in modo Posa nella barra degli strumenti della Finestra 3D ). Tale opzione appare solo se `e selezionata un’armatura.
Una volta strutturato e rivestito Gus, si pu` o iniziare a gio-
Po
8.3. POSIZIONAMENTO
81
• L’armatura diventer` a blu. Si `e in Modo Posa. Se ora si seleziona un osso, esso si colora in azzurro, non in rosa, e se lo si sposta ( GKEY ), o lo si ruota ( RKEY ), il corpo si deformer` a!
Figura 8.11: L’interruttore per commutare in modo Posa nella barra degli strumenti della Finestra 3D.
Posizione originale: Blender ricorda la posizione originale delle ossa, si pu` or
Cinematica Diretta ed Inversa: Maneggiando le ossa in modo posa, si noter` a Faremo camminare Gus definendo quattro pose relative ai quattro diversi stadi di una falcata. Blender stesso si prender`a cura di creare un’animazione fluida.
Figura 8.12: Ora siete in modo posa!
• Prima, si verifica di essere al frame 1 nella linea del tempo. Il numero del frame appare in un pulsante numerico alla destra della barra degli strumenti della Pulsantiera ( Il pulsante numerico del fotogramma [frame] corrente nella barra degli strumenti della Pulsantiera ). Se non `e impostato a 1, lo si ponga a 1 ora.
• Ora, ruotando un solo osso per volta ( RKEY ), solleviamo UpLeg.L e pieghiamo indietro LoLeg.L. mentre solleviamo un po’ Arm.R ed abbassiamo un po’ Arm.L, come mostrato nella Figura La nostra prima posa .
Figura 8.13: Il pulsante numerico del fotogramma [frame] corrente nella barra degli strumenti della Pulsantiera.
82 CAPITOLO 8. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE II • Si selezionano tutte le ossa con AKEY . Col puntatore del mouse sulla Finestra 3D, si preme IKEY . Appare un men` u ( Memorizzazione di una posa nel frame ). Si seleziona LocRot da tale men` u. Questo legger`a la posizione e la rotazione di tutte le ossa e la memorizzer` a in una posa al frame 1. Questa posa rappresenta Gus a met` a della sua falcata, mentre sposta la gamba avanti, sollevandola dal suolo.
Figura 8.14: La nostra prima posa. • Ora ci si sposta al frame 11 o immettendo il numero nel pulsante numerico o premendo FRECCIASU . Quindi si sposta Gus in una posizione diversa, come nella Figura La nostra seconda posa , con la sua gamba sinistra avanti e la destra indietro, entrambe lievemente piegate. Gus sta camminando sul posto!
Figura 8.15: Memorizzazione di una posa nel frame. • Si selezionano ancora tutte le ossa e si preme IKEY per memorizzare questa posa al frame 11.
8.3. POSIZIONAMENTO
83
• Ora abbiamo bisogno di una terza posa al frame 21, con la gamba destra su, perch´e siamo nel mezzo della falcata successiva. Questa posa `e speculare a quella definita al frame 1. Perci` o, si torna al frame 1 e, nel Men` u Armature nell’header della Finestra 3D si seleziona la voce Copy Pose . ( La copia della posa nel buffer ). La posa `e stata effettivamente copiata nel buffer.
Figura 8.16: La nostra seconda posa. • Si torna al frame 21 e la si incolla con l’opzione Paste Flipped Pose nel Men` u Armature ( La nuova posa da una precedente copiata e ribaltata ). Questo pulsante incoller` a la posa copiata, scambiando le posizioni delle ossa col suffisso .L con le ossa col suffisso .R, in pratica ribaltandole!
Figura 8.17: La copia della posa nel buffer. La posa `e l`ı, ma non `e stata ancora memorizzata! Bisogna premere IKEY con tutte le ossa selezionate.
84 CAPITOLO 8. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE II • Ora si usi la stessa procedura per copiare la posa dal frame 11 al frame 31, ribaltandola pure. • Per completare il ciclo, bisogna copiare la posa al frame 1 senza ribaltamento al frame 41. Lo si pu` o fare come al solito, ed usando la voce Paste Pose . La sequenza si completa memorizzando la posa con IKEY .
Controllo dell’animazione: Per un’anteprima dell’animazione, si imposta il frame corre
8.4
Figura 8.18: La nuova posa da una precedente copiata e ribaltata.
Gus cammina!
Il singolo passo sul posto `e il nucleo della camminata e, una volta definitane una, ci sono tecniche per far s`ı che un personaggio cammini lungo un percorso complesso. Ma, per l’utilizzo nel nostro Avvio Rapido, questo passo sul posto `e sufficiente.
• Ci si sposti nei Pulsanti del Rendering ( F10 ) e si imposti l’inizio e la fine dell’animazione a 1 ed a 40 rispettivamente ( Le impostazioni dei Pulsanti del Rendering per l’animazione ). Poich´e il frame 41 `e identico al frame 1, abbiamo bisogno di effettuare solo il rendering dei frame da 1 a 40 per produrre l’intero ciclo. • Si selezioni AVI Raw come tipo di file nel Pannello Format ( Le impostazioni dei Pulsanti del Rendering per l’animazione ). Mentre questa non `e, in genere, la scelta migliore, principalmente per la dimensione del file (come sar`a spiegato in seguito), esso `e veloce e girer`a su tutte le macchine, quindi `e adatto al nostro scopo. (Si pu` o selezionare anche AVI Jpeg, per produrre un file pi` u compatto, ma usando una compressione Jpeg con perdita, ed ottenendo un filmato che qualche riproduttore esterno non potrebbe essere in grado di riprodurre). • Finalmente si preme il pulsante ANIM nel Pannello Anim . Si ricordi che tutti i livelli che si vogliono usare nell’animazione devono apparire! Nel nostro caso, questi sono i livelli 1 e 10.
Fermare un Rendering: Se si fa un errore, come dimenticare di attivare il livello 10, si pu`o fermare il processo d La scena `e abbastanza semplice, e Blender probabilmente porter`a a termine il rendering delle 40 immagini in pochi secondi. Si osservi come appaiono.
Fotogrammi: Ovviamente si pu` o effettuare il rendering di ciascuna animazione come fotogrammi selezionando i Una volta completato il rendering si dovrebbe avere un file chiamato 0001 0040.avi in una subdirectory render della directory corrente - quella contenente il proprio file .blend . Si pu` o riprodurre questo file direttamente dentro Blender premendo il pulsante Play sotto il pulsante ANIM ( Le impostazioni dei Pulsanti del Rendering per l’animazione ). L’animazione si ripeter` a automaticamente. Per fermarla si preme ESC .
8.4. GUS CAMMINA!
85
Figura 8.19: Le impostazioni dei Pulsanti del Rendering per l’animazione. mo ciclo di camminata. C’`e molto di pi` u in Blender, come andremo a scoprire!
86 CAPITOLO 8. LA TUA PRIMA ANIMAZIONE IN 30 + 30 MINUTI PARTE II
Parte II
MODELLAZIONE
87
89 Come si `e visto nel capitolo sulla Partenza Rapida , per la creazione di una scena 3D si ha bisogno di almeno tre oggetti chiave: Modelli, Materiali e Luci. In questa Parte frugheremo nel primo di essi. La Parte III riguarder`a i Materiali, la Parte IV le textures e la Parte V le luci. Una volta completata questa Parte o si potr`a andare al Rendering se si vuole apprendere di pi` u sui motori di rendering delle immagini fisse di Blender, oppure leggere la Parte VII e successive per imparare tutto sulle capacit`a di animazione di Blender.
90
Capitolo 9
Booleane Le operazioni booleane sono particolari azioni eseguibili solo su oggetti di tipo Mesh. Mentre esse funzionano per tutti gli oggetti Mesh, esse sono in effetti per essere usate con solidi, oggetti chiusi con una regione interna ed una esterna ben definite. Cos`ı, `e molto importante definire coerentemente le normali in ciascun oggetto, vale a dire che ciascuna normale di ciascuna faccia deve puntare verso l’esterno. Si veda il chapter mesh modelin A per ulteriori informazioni sulle normali e perch´e si pu`o finire con delle normali che puntano verso l’esterno ed altre verso l’interno. Nel caso di oggetti aperti, l’interno `e definito matematicamente estendendo i confini delle facce dell’oggetto all’infinito. Quindi, si potrebbero avere dei risultati inaspettati, per questi oggetti. Un’operazione booleana non modifica gli operandi originali, il risultato `e sempre un nuovo oggetto di Blender. Le operazioni booleane vengono invocate selezionando esattamente due mesh e premendo WKEY . Ci sono tre tipi di operazioni booleane da scegliere dal men` u che appare, Intersect (Intersezione), Union (Unione) e Difference (Differenza). Le operazioni booleane tengono anche in conto dei Materiali e delle Texture UV, producendo oggetti con indici di materiale o oggetti con pi` u mappature UV. Si consideri l’oggetto Opzioni per le operazioni booleane . • L’operazione Intersect crea un nuovo oggetto la cui superficie racchiude il volume comune ad entrambi gli oggetti originali. • L’operazione Union crea un nuovo oggetto la cui superficie racchiude il volume di entrambi gli oggetti originali. Figura 9.1: Opzioni per le operazioni booleane
• L’operazione Difference `e la sola per cui `e importante l’ordine di selezione. L’oggetto attivo (viola chiaro nella vista wireframe) viene sottratto dall’oggetto selezionato. Vale a dire che, la superficie dell’oggetto risultante racchiude un volume appartenente all’oggetto selezionato e inattivo, ma non a quello selezionato ed attivo.
Oggetti risultanti: intersezione, unione e differenza (dall’alto in basso). mostra i risultati delle tre operazioni.
91
92
CAPITOLO 9. BOOLEANE l numero di poligoni generato pu`o essere molto alto in confronto alle mesh originali, specialmente quando si usano oggetti concavi complessi. Inoltre i poligoni generati possono essere di pessima qualit`a: molto lunghi e sottili e talvolta molto piccoli. Si provi col Decimatore della Mesh (Pulsantiera di Edit F9 ) per rimediare a questo problema. I vertici nella mesh risultante che ricadono sul confine dei due oggetti originali spesso non coincidono col confine stesso, e vengono duplicati. Questo `e un bene, da un certo punto di vista, in quanto vuol dire che, in Blender, si possono selezionare parti delle mesh originali selezionando un vertice nel risultato e pigiando il pulsante di selezione dei collegati ( LKEY ` comodo se si vogliono asse). E gnare materiali e simili al risultato
Nota: Talvolta l’operazione booleana pu`o fallire con un messag
Figura 9.2: Oggetti risultanti: intersezione, unione e differenza (dall’alto in basso).
Capitolo 10
Oggetti Elementari L’Oggetto principale di una scena 3D `e solitamente una Mesh . In questo capitolo elencheremo prima gli oggetti mesh elementari, o primitive , quindi si proseguir`a con la descrizione delle azioni pi` u elementari che si possono intraprendere sugli Oggetti Mesh. Per creare un Oggetto elementare si prema SPACE e si selezioni ADD, oppure, si acceda al men` u ’Add’ premendo SHIFT-A o semplicemente premendo LMB sulla finestra 3D, per pi` u di mezzo secondo. In ognuna di queste tecniche viene visualizzato un menu dove il sottomenu ADD appare gi` a selezionato Si selezioni ’Mesh’ dal menu e quindi l’oggetto Mesh di base da creare. In seguito, vengono descritti gli oggetti Mesh di base o primitive (Basic Objects) che possono essere creati in Blender. Oggetti Base mostra gli oggetti Mesh che possono essere creati.
Piano [Plane]
Figura 10.1: Sotto men` u Add
Un piano standard contiene quattro vertici, quattro lati ed una faccia. E’ come un pezzo di carta steso su un tavolo; non `e un vero oggetto tridimensionale dato che `e piatto e non ha spessore. Tramite un piano `e possibile creare oggetti come: pavimenti, tavoli o specchi.
Nota: E’ possibile render una mesh tridimensionale spostando uno o pi` u vertici al
Cubo [Cube] Un cubo standard contiene otto vertici, 12 lati e sei facce ed `e un vero oggetto tridimensionale. Tra gli oggetti che possono essere creati da cubi sono inclusi: dadi, scatole o gabbie.
93
94
CAPITOLO 10. OGGETTI ELEMENTARI Cerchio [Circle]
Un cerchio standard `e composto da n vertici. Il numero di vertici pu`o essere indicaFigura 10.2: Oggetti Base (Basic Objects) to nella finestra che appare alla creazione del cerchio. Pi` u vertici contiene il cerchio, pi` u sar`a levigato il suo contorno. Esempi d’oggetti circolari sono dischi, piatti o qualsiasi tipo d’oggetto piatto e rotondo.
Nota: E’ possibile rendere l
Sfera UV [UVSphere] Una sfera UV standard `e composta da n seg-
95 menti e m anelli. Il livello di dettaglio pu`o essere indicato nella finestra che appare alla creazione della sfera UV. L’aumento del numero di segmenti e anelli rende la superficie della sfera UV pi` u liscia. I segmenti sono come i meridiani della Terra, che corrono da polo a polo, gli anelli sono simili ai paralleli. Esempi d’oggetti che si possono creare da sfere UV sono: palle, teste o perle per una collana.
Nota: Se si specifica una sfe
Icosfera [Icosphere] Un’Icosfera `e composta da triangoli. Il numero di suddivisioni pu`o essere indicato nella finestra che ap-
96
CAPITOLO 10. OGGETTI ELEMENTARI
pare alla creazione dell’Icosfera; aumentando il numero di suddivisioni si rende la superficie pi` u liscia. A livello 1 la Icosfera `e un icosaedro, un solido con 20 facce a forma di triangoli equilateri. Ogni aumento del livello di suddivisione divide ciascuna faccia triangolare in quattro triangoli, apparendo pi` u sferica. L’Icosfera viene di solito usata per avere una disposizione pi` u isotropica (simmetrica) ed economica dei vertici rispetto ad una sfera UV.
Cilindro pieno [Cylinder] Un cilindro standard `e composto da n vertici. Il numero di vertici nella sezione circolare trasversale pu`o essere indicato nella finestra che appare alla creazione dell’oggetto; pi` u `e alto il numero di vertici, pi` u liscia diventa la sezione circolare. Tra gli oggetti che si possono creare coi cilindri sono inclusi manici e aste.
97 Cilindro cavo (tubo) [Tube] Un cilindro cavo standard `e composto da n vertici. Il numero di vertici nella sezione circolare trasversale cava pu` o essere indicato nella finestra che appare alla creazione dell’oggetto; pi` u `e alto il numero di vertici, pi` u liscia diventa la sezione circolare cava. Tra gli oggetti che si possono creare coi cilindri cavi sono inclusi tubi o bicchieri. (La differenza fondamentale tra un cilindro pieno ed uno cavo `e che il primo ha le estremit`a chiuse).
Cono [Cone] Un cono standard `e composto da n vertici. Il nu-
98
CAPITOLO 10. OGGETTI ELEMENTARI
mero di vertici nella base circolare pu`o essere indicato nella finestra che appare alla creazione dell’oggetto; pi` u `e alto il numero di vertici, pi` u liscia diventa la base circolare. Tra gli oggetti che si possono creare coi coni ci sono: punte e cappelli a punta.
Griglia [Grid] Una griglia standard `e composta da n per m vertici. La risoluzione degli assi x ey pu`o essere indicata nella finestra che appare alla creazione dell’oggetto; pi` u `e alta la risoluzione, pi` u vertici vengono creati. Esempi di oggetti che si possono creare dalle griglie includono i paesaggi (con lo
99 strumento di modifica proporzionale) ed altre superfici organiche.
Scimmia [Monkey] Questo `e un omaggio della vecchia NaN alla comunit`a e sembra lo scherzo di un programmatore o la Sorpresa di un uovo di Pasqua. Crea la testa di una scimmia una volta premuto il pulsante Oooh Oooh Oooh . Il nome della Scimmia `e Suzanne ed `e la mascotte di Blender.
100
CAPITOLO 10. OGGETTI ELEMENTARI
Capitolo 11
Modalit` a Edit [EditMode] Con gli oggetti geometrici in Blender si pu`o lavorare in due modalit`a: Modalit`a Oggetto e Modalit` a Edit (Modifica). Fondamentalmente, come si `e visto nella sezione precedente, le operazioni in Modalit` a Oggetto riguardano l’intero oggetto, mentre le operazioni in Modalit` a Edit riguardano solo la geometria di un oggetto, ma non le propriet`a globali come la posizione o la rotazione. In Blender `e possibile passare da una modalit`a all’altra col tasto TAB . La Modalit` a Object `e attiva se `e possibile vedere la seguente intestazione nella vista 3D:
Figura 11.1: Intestazione Modalit`a Oggetto.
La Modalit`a Edit `e attiva se `e possibile vedere la seguente in-
testazione nella vista 3D: E’ possibile operare in Modalit`a Edit su un solo ogFigura 11.2: Intestazione Modo Edit getto per volta: l’oggetto attivo. Un oggetto in Modalit`a Oggetto `e disegnato in viola nella Finestra 3D (a fil-di-ferro) se selezionato; altrimenti in nero. In Modalit` a Edit ciascun vertice `e disegnato in viola, ciascuno segmento in nero e le facce in blu scuro trasparente. Il cubo a destra mostrato in seguito `e in Modalit`a Edit. Il cubo a sinistra `e in Modalit` a Oggetto e non `e selezionato. Ciascun vertice selezionato `e disegnato in giallo Se pi` u oggetti sono selezionati e si entra in Modalit`a Edit, allora sar`a l’ultimo Oggetto selezionato (l’oggetto Attivo) ad entrare in Modalit`a Edit. Gli altri oggetti resteranno 101
` EDIT [EDITMODE] CAPITOLO 11. MODALITA
102
viola e rimarranno in Modalit` a Oggetto. As shown below both cubes were selected prior to EditMode and now the left cube is still purple and the right cube (the Active object) is in EditMode:
Figura 11.3: Due cubi con i vertici selezionati in giallo.
Nota: Se sono selezionati vertici a sufficienza per delineare una faccia, allora Se il Button Windows `e visibile e l’ Editing ( F9 ) `e attivato allora i due pannelli Mesh Tools e Mesh Tools 1 appariranno quando si entra in Modalit`a Edit: Di default i pulsanti Draw Faces e Draw Edges sono pre-selezionati e ciascun lato o faccia selezionato appare evidenziato. Figura 11.4: Two Cubes selected prior to EditMode.
Inoltre, i pannelli Link and Materials and Mesh vengono aggiornati.
Figura 11.5: Mesh Tools panels. Visibili solo in Modalit` a Edit Al pannello Link and Materials si aggiungono i pulsanti New, Delete, Assign, Remove, Select and Desel. . Al pannello Mesh vengono rimossi il gruppo di pulsanti Decimator, Apply and Cancel .
11.1
Strutture: Vertici, Lati e Facce
11.1. STRUTTURE: VERTICI, LATI E FACCE
103
Nelle mesh elementari, ogni cosa `e costruita a partire da tre strutture basilari: Vertici , Lati e Facce . (Non parliamo ancora delle Curve, delle NURBS, e cos`ı via). Non bisogna abbattersi: tale semplicit`a fornisce delle ricche possibilit`a che costituiscoFigura 11.6: Link and Materials e Mesh in no le fondamenta di tutti i modelModalit` a Edit li.
Vertici Un vertice `e principalmente un punto o una posizione nello spazio 3D. Di solito `e invisibile nel rendering e in Modalit` a Oggetto. (Non si commetta l’errore di confondere il punto centrale di un oggetto con un vertice; `e simile, ma `e pi` u grande e non si pu`o selezionare). Per creare un nuovo vertice, si passa in Modalit`a Edit, si tiene premuto CTRL e click con LMB . Ovviamente, giacch´e lo schermo di un computer `e bidimensionale, Blender non pu` o determinare tutte e tre le coordinate da un click del mouse, quindi il nuovo vertice `e posto alla profondit` a del cursore 3D ’dentro’ lo schermo. Ogni vertice selezionato precedentemente viene automaticamente connesso al nuovo con un lato.
Lati Un lato connette sempre due vertici con una linea retta. I lati sono i ’fili’ che si vedono guardando una mesh nella vista a fil-di-ferro. Di solito sono invisibili sull’immagine del rendering. Sono usati per costruire facce. Un lato si crea selezionando due vertici e premendo FKEY .
Facce Una Faccia `e la struttura a pi` u alto livello in una mesh. Le facce vengono usate per costruire la reale superficie dell’oggetto. Sono queste che si vedono nel rendering della mesh. Una Faccia `e definita come l’area fra tre o quattro vertici, con un Bordo su ogni lato. I triangoli vanno sempre bene, dato che sono sempre piatti e facili da calcolare. Si presti attenzione quando si usano facce a quattro lati, giacch´e internamente sono semplicemente divise in due triangoli. Le facce a quattro lati funzionano bene solo se la Faccia `e particolarmente piatta (tutti i punti giacciono su un piano immaginario), e convessa (nessuno degli angoli ai vertici `e maggiore o uguale a 180 gradi). Questo `e il caso delle facce di un cubo, ad esempio. (Questo `e il motivo per cui non si possono vedere tutte le diagonali nel modello a fil-di-ferro, in quanto dovrebbero dividere ciascuna faccia quadrata in due triangoli. Mentre si potrebbe costruire un cubo con facce triangolari, ma apparirebbe solo pi` u confuso in Modalit`a Edit).
` EDIT [EDITMODE] CAPITOLO 11. MODALITA
104
Un’area fra tre o quattro vertici, evidenziata dai Lati, pu`o non costituire una faccia. Se tale area non contiene una faccia, essa risulter`a semplicemente trasparente o non esistente nell’immagine del rendering. Per creare una Faccia, si selezionano tre o quattro vertici adatti e si preme FKEY .
11.2
Modalit` a Vertici, Lato e Faccia
In EditMode esistono tre diverse modalit`a di selezione. • Modo Vertices (Vertici). Si preme CTRL-TAB e si seleziona Vertices dal men` u. I vertici selezionati vengono disegnati in giallo e quelli non selezionati in rosa. • Modo Edges (Lati). Si preme CTRL-TAB e si seleziona Edges dal men` u. In questa modalit` a non vengono disegnati i vertici. Al loro posto vengono disegnati i lati selezionati in giallo e quelli non selezionati in nero. • Modo Faces (Facce). Si preme CTRL-TAB e si seleziona Faces dal men` u. In questo modo vengono selezionate le facce con un punto di selezione al centro che viene usato per la selezione della faccia stessa. Le facce selezionate appaiono in giallo col punto di selezione in arancione, le facce non selezionate appaiono nere. Quasi tutti gli strumenti di modifica sono disponibili in tutte e tre le modalit`a. quindi si pu` o Ruotare ( Rotate ), Dimensionare ( Scale ), Estrudere ( Extrude ) ecc. in tutti i modi. Ovviamente la rotazione ed il dimensionamento di un singolo vertice non fa niente di utile, quindi alcuni strumenti risultano pi` u validi in certi modi.
Figura 11.7: Il menu di selezione EditMode. CTRL-TAB Si pu` o entrare nei diversi modi selezionando uno dei tre pulsanti nella barra degli strumenti. Vedi EditMode selection buttons. . Utilizzando i pulsanti si possono ottenere anche delle modalit` a miste cliccando sui pulsanti con SHIFT-LMB . Note: I pulsanti di Selezione dei Modi appaiono in EditMode . Figura 11.8: EditMode selection buttons. Passando dalla modalit` a Vertices alla modalit`a Edges e dalla modalit` a Edges alla modalit` a Faces , le parti selezionate resteranno selezionate se formano un insieme completo nel nuovo modo. Per esempio, se sono selezionati tutti
11.3. MODIFICHE ELEMENTARI
105
e quattro i lati di una faccia, passando dal modo Edges al modo Faces si manterr`a la faccia selezionata. Tutte le parti selezionate che non formano un insieme completo nel nuovo modo si de-selezioneranno. Le immagini Esempio Modo Vertici , Esempio Modo Lato , Esempio Modo Faccia e Esempio Modo Misto , sono degli esempi delle diverse modalit`a disponibili.
11.3
Modifiche elementari
La maggior parte delle operazioni semplici del Modo Oggetto (come selezionare, spostare, ruotare e dimensionare) funzionano in modo identico sui vertici come sugli oggetti. In questo modo, si pu` o imparare molto rapidamente come gestire le operazioni elementari in Modo Edit. La sola differenza degna di nota `e una nuova opzione del dimensionamento, ALT-S che posiziona i vertici selezionati lungo la direzione delle normali (ingrassa-dimagrisce). Il tronco di piramide in figura, per esempio, `e stato creato con i seguenti passi: • Si aggiunge un cubo ad una scena vuota. Si entra in Modo Edit ( TAB se gi`a non lo si `e). • Ci si assicura che tutti i vertici siano de-selezionati (viola). Si usa la Selezione Delimitata ( BKEY ) per selezionare i quattro vertici in alto. • Si controlla che il centro per il dimensionamento NON sia impostato sul cursore 3D (non si deve vedere questa immagine: ), quindi si passa al modo dimensionamento ( SKEY ), si riduce la dimensione e si conferma con LMB . • Si esce da EditMode premendo TAB .
Figura 11.9: Tronco di piramide. Una funzionalit` a extra per il Modo Edit `e lo strumento di Mirroring . Se si hanno dei vertici selezionati e si preme MKEY apparir`a un Men` u con nove voci ( Mirror Axis ). Da queste si pu` o scegliere di specchiare i vertici selezionati rispetto a ciascuno degli assi X, Y o Z del riferimento Globale, Locale o Visivo. Una feature addizionale in EditMode `e la modalit`a CircleSelect. Si richiama tramite la doppia pressione del tasto BKEY . Un cerchio di color grigio chiaro, verr`a disegnato attorno al cursore e ogni click LMB seleziona tutti i vertici al suo interno. NUM+ e NUM- o ALT-U menu also contains the option All Changes . This option is more powerful than merely pressing UKEY repeatedly, and will reload the mesh data as
` EDIT [EDITMODE] CAPITOLO 11. MODALITA
106
it was at the beginning of your edit session, even if you have used up all your undo steps.
Figura 11.10: Asse di Mirror Mesh Undo has the potential to be very memory intensive. A mesh of 64,000 faces and verts can use over 3MBs of RAM per undo step! If you are on a machine that is strapped for RAM (Memory), in the User reference Window under Edit Methods , there is a NumButton ( Editmode undo ) for setting the maximum number of undo steps saved see ( User Preferences/Edit Methods ). Figura 11.11: User The allowable range is between 1 and 64. The default is Preferences/Edit 32. Methods
11.4
Smoothing
As seen in the previous sections, polygons are central to Blender. Most objects in Blender are represented by polygons and truly curved objects are often approximated by polygon meshes. When rendering images, you may notice that these polygons appear as a series of small, flat faces. ( Simple un-smoothed test object ). Sometimes this is a desirable effect, but usually we want our objects to look nice and smooth. This section shows you how to smooth an object, and how to apply the AutoSmooth filter to quickly and easily combine smooth and faceted polygons in the same object. There are two ways to activate Blender’s face smoothing features. The easiest way is to set an entire object as smooth or faceted by selecting a mesh object, in ObjectMode, switching to the Editing Context ( F9 ), and clicking the Set Smooth button in the Link and Materials panel ( Set Smooth and Set Solid buttons of EditButtons window ).
11.4. SMOOTHING
107
Figura 11.12: Simple un-smoothed test object
The button does not stay pressed, but forces Blender to assign the smoothing attribute to each face in the mesh. Now, rendering the image with ( F12 ) should produce the image shown in ( Completely smoothed by ’Set Smooth’ ). Notice that the outline of the object is still strongly faceted. Activating the smoothing features doesn’t actually modify the object’s geometry; it changes the way the shading is calculated across the surfaces, giving the illusion of a smooth surface. Click the Set Solid button in Figura 11.13: Set Smoothe same panel to revert the shading back to th and Set Solid buttons of that shown in Simple un-smoothed test object abo- EditButtons window ve.
108
` EDIT [EDITMODE] CAPITOLO 11. MODALITA
Figura 11.14: Completely smoothed by ’Set Smooth’ Alternatively, you can choose which faces to smooth by entering EditMode for the object with TAB , then selecting the faces and clicking the Set Smooth button ( Object in editmode with some faces selected. ). The selected faces are in marked in Yellow. When the mesh is in Editmode , only the selected faces will receive the smoothing attribute. You can set solid faces (removing the smoothing attribute) in the same way by selecting Figura 11.15: Object in editmode with faces and clicking the Set Solid but- some faces selected. ton. It can be difficult to create certain combinations of smooth and solid faces using the above techniques alone. Though there are work-arounds (such as splitting off sets of faces by selecting them and pressing YKEY ), there is an easier way to combine smooth and solid faces, by using AutoSmooth. Press the AutoSmooth button in the Mesh panel of the Edit Buttons ( AutoSmooth button group in the EditButtons window. ) to indicate which faces should be smoothed on the basis of the angle between faces ( Same test object with AutoSmooth enabled ). Angles on the model that are sharper than the angle specified in the Degr NumButton will not be smoothed. Higher values will produce more smoothed faces, while the lowest setting
11.4. SMOOTHING
109
will look identical to a mesh that has been set completely solid. Only faces that have been set as smooth will be affected by the AutoSmooth feature. A mesh, or any faces that have been set as solid will not change their shading when AutoSmooth is activated. This allows you extra control over which faces will be smoothed and which ones won’t by overriding the decisions made by the AutoSmooth algorithm.
Figura 11.16: AutoSmooth button group in the EditButtons window.
Figura 11.17: Same test object with AutoSmooth enabled
110
` EDIT [EDITMODE] CAPITOLO 11. MODALITA
Capitolo 12
Modellazione Elementare della Mesh In questa sezione descriveremo alcuni degli strumenti pi` u comuni di modellazione della Mesh: Extrude (estrudi), Spin (estrusione circolare), Spin Dup (duplica con rotazione), Screw (avvitamento) and Warp (curvatura). Ogni strumento `e descritto usando un semplice tutorial. Extrude viene spiegato procedendo attraverso una semplice sequenza di passaggi per la creazione di una spada. Spin viene spiegato facendo un semplice bicchiere da vino. Spin Dup `e spiegato creando le tacche delle ore del quadrante di un orologio. Screw `e spiegato facendo una vite. Ed infine Warp `e spiegato curvando del testo 3D.
12.1
Extrude (Estrusione)
Uno strumento di capitale importanza per lavorare con le Mesh `e il comando Extrude ( EKEY ). Questo comando permette di creare cubi da rettangoli e cilindri da cerchi, cos`ı come risulta facilissimo creare cose come i rami di un albero. Bench´e il processo sia molto intuitivo, i principi che stanno dietro l’Estrusione sono abbastanza elaborati come si evidenzier` a in seguito. • Prima di tutto, l’algoritmo determina il perimetro chiuso esterno dell’Estrusione, vale a dire quali, tra i lati selezionati, saranno trasformati in facce. Per default, l’algoritmo considera i lati appartenenti a due o pi` u facce selezionate come interni, e quindi non facenti parte del perimetro chiuso. • I lati appartenenti al perimetro chiuso sono tramutati in facce. • Se i lati nel perimetro chiuso appartengono solo ad una faccia nella mesh completa, allora tutte le facce selezionate vengono duplicate e collegate alle facce appena create. Per esempio, in questa fase i rettangoli diventeranno parallelepipedi. • In altri casi, le facce selezionate sono collegate a quelle appena create ma non sono duplicate. Questo per evitare la creazione di facce indesiderate ritenute ’interne’ 111
112
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH alla mesh risultante. Questa distinzione `e estremamente importante dato che assicura la costruzione di volumi chiusi coerenti tutte le volte che si Estrude. • I lati che non riguardano le facce selezionate, che formano quindi un perimetro chiuso ’aperto’, vengono duplicate e viene creata una nuova faccia tra il nuovo lato e l’originale. • I singoli vertici selezionati che non appartengono ai lati selezionati, sono duplicati e, tra i due, viene creato un nuovo lato.
Appena completato l’algoritmo d’Estrusione, si entra automaticamente in modo Traslazione [Grab], quindi le facce, lati e vertici appena create possono essere spostate col mouse. L’Estrusione `e uno degli strumenti utilizzati pi` u frequentemente in Blender. Esso `e semplice, facile da usare, utilissimo. La seguente breve lezione descrive come costruire una spada con l’estrusione.
12.1.1
La lama
• Si avvii Blender e si cancelli il piano di default. Nella vista dall’alto, si aggiunga una mesh circle con otto vertici. Si spostino i vertici secondo la disposizione mostrata in Il cerchio deformato, diventa la sezione trasversale della lama. • Si selezionino tutti i vertici e li si ridimensioni con SKEY in modo da ridurre la forma in due unit` a di griglia. Si cambi in vista frontale con NUM1 .
Figura 12.1: Il cerchio deformato, diventa la sezione trasversale della lama. • La forma creata `e la base della lama. Usando l’estrusione creeremo la lama con pochi semplici passi. Con tutti i vertici selezionati si prema EKEY , o premete il pulsante {Literal—Extrude}} nel pannello Mesh Tools del contesto Edit ( F9 - Il pulsante di Estrusione nel contesto dei Pulsanti di Edit. ).
12.1. EXTRUDE (ESTRUSIONE)
113
Figura 12.2: Il pulsante di Estrusione nel contesto dei Pulsanti di Edit. • Apparir` a una richiesta: Ok? Extrude ( Box di conferma dell’estrusione. ). Click su questo testo o si prema ENTER per confermare, altrimenti si sposti il cursore esternamente, o si prema ESC per uscire. Se ora si sposta il mouse si vedr`a che Blender ha duplicato i vertici, li ha connessi agli originali con i lati e le facce, ed `e entrato in modo traslazione.
Figura 12.3: Box di conferma dell’estrusione. • Si spostino i nuovi vertici in alto di 30 unit`a, vincolando il movimento con CTRL , quindi click su LMB per confermare la loro nuova posizione, ed un leggero ridimensionamento con SKEY ( La lama ). • Si prema EKEY nuovamente per estrudere la punta della lama quindi si spostino i vertici in alto di cinque unit`a. Per far s`ı che la lama termini in un vertice, si ridimensionino i vertici della punta fino a 0.000 (mantenendo CTRL per questo) e si prema WKEY > Remove Doubles ( Il Men` u Edit della Mesh. ) o sul pulsante Rem Doubles nella pulsantiera di edit ( F9 ). Blender informer`a che ha rimosso sette degli otto vertici e ne resta solo uno. La lama `e completa! ( La lama completata. )
12.1.2
L’impugnatura
• Si lasci il Modo Edit e si sposti la lama su un lato. Si aggiunga una sfera UV con 16 segmenti ed altrettanti anelli e si deselezionino tutti i vertici con AKEY .
114
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
Figura 12.4: lama
La
• Si selezionino i tre anelli superiori con la Selezione Delimitata [Borderselect] BKEY e li si cancellino con XKEY >>Vertices ( La sfera UV per l’impugnatura: i vertici da rimuovere. ).
• Si selezionino i vertici dell’anello superiore e si estrudano. Si sposti l’anello in alto di quattro unit` a e si ingrandisca un po’ ( La prima estrusione per l’impugnatura. ), quindi si estruda e ci si sposti di quattro unit`a ancora due volte e si riduce un po’ l’ultimo anello ( L’impugnatura completa. ).
Figura 12.5: La sfera UV per l’impugnatura: i vertici da rimuovere.
12.2. SPIN AND SPINDUP
115
Figura 12.6: La prima estrusione per l’impugnatura. • Si lasci il Modo Edit e si ridimensioni l’intera impugnatura in modo che sia proporzionata alla lama, ponendola poi sotto la lama stessa.
12.1.3
L’Elsa Per adesso si dovrebbe saper usare la sequenza ’estrusione>spostamento>ridimensionamento’ quindi si provi a modellare un’elsa fatta bene. Si inizi con un cubo e si estrudano i diversi lati un paio di volte, ridimensionandoli quando `e necessario. Si dovrebbe essere in grado di avere qualcosa simile a quello mostrato in ( L’elsa completa. ). La spada finita, con le textures ed i materiali.
Figura 12.7: L’impugnatura completa. Figura 12.8: L’elsa completa. Extrude
12.2
Spin and SpinDup
Spin (estrusione circolare) e Spin Dup (roto-duplicazione) sono altri due potentissimi strumenti di modellazione che consentono di creare facilmente corpi di rotazione o strut-
116
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
ture assialmente periodiche.
12.2.1
Spin: Estrusione circolare Lo strumento Spin in Blender si usa per creare quel tipo di oggetti che si possono produrre su un tornio. (Per questa ragione, in letteratura, a questo strumento ci si riferisce spesso come strumentotornio [lathe] o sweep).
Prima si crea una mesh che rappresenti il Figura 12.9: La spada finita, con le textures ed i materiali. profilo del proprio oggetto. Se si sta modellando un oggetto cavo, `e buona norma ispessire il profilo. ( Il profilo del bicchiere. ) mostra il profilo di un bicchiere da vino che modelleremo per una dimostrazione. In EditMode , e con tutti i vertici selezionati, si acceda al Contesto di Editing ( F9 ). Il pulsante Degr nel Pannello Mesh Tools indica il numero di gradi di rotazione dell’oggetto (in questo caso si vuole una rotazione completa di 360◦ ). Il pulsante Steps indica quanti profili ci debbano essere in tale rotazione ( I Pulsanti dello Spin. ). Figura 12.10: Il profilo del bicchiere.
Come per la Roto-Duplicazione [SpinDup] (discussa nella prossima sezione), gli effetti dello Spin dipendono dalla
12.2. SPIN AND SPINDUP
117
posizione del cursore e da quale finestra (vista) sia attiva. Ruoteremo l’oggetto attorno al cursore nella vista dall’alto. Ci si sposti nella vista dall’alto con NUM7 .
Figura 12.11: I Pulsanti dello Spin. • Si pone il cursore lungo il centro del profilo selezionando semplicemente uno dei vertici lungo il centro ed accostando il cursore in tale posizione con SHIFT-S >>Curs->Sel. ( Il profilo del bicchiere, visto dall’alto in Modo Edit, appena prima della rotazione. ) mostra il profilo del bicchiere da vino dalla vista dall’alto, col cursore correttamente posizionato.
Figura 12.12: Il profilo del bicchiere, visto dall’alto in Modo Edit, appena prima della rotazione. Prima di continuare, si annoti il numero di vertici nel profilo. Questa informazione pu` o essere reperita nella barra informativa nella parte superiore del- Figura 12.13: Dati della mesh: l’interfaccia di Blender ( Dati della me- numero dei vertici e delle facce. sh: Il numero dei vertici e delle facce. ).
Il
• Click sul pulsante Spin. Se si ha pi` u di una finestra aperta, il cursore si trasformer` a in una freccia con un punto interrogativo e si dovr`a cliccare nella finestra contenente la vista dall’alto, prima di continuare. Se si ha una sola finestra aperta, la rotazione avverr` a immediatamente. Il profilo ribaltato. mostra il risultato dell’avvenuta rotazione.
118
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
Figura 12.14: Il profilo ribaltato. • L’operazione di rotazione lascia dei vertici duplicati vicino al profilo. Si possono selezionare tutti i vertici della cucitura con la Selezione Delimitata ( BKEY ) illustrata in ( Selezione dei vertici della cucitura. ) ed eseguire l’operazione di rimozione dei duplicati ( Remove Doubles ). Si noti il conteggio dei vertici prima e dopo l’operazione di rimozione dei duplicati Remove Doubles ( Il numero dei vertici dopo la rimozione dei duplicati. ). Se tutto `e andato bene, il totale dei vertici finali (38 in questo esempio) dovrebbe coincidere col numero della Dati della mesh: Il numero dei vertici e delle facce. . Altrimenti qualche vertice si sar` a perso e lo si dovr` a saldare manualmente. Oppure, peggio, sono stati uniti troppi vertici.
Figura 12.15: cucitura.
Selezione dei vertici della
Figura 12.16: Il numero dei vertici dopo la rimozione dei duplicati. Fondere due vertici in uno: Per riunire (saldare) assieme due vertici, si selezionano entrambi mantenendo SHIF
12.2. SPIN AND SPINDUP
119
Tutto ci` o che resta ora `e ricalcolare le normali selezionando tutti i vertici e premendo CTRL-N >> Recalc Normals Outside . A questo punto si pu` o uscire dall’EditMode ed applicare i materiali e la levigazione [smoothing], impostare qualche luce, una telecamera ed effettuare un rendering. ( Il rendering finale dei bicchieri. ) mostra il bicchiere da vino finito.
12.2.2
SpinDup: Roto-Duplicazione
Lo strumento Spin Dup `e un modo magnifico per fare rapidamente una serie di copie di un oggetto lungo una circonferenza. Per esempio, se `e stato modellato un orologio, e si vogliono aggiungere i segni delle ore. Si modella solo una tacca, nella posizione delle 12:00 ( La tacca dell’ora indicata dalla freccia. ). Si seleziona la tacca e si va nel Contesto di Editing con F9 .
Figura 12.18: Il rendering finale dei bicchieri.
Figura 12.17: Il men` u Merge.
120
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
Figura 12.19: La tacca dell’ora indicata dalla freccia. Si impostano il numero di gradi nel Pulsante numerico Degr: nel Pannello Mesh Tools a 360. Volendo 12 copie dell’oggetto si immette 12 in Steps ( I pulsanti dello Spin Dup. ).
• Si cambi la vista in quella in cui si vuol ruotare l’oggetto usando la tastiera numerica. Si noti che il risultato del comando Spin Dup dipende dalla vista usata quando si preme il pulsante. Figura 12.20: I pulsanti dello Spin Dup. • Si posiziona il cursore al centro della rotazione. L’oggetto sar` a ruotato attorno a questo punto.
Posizionamento del cursore: Per piazzare il cursore nella locazione esatta di un oggetto esistente o di un vertice
• Select the object you wish to duplicate and enter EditMode with TAB . • In EditMode , si selezionano i vertici che si vogliono duplicare (si noti che si possono selezionare tutti i vertici con AKEY o tutti i vertici collegati al punto sotto il cursore con LKEY ). Si veda ( La Mesh selezionata e pronta per lo SpinDup. ). • Si preme il pulsante Spin Dup. Se si ha pi` u di una finestra 3D aperta, il cursore si trasformer` a in una freccia con un punto interrogativo e si dovr`a cliccare nella finestra in cui si vorr` a effettuare la rotazione. In questo caso, si vuol usare la finestra della vista frontale ( Selezione della vista per lo Spin Dup. ). Se la vista voluta non `e visibile, si pu`o eliminare la freccia/punto interrogativo con ESC finch´e non si cambi una finestra nella vista appropriata col tastierino numerico.
12.2. SPIN AND SPINDUP
121
Figura 12.21: La Mesh selezionata e pronta per lo SpinDup.
Figura 12.22: Selezione della vista per lo Spin Dup. to nella stessa posizione del primo oggetto, producendo una duplicazione. Si noter`a che dopo aver premuto il pulsante Spin Dup , resta selezionata la geometria originale. Per cancellarla, si preme semplicemente XKEY >>Vertices. L’oggetto sorgente viene cancellato, ma resta la versione duplicata sotto di esso ( La rimozione dell’oggetto duplicato. ).
Evitare duplicati: Se non dispiace un po’ di matematica dispiaceranno i duplicati giacch´e si possono evitare sin
122
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
( Il rendering finale dell’orologio. ) mostra il rendering finale dell’orologio.
12.3
Figura 12.23: duplicato.
La rimozione dell’oggetto
Avvitamento [Screw]
Questo strumento combina uno Spin ricorsivo con una traslazione, per generare un oggetto a vite o elicoidale. Questo strumento si usa per creare eliche, molle, o strutture a forma di conchiglia.
Figura 12.24: Il rendering finale dell’orologio. Il metodo per usare la funzione Screw `e rigido:
• Si imposta la Finestra 3D in vista frontale ( NUM1 ). • Si pone il cursore 3D nella posizione attraverso cui deve passare l’asse di rotazione. Tale asse sar` a verticale. • Ci si assicura che sia sempre disponibile una poli-linea aperta . Questa pu`o essere un singolo lato, come mostrato nella figura, o un semicerchio, o qualsiasi cosa. Bisogna solo assicurarsi che ci siano due estremit`a ’libere’; due vertici lungo uno
12.4. WARP: STRUMENTO PER LA CURVATURA
123
stesso lato collegati quindi ad un altro vertice. La funzione Screw localizza questi due punti e li usa per calcolare il vettore di traslazione da aggiungere allo Spin per ogni rotazione completa ( Come fare una molla: prima (a sinistra) e dopo (a destra) dello strumento Screw. ). La presenza di due vertici nella stessa posizione, crea uno Spin normale; altrimenti appaiono cose interessanti! • Si selezionano tutti i vertici che dovranno partecipare alla Roto-traslazione (Avvitamento o Screw). • Si assegnano ai Pulsanti Numerici Steps: e Turns: nel Pannello Mesh Tools i valori desiderati. Steps: determina quanti profili saranno ripetuti in 360◦ di rotazione, mentre Turns: imposta il numero di rotazioni complete da 360◦ da compiere. • Si prema Screw !
Figura 12.25: Come fare una molla: prima (a sinistra) e dopo (a destra) dello strumento Screw. Se ci sono pi` u Finestre 3D, il cursore del mouse si trasforma in un punto interrogativo. Click sulla Finestra 3D in cui si deve eseguire lo Screw. Se le due estremit`a libere sono allineate verticalmente il risultato `e simile a quello visto sopra. Altrimenti, il vettore di traslazione resta verticale, pari alla componente verticale del vettore che unisce i due vertici ’liberi’, mentre la componente orizzontale genera un allargamento (o restringimento) [del passo] dell’avvitamento come mostrato in Avvitamento allargato (a destra) ottenuto col profilo di sinistra. .
12.4
Warp: Strumento per la Curvatura
Il Warp (Curvatura) `e uno strumento di Blender poco conosciuto, in parte perch´e non si trova nella finestra del Pulsanti di Edit, ed in parte perch´e `e utile solo in casi particolari. Ad ogni modo, non `e qualcosa di cui l’utente medio di Blender necessita quotidianamente. Un testo avvolto a semicerchio `e utile nella creazione di loghi volanti, ma sarebbe difficile da modellarlo senza usare lo strumento Warp. Per il nostro esempio, curveremo
124
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
la frase Amazingly Warped Text attorno ad una sfera. • Per prima cosa si aggiunge la sfera. • Quindi si aggiunge il testo nella vista frontale, nel Contesto di Editing e nel pannello Curve and Surface si imposta Ext1 a 0.1 - rendendo il testo 3D, e Ext2 a 0.01, per aggiungere una bella smussatura ai bordi. Si renda il BevResol 1 o 2 per avere una smussatura levigata ed una risoluzione pi` u bassa in modo che il numero dei vertici non sia troppo alto nella successiva suddivisione dell’oggetto ( Le impostazioni del Testo. - e si veda il capitolo testo ). Si converte l’oggetto in curva, quindi in una mesh, (due volte ( ALT-C ) giacch´e lo strumento di curvatura non funziona su testo n´e su curve. Si suddivide due volte la mesh, in modo che la geometria possa cambiare gradualmente, senza grinze.
Figura 12.26: Avvitamento allargato (a destra) ottenuto col profilo di sinistra. Si cambia nella vista dall’alto e si sposta la mesh lontano dal cursore 3D. Tale distanza definisce il raggio della curvatura (Si veda la Vista dall’alto del testo e della sfera. )
Figura 12.27: Le impostazioni del Testo.
12.4. WARP: STRUMENTO PER LA CURVATURA
125
Figura 12.28: Vista dall’alto del testo e della sfera. vertici. Si preme SHIFT-W per attivare lo strumento per la curvatura. Si sposta il mouse in alto o in basso per definire interattivamente l’ammontare della curvatura. ( Il testo curvato. ). Tenendo premuto CTRL si fa in modo da modificare la curvatura a passi di cinque gradi.
Ora si pu` o cambiare nella vista telecamera, aggiungere i materiali, le luci ed effettuare il rendering ( Il rendering finale. ).
Si pone la mesh in Modo Edit ( TAB ) e si preme AKEY per selezionare tutti i
126
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
Figura 12.29: Il testo curvato.
12.4. WARP: STRUMENTO PER LA CURVATURA
Figura 12.30: Il rendering finale.
127
128
CAPITOLO 12. MODELLAZIONE ELEMENTARE DELLA MESH
Capitolo 13
Superfici di suddivisione Blender fornisce diverse funzionalit`a avanzate per la Modellazione della Mesh, per lo pi` u rivolte alla facile gestione di mesh complesse o piuttosto consentire una modellazione economica, e con un basso numero di vertici di complesse superfici curve.
13.1
Superfici di suddivisione col metodo CatmullClark
Con qualsiasi Mesh normale come punto di partenza, Blender pu`o calcolare al volo una suddivisione morbida, mentre si modella o durante il rendering, tramite la Suddivisione delle Superfici di Catmull-Clark o, in breve SubSurf . Il SubSurf `e un algoritmo matematico per calcolare una suddivisione levigata di una mesh. Questo consente un’alta risoluzione della Mesh nella modellazione, senza dover mantenere e salvare una gran quantit` a di dati. Permette di avere un aspetto ’organico’ liscio per i modelli. In realt` a una Mesh con SubSurf e le superfici NURBS hanno molti punti in comune in quanto entrambi dipendono da una mesh primitiva con pochi poligoni per definire una superficie levigata ad alta risoluzione. Ma ci sono anche notevoli differenze:
• Le NURBS consentono un controllo pi` u preciso della superficie, poich´e `e possibile impostare i pesi su ciascun punto di controllo della mesh. Sulla mesh con il SubSurf non si pu` o agire sui pesi. • Con il SubSurf si ha un miglior approccio per la modellazione. Dato che una SubSurf `e un’operazione matematica applicata ad una mesh, si possono usare tutte le tecniche di modellazione descritte in questo capitolo sulla mesh. Ci sono molte tecniche, che sono molto pi` u flessibili, di quelle disponibili per il controllo dei poligoni delle NURBS. SubSurf `e un’opzione della Mesh, attivata nel Contesto di editing del Pannello Mesh ( F9 - I pulsanti del SubSurf. ). I pulsanti numerici immediatamente successivi, definiscono, sulla sinistra, la risoluzione (o il livello) di suddivisione da usarsi nella visualizzazione 3D; quello sulla destra la risoluzione da usarsi nel rendering. Se si `e in Modo Oggetto si 129
130
CAPITOLO 13. SUPERFICI DI SUDDIVISIONE
pu` o usare anche SHIFT-O . Questo commuta SubSurf tra On e Off. Il livello di SubSurf viene controllato anche da CTRL-1 a CTRL-4 , ma questo riguarda solo il livello di suddivisione nella visualizzazione.
Dato che il calcolo della SubSurf viene eseguito sia in tempo reale, mentre si modella, che nel momento del rendering, e richiede molta CPU, `e buona norma tenere basso il livello di SubSurf (ma non zero) mentre si modella; pi` u alto durante il rendering.
Dalla versione 2.3 Blender ha un nuovo pulsante relativo al SubSurf: Optimal . Questo cambia il modo in cui vengono disegnate le SubSurf della mesh e pu`o essere di grande aiuto nella modellazione. Suzanne con la suddivisione della superficie. mostra una serie di disegni rappresentanti diverse combinazioni sulla Mesh di Suzanne.
Figura 13.1: SubSurf.
I pulsanti del
Suddivisione di semplici facce quadrate e triangolari. mostra i livelli 0,1,2 e 3 di SubSurf su una sola faccia quadrata e su una singola faccia triangolare. Questa suddivisione `e eseguita, su una mesh generica, per cia` evidente come ciascuna singola faccia quadranscuna faccia quadrata o triangolare. E golare produce 4 facce nella mesh col SubSurf. n `e il livello di SubSurf, o risoluzione, mentre ciascuna faccia triangolare produce 3·4 nuove facce ( Suddivisione di semplici facce quadrate e triangolari. ). Da questo enorme aumento di facce (e vertici) ne deriva un rallentamento di tutte le azioni di modifica, e di rendering, ed evidenzia la necessit`a di abbassare il livello di SubSurf nel processo di modifica e nel rendering.
13.1. SUPERFICI DI SUDDIVISIONE COL METODO CATMULL-CLARK
131
132
CAPITOLO 13. SUPERFICI DI SUDDIVISIONE
Il sistema di suddivisione di Blender `e basato sull’algoritmo di CatmullClark. Questo produce delle belle mesh levigate ma ogni faccia col ’SubSurf’, ovvero, ogni piccola faccia creata dall’algoritmo a partire da una Figura 13.3: Suddivisione di semplici facce quadrate e triangolari. sola faccia iniziale della mesh originale, condivide l’orientamento della normale della faccia originale. Questo non `e un problema per la forma stessa, come mostra Vista laterale di mesh sub-suddivise. Con normali casuali (in alto) e con normali coerenti (in basso) ma `e un problema nella fase di rendering, ed in rappresentazione solida, dove i bruschi cambiamenti della normale producono delle brutte linee nere ( Vista solida di mesh sub-suddivise con normali coerenti (in alto) e normali incoerenti (in basso). ). Per consentire a Blender di ricalcolare le normali si usa il comando CTRL-N in Modo Edit, con tutti i vertici selezionati. In queste immagini le normali alla faccia sono disegnate in azzurro. Il disegno delle normali si abilita nel men` u dei Pulsanti di Edit ( F9 ). Si noti che Blender non pu`o ricalcolare correttamente le normali se la mesh non `e Manifold. Una mesh Non Manifold `e una mesh per cui non `e possibile calcolarne univocamente il ’fuori’. Fondamentalmente, dal Figura 13.4: Vista laterale di mesh sub-suddivise. Con punto di vista di Blender, `e normali casuali (in alto) e con normali coerenti (in una mesh dove ci sono labasso). ti comuni a pi` u di due facce.
13.1. SUPERFICI DI SUDDIVISIONE COL METODO CATMULL-CLARK
133
Figura 13.5: Vista solida di mesh subsuddivise con normali coerenti (in alto) e normali incoerenti (in basso). Una mesh Non-Manifold non costituisce un problema per le mesh convenzionali, ma pu`o provocare qualche brutta grinza nelle mesh con SubSurf. Inoltre, non consente la decimazione, quindi `e meglio evitarle il pi` u possibile. Si usano queste due regole per dire se una mesh `e Non Manifold:
Figura 13.6: Manifold.
Una mesh Non
• Il Ricalcolo delle normali lascia delle linee nere da qualche parte
• Lo strumento Decimator nel Pannello Mesh si rifiuta di funzionare dicendo che la mesh `e No Manifold
Lo strumento SubSurf consente la costruzione di ottimi modelli organici, ma si ricordi che una Mesh normale con facce quadrate, invece che triangolari, d`a il risultato migliore. Un Doccione (Gargoyle) con Mesh base (a sinistra) ed una con Mesh con SubSurf a livello 2 (a destra). e Vista Piena (a sinistra) ed il rendering finale (a destra) del Doccione (Gargoyle). mostrano un esempio di cosa possa essere fatto col SubSurf di Blender.
134
CAPITOLO 13. SUPERFICI DI SUDDIVISIONE
Figura 13.7: Un Doccione (Gargoyle) con Mesh base (a sinistra) ed una con Mesh con SubSurf a livello 2 (a destra).
13.2
Frastagliature (irregolarit` a) pesate per superfici suddivise
Le frastagliature [creases] pesate per superfici suddivise consentono la regolazione della linearit` a [sharpness] dei lati. Le frastagliature sono una propriet`a dei lati di una mesh, e si possono modificare in Modo Edit di una mesh quando questa `e una subsurf. Si selezionano i lati che si vogliono rendere irregolari, e si preme SHIFT-E per modificare la linearit` a del lato. Si pu` o abilitare un’indicazione della regolarit`a di un lato abilitando Draw Creases . Si veda Il pannello Mesh Tools 1.
` PESATE PER SUPERFICI SUDDIVISE135 13.2. FRASTAGLIATURE (IRREGOLARITA)
Figura 13.8: Vista Piena (a sinistra) ed il rendering finale (a destra) del Doccione (Gargoyle).
Il valore della linearit` a sul lato `e indicato come una parte pi` u spessa sul lato. Se il lato ha un valore di sharpness di 1.0, il bordo avr`a un aspetto pi` u spesso, e se il valore di sharpness `e 0.0, il bordo apparir` a assottigliato. Se il valore di sharpness `e tra 0.0 e 1.0, solo parte del lato sar` a pi` u inspessito. Si veda Regolarit` a [sharpness] del lato intorno a 0.5.
136
Figura 13.9: Tools 1.
CAPITOLO 13. SUPERFICI DI SUDDIVISIONE
Il pannello Mesh Per usare le frastagliature bisogna attivare le sub-superfici. Si selezioni il cubo di default, se non se ne ha uno, lo si aggiunga! Si vada nel pannello Edit ( F9 ) e si prema il pulsante SubSurf . Ci si assicuri che il tipo di subsurf sia Catmull-Clark della lista a discesa, quindi si alza a 3 il livello di suddivisione sia per il valore di visualizzazione che quello di rendering. Si veda Il pannello Mesh . Il cubo avr`a l’aspetto di una sfera.
Figura 13.10: Regolarit` a [sharpness] del lato intorno a 0.5.
Si entri in Edit Mode ( TAB ), con il cubo selezionato. Di default si `e in modo Selezione Vertici , quindi si prema CTRLTAB per andare nel men` u Select Mode , Il men` u Select Mode , e si selezioni Edges (lati).
Figura 13.11: Il pannello Mesh Ora si selezionino tutti i lati premendo AKEY . Tutti i lati dovrebbero assumere un colore giallognolo, Tutti i lati selezionati. . Se tutti i lati diventano neri, allora qualcosa precedentemente era gi` a stato selezionato. Si prema ancora AKEY per selezionare tutti i lati.
` PESATE PER SUPERFICI SUDDIVISE137 13.2. FRASTAGLIATURE (IRREGOLARITA)
Figura 13.12: Il men` u Select Mode Ora si prema SHIFT-E per modificare il valore di sharpness del lato. Il valore di sharpness apparir`a in tempo reale nella barra degli strumenti, La regolarit` a [sharpness] del lato. . Si sposti il mouse avvicinandolo o allontanandolo dal/i lato/i per alterare il valore di sharpness. Si imposti il valore di 1.0 per tutti i lati. Il cubo torner`a ad apparire come un normale cubo.
Figura 13.13: Tutti i lati selezionati.
Si selezionino ora due lati opposti del cubo in alto. Si prema SHIFT-E per modificare il valore di sharpness. Si imposta il valore dei lati a 0.0, I due lati selezionati. .
Figura 13.14: La regolarit` a [sharpness] del lato.
Se si effettua il rendering si otterr`a un bel cubo con la parte superiore arrotondata, Il risultato. Un ottimo miglioramento nel flusso di lavoro per realizzare questo tipo di mesh!
138
Figura 13.15: I due lati selezionati.
Figura 13.16: Il risultato.
CAPITOLO 13. SUPERFICI DI SUDDIVISIONE
Capitolo 14
Strumenti per Lati e Facce Un punto chiave nella modellazione `e la necessit`a di aggiungere vertici in certe zone della mesh, e ci`o `e spesso inteso nel senso di spezzare o aggiungere spigoli in una data regione. Molti strumenti per gli spigoli sono raggruppati in un menu che `e collegato al pulsante KKEY ( Il menu Loop/Cut. ), ed inoltre ogni singolo strumento ha il proprio tasto specifico.
14.1
Figura 14.1: Il menu Loop/Cut.
Selezione di Spigolo/Faccia
In EditMode ci sono alcuni modi di selezionare gli Spigoli o le Facce ; implicitamente, explicitamente, in modo consequenziale (looping) o per regione. Implicitamente significa che si descrive un elemento pi` u complesso usando elementi meno complessi. Per esempio, per descrivere uno spigolo avete bisogno di specificare due vertici e per descrivere una faccia avete bisogno di specificare tre o pi` u vertici ovvero tre o pi` u spigoli. Figura 14.2: Le Il modo consequenziale (looping) `e un processo di selezione degli spi- Modalit´a di selegoli e delle facce basato su di un algoritmo che valuta come questi si zione relazionano tra di loro. Per regione (region) `e uno strumento che permette la selezione di spigoli e facce in base all’intersezione con una regione circolare 2D.
14.1.1
Selezione Esplicita dello Spigolo
Per selezionare uno spigolo si usa Edge select mode e RMB . Per selezionare spigoli aggiuntivi si usa SHIFT-RMB .
139
140
CAPITOLO 14. STRUMENTI PER LATI E FACCE
14.1.2
Selezione Implicita dello Spigolo
L’altro modo di selezionare uno spigolo ( Edge ) `e di selezionare i due vertici che delimitano lo spigolo interessato. Si indica quale spigolo selezionando i suoi vertici alle estremit`a. Per selezionare in modo implicito uno Spigolo si usa la modalit` a di selezione dei vertici ( Le Modalit` a di selezione ) in combinazione con RMB e/o SHIFT-RMB . ( Selezione Implicita dello Spigolo ) illustra uno spigolo selezionato su di un cubo usando Figura 14.3: Selezione i vertici –il cubo a sinistra. Mentre il cubo a destra illustra co- Implicita dello Spigosa appare quando si passa alla modalit` a di selezione degli lo. spigoli .
14.1.3
Selezione Esplicita della Faccia
Per selezionare una faccia si usa Modalit` a di selezione della Faccia ( Le Modalit` a di selezione ) e RMB . Per selezionare ulteriori facce si usa SHIFT-RMB .
14.1.4
Selezione Implicita della Faccia
Ci sono diversi modi di selezionare facce implicitamente. Il primo `e quello di selezionare quattro vertici che delimitano la faccia interessata. Si indica quale faccia selezionando i suoi vertici alle estremit` a. Per selezionare una faccia in modo implicito si usa o Vertex select mode o Edge select mode ; si vedano ( Le Modalit` a di selezione ) in combinazione con RMB e/o SHIFT-RMB . ( Selezione Implicita della Faccia ) mostra una faccia selezionata su di un cubo usando i Figura 14.4: Selezione vertici –nel caso del cubo di sinistra. Il cubo di destra `e ci`o Implicita della Faccia. che si vede passando alla modalit` a di selezione delle facce . Si pu` o anche selezionare in modo implicito una o pi` u facce selezionando gli spigoli che circondano la faccia interessata. Ci` o determiner`a lo stesso risultato di selezionarne i vertici.
14.1.5
Selezione degli spigoli consecutivi (looping)
Si possono selezionare gli spigoli anche usando lo strumento di selezione delle sequenze di spigoli ALT-RMB in una qualunque delle modalit`a di selezionei ( Le Modalit` a di selezione ). Questo selezioner` a una riga di spigoli che sono connessi in una linea, da un’estremit` a all’altra. L’algoritmo di selezione `e il seguente:
• Per prima cosa controlla se l’elemento selezionato si connette a soli 3 altri spigoli. • Se lo spigolo in questione `e gi`a stato aggiunto alla lista, la selezione termina.
14.1. SELEZIONE DI SPIGOLO/FACCIA
141
• Dei 3 spigoli che si connettono a quello attuale, quelli che condividono una faccia con lo spigolo in questione vengono esclusi e lo spigolo rimanente viene aggiunto alla lista e viene reso lo spigolo da analizzare. Un esempio `e facilmente illustrato in ( Selezione degli spigoli di Longitudine/Latitudine. ) La sfera di sinistra mostra uno spigolo che `e stato selezionato longitudinalmente. Si noti come la sequenza di spigoli sia aperta. Ci` o avviene perch`e l’algoritmo giunge ai vertici ai poli e termina perch`e ai poli convergono pi` u di 3 ulteriori spigoli. Comunque, la sfera di destra mostra uno spigolo che `e stato selezionato Figura 14.5: Selezione degli spigoli di Longitudinel senso della latitudine, formanne/Latitudine. do una sequenza chiusa di spigoli. Ci` o avviene perch`e l’algoritmo ritorna al primo spigolo da cui aveva iniziato. Si possono aggiungere altri spigoli con SHIFT-ALT-RMB .
14.1.6
Selezione di facce consecutive (looping)
` anche possibile usare un algoritmo di consecutivit`a leggermente diverso basato sulle E facce usando CTRL-ALT-RMB . Questo selezioner`a una riga di facce che sono connesse in linea retta lungo i loro spigoli opposti. L’algoritmo `e il seguente: • Una sequenza di facce `e costituita da due sequenze adiacenti di spigoli. • Si estende solo verso facce quadrilatere. • Termina quando incontra una faccia triangolare (e le due sequenze di spigoli di contorno terminano in uno). ( Alt a confronto con Ctrl-Alt ) mostra un esempio dei due differenti algoritmi. ` stato selezionato lo stesso spigolo ma E vengono generati due differenti gruppi di spigoli. Uno durante l’elaborazione considera gli spigoli, mentre l’altro le facce. Figura 14.6: Alt a confronto con Ctrl-Alt Le differenze negli algoritmi diventano pi` u evidenti quando si `e in modalit` a di selezione dei vertici ( Vertex select mode ), si veda ( Alt a confronto di Ctrl-Alt in modalit` a di selezione dei vertici ). Gli spigoli selezionati nella griglia denominata Alt-RMB sono il risultato dell’uso dell’algoritmo per gli spigoli ALT-RMB a confronto con l’algoritmo
142
CAPITOLO 14. STRUMENTI PER LATI E FACCE
per le facce CTRL-ALT-RMB . La griglia di destra mostra chiaramente che sono state usate le facce per influenzare la generazione della selezione risultante. Gli algoritmi sono pesantemente influenzati dalla modalit` a di selezione nella quale ci si trova ( Le Modalit` a di selezione ). Ricordarsi che il risultato si basa sulla modalit` a di selezione ma l’algoritmo `e controllato da quale combinazione di tasti viene usata; ALT-RMB o CTRL-ALT-RMB . Figura 14.7: Alt a confronto di Ctrl-Alt in modalit`a di selezione dei vertici Qui c’`e un esempio di selezione di uno spigolo denominato E nel senso della latitudine essendo in modalit`a di selezione dei vertici ( Vertex select mode ); lo spigolo `e cerchiato in bianco. Come potete vedere i due algoritmi producono risultati completamente differenti. La sfera di sinistra ha i vertici selezionati in base all’algoritmo degli spigoli. La sfera di destra ha i vertici selezionati secondo l’algoritmo basato sulle facce. Si noti che in entrambi i casi i risultati generati dall’algoritmo sono vertici perch`e si `e in modalit` a di selezione dei vertici . E se si passa alla modalit` a di selezione delle facce si potranno vedere le facce corrispondenti. Si noti che l’area circondata dai vertici `e disegnata in un colore traslucido per indicare le facce potenzialmente coinvolte dai vertici selezionati. Comunque, essendo stati in modalit` a di selezione degli spigoli i risultati generati dovrebbero essere gli spigoli selezionati e se si passa alla modalit` a di selezione delle facce potreste non vedere alcuna faccia selezionata. Fare attenzione a quale modalit` a di selezione sia attiva quando si applicano i due tipi di algoritmo.
14.1.7 Selezione di Spigoli Facce tramite Regione
e
Figura 14.8: Alt a confronto con CtrlAlt in modalit`a di selezione dei vertici.
Gli Spigoli e le Facce –come anche i Vertici– possono anche venir selezionati con una regione circolare 2D. Questo strumento di selezione pu` o venir attivato con BKEY , BKEY . Ovvero premendo due volte consecutivamente il tasto BKEY . Passando in questa modalit`a il cursore diventa una croce con un cerchio 2d che la circonda ed esso agir`a in relazione a quale sia l’attuale Modalit` a di selezione . Il Cliccare o trascinare con LMB quando degli elementi si trovano nel cerchio provoca la selezione di tali elementi. ( Selezione per regione circolare ) `e un esempio di come si selezionano degli spigoli mentre si `e in Modalit` a di selezione degli spigoli . Non appena uno spigolo viene intercettato dal cerchio viene selezionato. Lo strumento `e interattivo di modo che gli
14.2. DIVISIONE DI SEQUENZE DI FACCE
143
spigoli sono selezionati durante lo spostamento della regione circolare. Se si intende deselezionare degli elementi si pu` o premere MMB o ALT-LMB ed iniziare nuovamente a cliccare o trascinare. Per le facce il cerchio deve intersecare gli indicatori delle facce, solitamente rappresentati con un piccolo quadratino; ne esiste uno per ogni facFigura 14.9: Selezione per regione circolare. cia. Per uscire da questo strumento si preme RMB oppure il tasto ESCAPE .
14.2
Divisione di sequenze di facce
Lo strumento Loop permette di tagliare un loop di facce. La sequenza di elementi `e definita usando lo stesso algoritmo descritto nella sezione Selezione di spigoli consecutivi (looping) e Selezione di facce consecutive (looping) . Lo strumento `e solo disponibile in Modo Edit e per attivarlo si preme CTRL-R . Lo strumento funziona in tutte le modalit` a Edit di selezione . Questo strumento `e interattivo, nel senso che se si muove il cursore su degli spigoli validi appare una sequenza di spigoli o di linee di colore magenta ( Divisore di sequenze attivato ) passante per il punto medio dello spigolo valido. Uno spigolo valido `e uno spigolo che soddisfa l’algoritmo di consequenzialit`a descritto in precedenza.
Figura 14.10: Intestazione iniziale del divisore di sequenze.
All’attivazione iniziale dello strumento l’intestazione della finestra 3D cambia per mostrare il Number of Cuts (numero di tagli) ( Intestazione iniziale del divisore di sequenze ). A questo punto, prima di selezionare uno spigolo, si pu´o cambiare il numero di tagli generati, sia con inserimento da tastiera che con MW ; il numero massimo di tagli consentiti `e 130. Questi tagli scorrono parallelamente alla linea della sequenza di facce.
Di default, i nuovi vertici per sequenze nuove di spigoli vengono posizionati esattamente sugli spigoli preesistenti. Ci´ o preserva la planarit`a delle facce con superfici di suddivisione. Se si desidera un risultato pi` u morbido si pu´o usare il tasto SKEY in questo momento. Se la modalit` a smooth `e attiva allora i nuovi vertici non verranno posizionati sullo spigolo precedente ma verranno spostati nella direzione della normale allo spigolo di una data percentuale. In ( Divisore di sequenze attivato ) il cursore era posizionato dove c’`e il cerchio bianco. Questo determina che la linea della sequenza appaia nel mezzo dello spigolo. Come si
144
CAPITOLO 14. STRUMENTI PER LATI E FACCE
pu´ o vedere la sequenza termina ai poli perch`e gli spigoli ai poli convergono con pi´ u di 3 spigoli. Warning: *** START This section needs further updates to version 2.4. *** ??? Pop up. 2.4 dose not have this. ??? Manual-Part-IIEdgeFaceLoop3.png ... Warning: *** END This section needs further updates to version 2.4. *** Quando uno spigolo viene selezionato tramite LMB , lo spigolo viene evidenziato in verde ( Spigolo del taglio della sequenza selezionato ). A questo punto si ha a disposizione un certo numero di alternative possibiFigura 14.11: Divisore di li: sequenze attivato.
` possibile cambiare lo spigolo selezionato lungo la • E linea della sequenza di spigoli usando la MW , o con le frecce Sinistra e Destra. ` possibile passare tra le modalit`a Proportional e • E Percentage con PKEY . La modalit`a di partenza `e Percentage . ` possibile muovere/far scorrere la linea della sequen• E za di spigoli tra le sequenze di facce muovendo il mouse. ` possibile controllare la precisione dello spostamen• E to lungo lo spigolo sia con CTRL che con il tasto SHIFT . CTRL limita il movimento a passi di 10% per volta. SHIFT controlla con maggiore precisione limitando il movimento a passi di 1% in qualsiasi modalit` a di selezione . Di default i passi sono di 5% per volta. L’ultima fase consiste nel cliccare LMB per completare il processo di taglio, tutte le facce e gli spigoli interni alla sequenza di facce verranno tagliati in base al numero di tagli iniziale. Di default il numero di tagli `e 1 il che significa che gli spigoli verranno divisi a met` a alle intersezioni evidenziate dalla linea della sequenza di spigoli. Il taglio della sequenza di spigoli completato mostra le nuove facce e i nuovi spigoli, A e B . La vista `e ruotata in modo che le nuove facce e gli spigoli siano pienamente visibili dall’alto della sfera.
14.2. DIVISIONE DI SEQUENZE DI FACCE
145
Figura 14.12: Spigolo del taglio della sequenza selezionato. Per spiegare i modi Proporzionale e Percentuale useremo una mesh molto semplice costituita da una griglia di 2x9 vertici, ( Griglia di esempio per il loop ). I vertici in A e D sono stati spostati per enfatizzare la differenza tra i due modi. I vertici al livello C e B restano immutati. E `e un’area di interesse per quanto riguarda il modo Proporzionale . Figura 14.13: Il taglio della sequenza di spigoli completato.
14.2.1 facce
Divisione percentuale di sequenze di
Figura 14.14: Griglia di esempio per il loop. Nel modo Percentuale l’intestazione della finestra 3D cambia in ( Intestazione del modo percentuale ) mostrando un numero tra -1 e 1 , dove 0 rappresenta 50% o la met`a. Appena si muove il mouse la percentuale cambia nea della sequenza di spigoli, disegnata in giallo, sta di una quantit` a che `e la percentuale della za dello spigolo disegnato in verde, come si ( intorno al 25% ), ( Met` a ) e ( intorno ).
e la lisi spolunghezvede in 14.15: all’89% Figura Intestazione del modo percentuale. Ci` o di cui `e importante rendersi conto qui `e che la spezzata gialla `e sempre equidistante, in percentuale, per tutti i vertici delimitati dalla sequenza di facce. Per esempio, osservando la (Met` a) si pu`o vedere che la linea spezzata gialla passa per i
146
CAPITOLO 14. STRUMENTI PER LATI E FACCE
punti medi (50%) delle distanze da ogni vertice, a prescindere da quanto siano distanti tra di loro tali vertici. La linea gialla `e ad una distanza di 50% tra i vertici A e B ed `e altres´ı al 50% tra i vertici C e D . Nel caso di ( intorno la 25% ) si pu`o vedere che la spezzata gialla si trova sempre ad una distanza del 25% tra i due vertici uniti da un singolo spigolo.
14.2.2
Divisione proporzionale di sequenze di facce
La suddivisione Proporzionale di sequenze di facce mantiene la forma della nuova sequenza di taglio identica ad una delle due sequenze di spigoli tra le quali essa si trova, invece di effettuare il taglio in base ad una percentuale Figura 14.16: lungo ogni spigolo perpendicolare. Ogni spi- proporzionale. golo viene diviso in due parti che sono proporzionali ad un’altra.
Intestazione del modo
Nel modo Proporzionale l’intestazione della finestra 3D cambia in ( Intestazione del modo proporzionale ) mostrando la posizione rispetto alla lunghezza dello spigolo attualmente selezionato, che `e contrassegnato in verde. Il movimento `e limitato a questa lunghezza. Quando si muove il mouse l’indicatore della lunghezza nell’intestazione cambia mostrando in che punto, lungo la lunghezza dello spigolo ci si trovi. A differenza del modo Percentuale , quello Proporzionale tratta lo spigolo come qualcosa che ha un vertice di partenza ed uno di arrivo con quello di partenza contrassegnato con un contrassegno di vertice ingrandito; si veda ( Evidenziatore del vertice ). Il vertice di partenza , contrassegnato con una A , pu´o venire scambiato con il vertice opposto usando il tasto FKEY ; si veda ( Evidenziatore del vertice Opposto ). Muovendo il mouse la linea della sequenza di spigoli si avvicina o si allontana dal vertice start . Ma la linea della sequenza si muover` a soltanto di quanto sia la lunghezza dello spigolo attualmente selezionato. Se lo spigolo selezionato `e pi` u corto di ognuno degli altri spigoli che lo seguono allora il movimento Figura 14.17: Escursione Proporzionasar` a limitato all’escursione dello spigolo cor- le. to. ( Escursione Proporzionale ) mostra un esempio di come la distanza venga limitata alla lunghezza dello spigolo attuale, contrassegnato con B . Osservando il contrassegno A si pu` o vedere che la linea della sequenza si `e mossa della stessa distanza. Se la linea si muovesse solo di 0.2 unit` a lungo lo spigolo selezionato, allora lungo ognuno degli altri spigoli nella regione della sequenza di facce l’escursione sarebbe ugualmente di 0.2 unit`a. Si noti anche che la porzione della sequenza contrassegnata con A non ha raggiunto completamente l’estremit` a ci` o avviene perch`e lo spigolo selezionato `e lungo soltanto 0.25 unit` a. Per cui la porzione di linea in A non riuscir`a a muoversi pi` u di 0.25 unit`a perch`e
14.3. CANCELLAZIONE DI SEQUENZE DI SPIGOLI
147
l’estensione del movimento `e limitata alla lunghezza dello spigolo selezionato. ( Escursione Proporzionale ) `e un’altro esempio dove il vertice start `e stato invertito mentre si `e usato lo stesso spigolo selezionato rispetto alla ( Escursione Proporzionale ). Si pu` o vedere che il movimento `e ancora ristretto alla lunghezza dello spigolo selezionato. In questo esempio la sequenza di spigoli gialla ri- Figura 14.18: Escursione Proporzionale mane rettilinea perch`e la massima escursione invertita. porta la sequenza di spigoli al vertice pi` u basso e quindi la linea sar` a dritta.
14.3
Cancellazione di sequenze di spigoli
Lo strumento di cancellazione di spigoli permette di cancellare una sequenza di spigoli se essa si trova compresa tra altre due sequenze di spigoli. Questo strumento pu`o essere attivato mediante il menu Erase/Delete, XKEY , e selezionando Edge Loop dal menu; si veda ( Il menu Erase ). Ci` o creer` a una sequenza di facce dove prima ne esistevano due. Lo stesso tipo di restrizione si applica alla selezione di sequenze di spigoli applicate a spigoli mobili. Per esempio, non si pu`o selezio- Figura 14.19: nare due spigoli che si trovino in differenti sequenze di spigoli. Si Il Menu veda Edge Slide restrictions per maggiori dettagli sulle restrizio- Erase. ni.
Nota: Cancellare le sequenze di spigoli `e completamente diverso dal cancellare spigoli che somigliano a sequenz Nelle immagini seguenti, si pu` o vedere cosa succede quando una sequenza di spigoli viene cancellata da una sfera UV: Come si pu` o vedere la sequenza di spigoli `e stata cancellata ma le facce sono state ricongiunte con gli spigoli circostanti. Se si fossero cancellati gli spigoli usando Edges dal ( Erase Menu ) si sarebbe ottenuta una banda di facce cancellate tutto intorno alla sfera. Il che `e leggermente diverso dall’uso dell’Edge Loop (sequenza di spigoli).
14.4
Strumento Coltello/Cut Type
Lo strumento coltello funziona suddividendo gli spigoli selezionati che vengono intersecati da una ’coltellata’ disegnata dall’utente. Per esempio, se si decide di tagliare un foro in fronte ad una sfera, si selezionano solo gli spigoli frontali, quindi si disegna una linea con il mouse. Lo strumento funziona solamente con gli spigoli, selezionati in modo
148
CAPITOLO 14. STRUMENTI PER LATI E FACCE
implicito od esplicito. Per provare lo strumento si aggiunga una mesh di tipo Grid (griglia). Ci si trover` a in EditMode con tutti i vertici selezionati. Si prema SHIFT-K per attivare lo ( Strumento Coltello/Cut Type ). Verr&ageave; richiesto di scegliere come interpretare il taglio: Figura 14.20: • Exact Line (linea esatta) divider`a gli spigoli esattamente dove li Strumento Coltelinterseca la coltellata. lo/Cut • Midpoints (punti medi) divider`a uno spigolo intersecato nel suo Type punto medio. • Multicut (taglio multiplo) permette all’utente di suddividere la mesh ripetute volte in una sola operazione. Questo metodo richiede un inserimento addizionale per poter definire il numero di tagli. A prescindere dallo stile scelto, il cursore ora si `e trasformato nell’icona di un bisturi e l’intestazione della finestra 3D `e cambiata in ( Strumento Coltello, intestazione della finestra 3D ). Si possono disegnare linee rette premendo LMB e muovendo ripetutamente o si possono creare linee a mano libera premendo e mantenendo premuto LMB durante il trascinamento. MMB come si pu`o immaginare, vincola il disegno ad un asse. Le polilinee possono venir disegnate con un numero arbitrario di segmenti, ma l’algoritmo Figura 14.21: Strumento Coltello, intestazione della finestra che risolve le intersezio3D ni ne pu`o rilevare soltanto una per ogni spigolo. Passare pi´ u volte con il bisturi su di uno spigolo non permette di avere tagli aggiuntivi su di esso. Finito di disegnare la linea, si pu` o premere sia ENTER che CTRL-ENTER per confermare il taglio mentre ESCAPE o RMB in ogni momento cancelleranno l’operazione.
• ENTER selezioner` a ogni spigolo ad eccezione di quelli appena creati dal taglio. • CTRL-ENTER selezioner` a solo i nuovi spigoli creati con il taglio. Si noti che solo gli spigoli che intersecano il tracciato disegnato a mano verranno selezionati. Lo Snap alla griglia non `e attualmente implementato, ma `e in previsione per le prossime versioni.
Nota: Con una mesh grande, si far`a prima a scegliere un piccolo numero di vertici, quelli che definiscono solo g
14.4. STRUMENTO COLTELLO/CUT TYPE
14.4.1
149
Taglio di tipo Exact Line (linea esatta)
( ExactLine prima e dopo ) `e un esempio dell’uso del Coltello con l’impostazione ’Exact Line’. Il taglio `e determinato dalla linea tracciata a mano contrassegnata in figura con A nella griglia contrassegnata Drawing . La griglia contrassegnata Enter `e il risultato della pressione del pulsante ENTER . Come si pu`o vedere le intersezioni sugli spigoli del cubo si Figura 14.22: ExactLine prima e dopo. trovano dove la linea tracciata manualmente effettivamente si trova, a prescindere da quanto essa sia frastagliata. Inoltre, sono stati selezionati tutti gli spigoli invece che solo quelli appena creati dal Coltello stesso. La griglia denominata Ctrl-Enter `e il risultato della pressione di CTRL-ENTER . In questo caso solo gli spigoli appena creati, B e C , sono evidenziati mentre lo spigolo D non lo `e. D `e uno spigolo secondario che risulta dallo strumento Coltello.
14.4.2
Taglio di tipo Midpoints (punti medi)
( Midpoints prima e dopo ) `e un esempio dell’uso del coltello con l’opzione ’Midpoints Line’. Il taglio `e determinato dalla linea tracciata manualmente identificata con A nella griglia denominata Drawing . Si noti come la linea denominata A intersechi lo spigolo di destra due volte; solo la prima intersezione verr`a considerata durante il taglio. La griglia Enter `e il risultato della pressione di ENTER . Come si pu&orgave; vedere le intersezioni sugli spigoli del cubo si trovano sul punto Figura 14.23: Midpoints prima e dopo. medio di ogni spigolo, a prescindere da quanto scarabocchiata sia la linea. Inoltre, sono stati selezionati tutti gli
150
CAPITOLO 14. STRUMENTI PER LATI E FACCE
spigoli e non soltanto quelli generati dal taglio stesso. La griglia Ctrl-Enter `e il risultato della pressione di CTRL-ENTER . In questo caso sono evidenziati solo gli spigoli appena creati, B e C , mentre lo spigolo D non lo `e. D è uno spigolo secondario che risulta dallo strumento Coltello.
14.4.3
Taglio di tipo MultiCut (taglio multiplo)
Appena entrati in questo strumento appare una finestra a comparsa chiedendo il numero di tagli da effettuare [Number of Cuts]; si veda ( Numero di tagli ). Di norma `e impostato a 2 . Occorre indicare quanti tagli equidistanti lo strumento dovr`a effetttuare 14.24: per ogni spigolo con cui si ha un’intersezione. Per esempio, con Figura Numero di tagli. l’impostazione di default a 2 si generano due intersezioni o tre nuovi spigoli per ogni spigolo intersecato dalla linea tracciata a mano, e tutti equidistanti tra di loro. Inoltre, se l’opzione Beauty `e attivata tra gli Edit Buttons (pulsanti edit), le facce selezionate saranno solo suddivise lungo i 2 lati pi´ u lunghi. E se sia Beauty che Short sono attivate, le facce selezionate saranno solo suddivise lungo i 2 lati pi` u corti.
Nota: Usando il modo di selezione degli spigoli [ Edge select mode ] per selezionare solo gli spigoli che si inten ( MultiCut prima e dopo ) `e un esempio dell’uso del coltello con ’MultiCut’. Il taglio `e determinato dalla linea tracciata manualmente denominata A nella griglia Drawing , usando il valore di default di 2 tagli. La linea `e stata disegnata in modo da intersecare intenzionalmente tre spigoli.
Figura 14.25: MultiCut prima e dopo.
La griglia Enter `e il risultato della pressione di ENTER . Come potete vedere ci sono due tagli equidistanti su ogni spigolo intersecato dalla linea tracciata a mano: A , B e C . D `e uno spigolo secondario risultante dallo strumento di taglio. La griglia Ctrl-Enter `e il risultato della pressione di CTRL-ENTER . In questo caso solo gli spigoli appena creati sono evidenziati, mentre lo spigolo D non lo `e.
14.5
Strumenti Speciali per gli Spigoli
La modifica degli spigoli include alcuni strumenti speciali che integrano le opzioni standard, e si chiamano Edge Specials , si accede ad essi tramite CTRL-E ; si veda ( Menu degli Strumenti Speciali per gli Spigoli ). Essi sono:
14.5. STRUMENTI SPECIALI PER GLI SPIGOLI
151
• Mark Seam (Segna Cucitura) `e usato per la mappatura UV . • Clear Seam (Cancella Cucitura) `e anch’esso usato per la mappatura UV . Per maggiori informazioni sull’uso dei Seams si veda materials uv textures lscm . • Rotate Edge CW ruota gli spigoli o le facce in senso orario. • Rotate Edge CCW ruota gli spigoli o le facce in senso antiorario. • Loopcut si veda Divisione di sequenze di facce . • Edge Slide permette di fare scorrere uno spigolo lungo le sue due facce adiacenti.
14.5.1
Rotazione Oraria/Antioraria di Spigoli
Per ruotare uno spigolo `e necessario selezionare uno spigolo o due facce adiacenti. Per selezionare uno spigolo `e possibile usare uno delle tre Modalit` a di selezione . Per esempio, si pu` o selezionare uno spigolo selezionando i vertici a lui adiacenti (implicita), selezionando lo spigolo stesso (esplicita) o selezionando le due facce adiacenti (implicita). Una volta che lo spigolo `e selezionato, si pu` o applicare la rotazione in senso orario ( Rotate Edge CW ) o in senso antiorario ( Rotate Edge CCW ). Si veda ( Lo spigolo selezionato ruotato in senso Orario e Antiorario. ) per uno spigolo selezionato in modo esplicito usando la Modalit` a di selezione degli spigoli .
Figura 14.26: Menu degli Strumenti Speciali per gli Spigoli.
Si faccia attenzione perch`e talvolta, come si vede in ( Lo spigolo selezionato ruotato in senso Orario e Antiorario. ) e indicato con una T , si potrebbero produrre quelle che appaiono come giunzioni/nodi a T, nell’uso di questo strumento. Comunque, Blender ha creato spigoli addizionali che prevengono rotture nella mesh. Si pu` o notare ci` o selezionando il vertice in corrispondenza della T e muovendolo intorno, notando che ora ci sono due spigoli invece di uno lungo.
Nota: Si veda Modalit` a Edit per ulteriori informazioni s Per ruotare uno spigolo in riferimento alle facce bisogna selezionare due facce, ( Facce selezionate adiacenti. ), altrimenti Blender avverte con un messaggio di errore, ERROR: Select Figura 14.27: Lo spigolo selezionato ruotato in senso one edge or two adjacent faces. Orario e Antiorario. Si applichi a scelta Rotate Edge CW o Rotate Edge CCW per ottenere esattamente lo stesso risultato che si avrebbe avuto selezionando lo spigolo in comune come si vede in ( Lo spigolo selezionato ruotato in senso Orario e Antiorario. ).
152
CAPITOLO 14. STRUMENTI PER LATI E FACCE
14.5.2
Scorrimento di uno Spigolo
Edge Slide permette di fare scorrere uno o pi` u spigoli lungo facce adiacenti allo/agli spigolo/i selezionato/i con poche restrizioni riguardanti la selezione degli spigoli. Lo strumento si attiva con CTRL-E e quindi selezionando Edge slide . Come con Divisione di sequenze di facce questo strumento ha sia un modo Percentuale che uno Proporzionale . Il modo `e mostrato nell’intestazione della finestra 3D. Questi modi si comportano allo stesso modo che nelFigura 14.28: la Divisione di sequenze di facce inclusi tutti i pulsanFacce selezionate ti per controllare la precisione dei movimenti dello spigoadiacenti. lo. Per annullare questo strumento si usa RMB o ESCAPE . ( Semplice scorrimento di uno spigolo. ) `e un esempio dello scorrimento di uno spigolo lungo un cubo estruso. Lo spigolo selezionato `e E e le facce adiacenti ad esso sono contrassegnate F1 e F2 . In Edge moving , lo strumento `e stato attivato e lo spigolo sta venendo sposta- Figura 14.29: to lungo l’altro spigolo, disegnato in spigolo. verde. Si usi LMB per completare il movimento come si vede in Moved .
Semplice scorrimento di uno
Restrizioni allo Scorrimento di Spigoli Come accennato ci sono alcune restrizioni nella selezione dello/degli spigoli. Selezioni non valide sono:
• Loop crosses itself . (Sequenza che incrocia se stessa) Ci`o significa che lo strumento potrebbe non trovare delle facce adeguate che siano adiacenti agli spigoli selezionati. ( Sequenza incrociata ) `e un esempio che mostra ci`o selezionando due spigoli che hanno in comune la stessa faccia. Una faccia non pu`o essere adiacente a se stessa. • Was not a single edge loop . (Non `e una singola sequenza di spigoli) Principalmente nel caso in cui abbiate selezionato spigoli che non appartengano alla stessa sequenza di spigoli. ( Singola sequenza ) `e un esempio in cui gli spigoli selezionatinon si trovano nella stessa sequenza di spigoli, il che significa che essi non hanno uno spigolo in comune. Si pu`o evitare questo errore selezionando sempre spigoli da un capo all’altro, oppure appartenenti ad una Catena. • Could not order loop . (Non `e possibile ordinare la sequenza) Significa che lo strumento non riesce a trovare una sequenza di spigoli basata sullo/sugli spigolo/i selezionato/i. ( Ordine della sequenza ) `e un esempio in cui un singolo spigolo `e
14.6. STRUMENTI DI SMUSSATURA
153
stato selezionato all’interno di un oggetto Plane 2D. Non pu`o essere trovata una sequenza perch`e c’`e solo una faccia. Una regola generale un po’ grezza `e che se sono selezionati spigoli multipli essi dovrebbero essere collegati da un’estremit`a all’altra in modo che formino una catena continua. Questo `e letteralmente una regola generale perch`e `e ancora possibile selezionare spigoli in una catena che non siano validi perch`e alcuni degli spigoli della catena si trovano in differenti sequenze di spigoli [edge loops]. ( Sequenza incrociata ) `e proprio un tale esempio in cui gli spigoli selezionati formano una catena ma non appartengono alla stessa sequenza di spigoli. Se selezionate spigoli multipli assicuratevi che siano collegati. Ci`o diminuir`a la probabilit` a di avere errori di sequenza.
14.6
Strumenti di Smussatura
Una smussatura `e qualcosa che arrotonda uno spigolo vivo od un angolo. Gli spigoli nel mondo reale non sono quasi mai perfettamente netti. Nemmeno il filo di una lama pu`o considerarsi perfettamente netto. La maggior parte degli spigoli sono smussati intenzionalmente per ragioni meccaniche e pratiche. Lo strumento di smussatura Bevel `e ancora in una fase di intenso sviluppo e la sua implementazione attuale `e abbastanza rudimentale dal momento che vengono smussati tutti gli spigoli di una data mesh. Non c’`e controllo sugli spigoli che si intendono mantenere al vivo, o sugli spigoli di superfici quasi piane, che non necessiterebbero assolutamente di smussi. Lo strumento di smussatura Bevel pu`o essere usato in EditMode , e vi si pu` o accedere tramite il menu WKEY ( menu Specials ), in cui c’`e una voce Bevel ; si veda ( Il menu Specials ). Una volta selezionato, appare una richiesta per il numero di iterazioni dello smusso, . Se questo `e uno, allora ogni faccia viene ridotta di dimensioni ed ogni spigolo diventa una nuova faccia. Facce Tri (triangolari) e Quad (quadrangolari) verranno create se necessario ai vertici corrispondenti. Se il numero di iterazioni `e maggiore di uno, la procedura suddetta viene applicata quel numero di volte. Per cui, con un Recurs di 2 ogni spigolo `e trasformato in 4 spigoli, tre nuove facce appaiono presso lo spigolo smussando lo spigolo originale. In generale il numero di nuovi spigoli `e 2 elevato al valore di Recurs Figura 14.30: Il . menu Specials.
Numero dei vertici: Si ricordi che per ciascun nuovo bordo vengono creati due nuovi vertici, e qualche altro ver
154
CAPITOLO 14. STRUMENTI PER LATI E FACCE
Quando lo strumento `e attivato l’intestazione della finestra 3D cambia per mostrare il rapporto di scala dello smusso; ( Smussatura: intestazione della finestra ).
Figura 14.31: Smussatura: intestazione della finestra ( Smussatura di un cubo ) `e un esempio della smussatura di un cubo con un Recurs di 2 . Una volta impostato il numero Recurs ciascuna faccia della mesh viene evidenziata in giallo. Il cubo Bevelling `e lo strumento in azione. Muovendo il puntatore del mouse, le evidenziazioni in giallo si restringono o si allargano o si scalano ingrandendo Figura 14.32: Smussatura di un cubo. o rimpicciolendo; con il fattore di scala attuale mostrato nell’intestazione della finestra 3D; si veda ( Smussatura: intestazione della finestra ). Le parti evidenziate in giallo non verranno ridimensionate oltre il volume dell’oggetto. ` possibile controllare il fattore di scala in modo pi´ E u preciso sia premendo e tenendo premuto CTRL , per variare con passo 0.1, oppure premendo e mantenendo premuto SHIFT che permette passi di 0.001. LMB completa l’operazione, RMB o ESC annullano l’azione. Alternativamente, si pu` o inserire manualmente un rapporto di scala premendo SPACE . Appare una richiesta, , e si tratta di inserire il fattore di scala per la smussatura denominato Width (larghezza). L’escursione del valore va da 0.0 a 10.0 ed una volta premuto OK l’azione `e completata. Il risultato finale si vede nella griglia Beveled o Shaded.
Capitolo 15
Modellazione Avanzata della Mesh 15.1
Modellazione Simmetrica
Spesso si ha bisogno di modellare oggetti con qualche tipo di simmetria. Per la simmetria radiale, rotazionale e la simmetria multipla, l’approccio migliore consiste nel modellare con cura una struttura base e quindi, come ultimo passo, duplicare tale cellula con lo SpinDup o qualsiasi comando pi` u appropriato.
Per gli oggetti con simmetria bilaterale, quelli con un piano di simmetria, come la maggior parte degli animali (umani inclusi) e molte macchine, il metodo precedente implica la modellazione di una met` a dell’oggetto, e quindi un duplicato speculare della prima met` a per avere l’oggetto completo.
Dato che di solito `e difficile raggiungere le proporzioni corrette modellando solo una met` a, `e possibile duplicare la met` a prima che sia completamente modellata, ed agire su una met` a ed aggiornare automaticamente l’altra.
Nella Vista Frontale si aggiunge un piano o qualsiasi cosa ( Un piano. ). Lo si consideri come un punto di partenza per una met`a dell’oggetto. Si supponga la met`a destra dell’oggetto, che per chi guarda in vista frontale `e alla sinistra dello schermo. Il piano di simmetria `e il piano yz. Si sposta la mesh, in Modo Edit, in modo che sia completamente alla sinistra del centro. Si cancellano dei nodi, e se ne aggiungono degli altri, in modo da avere la sua forma generale, come in La met` a destra. .
155
156
CAPITOLO 15. MODELLAZIONE AVANZATA DELLA MESH
Figura 15.1: Un piano.
Ora si va in Modo Oggetto e, con la met`a selezionata, si crea un duplicato collegato con ALT-D . Si preme ESC per uscire dal Modo traslazione [Grab] e si preme NKEY . Nel pannello di Immissione Numerica che appare, si imposta SizeX a -1 ( Il duplicato collegato reso speculare. ). Questo di fatto rende speculare il duplicato collegato rispetto al centro dell’Oggetto, da qui l’importanza di mantenere il centro sul piano di simmetria. Figura 15.2: La met` a destra.
L’aver duplicato l’Oggetto come duplicato collegato implica che i due oggetti condividano gli stessi dati della mesh, che `e implicitamente resa speculare tramite un ridimensionamento unitario negativo lungo l’asse x, che `e normale al piano di simmetria. Ora si pu`o modificare una delle due met`a. Dato che esse condividono i dati della mesh qualsiasi modifica, sia essa una estrusione, cancellazione, taglio di un anello di facce [face loop] ecc. immediatamente si rifletter`a sull’altro lato ( Modifica di una met` a. ).
15.2. PROPORTIONAL EDITING TOOL
157
Figura 15.3: Il duplicato collegato reso speculare. Modificando con cura una met`a, ed usando possibilmente uno schemino come sfondo per avere delle linee guida, si possono ottenere dei risultati molto interessanti ( Una testa. A sinistra: Modo Edit; Al centro: Modo Oggetto; A destra: l’Unione. , a sinistra). Come passo finale, quando la modellazione simmetrica `e completa, le due met`a devono essere selezionate e riunite in un singolo Oggetto ( CTRL-J ). Questo fa scomparire la cucitura (molto visibile in Una testa. A sinistra: Modo Edit; Al centro: Modo Oggetto; Figura 15.4: Modifica di una met`a. A destra: l’Unione. , al centro). Una volta ottenuto un singolo oggetto ( Una testa. A sinistra: Modo Edit; Al centro: Modo Oggetto; A destra: l’Unione. , a destra), si possono cominciare a modellare le piccole asimmetrie che ogni essere ha.
Nota: In Blender 2.33 e nelle precedenti versioni l’implementazione OpenGL crea delle normali sbagliate nei du
15.2
Proportional Editing Tool
Lavorando con mesh fitte, diventa complicato fare aggiustamenti precisi ai vertici senza provocare dei brutti bozzi o grinze sulla superficie del modello. Quando si presentano situazioni simili, si usa lo strumento di modifica proporzionale. Esso agisce come un magnete per deformare dolcemente la superficie del modello, senza creare bozzi o grinze. Nella vista dall’alto, si aggiunga, alla scena, la mesh di un piano con SPACE >>Add>>Mesh>>Plane. La si suddivide un paio di volte con WKEY >>Subdivide (o cliccando sul pulsante Subdivide nel Contesto di Editing nel Pannello Mesh Tools ) per avere una mesh relativamente densa ( Una mesh piana densa. ). Oppure, si aggiunge una griglia direttamente tramite SPACE >>Add>>Mesh>>Grid, specificando il numero di vertici
158
CAPITOLO 15. MODELLAZIONE AVANZATA DELLA MESH
in ciascuna direzione. Una volta completato, si de-selezionano tutti i vertici con AKEY .
Figura 15.5: Una testa. A sinistra: Modo Edit; Al centro: Modo Oggetto; A destra: l’Unione. Si selezioni un solo vertice della mesh cliccandovi con RMB ( Una mesh piana densa con un solo vertice selezionato. ).
Figura 15.6: Una mesh piana densa.
Restando in Modo Edit, si attiva lo strumento di modifica proporzionale premendo OKEY o usando l’icona della toolbar e selezionando o On o Connected . ( L’icona della Modifica Proporzionale. ). Quando `e attivo lo strumento di modifica proporzionale, l’icona assume un colore arancione.
15.2. PROPORTIONAL EDITING TOOL
159
Figura 15.7: Una mesh piana densa con un solo vertice selezionato. • Connected - Riguarda solo i vertici che sono connessi a ciascun altro in una mesh. • On - Pu` o riguardare tutti i vertici. • Off - L’Editing Proporzionale `e disabilitato! La modifica del profilo della curva si ottiene o usando il sottomen` u Mesh>>Proportional Falloff , o usando l’icona della barra degli strumenti Il men` u Falloff. o premendo SHIFT-O per alternarsi tra le varie opzioni Constant, Linear, Sharp, Root, Sphere e Smooth . ( Constant - No Falloff. Linear Falloff. Sharp Falloff. Root Falloff. Sphere Falloff. Smooth Falloff. )
Figura 15.8: L’icona della Modifica Proporzionale.
Figura 15.9: men` u Falloff.
Il
160
CAPITOLO 15. MODELLAZIONE AVANZATA DELLA MESH
Figura 15.10: Falloff.
Constant - No
Figura 15.11: Linear Falloff.
Figura 15.12: Sharp Falloff.
Figura 15.13: Root Falloff.
Figura 15.14: Sphere Falloff. Ci si sposti nella vista frontale ( NUM 1 ) e si attivi lo strumento di traslazione con GKEY . Trascinando il punto verso l’alto, si noter`a che anche i vertici limitrofi vengono trascinati con esso. Quando si `e soddisfatti della disposizione, si preme LMB per confermarla. Se non si `e soddisfatti, si pu`o annullare e ripristinare la mesh a come appariva prima Figura 15.15: Smooth Falloff. col tasto RMB o con ESC . Mentre si `e in modifica, si pu`o aumentare o diminuire il raggio di influenza (mostrato dal cerchio grigio scuro in Il cerchio di influenza. ) premendo PAGEUP e PAGEDOWN rispettivamente. Cambiando il raggio, le posizioni dei punti interessati dalla selezione cambieranno di conseguenza. Si pu`o anche usare MW (la rotellina del mouse) per allargare o restringere il raggio di influenza.
15.3. RUMORE
161 Si pu`o usare lo strumento di modifica proporzionale per ottenere dei grandi effetti con gli strumenti di ridimensionamento ( SKEY ) e di rotazione ( RKEY ) come mostrato in Un paesaggio ottenuto con la Modifica Proporzionale .
Figura 15.16: Il cerchio di influenza.
Combinando queste tecniche con la pittura dei vertici si possono creare dei paesaggi fantastici. Il rendering finale del paesaggio mostra il risultato della modifica proporzionale dopo l’applicazione delle textures e delle luci.
Figura 15.17: Un paesaggio ottenuto con la Modifica Proporzionale
15.3
Rumore
La funzione Noise (rumore) consente di spostare i vertici in una mesh in base al valore del grigio di una texture applicata ad essa. Questo `e il modo in cui si generano dei grandi paesaggi o testo incavato in mesh.
162
CAPITOLO 15. MODELLAZIONE AVANZATA DELLA MESH
Figura 15.18: Il rendering finale del paesaggio Si aggiunge un piano e lo si suddivide almeno cinque volte col men` u speciale WKEY >>Subdivide ( Lo strumento di suddivisione [Subdivide] ). Quindi si aggiunge un materiale e gli si assegna una texture Clouds. Si regola NoiseSize: a 0.500. Si sceglie bianco come colore per il materiale e nero per quello della texture, per avere un buon contrasto per l’operazione di rumore [noise]. Ci si assicuri di essere in Modo Edit e che tutti i vertici siano selezionati, quindi ci si sposti nel Contesto di Editing F9 . Si preme il pulsante Noise nel pannello Mesh Tools ( Il pulsante Noise nella Pulsantiera di Edit. ) diverse volte finch´e appare un bel paesaggio. Applicazione del Figura 15.19: processo di Noise. Dall’alto a sinistra al basso a destra: Il piano con la Lo strutexture, il piano suddiviso, il pulsante Noise premuto 2, 4, 6 e 8 volte. mento di mostra il piano originale, con la texture - cos`ı come appare man mano suddivisione che si preme Noise . Si rimuova la texture dal paesaggio in quanto ne [Subdivide] disturba l’aspetto. Quindi si aggiunga qualche luce, dell’acqua, si imposti la levigazione ed il SubSurf del terreno, e cos`ı via. ( Il paesaggio generato col Noise ).
Figura 15.20: Il pulsante Noise nella Pulsantiera di Edit.
15.4. STRUMENTO DECIMATORE
163
Figura 15.21: Applicazione del processo di Noise. Dall’alto a sinistra al basso a destra: Il piano con la texture, il piano suddiviso, il pulsante Noise premuto 2, 4, 6 e 8 volte. Nota: Lo scostamento del Noise avviene sempre lungo la co
15.4 Strumento Decimatore
Figura 15.22: Il paesaggio generato col Noise
Lo strumento di Decimatore `e una funzionalit`a spesso trascurata che consente di ridurre il numero di vertici/facce contare di una mesh con il minimo cambiamento della forma.
Ci`o non `e valido per le mesh che sono state create per una modellazione accurata ed economicamente, dove tutti i vertici e le facce sono necessari per definire correttamente la forma, ma se la mesh `e il risultato di una modellazione complessa, con l’editing proporzionale, affinamenti successivi, forse qualche conversione da mesh SubSurfed o non-SubSurfed, allora si pu`o ben ricadere in mesh con tanti vertici non veramente necessari. Un semplice esempio `e un piano, ed un oggetto Griglia 4x4 non deformato. Entram-
164
CAPITOLO 15. MODELLAZIONE AVANZATA DELLA MESH
bi i rendering sono identici, ma il piano ha 1 faccia e 4 vertici, mentre la griglia ha 9 facce e 16 vertici, quindi un sacco di vertici e facce inutili. Lo strumento decimatore ( I pulsanti del Decimatore. ) consente di eliminare queste facce non necessarie. Il suo Pulsante Numerico riporta il numero di facce della mesh selezionata in Modo Oggetto. Lo strumento di decimazione gestisce solo triangoli, quindi per la decimazione ciascuna faccia quadrangolare viene semplicemente divisa in due triangoli.
Si consideri l’esempio usato nella sezione della Smussatura [Bevel]. Come si pu`o notare c’`e una piccola faccia triangolare su ciascun vertice del cubo che potrebbe benissimo risultare inutile ( Il Decimatore in funzione , in alto a sinistra). L’intestazione [header] dice che il cubo ha 98 facce e 96 vertici. Il pulsante Decimator dice che tale cubo ha 188 facce triangolari, cio`e 90 quadrandoli (che sono 180 triangoli) ed 8 triangoli. Figura 15.23: Decimatore.
I pulsanti del
Cambiando il numero nel Pulsante Numerico del decimatore, sia cliccando che digitando in esso, la mesh cambia immediatamente in soli triangoli. Man mano che il numero di abbassa, le facce scompaiono una dopo l’altra. Blender fa in modo che scompaiano prima le facce complanari ed i vertici allineati sui bordi. Questo per mantenere la forma della mesh. Man mano che si richiede di rimuovere sempre pi` u facce vengono fuse facce sempre meno complanari e vertici sempre meno allineati, quindi pu`o avvenire una sensibile modifica della forma ( Il Decimatore in funzione , in alto al centro).
In questo caso particolare, se se si vuole che scompaia solo la faccia triangolare di ciascun vertice del cubo si prevede che la mesh finale sia di 2x6=12 facce per ciascuna faccia del cubo, 2x3x12=72 facce per ciascun lato smussato, e 9x8=72 facce per ciascun vertice smussato, in totale 156 facce. Raramente si conosce in anticipo quante facce la mesh finale pu` o avere, di solito si deve guardare con cura la mesh nella finestra 3D per controllare che la forma resti buona.
I due pulsanti sotto il Decimatore concludono o cancellano la decimazione. Una volta completata I triangoli non appaiono pi` u ( Il Decimatore in funzione , in alto a destra) ma la mesh `e per` o fatta solo di triangoli ( Il Decimatore in funzione , in basso a sinistra). Volendo si pu` o tornare ai quadrangoli, selezionando tutti i vertici e pigiando ALT-J ( Il Decimatore in funzione , in basso al centro). In questo modo si riduce il numero dei vertici a 80 e quello delle facce a 82 senza alcuna evidente perdita della forma. Potrebbe sembrare un piccolo guadagno, ma se tale cubo dovr`a essere duplicato ai vertici su un sistema di particelle con 1000 particelle pu`o valerne la pena.
15.4. STRUMENTO DECIMATORE
165
Figura 15.24: Il Decimatore in funzione
Paesaggio decimato, in alto: originale; al centro: leggermente decimato; in basso: molto decimato. mostra un paesaggio generato con un’applicazione accurata della tecnica Noise (Rumore) descritta precedentemente, su una vastissima griglia. Il alto, il risultato per la mesh originale e sotto, due diversi livelli di decimazione. All’occhio la differenza resta quasi impercettibile, ma dato che il numero dei vertici scende c’`e un enorme guadagno.
166
CAPITOLO 15. MODELLAZIONE AVANZATA DELLA MESH
Figura 15.25: Paesaggio decimato, in alto: originale; al centro: leggermente decimato; in basso: molto decimato.
Capitolo 16
Curve Questa sezione descrive sia le curve di B´ezier che le NURBS, e mostra un esempio funzionante del primo.
16.1
B´ ezier
Le curve di B´ezier sono il tipo pi` u comunemente usate per disegnare loghi e lettere. Esse sono ampiamente usate nell’animazione, sia come percorsi lungo cui spostare oggetti sia come curve IPO per cambiare le propriet`a degli oggetti in funzione del tempo. Un punto di controllo (un vertice) di una curva di B´ezier consiste in un punto e due maniglie. Il punto, nel mezzo, `e usato per spostare l’intero punto di controllo; selezionandolo si selezionano anche le altre due maniglie, e consente di spostare tutto il vertice. Selezionando una o due delle altre maniglie consente di cambiare la forma della curva trascinando le maniglie. Una curva di B´ezier `e tangente al segmento che passa per il punto e la maniglia. La ’ripidit` a’ della curva `e controllata dalla lunghezza della maniglia. Ci sono quattro tipi di maniglie ( Tipi di Maniglie per le curve di B´ezier ):
• Maniglia Libera (nera). Questa pu`o essere usata in qualsiasi modo si vuole. Hotkey: HKEY (scambia tra Libera ed Allineata); • Maniglia Allineata (viola). Queste maniglie giacciono sempre su una linea retta. Hotkey: HKEY (scambia tra Libera ed Allineata); • Maniglia Vettore (verde). Entrambe le parti di una maniglia puntano alla maniglia precedente o alla successiva. Hotkey: VKEY ; • Maniglia Automatica (gialla). Questa maniglia ha una lunghezza ed una direzione completamente automatiche, impostate da Blender per avere il pi` u levigato risultato. Hotkey: SHIFT-H . Le maniglie possono essere spostate , ruotate e dimensionate esattamente come si fa con i normali vertici di una mesh. Appena le maniglie vengono spostate, il tipo viene automaticamente modificato:
167
168
CAPITOLO 16. CURVE • La maniglia Automatica diventa Allineata; • La maniglia Vettore diventa Libera.
Anche se la curva di B´ezier `e un oggetto matematico continuo, esso, tuttavia, deve essere rappresentato in una forma discreta dal punto di vista del rendering. Questo viene fatto impostando la propriet` a risoluzione , che definisce il numero di punti, tra ogni coppia di punti di controllo, da calcolarsi. Per ciascuna curva di B´ezier si pu`o impostare una diversa risoluzione
Figura 16.1: Tipi di maniglie per le curve di B´ezier
16.2
NURBS
Le curve NURBS sono definite come polinomiali razionali, e sono pi` u generali, a rigor di termini, delle convenzionali curve B-Splines e B´ezier in quanto sono in grado si seguire esattamente ogni contorno. Per esempio una circonferenza di B´ezier `e una approssimazione polinomiale di una circonferenza, e tale approssimazione `e evidente, mentre una circonferenza NURBS `e esattamente una circonferenza. Le curve NURBS hanno un ampio insieme di variabili, che consente di creare forme matematicamente perfette ( Pulsanti di controllo delle nurbs. ). Comunque, lavorare
16.2. NURBS
169
con esse richiede un po’ pi` u di teoria:
Figura 16.2: Impostazione della risoluzione nella B´ezier. • Knots (Nodi). Le curve Nurbs hanno un vettore nodo , una fila di numeri che precisa la definizione parametrica della curva. Per questo sono importanti due preimpostazioni. Uniform (Uniforme) produce una divisione uniforme per le curve chiuse, ma quando `e usata con quelle aperte si dovranno prendere estremit`a libere, difficili da localizzare precisamente. Endpoint (Estremit`a) imposta i nodi in modo che il primo e l’ultimo dei vertici facciano sempre parte della curva, cosa che le rende molto pi` u facili da posizionare; • Order. L’ordine `e la ’profondit`a’ del calcolo della curva. Ordine ’1’ `e un punto, ordine ’2’ `e lineare, ordine ’3’ `e una quadrica, e cos`ı via. Si usi sempre l’ordine ’5’ per le curve delle traiettorie in quanto risulter`a fluida in tutte le circostanze, senza produrre irritanti discontinuit`a nel movimento. Parlando matematicamente, questo `e sia l’ordine del Numeratore sia del Denominatore della polinomiale razionale che definisce le NURBS; • Weight. Le curve Nurbs hanno un ’peso’ per ciascun vertice - la proporzione con cui un vertice partecipa alla deformazione della curva.
Figura 16.3: Pulsanti di controllo delle nurbs. Impostazione dei pesi e del poligono di Controllo delle Nurbs mostra le impostazioni del vettore di Nodi cos`ı come l’effetto della variazione del peso di un singolo nodo. Come con le B´ezier, la risoluzione pu` o essere impostata per ciascuna curva.
170
Figura 16.4: Impostazione dei pesi e del poligono di Controllo delle Nurbs.
CAPITOLO 16. CURVE
Capitolo 17
Esempio pratico Gli strumenti per le curve, di Blender, forniscono un rapido e semplice modo per costruire dei loghi e del testo di grande impatto visivo. Si useranno questi strumenti per trasformare una bozza approssimata di un logo in un oggetto finito 3D.
Lo Schizzo del logo mostra il progetto del logo che si va a costruire.
Prima si importa lo schizzo originale in modo da usarlo come sagoma. Blender supporta immagini in formato TGA, PNG e JPG. Per caricare l’immagine, si seleziona la voce di men` u View>>Background Image... della Finestra 3D in uso. Apparir`a un pannello trasparente, consentendo di selezionare un disegno da usare come sfondo. Si attiva il pulsante BackGroundPic e si usa il pulsante LOAD per localizzare l’immagine che si vuol usare come sagoma ( Impostazioni della finestra 3D ). Si pu`o impostare la gradazione del disegno dello sfondo con lo slider Blend .
Figura 17.1: Schizzo del logo
Ci si sbarazzi del Pannello con ESC o premendo il pulsante X nella testata del pannello ( Bozza del logo caricata come sfondo ). Una volta finito di usarla, si potr`a nascondere l’immagine di sfondo tornando nel Pannello e deselezionando il pulsante BackGroundPic .
171
172
CAPITOLO 17. ESEMPIO PRATICO
Figura 17.2: Impostazioni della finestra 3D
Si aggiunga una nuova curva premendo SPACE >>Curve>>Bezier Curve . Apparir`a un segmento curvilineo, e Blender si porr`a in modalit`a Edit. Sposteremo ed aggiungeremo punti per creare una forma chiusa che descriva il logo che si sta provando a tracciare.
Si possono aggiungere punti alla curva selezionandone uno dei due estremi, quindi, tenendo premuto CTRL e cliccando LMB . Si noti che il nuovo punto sar`a connesso al punto precedentemente selezionato. Una volta aggiunto, il punto pu`o essere spostato selezionandone il vertice di controllo e premendo GKEY . Si pu`o cambiare l’angolo della curva afferrando e spostando le maniglie associate a ciascun vertice ( Maniglie della Bezi´er ). Figura 17.3: Bozza del logo caricata come sfondo
Si pu`o aggiungere un nuovo punto tra due esistenti selezionando i due punti e premendo WKEY >>Subdivide ( Aggiunta di un punto di controllo ). I punti possono essere rimossi selezionandoli e premendo XKEY >>Selected . Per tagliare una curva in due, si selezionano due vertici di controllo adiacenti e si preme XKEY >>Segment . Figura 17.4: Maniglie della Bezi´er
Per creare degli angoli netti, si seleziona un vertice di controllo e si preme VKEY . Si noter` a che il colore delle maniglie cambia da viola a verde ( Maniglie vettore (in verde) ). A questo punto, si possono spostare le maniglie per regolare il modo in cui la curva entra ed esce dal vertice di controllo ( Maniglie libere (in nero) ).
173
Figura 17.5: Aggiunta di un punto di controllo.
Figura 17.6: Maniglie vettore (in verde). Per chiudere una curva e trasformarla in un unico anello continuo, si seleziona almeno uno dei vertici di controllo della curva e si preme CKEY . Questo connetter`a l’ultimo punto nella curva col primo ( Contorno finito ). Si potrebbe aver bisogno di posizionare ulteriori maniglie per ottenere la forma voluta. Lasciando la modalit`a Edit con TAB ed entrando in quella ombreggiata [shaded] con ZKEY si scoprir`a che la curva apparir` a in realt` a come una sagoma piena ( Logo ombreggiato ). Si vogliono tagliare dei fori in questa sagoma per rappresentare i dettagli degli occhi e dell’ala del dragone. Figura 17.7: Maniglie libere (in nero).
Suferfici e Fori: Quando si lavora con le curve, Blender automaticamente rileva i fori nella superficie e li gestisc
174
CAPITOLO 17. ESEMPIO PRATICO
Figura 17.8: Contorno finito. Si torni in modalit`a fil-di-ferro [wireframe] con ZKEY e si entri ancora in modalit`a edit con TAB . Stando in Modo Edit, si aggiunga una curva circolare con {Literal— SPACE >>Curve>>Bezier Circle}}( Inserimento di un cerchio ). Si riduca il cerchio ad una giusta misura con SKEY e lo si sposti con GKEY .
Figura 17.9: Logo ombreggiato.
Si modelli il cerchio con le tecniche apprese ( Definizione dell’occhio ). Si ricordi di aggiungere altri vertici al cerchio usando WKEY >>Subdivide .
Figura 17.10: Inserimento di un cerchio. Si crei il ritaglio di un’ala aggiungendo un cerchio di B´ezier, convertendo tutti i punti in angoli netti, e quindi posizionandoli opportunamente. Si pu`o duplicare tale contorno per risparmiare tempo quando si dovr`a creare il contorno della seconda ala. Per farlo, ci si
175 assicuri che non sia selezionato alcun punto, quindi si sposti il cursore su uno dei vertici del ritaglio della prima ala e si selezionino tutti i punti collegati con LKEY ( Definizione delle ali ). Si duplichi la selezione con SHIFT-D e si posizionino, spostandoli, i nuovi punti.
Figura 17.11: Definizione dell’occhio. Per aggiungere altre strutture geometriche non connesse al corpo principale (ponendo ad esempio un cerchio nella coda curva del dragone), si usa il men` u SHIFTA per aggiungere altre curve come mostrato in Posizionamento del cerchio all’interno della coda .
Ora che abbiamo la curva, dobbiamo impostarne lo spessore e la smussatura dei bordi. Con la curva selezionata, si va nella pulsantiera di EditButtons ( F9 ) e si localizza il pannello Curves and Surface . Il parametro Ext1 imposta lo spessore dell’estrusione mentre Ext2 imposta la dimensione della smussatura. BevResol indica quanto affilata o arrotondata debba essere la smussatura. Figura 17.12: Definizione delle ali.
176
CAPITOLO 17. ESEMPIO PRATICO
Figura 17.13: Posizionamento del cerchio all’interno della coda. Dalle curve alle mesh: Per fare operazioni di modellazione pi` u complesse, si converte la curva i Una volta completato il logo, si possono aggiungere i materiali e le luci ed effettuarne un bel rendering ( Rendering finale ).
Figura 17.14: Impostazioni della smussatura [Bevel]
Figura 17.15: Rendering finale.
Capitolo 18
Estrusione lungo un percorso
La tecnica della Estrusione lungo un percorso `e uno strumento di modellazione molto potente. Essa consiste nella creazione di una superficie facendo scorrere un dato profilo lungo un percorso definito. Sia il profilo che il percorso possono essere curve di B´ezier o NURBS. Assumiamo di aver aggiunto, alla nostra scena, una curva di B´ezier ed un cerchio di B´ezier come oggetti separati ( Profilo (a sinistra) e percorso (a destra) ).
Figura 18.1: Profilo (a sinistra) e percorso (a destra). Curve and Surface (Figura 9-27).
177
Si modificano un po’ entrambi per ottenere un bel profilo ’a forma di ala’ ed un percorso gradevole ( Profilo modificato (a sinistra) e percorso (a destra) ). Per default, le B´ezier esistono solo su un piano, e sono oggetti 2D. Per fare in modo che il percorso possa volteggiare nelle tre dimensioni dello spazio, come nell’esempio mostrato sopra, si deve premere il pulsante 3D nella Pulsantiera di Edit della Curva ( F9 ) pannello
178
CAPITOLO 18. ESTRUSIONE LUNGO UN PERCORSO
Figura 18.2: Profilo modificato (a sinistra) e percorso (a destra). Ora si d`a to profilo. ne mostrato lezionato. SHIFT-LMB ).
Figura 18.3: Pulsante della curva 3D.
Figura 18.4: profilo.
uno sguardo al nome dell’oggetPer default `e CurveCircle e viesul pannello NKEY quando `e seVolendo lo si pu`o cambiare con sul nome ( Nome del profilo
Ora si seleziona il percorso. Nelle Pulsantiere si cerchi il Pulsante Testo BevOb: : nel pannello Curve and Surface e vi si scriva il nome dell’oggetto profilo. Nel nostro caso CurveCircle ( Indicazione del profilo su percorso ).
Nome del
Il risultato `e una superficie definita dal Profilo, che segue un percorso ( Risultato dell’estrusione ).
179
Figura 18.5: Indicazione del profilo su percorso Per capire i risultati, e dunque ottenere gli effetti desiderati, `e importante capire i seguenti punti:
• Il profilo `e orientato in modo che il suo asse z sia tangente ( ovvero diretto lungo) il percorso ed il suo asse x giace sul piano del percorso; di conseguenza l’asse y `e ortogonale al piano del percorso;
Figura 18.6: Risultato dell’estrusione
• Se il percorso `e 3D il piano del percorso viene definito localmente anzich´e globalmente e viene rappresentato visualmente, in modalit`a EditMode, da diversi segmentini perpendicolari al percorso ( Piano
locale del percorso ); • L’asse y del profilo punta sempre verso l’alto. Questo `e spesso una motivo di risultati inaspettati e di problemi, come sar`a spiegato in seguito.
Inclinazione: Per modificare l’orientamento del piano locale del percorso si seleziona un punto di controllo e si p Con l’asse y vincolato verso l’alto, si possono avere dei risultati non voluti allorquando il percorso `e 3D ed il profilo che si sta estrudendo proviene da un punto dove il percorso `e esattamente verticale. Infatti se il percorso diventa verticale e quindi continua a piegarsi c’`e un punto dove l’asse y del profilo dovrebbe iniziare a puntare in basso. Se questo avviene, dato che l’asse y `e vincolato a puntare verso l’alto c’`e una brusca rotazione di 180◦ del profilo, in modo che l’asse y continui a puntare verso l’alto. Problemi di estrusione dovuti al vincolo dell’asse y mostra il problema. A sinistra c’`e un percorso conformato in modo tale che la normale al piano locale del percorso punta sempre verso l’alto. A destra si vede un percorso dove, nel punto cerchiato in giallo, tale
180
CAPITOLO 18. ESTRUSIONE LUNGO UN PERCORSO
normale comincia a puntare verso il basso. Il risultato dell’estrusione presenta in questo punto un brusco giro.
Figura 18.7: Piano locale del percorso Le uniche soluzioni a tale problema sono: Usare pi` u percorsi coincidenti, o inclinare accuratamente il percorso in modo da assicurare che una normale punti sempre verso l’alto.
Cambiare l’orientamento del profi
Figura 18.8: Problemi di estrusione dovuti al vincolo dell’asse y.
Capitolo 19
Curve Taper Taper is a tool for bevelled curve objects. In the Edit panel ( F9 ) you have a TaperOb field where you put the name of the curve that will define the width of extrusion of the ’Bevel Object’ ( BevOb ) along the curve. The ’Taper Object’ curve typically is horizontal, where the height (local Y) denotes the scale of the width. Here a ’CurveCircle’ was used to bevel, another ’Curve’ to taper ( Curve and Surface panel ). Important rules:Only the first curve in a TaperOb is evaluated (if you’ve got In Taper example 1 you can clearly see the effect the left taper curve has on the right curve object. Here the left taper curve is closer to the object center and that results in a smaller curve object to the right.
Figura 19.1: Curve and Surface panel
Figura 19.2: Taper example 1 In Taper example 2 a control point in the taper curve to the left is moved away from the center and that gives a wider result to the curve object on the right.
Note: The curve object is extruded with a curve circle. (See Extrude Along Path for more on curve extruding) In Taper example 3 , we see the use of a more irregular taper curve added to a curve circle.
181
182
CAPITOLO 19. CURVE TAPER
Figura 19.3: Taper example 2
Figura 19.4: Taper example 3
Capitolo 20
Skinning Il Rivestimento [Skinning] `e l’arte di definire una superficie usando due o pi` u profili. In Blender si pu` o fare preparando molte curve della forma desiderata e convertendole quindi in una singola superficie NURBS. Come esempio creeremo un veliero. La prima cosa da fare, nella vista laterale ( NUM3 ), consiste nell’aggiungere una Superficie Curva. Ci si assicuri di aggiungere una Superficie curva e non una curva di B´ezier o di tipo NURBS, altrimenti il trucco non riesce ( Una superficie curva per il rivestimento ). Si dia alla curva la forma della sezione trasversale della battello, aggiungendo i vertici necessari col pulsante Split e, possibilmente, impostando entrambe le ’estremit`a’ della NURBS su ’U’ e ’V’ ( Profilo della nave ) se necessario. Ora si duplichi ( SHIFT-D ) la curva tante volte quanto `e necessario, a sinistra ed a destra ( Profili multipli lungo l’asse della nave ). Si modifichino le curve in modo da farle coincidere con le varie sezioni della nave nei diversi punti per tutta la sua Figura 20.1: Una superficie curva lunghezza. Per questo fine, aiuta molto lo schema. per il rivestimento Si pu`o caricare uno schema come sfondo (come si `e fatto per il disegno del logo in questo capitolo) per preparare tutti i profili delle sezioni ( Profili multipli delle forme corrette ). Si noti che la superficie che si produrr`a avr`a transizioni morbide da un profilo al successivo. Per creare dei bruschi cambiamenti `e necessario posizionare i profili molto vicini tra loro, come nel caso del profilo selezionato nella figura Profili multipli delle forme corrette .
183
184
CAPITOLO 20. SKINNING
Figura 20.2: Profilo della nave
Figura 20.3: Profili multipli lungo l’asse della nave Ora si selezionano tutte le curve (con AKEY o BKEY ), e si uniscoFigura 20.4: Profili multipli delle forme corrette no (premendo CTRL-J e rispondendo Yes alla domanda ’Join selected NURBS?’). I profili sono tutti evidenziati nella figura Profilo riunito
185
Ora si entra in modalit`a Edit ( TAB )e si seFigura 20.5: Profilo riunito lezionano i punti di controllo con AKEY ; quindi si preme FKEY . I profili dovrebbero essere ’rivestiti’ e convertiti in una superficie ( Superficie rivestita in modalit` a edit ).
Nota: Come dovrebbe essere evidente dal primo e dall’ultimo profilo in quest’esempio, le sezioni trasversali non
Si modifichi la superficie, se necessario, spostando i punti di controlFigura 20.6: Superficie rivestita in modalit`a edit lo. Scafo finale mostra una vista ombreggiata. Molto probabilmente sar`a necessario aumentare ResolU e RelolV per ottenere una forma migliore.
Impostazioni del profilo: La sola limitazione a questa potentissima tecnica `e che tutti i profili devono essere com
186
CAPITOLO 20. SKINNING
Figura 20.7: Scafo finale.
Capitolo 21
Curve Deformanti La Curva Deformante [ Curve Deform ] fornisce un metodo semplice ma efficiente per definire una deformazione di una mesh. Imparentando (affiliando) un oggetto mesh ad una curva, si pu` o deformare la mesh sopra o sotto la curva spostandola longitudinalmente o trasversalmente l’asse dominante. La Curve Deform funziona su un asse dominante X, Y o Z. Questo vuol dire che quando si sposta la mesh nella direzione dominante, la mesh la attraverser`a seguendo la curva. Spostando la mesh in una direzione ortogonale si sposter`a l’oggetto mesh avvicinandolo o allontanandolo datta curva. Le impostazioni di default in Blender mappano come asse dominante l’asse Y. Quando si sposta l’oggetto oltre le estremit`a della curva l’oggetto continuer` a a deformarsi in base al vettore direzione delle estremit`a della curva.
Suggerimento: Si provi a porre l’oggetto sopre la curva mentre lo si sposta. Questo fornir`a il miglior controllo s
21.1
L’interfaccia
Quando si imparenta una mesh ad una curva ( CTRL-P ), si presenter`a un men` u, Men` u make Parent . Selezionando Curve Deform si abiliter`a la funzione di Curve Deform sull’oggetto mesh. L’impostazione dell’asse dominante viene effettuata sull’oggetto mesh. Per default in Blender l’asse dominante `e Y . Lo si pu`o cambiare selezionando uno dei pulsanti Track Track X , Y o Z nel Pannello Anim , Impostazioni del pannello Anim , nel Contesto Object (( F7 )). Figura 21.1: Menu Make Parent
Le curve cicliche funzionano come previsto dove le deformazioni dell’oggetto passano lungo il percorso nei cicli.
CurveStretch da la possibilit`a all’oggetto mesh di stirarsi [stretch] o schiacciarsi [squeeze] per tutta la curva. Questa opzione `e nel Contesto di Edit ( F9 ) per la curva. Si veda Pannello Curve and Surface .
187
188
CAPITOLO 21. CURVE DEFORMANTI
Figura 21.2: Impostazioni del pannello Anim.
21.2
Esempio Facciamo un semplice esempio. • Si rimuova il cubo di default dalla scena e si aggiunga una Scimmietta [Monkey]! ( SHIFTA -> Add -> Mesh -> Monkey , Aggiunta della scimmietta! ).
Figura 21.3: Pannello Curve and Surface.
• Ora si prema TAB Per uscire dalla modalit`a EditMode . Si aggiunga quindi una curva. ( SHIFT-A -> Add -> Curve -> Bezier Curve , Inserimento di una curva ).
Figura 21.4: Aggiunta della scimmietta! • Stando in EditMode , si spostino i punti di controllo della curva come mostrato in Modifica della curva , quindi si esca da EditMode , ( TAB ).
Figura 21.5: Inserimento di una curva
21.2. ESEMPIO
189
• Si selezioni la Scimmietta, ( RMB ), e quindi si selezioni la curva, ( SHIFT-RMB ). Si prema CTRL-P per aprire il men` u Make Parent . Si selezioni Curve Deform . (Figura 9-37). La Scimmietta dovrebbe essere posizionata sulla curva come in Scimmietta su una curva .
Figura 21.6: Modifica della curva.
• Ora se si seleziona la Scimmietta, ( RMB ), e la si sposta, ( G ), nella direzione Y, (l’asse dominante per default), la Scimmietta si deformer`a gradualmente lungo la curva.
Suggerimento: Se si preme MMB spostando la Scimmietta si vincoler` a il movimento
• In Deformazione della scimmietta , si pu`o vedere la Scimmietta in diverse posizioni lungo la curva. Per avere una chiara visione delle deformazione si `e attivato SubSurf con Subdiv 2 e Set Smooth sulla mesh della Scimmietta. ( F9 per le opzioni Edit ).
Suggerimento: Spostando la scimmietta in direzioni diverse dall’asse dominante, si cr
Figura 21.7: Scimmietta su una curva.
190
CAPITOLO 21. CURVE DEFORMANTI
Figura 21.8: Deformazione della scimmietta.
Parte III
MATERIALI
191
193 Prima che si possa comprendere come progettare di fatto coi materiali, si deve capire come interagisce la luce simulata con le superfici nel motore del rendering di Blender e come le impostazioni del materiale regolano queste interazioni. Una conoscenza approfondita del motore sar` a d’aiuto per trarne il massimo. L’immagine creata col rendering di Blender `e una proiezione della scena su una superficie immaginaria chiamata il piano visivo . Il piano visivo `e analogo alla pellicola nella telecamera tradizionale, o ai coni ed ai bastoncelli nell’occhio umano, solo che riceve una luce simulata, non reale. Per effettuare il rendering di una scena bisogna determinare quale luce della scena arriva su ciascun punto del piano visivo. Il modo migliore per rispondere a questa domanda consiste nel seguire una linea retta (il raggio di luce simulato) a ritroso, dal punto sul piano visivo passando dal punto focale (la posizione della telecamera) fino a raggiungere una superficie visibile della scena, in tale punto si determina quanta luce dovrebbe colpire tale punto. Le propriet` a della superficie e l’angolo d’incidenza della luce indicano quanta luce torni indietro riflessa lungo l’angolo di vista incidente ( Il principio base del motore di Rendering ). Per ogni punto di una superficie, quando un raggio di luce lo colpisce, si possono avere due tipi di fenomeni basilari: diffusione e riflessione speculare. La diffusione e la riflessione speculare, si distinguono soprattutto per la relazione tra l’angolo della luce incidente e l’angolo della luce riflessa.
Figura 21.9: Il principio base del motore di Rendering.
194
Capitolo 22
Diffusione La luce che ricade su una superficie viene re-irradiata per il fenomeno della Diffusione, in altre parole, re-irradiata in tutte le direzioni isotropicamente. Questo significa che la telecamera vedr` a la stessa quantit`a di luce proveniente da questo punto della superficie prescindendo dall’angolo di vista incidente . Questa `e la qualit`a che rende la luce diffusa indipendente dal punto di vista . Ovviamente la quantit`a di luce che colpisce la superficie dipende dall’angolo della luce incidente. Se la maggior parte della luce che ricade su una superficie viene riflessa in modo diffuso, la superficie apparir`a opaca ( La luce re-irradiata per il fenomeno della diffusione ). Fin dalla versione 2.28, Blender ha implementato tre diverse formule matematiche per calcolare la diffusione e, cosa ancor pi` u notevole, la diffusione ed il fenomeno speculare, che di solito sono racchiusi in un solo tipo di materiale, sono stati separati in modo che sia possibile selezionare separatamente l’implementazione della diffusione e quello della riflessione speculare. Le tre implementaFigura 22.1: La luce re-irradiata per il fenomeno della zioni della Diffusione, o shaders (ombreggiatori), diffusione. usano due o pi` u parametri ciascuno. I primi due parametri sono condivisi da tutti gli Ombreggiatori della Diffusione e sono il colore di Diffusione , o semplicemente, il colore , del materiale, e la quantit` a d’energia della luce incidente realmente diffusa. Quest’ultima quantit`a, che spazia nella gamma [0,1], viene in realt`a chiamato Refl nell’interfaccia. Gli ombreggiatori implementati sono: 195
196
CAPITOLO 22. DIFFUSIONE
• Lambert - Questo `e stato l’ombreggiatore di default di Blender fin dalla versione 2.27, Pertanto tutti i vecchi tutorials fanno riferimento ad esso, e tutte le immagini precedenti la 2.28 sono state create cos`ı. Questo ombreggiatore ha solo i parametri di default. • Oren-Nayar - Questo ombreggiatore `e stato introdotto la prima volta in Blender 2.28. Ha un approccio pi` u ’fisico’ al fenomeno della diffusione giacch´e, oltre ai due parametri di default, ne ha un terzo, che viene usato per determinare la quantit`a di ruvidit` a microscopica della superficie. • Toon (Fumetto) - Questo ombreggiatore `e stato introdotto la prima volta in Blen` un ombreggiatore molto ’poco fisico’ dato che non intende imitare la der 2.28. E realt` a ma produrre dei rendering da ’fumetto’, con delle zone nette luce-ombra e regioni uniformemente illuminate/ombreggiate. Nonostante la sua ’semplicit`a’, richiede altri due parametri, per definire la dimensione dell’area luminosa e la nitidezza delle regioni in ombra. • Minnaert - Questo ombreggiatore `e stato introdotto la prima volta in Blender 2.37. Esso opera oscurando parti del modello Lambertiano standard, ed `e provvisto di un parametro supplementare, chiamato darkness (oscurit`a). Valori di oscurit`a alti renderanno pi` u scuri i contorni di un oggetto (dove questi puntano altrove rispetto all’osservatore o alla sorgente luminosa), facendo apparire la superficie pi` u speculare o pi` u metallica. Bassi valori di darkness faranno rilucere i contorni degli oggetti, rendendoli simili a qualcosa come il velluto. Una successiva sezione, dedicata all’implementazione reale del materiale, analizzer`a le relative impostazioni.
Capitolo 23
Riflessione Speculare Diversamente dalla Diffusione, la riflessione Speculare `e dipendente dal punto di vista . Secondo la legge di Snell , la luce che ricade su una superficie a specchio sar`a riflessa di un angolo che riflette l’angolo della luce incidente, il che rende l’angolo di vista molto importante. La riflessione speculare ha una forma forte, molto luminosa, e la superficie appare lucente ( Riflessione Speculare ). In effetti, la Diffusione e la riflessione Speculare sono generate esattamente dallo stesso processo di dispersione della luce. La Diffusione `e dominante da una superficie con tante piccole asperit`a, rispetto alla lunghezza d’onda, tale luce viene riflessa in tante direzioni diverse da ciascun piccolo pezzo della superficie con piccole variazioni dell’angolazione della superficie. La riflessione Speculare, d’alFigura 23.1: Riflessione Speculare. tronde, prevale su una superficie liscia, rispetto alla lunghezza d’onda. Questo implica che i raggi dispersi da ciascun punto della superficie siano diretti quasi nella stessa direzione, invece che essere diffusi in modo sparpaglia` solo una questione di scala del dettaglio. Se le asperit`a della superficie sono pi` to. E u piccole della lunghezza d’onda della luce incidente essa appare piatta come uno specchio.
` importante insistere sul fatto che il fenomeno della riflessione Speculare discusso qui non `e la riflession Nota: E Come la Diffusione, la riflessione Speculare ha diverse implementazioni, o shaders speculari . Inoltre, ciascuna di queste implementazioni condivide due parametri comuni: 197
198
CAPITOLO 23. RIFLESSIONE SPECULARE
il colore Speculare e l’energia della specularit`a, nell’intervallo [0-2]. Questo consente in realt` a di versare pi` u energia da disperdere della riflessione speculare come se fosse energia incidente. Come conseguenza, si ha che un materiale ha almeno due diversi colori, uno diffuso, ed uno speculare. Il colore speculare `e normalmente impostato come bianco puro, ma pu` o avere un valore diverso per ottenere degli effetti particolari. I quattro ombreggiatori speculari sono: • CookTorr - Questo `e stato il solo Ombreggiatore Speculare di Blender fino alla versione 2.27. Infatti, fino a tale versione non era possibile impostare separatamente ombreggiatori diffusi e speculari ed `e stata una semplice implementazione del materiale. Accanto ai due parametri standard questo shader ne usa un terzo, hardness (durezza), che regola la larghezza della zona speculare. Pi` u basso `e hardness, pi` u larga `e la zona. • Phong - Questo `e un diverso algoritmo matematico, usato per calcolare la specularit` a. Esso non molto diverso dal CookTorr, ed `e manovrato dagli stessi tre parametri. Comunque `e pi` u orientato verso i materiali plastici. • Blinn - Questo `e un ombreggiatore speculare pi` u vicino alle leggi della fisica, pensato per accoppiarlo a quello diffuso di Oren-Nayar. Esso `e pi` u fisico in quanto aggiunge un quarto parametro, un index of refraction (IOR) (indice di rifrazione), ai suddetti tre. Questo parametro non viene in realt`a usato per calcolare la rifrazione dei raggi (per questo ci vuole un ray-tracer), ma per calcolare correttamente l’intensit` a e l’estensione della riflessione speculare secondo la Legge di Snell. I parametri Hardness e Specular consentono un ulteriore grado di libert`a. • Toon (Fumetto) - Questo ombreggiatore speculare si accoppia con quello della ` progettato per produrre zone nette ed uniformi tipiche dei diffusione di Toon. E fumetti. Non ha hardness mentre ha una coppia di parametri Size e Smooth per indicare l’estensione e la nitidezza delle zone speculari. • WardIso - Questo ombreggiatore speculare `e principalmente orientato verso i materiali plastici. Comparato all’ombreggiatore Phong, questo ha rilievi speculari pi` u definiti. Usa un parametro supplementare, rms . Grazie alla sua flessibile implementazione, che tiene separati i fenomeni della diffusione e della riflessione speculare, Blender consente di controllare facilmente quanta della luce incidente cadente su un punto di una superficie venga sparpagliata in giro, quanta di questa `e riflessa come specularit`a, e quanta non sia assorbita. Questo, a sua volta, determina in quali direzioni (ed in che quantit`a) la luce sia riflessa da una data sorgente di luce; vale a dire, da quale sorgente (ed in quale quantit`a) la luce viene riflessa verso un dato punto del piano visivo. ` molto importante ricordare che il colore del materiale `e solo uno degli elementi nel E processo del rendering. Il colore in effetti `e il prodotto del colore della luce e di quello del materiale.
Capitolo 24
Materiali in pratica In questa sezione si vedr` a come impostare i parametri del materiale in Blender, e cosa ci si debba aspettare come risultato.
Figura 24.1: L’aggiunta di un nuovo materiale.
Una volta selezionato l’Oggetto, premendo il tasto F5 o , ci si sposta nel contesto di Shading ed apparir`a la Pulsantiera del Materiale. Tale finestra sembra terribilmente vuota, a meno che l’Oggetto non abbia gi`a un materiale collegato ad esso. Se non ci sono materiali collegati, se ne aggiunge uno nuovo col pulsante men` u( L’aggiunta di un nuovo materiale ). Una volta aggiunto un materiale appariranno i pulsanti come mostrato nella Figura I Pulsanti del Materiale . Sono presenti quattro pannelli, da sinistra a destra: un pannello Preview , un pannello Material , un pannello Shader ed un pannello Texture . Ci concentreremo sui primi tre, per ora.
Figura 24.2: I Pulsanti del Materiale. materiale. Per default mostra un piano visto dall’alto, ma pu`o essere cambiato in una sfera o un cubo tramite i pulsanti sulla destra del pannello ( L’Anteprima del Materiale, un piano (a sinistra) una sfera (al centro) ed un cubo (a destra) ).
24.1
I Colori dei Materiali 199
200
CAPITOLO 24. MATERIALI IN PRATICA
Figura 24.3: L’Anteprima del Materiale, un piano (a sinistra) una sfera (al centro) ed un cubo (a destra). ri del materiale ) consente, tra l’altro, l’impostazione dei colori del materiale. Ciascun materiale pu`o esporre fino a tre colori:
• Il colore base del materiale , o quello Diffuso, o, in breve il Colore (il pulsante Col nell’interfaccia) che `e il colore usato dallo shader di diffusione. Figura 24.4: I pulsanti dei colori del materiale.
• Il colore Speculare , indicato dal pulsante Spe nell’interfaccia, `e il colore usato dallo shader speculare.
• Il colore Specchio , indicato dal pulsante Mir nell’interfaccia, `e il colore usato dalle speciali textures per imitare le riflessioni. (Si troveranno ulteriori informazioni su questo nella sezione Mappatura Ambientale). I suddetti pulsanti selezionano il colore di pertinenza, che appare in anteprima immediatamente alla sinistra di ciascun pulsante. I tre sliders a destra consentono la modifica dei valori del colore attivo sia secondo uno schema RGB che secondo lo schema HSV. Tali schemi si possono selezionare tramite i pulsanti RGB e HSV in basso. Il pulsante DYN `e usato per impostare le propriet` a Dinamiche dell’Oggetto nel motore RealTime (che va oltre lo scopo di questo libro), mentre i quattro pulsanti sopra sono relativi agli avanzati Vertex Paint (Colorazione del Vertice) e UV Texture .
24.2
Gli Ombreggiatori [Shaders]
Il pannello Shader ( I pulsanti dell’Ombreggiatore [Shader] del materiale ) mostra due pulsantiere che consentono di selezionare un ombreggiatore di diffusione ( Gli ombreggiatori Diffuse (di diffusione) del materiale ) ed un ombreggiatore speculare ( Gli ombreggiatori Specular (Speculari) del materiale ).
Il pannello Material ( I pulsanti dei colo-
24.3. MODIFICHE DEI MATERIALI
201
Figura 24.5: I pulsanti dell’Ombreggiatore [Shader] del materiale.
Figura 24.6: Gli ombreggiatori Diffuse (di diffusione) del materiale. I due sliders sul lato, validi per tutti gli shaders, determinano l’intensit`a dei fenomeni di Diffusione e Specularit`a. Lo slider Ref ha un intervallo da 0 a 1 mentre Spec va da 0 a 2. Parlando in termini strettamente fisici, se A `e l’energia della luce che colpisce l’oggetto, Ref per A `e l’energia diffusa e Spec per A `e l’energia riflessa specularmente. Per essere fisicamente corretti deve risultare Ref + Spec < 1 altrimenti l’oggetto irradierebbe pi` u energia di quanta ne riceva. Ma questa `e la CG (Computer Grafica), quindi non si deve essere troppo Figura 24.7: Gli ombreg- rigorosi per le leggi della fisica. A seconda dell’ombreggiatogiatori Specular (Specu- re scelto possono essere presenti altri sliders, che consentono lari) del materiale. di impostare i vari parametri discussi nell’introduzione. Per completezza, la Figura Riassunto degli shader mostra tutte le possibili combinazioni. Ovviamente, dato che ci sono molti parametri, c’`e solo un piccolo esempio.
24.3
Modifiche dei Materiali
I restanti pulsanti del materiale in entrambi i pannelli Material e Shaders eseguono degli effetti particolari.
202
CAPITOLO 24. MATERIALI IN PRATICA
Figura 24.8: Riassunto degli shader. La Figura Ulteriori sliders del materiale mostra degli sliders interessanti. Alpha regola l’opacit`a del materiale; 1 `e completamente opaco, 0 `e totalmente trasparente. SpecTra forza la zona di specularit`a sui corFigura 24.9: Ulteriori sliders del materiale. pi trasparenti ad essere opaca. Shadeless rende il materiale insensibile alla propria ombreggiatura [shading], dandogli un colore uniformemente diffuso. Nel pannello Shaders , lo slider Emit , se diverso da zero, d` a una propriet`a di emissione al materiale. Tale propriet`a rende il materiale visibile anche senza luci e pu`o essere esso stesso una sorgente di luce se viene usato il motore della Radiosit` a. ( Il materiale normale (a sinistra), il materiale con Alpha < 1 (al centro) ed il materiale con Emit > 0 (a destra) ). Le restanti file di pulsanti ( I pulsanti speciali del materiale ) attivano delle funzionalit`a speciali. Il pulsante in alto Halo rende il materiale ’Halo’ (alone/aureola luminescente), che sar` a descritto in seguito. Normalmente Traceable , Shadows e Radio sono attivati. Il primo consente al materiale di proiettare ombre, mentre il secondo consente al materiale di ricevere ombre; il terzo consente al materiale di essere preso in esame nel caso
24.3. MODIFICHE DEI MATERIALI
203
si effettui un rendering della Radiosit`a.
Figura 24.10: Il materiale normale (a sinistra), il materiale con Alpha < 1 (al centro) ed il materiale con Emit > 0 (a destra). Wire fa apparire l’Oggetto a fil-di-ferro [wireframe]. ZTransp `e necessario per attivare l’effetto di trasparenza Alfa. Gli altri pulsanti non sono usati tanto spesso e vengono descritti nella sezione di riferimento alla fine del libro.
Figura 24.11: I pulsanti speciali del materiale.
204
CAPITOLO 24. MATERIALI IN PRATICA
Capitolo 25
Ramp Shaders 25.1
Introduzione
In molte situazioni della vita reale - come pelle o metalli - il colore delle riflessioni diffuse o speculari pu` o leggermente differire, a seconda della quantit`a di energia che riceve la superficie o l’angolo di incidenza della luce. La nuova funzione Ramp Shader consente ora in blender di impostare una gamma di colori per un Material , e definisce come la gamma cambia sulla superficie e come si miscela col ’colore attuale’ (di solito dal materiale o come output di una texture). Dato che in Blender i calcoli delle textures avvengono prima dell’ombreggiatura [shading], il Ramp Shader pu`o completamente sostituire il colore della texture o del materiale. Ma usando l’opzione di miscelazione [mixing] ed i valori dell’Alfa [Alpha] `e possibile creare un ulteriore strato di ombreggiatura nei materiali di Blender.
25.2
L’interfaccia
Il Pannello Ramps `e posto nel contesto Material ( F5 ). Qui si possono utilizzare i due pulsanti in alto per mostrare sia le impostazioni premendo Show Col Ramp per rampe diffuse o Show Spec Ramp per rampe speculari. ( Il Pannello Ramps ). La pressione del pulsante Colorband consente il Ramp Shaders . Normalmente si apre con 2 colori, il primo con Alpha = 0 , pertanto nessun colore, il secondo con Alpha = 1 ed un colore azzurro [cyan]. ( La banda di Colore [Colorband] del Pannello Ramps ).
205
206
CAPITOLO 25. RAMP SHADERS
Figura 25.1: Il Pannello Ramps. • Add - Aggiunge un nuovo colone in mezzo alla colorband con un grigio neutro come colore di default. • Cur - Mostra il numero del colore attualmente selezionato sulla colorband. • Del - Cancella la posizione corrente. • E/L/S - Definisce il tipo di interpolazione tra il colore del Ramp Shader ed il colore del Materiale. E - Ease (Facile) o Qubic (Cubico), L - Lineare e S - B-Spline. • Alpha - Definisce la quanto dell’effetto Ramp Shader sar`a visibile. Un valore di Alpha di 0 significa che il Ramp Shader `e totalmente trasparente e non apparir`a nel materiale finale. Un valore di 1 imposta a opaco il Ramp Shader . Se si definiscono i colori con diversi valori di Alpha , essi verranno interpolati tra loro per avere delle transazioni morbide tra le diverse impostazioni di trasparenza. Si pu` o avere un’anteprima delle impostazioni dell’ Alpha sulla color band col disegno a scacchiera dietro la colorband. Se il disegno `e visibile allora la trasparenza `e inferiore ad 1 . • R/G/B - I valori RGB del colore attuale. Si pu`o cliccare con LMB sul campo del colore sotto il campo Pos per scegliere un colore usando il Color Picker . Il colore corrente viene segnalato con una barra un po’ spessa nella colorband. Per selezionare la posizione di un colore si pu`o sia premere LMB sulla posizione del colore desiderato che aumentare o diminuire il numero del colore corrente con le frecce destra e sinistra nel campo Cur . si pu`o anche cliccare con SHIFT-LMB nel campo per immettere manualmente il numero richiesto. Si pu`o spostare la posizione di un colore semplicemente premendo LMB e trascinandolo sulla colorband. C’`e anche un campo Pos dove si pu` o spostare la posizione con le frecce a sinistra ed a destra o SHIFT-LMB nel campo per immettere manualmente la posizione.
Nota: Se si riordinano le posizioni dei colori, essi verranno rinumerati in modo che si inizi sempre con 0 da sini I due pulsanti pop-up ed il valore dello slider nella parte inferiore del pannello definiscono il funzionamento dei Ramp Shaders :
25.2. L’INTERFACCIA
207 Input
• Shader - Il valore cos`ı come esce dalla formula dello shading base (simile al Lambert o al Phong) definisce il colore. Quindi la quantit`a di luce non riguarda il colore, solo la direzione della luce.
Figura 25.2: La banda di Colore [Colorband] del Pannello Ramps.
• Energy - Come Shader , ma vengono presi in esame anche l’energia della lampada, il colore e la distanza. Questo fa in modo che il materiale cambi colore quando `e illuminato da pi` u luce.
• Normal - Per il Ramp Shader viene usata la superficie normale, relativamente alla telecamera. Ci`o `e possibile anche con una texture, ma `e stata aggiunta per comodit`a. • Result - Tutte e tre le precedenti opzioni funzionano per ogni lampada, questa opzione lo fa alla fine di tutto il calcolo dell’ombreggiatura [shading]. Questo consente di avere il pieno controllo su tutta l’ombreggiatura, inclusi i risultati a ’vignetta’ [Toon]. Qui l’uso dei valori di alfa `e pi` u utile per dare un tocco finale ad un Materiale. Method (Metodo)
Figura 25.3: Il men` u a scomparsa di Input. Il men` u Method ha diverse possibilit`a per il tipo di miscelazione: Mix , Add , Subtract , Multiply , Screen , Divide , Difference , Darken e Lighten . Le possibilit`a di Method consentono di scegliere come verranno miscelati il colore di Input e quello del Ramp Shader . Factor
208
CAPITOLO 25. RAMP SHADERS
Figura 25.4: Il men` u popup Method. Lo slider Factor indica il fattore complessivo dell’effetto Ramp Shader : 0 significa nessun effetto e 1.0 indica l’effetto pieno. Figura 25.5: Lo slider Factor.
25.3
Esempio
Facciamo una piccola prova usando i Ramp Shaders .
• Si rimuove l’oggetto cubo di default dalla scena e si aggiunge una mesh Monkey (Scimmia)! ( SHIFT-A -> Add -> Mesh -> Monkey). Si preme Subsurf e si imposta il livello di Suddivisione Subsurf a 2 sia per la visualizzazione che per il rendering. Si preme Set Smooth per avere una bella Scimmia liscia! Tutto questo nel contesto di Edit . ( F9 ).
• Ora si preme TAB per uscire dal Modo Edit . Si preme F5 per entrare nel contesto Material . Nel pannello Material si preme Add New per aggiungere un nuovo materiale! Si modificano i parametri nel tab Shaders come nella Figura Le impostazioni di Shader .
• Si preme il tab Ramps per aprire il pannello Ramp Shader . Si preme Colorband per attivare l’effetto Ramp Shader . Ora si prova ad impostare i parametri come nella Figura Le regolazioni di Ramp Shader . Ci si ricordi di impostare l’ Input a Normal . Il secondo colore a destra `e regolato con un Alpha = 0 ed il colore `e un nero puro!
25.3. ESEMPIO
209
Figura 25.6: Le impostazioni di Shader. • Nel tab Ramps si preme Show Spec Ramp e si regolano i parametri come nella Figura Il colore 0 del Ramp Shader speculare ed nella Figura Il colore 1 del Ramp Shader speculare .
Figura 25.7: Shader.
Le regolazioni di Ramp
Figura 25.8: Il colore 0 del Ramp Shader speculare. Questo `e il rendering risultante dalle impostazioni appena immesse. Nella Figura Nessun Ramp Shader non c’`e un Ramp Shader attivo. Nella Figura Il Color Ramp il Color
210
CAPITOLO 25. RAMP SHADERS
Ramp `e funzionante ed infine nella Figura Sia il Color che lo Specular Ramp sono attivi sia il Color Ramp che lo Specular Ramp ! Si tenga presente che qui si `e solo dimostrato uno degli effetti del Ramp Shader . C’`e molto altro da esplorare, si provino a cambiare i parametri Input e Method , per vedere dei risultati completamente diversi da quelli appena mostrati in questo esempio.
Figura 25.9: Il colore 1 del Ramp Shader speculare.
Parte IV
TEXTURES
211
213 Le impostazioni del materiale viste finora producono oggetti belli, levigati, uniformi . Ovviamente, tali oggetti non sono veri nella realt`a, dove le difformit` a sono pi` u frequenti. Blender tiene conto di tali difformit` a, sia nel colore, nel potere riflettente e di specularit`a, nella rugosit` a, e cos`ı via, tramite le texture . Queste possono essere di tipo procedurale ( alcuni metalli ), cio`e textures create mediante formule matematiche, oppure immagini, o mappe Figura 25.10: Alcuni Metalli. Imambientali che danno l’impressione di riflessioni magine dalle note di rilascio della e rifrazioni. versione 2.33.
214
Capitolo 26
Mappatura da 2D a 3D La texture immagine `e l’unica vera texture 2D ed `e la pi` u frequentemente usata e la pi` u avanzata tra le textures di Blender. La mappatura bump standar integrata, e il mipmapping a prospettiva-corretta, il filtraggio, e l’anti scalettatura garantiscono immagini eccezionali (impostate il pulsante OSA per questo). Dal momento che le immagini sono bidimensionali, il modo in cui le coordinate 3D della texture sono tradotte dal 2D deve essere specificato nei pulsanti di mappatura . Le quattro mappature standard sono: Flat , Cube , Tube e Sphere . A seconda della forma globale dell’oggetto, uno di questi tipi `e pi` u consono. • La Mappatura ’Flat’ ( Mappatura ’Flat’ (Piana). ) da i migliori risultati su singole facce piane. Produce effetti interessanti sulla sfera, ma comparato ad una sfera mappata con ’sphere’ il risultato appare piatto. Sulle facce che non si trovano sul piano di mappatura, l’ultimo pixel della texture viene ripetuto, il che produce bande sul cubo e sul cilindro.
Figura 26.1: (Piana).
Mappatura
’Flat’
• La mappatura cubica ( Mappatura ’Cube’ (Cubo). ) spesso d`a risultati soddisfacenti quando gli oggetti non sono troppo curvi e organici (notate le giunture sulla sfera). 215
216
CAPITOLO 26. MAPPATURA DA 2D A 3D
Figura 26.2: (Cubo).
Mappatura ’Cube’
• La mappatura ’Tube’ ( Mappatura ’Tube’ (Tubo). ) mappa la texture attorno all’oggetto come l’etichetta di una bottiglia. La texture `e quindi pi` u stirata sul cilindro. Questa mappatura certamente `e molto buona per fare l’etichetta di una bottiglia o per assegnare adesivi ad oggetti curvi. Comunque non si tratta di una mappatura cilindrica, per cui le estremit`a del cilindro non sono definite.
Figura 26.3: (Tubo).
Mappatura ’Tube’
• La mappatura ’Sphere’ ( Mappatura ’Sphere’ (Sfera). ) `e il miglior modo di mappare una sfera, ed `e perfetta per fare un pianeta o roba simile. E’ spesso molto utile per creare oggetti organici. Produce anche effetti curiosi su di un cilindro.
26.1
Spostamento di coordinate. Scalatura e Trasformazione
• Ofs: Le coordinate possono essere traslate assegnando un offset. All’aumento di Ofs la texture si muove in alto a sinistra. • Size: Scalatura della texture. La texture `e ripetuta tante volte quanto `e ndicato qui.
26.1. SPOSTAMENTO DI COORDINATE. SCALATURA E TRASFORMAZIONE217 • X,Y,Z: Varia le coordinate X, Y e Z. Potete anche disattivare le rispettive coordinate.
Muovere una texture: Come descritto nella precedente sezione potete manipolare la texture nella parte della te
Figura 26.4: (Sfera).
Mappatura ’Sphere’
218
CAPITOLO 26. MAPPATURA DA 2D A 3D
Capitolo 27
Introduzione Per modelli 3D pi` u complessi, le mappature classiche cubica, cilindrica o sferica solitamente non sono sufficienti. Per una proiezione ancora pi` u accurata l’UV mapping pu`o aiutare. Esso pu` o essere usato per applicare textures a forme arbitrarie e complesse, come teste umane o animali. Spesso queste textures sono immagini disegnate, create in applicazioni come The Gimp, Photoshop, o la vostra applicazione di disegno preferita. Mentre le textures procedurali (descritte nel capitolo precedente) sono utili - non si ripetono mai e ’riempiono’ sempre gli oggetti 3D - esse non sono sufficienti per immagini pi` u complesse o naturali. Per dirne una, la pelle di una testa umana non apparir`a mai sufficientemente corretta se generata con le procedurali. Le rughe in una testa umana, o i graffi su di un’automobile non si trovano in punti casuali, ma dipendono dalla forma del modello e dal suo uso. Le immagini dipinte manualmente, o le immagini catturate dal mondo reale danno maggiore controllo sul risultato finale. Invece di dedicarsi a modificare gli sliders numerici, gli artisti potranno controllare ogni singolo pixel della superficie. Una mappa UV descrive quale parte della texture dovr`a essere attaccata ad ogni poligono nel modello. Ogni vertice del poligono viene assegnato a coordinate 2D che definiscono quale parte dell’immagine viene mappata. Queste coordinate 2D sono chiamate UV (comparate alle coordinate XYZ del sistema 3D). L’operazione di generare queste mappe UV `e anche chiamata unwrap (srotolamento), perch`e `e come se la mesh venisse sviluppata su di un piano 2D.
Un Consiglio: L’UV mapping `e anche essenziale nel game engine di Blender, o in qualsiasi altro gioco. Esso `e lo
27.1
L’editor UV
La mappatura UV si realizza in Blender all’interno della finestra dell’editor UV e con una speciale modalit` a nella finestra 3D chiamata Modalit`a di Selezione delle Facce UV (UV Face Select Mode). L’editor UV vi permette di mappare le textures direttamente sulle facce delle meshes. Ogni faccia pu`o avere assegnate coordinate di texture individuali, e pu` o essere combinata con i colori dei vertici per rendere la texture pi` u chiara o pi` u scura o per darle dei colori. Usando l’editor UV ad ogni faccia della mesh vengono 219
220
CAPITOLO 27. INTRODUZIONE
assegnate due nuove caratteristiche:
• quattro coordinate UV Queste coordinate definiscono il modo in cui un’immagine o una texture `e mappata sulla faccia. Si tratta di coordinate 2D, ed `e per questo che vengono chiamate UV, per distinguerle dalle coordinate XYZ. Queste coordinate possono venire usate per il rendering o per la visualizzazione in realtime openGL. • un collegamento ad un’imagine Ogni faccia in Blender pu`o avere un collegamento ad una differente immagine. Le coordiate UV definiscono come questa immagine verr` a mappata sulla faccia. Questa immagine quindi pu`o essere renderizzata o visualizzata in realtime. Una finestra 3D deve essere in modalit`a ’Face Select’ perch`e si possa assegnare immagini o cambiare le coordinate UV dell’oggetto mesh attivo.
Figura 27.1: Entrare in modalit` a Face Select.
Prima aggiungere un oggetto Mesh alla vostra scena, quindi entrare in modalit`a Face Select scegliendo nel menu delle modalit` a quella di Face Select. La vostra mesh verr`a disegnata con lo Z-buffer. Se passate alla modalit`a di disegno con Texture ( ALT-Z , anche detto modo a patata) vedrete la vostra mesh disegnata in bianco, che indica che attualmente non c’`e un’immagine assegnata a tali facce. E’ possibile controllare il modo con cui queste facce vengono disegnate usando i pulsanti Draw Edges e Draw Faces nel pannello di UV Calculation. se `e attivato Draw Edges tutte le facce verranno disegnate in evidenza. Con Draw Faces attivato, tutte le facce selezionate appariranno in rosa chiaro (o il colore del tema).
Figura 27.2: Modalit` a Face Select.
27.2. STRUMENTI PER SCUCIRE
Figura 27.3: Calculation.
Pannello UV
221
Premete AKEY e tutte le facce della Mesh verranno selezionate ed evidenziate da linee punteggiate. Le facce si possono selezionare con RMB , o BorderSelect ( BKEY ) nella finestra 3D. Se si hanno problemi con la selezione delle facce desiderate, si pu`o anche entrare in Modo Edit e selezionare i vertici voluti. Dopo aver lasciato il Modo Edit dovrebbero risultare selezionate anche le facce definite dai vertici selezionati.
Solo una faccia `e attiva. O, in altre parole: la Finestra Immagine mostra solo l’immagine della faccia attiva. Come al solito in Blender solo l’ultima faccia selezionata `e attiva e la selezione si effettua con RMB . Si cambi una finestra in una Finestra Immagine/Editor UV con SHIFT-F10 . Qui si pu`o caricare o cercare un’immagine col pulsante Load . Se state texturizzando un oggetto per un gioco, assicuratevi che le dimensioni dell’immagine siano potenze di due (4, 8, 16, 32, 64, 128 ...) sia per larghezza che per l’altezza, in modo che possano essere disegnate in modo opportuno usando le openGL. (nota: molte schede video non supportano immagini pi` u grandi di 2048x2048 pixels). Per dei lavori di render, le textures possono avere qualunque dimensione. Caricando o cercando un’immagine in Selezione di Facce [FaceSelect] si assegna automaticamente l’immagine alle facce selezionate. Si pu`o osservare immediatamente ci`o nella finestra 3D in Modo Vista Texture.
27.2 Strumenti Scucire
Figura 27.4: L’editor UV.
per
Nella finestra 3D, si pu`o premere UKEY in Modo Selezione di Facce [FaceSelect] per avere un men` u per calcolare le coordinate UV per le facce selezionate. Si pu`o eseguire una scucitura anche usando il Pannello UV Calculation nella Pulsantiera di Edit. Tale pannello fornisce anche un controllo migliore del processo di scucitura.
222
CAPITOLO 27. INTRODUZIONE Gli algoritmi di scucitura [unwrapping] UV disponibili sono:
• Cube Questo determina una mappatura cubica. • Cylinder, Sphere Mappatura Cilindrica/sferica, calcolata dal centro delle facce selezionate. • Bounds to 1/8, 1/4, 1/2, 1/1 Le Coordinate UV vengono calcolate usando la proiezione cos`ı come appare nella finestra 3D, quindi ridotte di una data frazione dell’immagine della texture.
Figura 27.5: UV pre-impostate.
• Standard 1/8, 1/4, 1/2, 1/1 Ciascuna faccia assume un insieme di coordinate quadrate di default che vengono ridotte della frazione richiesta dell’immagine della texture. • From Window Le coordinate UV vengono calcolate usando la proiezione mostrata nella finestra 3D. • LSCM Le coordinate UV vengono calcolate usando l’algoritmo Least Squares Conforming Maps (Mappe Conformi ai Quadrati Minimi). Si usa assieme alla marcatura (definizione) delle cuciture.
Nel Pannello UV mapping, si pu` o regolare il modo in cui si effettua la mappatura e come debba apparire nella finestra 3D quando il modello `e in Modo Selezione di Facce [Face Select]. Con View Aligns Face abilitato, la scucitura Cilindrica e Sferica viene effettuata dalla vista. La vista si suppone essere di fronte al Cilindro/Sfera, con i cerchi in alto ed in basso della vista. Il Cilindro/Sfera viene tagliato in un apposito lato della vista. Size e Radius definiscono il ridimensionamento della mappa quando si usa la mappatura Cube o Spherical/Cilindrical rispettivamente. Con VA Top (Allinea la vista in Alto [View Aligns Top]) abilitato, la vista deve guardare attraverso il Cilindro / Sfera. Viene tagliata nella parte alta della vista. Con questo attivato si pu` o definire anche come la vista venga ruotata rispetto ai poli con le opzioni PolarZX e Polar ZY . Se `e abilitato Al Obj , il Cilindro/Sfera viene ruotato in base alla rotazione dell’Oggetto. Draw Edges e Draw Faces nel Pannello attivano la visualizzazione dei bordi e delle facce nella Finestra 3D mentre si `e in Modo Selezione di Facce [Face Select]. Le facce selezionate in questo modo verranno disegnate in viola trasparente (o il colore del tema), simile al Modo Edit. Il disegno delle Cuciture [Seams] in Modo Edit ed in Modo Selezione di Facce pu` o essere scambiato con Draw Seams . Anche i colori delle cuciture possono essere cambiati nelle opzioni dei Temi.
27.3. MODIFICA DELLE COORDINATE UV
27.3
223
Modifica delle coordinate UV
Nell’Editor UV si vedr` a una rappresentazione delle facce selezionate come vertici gialli o viola connessi con linee punteggiate. Si possono usare le stesse tecniche qui delle Mesh in Modo Edit per selezionare, spostare, ruotare, dimensionare e cos`ı via. Col pulsante Lock si potr` a vedere in tempo reale il risultato in 3D di ci`o che si sta facendo. Dimensionamento e Traslazione dei vertici possono essere fatti secondo gli assi locali X e Y della mappa se necessario. Basta premere XKEY o YKEY dopo aver immesso il comando di ` disponibile anche lo strumento di modifica proporzionale dimensionamento ( SKEY ). E e funziona come nel Modo Edit delle mesh. Nell’Editor UV i vertici possono essere nascosti o mostrati usando HKEY e ALT-H rispettivamente, come nel Modo Edit. Nell’Editor UV sono disponibili diversi modi di selezione. Dato che un vertice viene disegnato nell’Editor per ciascuna faccia cui appartiene, talvolta `e difficile dire se sono selezionati gli stessi vertici o no.
Figura 27.6: Il men` u UV Transformation.
Con Stick UVs to Mesh Vertex (Attacca le UV al vertice della Mesh) abilitato, un click con RMB selezioner`a non solo un vertice UV, ma anche tutti i vertici UV che appartengono allo stesso vertice della mesh. Questa modalit`a si pu`o usare anche se non `e attivata nel men` u, tenendo premuto CTRL durante la selezione di un vertice.
Stick Local UVs to Mesh Vertex (Attacca le UV Locali al vertice della Mesh) funziona allo stesso modo, ma seleziona solo le UV ’connesse’, ovvero che rientrino nel raggio di 5 pixel della prima UV selezionata. Tale modalit`a si pu`o usare anche se non `e impostato come default, tenendo premuto SHIFT mentre si seleziona un vertice. Tali scelte vengono alternativamente poste on/off premendo rispettivamente CTRL-C e SHIFT-C . Con Active Face Select (Seleziona ed Attiva Faccia) abilitato, un click di RMB selezioner` a una faccia, e la render` a attiva. Questo pu`o essere posto on/off premendo CKEY . Per tutte e tre queste opzioni viene mostrata una speciale icona in basso a destra dell’Editor UV. Si noti che Active Face Select e Stick UVs to Mesh Vertex possono essere contemporanei. Unlink Selection (Scollega Selezione) si baser`a sulla selezione corrente, soltanto che lascia tali UV selezionate, e le cui facce sono totalmente selezionate. Come dice il nome, questo `e utile per scollegare le facce e spostarle altrove. Il tasto attivo `e ALT-L . Select Linked UVs (Seleziona le UV Collegate) funziona come Select Linked nell’inquadratura [View] 3D. Selezioner` a tutte le UV che sono ’connesse’ alle UV attualmente selezionate. La differenza con l’inquadratura 3D `e che nell’Editor UV, le UV sono connesse ’implicitamente’. Due UV sono considerate selezionate se la distanza tra esse non supera i 5 pixels. Il tasto attivo `e LKEY .
224
CAPITOLO 27. INTRODUZIONE
Diverse parti della mappa UV possono essere cucite se i vertici UV del bordo corrispondono agli stessi vertici della mesh utilizzando il comando Stitch ( VKEY ). Il comando di sutura [stitch] funziona unendo profili irregolari, basta selezionare i vertici sulla linea perimetrale utilizzando Stick UVs to Mesh Vertex Limit Stitch funziona allo stesso modo. La differenza `e che si accosta [snaps] assieme alle UV entro un dato range. Il limite di default `e di 20 pixel. Il vantaggio su ’Stitch’ `e che evita che le UV, che si suppone restino separate, si cuciano assieme. Si pu`o vedere sulle schermate come Limit Stitch evita gli avvolgimento [wraparounds] quando si cuciono assieme due parti di un Cilindro.
Figura 27.7: Stitch e Limit Stitch.
Si possono unire UV che non corrispondono allo stesso vertice della mesh usando il comando Weld (Salda) ( WKEY ). Il comando Weld si pu`o usare per allineare diversi vertici in X o Y. Dopo aver premuto WKEY si preme XKEY o YKEY per scegliere con quale asse si voglia allineare. Qualche suggerimento:
• Premete RKEY nella finestra 3D per richiamare un men` u per la rotazione delle coordinate UV. • Talvolta `e necessario spostare i files delle immagini in una nuova locazione dell’hard disk. Si preme NKEY nella Finestra Immagine per richiamare un men` u Replace Image name (Sostituisci Nome dell’Immagine). Si pu`o immettere al posto del nome della vecchia directory, quello nuovo. Premendo OK si modificano i percorsi [paths] di tutte le immagini in Blender che prima erano poste nella vecchia directory. (Nota: come nuova directory s usa il codice // per indicare la directory dove risiede il file Blender). • Si pu` o anche usare simultaneamente Selezione di Facce [FaceSelect] e Colorazione di Vertici [VertexPaint] ( VKEY ). La colorazione dei vertici per`o funziona solo sulle facce selezionate. Questa funzionamento `e utile soprattutto per dipingere facce come se non condividessero vertici. Si noti che i colori dei vertici vengono utilizzati per modulare la luminosit`a o il colore della texture immagine applicata.
27.4
Scucitura [Unwrap] LSCM
LSCM significa Least Squares Conformal Map. Questo `e un avanzato metodo matematico per creare automaticamente una mappatura UV mantenendo al minimo stirature e deformazioni della texture. Funziona preservando gli angoli locali. Proprio come qualsiasi altro modo di scucire le UV esistente, esso scucir`a le facce selezionate in Modo Selezione Facce UV [UV Face Select]. Questo `e disponibile sia premendo UKEY , e
27.4. SCUCITURA [UNWRAP] LSCM
225
quindi scegliendo LSCM , che scegliendo LSCM Unwrap dal pannello UV Calculation.
Figura 27.8: Texture modulata dai Colori dei Vertici. con LSCM, bisogna essere sicuri che la mesh possa essere appiattita senza troppe deformazioni (in termini matematici, dovrebbe essere equivalente ad un disco). Questo viene fatto definendo cuciture, cio`e luoghi dove la mesh verr`a tagliata. Non c’`e bisogno di aggiungere una cucitura se la mesh pu`o essere scucita (srotolata) direttamente su un piano. In Modo Edit, i bordi selezionati possono essere marchiati (segnati) o meno come cuciture usando CTRL-E . Qui si pu` o vedere un cubo con le cuciture [seams], e la mappa UV risultante dopo l’applicazione della LSCM. Spesso una mesh non pu`o essere scucita come un unico gruppo di facce, ma deve essere tagliata in pi` u gruppi. Se le cuciture dividono le facce selezionate in pi` u gruppi di facce, allora l’LSCM le scucir`a separatamente, posizionandole nell’Editor UV in modo che i gruppi di facce non si sovrappongano. Per una facile selezione dei gruppi di facce ’Select Linked’ in Modo Selezione Facce UV (si preme LKEY ) selezioner`a tutte le facce collegate, se nessuna cucitura le diviFigura 27.9: Metodo di scucitura LSCM. de. In questo modo, si pu`o selezionare un gruppo di facce selezionandone una del gruppo, ed eseguendo Select Linked (Seleziona i Collegati). Per ritoccare ulteriormente il risultato, le UV nell’Editor UV possono essere spillate in una data posizione. Se viene eseguito l’LSCM, tali UV resteranno al loro posto, e la
Per essere in grado di scucire correttamente una mesh
226
CAPITOLO 27. INTRODUZIONE
mappa UV risultante si adatter` a alle UV bloccate. Nell’Editor UV, le UV si possono spillare o sbloccare premendo PKEY o ALT-P . Premendo EKEY nell’Editor UV si avvier` a la scucitura LSCM delle facce visibili nell’Editor UV. Le UV spillate sono segnate in rosso.
27.5
Dipingere Texture
Una volta caricata un’immagine nell’Editor UV, la si pu`o modificare usando il modo Texture Paint (Pittura di Texture). Si usa l’opzione Paint Tool nel men` u View , per modificare la Dimensione [Size] del pennello, L’Opacit`a [Opacity] ed il Colore. Attualmente c’`e un solo pennello per dipingere, ma si lavora per fornire altri pennelli. Tutte le modifiche effettuate si rifletteranno immediatamente nella Vista 3D se si `e in ’modo patata’. Ad ogni modo la texture non verr`a salvata finch´e non lo si richieder`a esplicitamente. Si usa l’opzione Save Image nel men` u Image per salvare il proprio lavoro con un nome diverso o sovrascrivere l’immagine originale. Si noti che l’opzione Draw Shadow Mesh diventa utilissima per tenere un riferimento della mappa UV durante la pitturazione della texture.
27.6 Il rendering e le coordinate UV Anche senza un’Immagine assegnata alle facce, si pu`o effettuare il rendering delle texture utilizzando le coordinate UV. Per questo, si usa il pulsante verde UV nel men` u della Pulsantiera del Materiale ( F5 ). Figura 27.10: Lo strumento Paint in azione.
che i colori dei vertici [vertex colors].
Se si vuol effettuare il rendering anche delle texture di Immagini assegnate, bisogna premere il pulsante TexFace nei Pulsanti del Materiale. Combinando questo con l’opzione VertexCol si possono usare an-
Capitolo 28
Texture Plugins Come nota finale sulla texture, diamo uno sguardo al pulsante del quarto tipo di texture, Plugin . Blender consente il collegamento dinamico durante l’esecuzione di oggetti condivisi, sia plugin di texture che di sequenze. In entrambi i casi questi oggetti sono pezzi di codice C scritti secondo un dato standard (capitolo XV, Sistema di Plugin in Blender ). Nel caso dei plugin texture, questi pezzi di codice definiscono funzioni accettando coordinate in ingresso e fornendo in uscita un Colore, una Normale ed una Intensit`a, esattamente come fanno le Textures procedurali. Per usare un plugin Texture, si seleziona tale opzione, quindi si clicca sul pulsante Load Plugin che appare nella Pulsantiera della Texture. Una finestra vicina si trasforma in una finestra di Selezione File in cui si pu`o selezionare un plugin. Questi plugin sono files .dll in Windows e files .so sui vari sistemi tipo Unix. Una volta caricato un plugin esso cambia la Pulsantiera della Texture Buttons col proprio insieme di pulsanti, come descritto nei riferimenti di ogni singolo plugin.
227
228
CAPITOLO 28. TEXTURE PLUGINS
Parte V
LUCI
229
231 L’illuminazione nel rendering `e un argomento molto importante, al pari della modellazione, dei materiali e delle textures. La scena pi` u accuratamente modellata con altrettanto accurate texture produrr` a un pessimo risultato senza un appropriato schema d’illuminazione, mentre un modello semplice pu`o risultare molto realistico se abilmente illuminato. L’illuminazione, sfortunatamente, viene spesso trascurata dagli artisti inesperti che di solito credono, giacch´e le scene reali sono illuminate da una solo punto luce (una lampada, il sole, ecc.), che sia sufficiente una sola luce anche nella grafica computerizzata. Questo `e falso perch´e nel mondo reale, anche se `e presente una sola sorgente, la luce emessa rimbalza sugli oggetti e viene re-irradiata da questi ultimi verso la scena, creando leggere ombre e regioni ombreggiate non proprio buie, ma parzialmente illuminate. Le leggi fisiche sul rimbalzo della luce vengono simulate dai motori di rendering che utilizzano il Ray Tracing e con Blender si possono simulare ricorrendo al motore della Radiosit` a ( Capitolo Radiosity ). Il ray tracing e la radiosit` a sono processi lenti. Blender pu`o eseguire molto pi` u velocemente il rendering col suo motore di rendering a scansione di linea (scanline renderer) interno. In effetti, `e un ottimo scanline renderer. Questo tipo di motore per il rendering `e molto pi` u veloce, dato che non prova a simulare il funzionamento reale della luce, supponendo molte ipotesi esemplificanti. In questo capitolo analizzeremo i diversi tipi di luci in Blender ed il loro funzionamento, ne analizzeremo i punti forti e quelli deboli, finendo con la descrizione di uno schema base d’illuminazione ’realistico’, conosciuto come il metodo dei tre punti luce, come pure altri schemi d’illuminazione pi` u avanzati, realistici ma, ovviamente, con notevole richiesta di CPU.
232
Capitolo 29
Tipi di luci Blender fornisce cinque tipi di luci: • Luce Solare (Sun) • Luce Semisferica (Hemi) • Lampada Sferica (Lamp) • Faretto (Spot) • Luce Areale (Area) Ciascuna di queste luci pu` o essere aggiunta alla scena premendo SPACE e selezionando la voce di men` u Lamp . Questa azione aggiunge una luce di tipo Lampada . Per selezionarne un tipo diverso, o regolarne i parametri, bisogna andare nella finestra del ). Una coContesto dell’Ombreggiatura [Shading] ( F5 ) e nel sub-contesto Lamp ( lonna d’interruttori, nel Pannello Preview , consente di scegliere il tipo di luce.
Figura 29.1: Pulsanti della luce. dividere in due categorie: Quelli che riguardano direttamente la luce, che sono raggruppati nei Pannelli Lamp e Spot , e quelli che ne definiscono le textures, che stanno sul lato destro del pannello Texture , che hanno due Tabs (Fincature). I tabs sono molto simili a quelli relativi ai materiali. Nella seguente sottosezione ci concentreremo sui primi due Pannelli ( Pulsanti generali delle Luci ), lasciando una breve discussione sulla texture 233
234
CAPITOLO 29. TIPI DI LUCI
nella sezione Regolazione delle Luci del capitolo Buffer delle Ombre Il Pannello Lamp contiene pulsanti che sono per lo pi` u generali a tutti i tipi di lampade, quindi meritano di essere spiegati per primi. • Negative - Fa s`ı che la lampada emetta della luce Figura 29.2: Pulsanti Generali della Luce. ’negativa’, vale a dire, la luce emessa dalla lampada viene sottratta, anzich´e aggiunta, a quella emessa da qualsiasi altra luce nella scena. • Layer - Fa s`ı che la luce si riversi solo sugli oggetti posti sullo stesso livello (layer) della luce. • No Diffuse - Fa in modo che la lampada emetta luce ma senza influire sulla propriet`a ’Diffuse’ dell’ombreggiatore [shader] del materiale, dunque, dando solo un’evidenza ’Speculare’. • No Specular - Fa in modo che la lampada emetta luce ma senza influire sulla propriet`a ’Specular’ dell’ombreggiatore [shader] del materiale, quindi, dando solo un’ombreggiatura ’Diffusa’. • Energy - L’energia irradiata dalla lampada.
235 • R, G, B - Le componenti rossa (red), verde (green) e blu (blue) della luce emessa dalla lampada.
236
CAPITOLO 29. TIPI DI LUCI
Capitolo 30
Luce del Sole Il tipo di luce pi` u semplice `e la Luce Solare [Sun] ( Luce Solare. ). Una Sun `e una luce di intensit` a costante proveniente da una data direzione. Nella vista 3D la luce Solare viene rappresentata da un punto cerchiato giallo, che ovviamente diventa viola quando selezionato, pi` u una linea tratteggiata. Tale linea indica la direzione dei raggi Solari. Essa `e per default normale alla vista in cui `e stata aggiunta alla scena e pu`o essere ruotata selezionandola e premendo RKEY . I pulsanti della lampada usati con la Sun sono chiaramente quelli descritti nella sezione ’generale’. Un esempio di illuminazione da luce del Sole `e mostrata nella Figura Esempio di Luce Sun. Com’`e evidente, la luce proveniente da una direzione costante, ha un’intensit`a uniforme e non produce ombre .
Figura 30.1: Luce Solare.
Quest’ultima affermazione `e un punto molto importante da capire in Blender: nessuna lampada, ad eccezione del tipo Spot, produce ombre. La ragione di ci`o risiede nell’implementazione della luce nello scanline renderer e verr`a brevemente discussa nelle sottosezioni ’Spot’ e ’Shadows’.
Infine, `e importante notare che giacch´e la lampada Sun `e definita dalla sua energia, dal colore e dalla direzione , la posizione della lampada stessa `e ininfluente. Esempio di Luce Sun - 2. mostra una seconda impostazione, creata con una serie di piani distanti 1 unit` a di Blender tra loro, illuminati con luce Sun. L’uniformit`a dell’illuminazione `e ancor pi` u evidente. Questa immagine sar`a utilizzata come riferimento per i confronti con gli altri tipi di lampade.
237
238
CAPITOLO 30. LUCE DEL SOLE
Figura 30.2: Esempio di Luce Sun.
Suggerimenti sulla Sun: Una luce Sun pu` o risultar
Figura 30.3: Esempio di Luce Sun - 2.
Capitolo 31
Luce Semisferica (Hemi) La luce Hemi `e un tipo molto particolare di luce progettata per simulare la luce proveniente dal cielo molto nuvoloso, o in ogni caso, uniforme. In altre parole `e la luce emessa, uniformemente, da una semisfera luminosa sovrastante la scena ( Lo schema concettuale della lampada Semisferica (Hemi). ). Essa `e probabilmente la meno usata delle luci di Blender, ma merita di essere discussa prima delle due pi` u usate, per la sua semplicit`a. L’impostazione di questa luce assomiglia fondamentalmente alla Sun. La sua posizione non `e importante, mentre lo `e l’orientamento. La sua linea tratteggiata rappresenta la direzione in cui `e emessa la massima energia, che `e normale al piano definito dal taglio della semisfera, e punta verso il lato buio. Il risultato di una Luce Hemi per la disposizione delle 9 sfere appare in Esempio di luce Semisferica (Hemi) `e evidente la maggiore morbidezza della luce Hemi in confronto alla Sun.
Figura 31.1: Lo schema concettuale della lampada Semisferica (Hemi).
Figura 31.2: Esempio Semisferica (Hemi)
di
luce
Suggerimenti per la Luce Hemi: Per essere pi` u realistici, dove c’`e l’assenza di ombre, per una luce esterna si pu 239
240
Esempio di Luce esterna. Luce Sun: Energy=1 RGB=(1.,0.95,0.8). La direzione della Sun in un riferimento polare `e (135◦ ,135◦ ). Luce Hemi: Energy=0.5 RGB=(0.64,0.78,1.) puntata verso il basso.
CAPITOLO 31. LUCE SEMISFERICA (HEMI)
Capitolo 32
Luce di tipo Lampada (Lamp) La luce di tipo Lampada (Lamp) `e un punto di luce omnidirezionale, vale a dire un punto senza dimensioni che irradia la stessa quantit`a di luce in tutte le direzioni. In Blender `e rappresentata da un semplice punto, cerchiato, giallo. La direzione dei raggi di luce sulla superficie di un oggetto, `e data dalla linea che unisce la sorgente puntiforme luminosa ed il punto sulla superficie dell’oggetto stesso. Inoltre, l’intensit` a della luce, si attenua secondo un dato rapporto con la distanza dalla lampada. Oltre i pulsanti su menzionati, per la luce di tipo Lamp, servono altri tre pulsanti e due sliders nel Pannello Lamp ( Pulsanti della luce di tipo Lamp. ):
• Distance - Questo d` a, indicativamente, la distanza alla quale l’intensit`a della luce `e la met` a di Energy. Gli oggetti pi` u vicini ricevono pi` u luce, gli altri oggetti ne ricevono meno. • Quad - Se questo pulsante `e disattivato (off), viene applicata un’attenuazione lineare -non secondo le leggi fisiche- rispetto alla distanza. Se attivo (on), viene usata un’attenuazione pi` u complicata, che pu`o essere regolata dall’utente da una totalmente lineare, che `e il default di Blender, ad una completamente quadratica - rispondente alle leggi fisiche - rispetto alla distanza. Quest’ultima `e un po’ pi` u difficile da gestire, essa `e governata dai due Pulsanti Numerici Quad1 e Quad2 e sar` a spiegata pi` u in l` a. • Sphere - Se questo pulsante `e premuto, la luce irradiata dalla sorgente `e limitata alla Sfera di raggio Distance anzich´e andare all’infinito col rapporto d’attenuazione.
Il seguente Esempio di Luce tipo Lamp. Quad: Quad1=0, Quad2=1. mostra la stessa disposizione dell’ultimo esempio di luce di tipo Sun, ma con una luce di tipo Lamp con differenti valori di Distance e con un’attenuazione Quadratica attivata e disattivata.
241
242
CAPITOLO 32. LUCE DI TIPO LAMPADA (LAMP)
Figura 32.1: Pulsanti della luce di tipo Lamp. L’effetto del parametro Distance `e moto evidente, mentre quello del pulsante Quad `e meno percettibile. In ogni caso l’assenza di ombre resta l’argomento principale. Com’`e naturale solo il primo piano dovrebbe essere illuminato, perch´e su tutti gli altri cade l’ombra del primo. Per i patiti della Matematica, e per quelli che desiderano approfondire, le leggi che governano l’attenuazione sono le seguenti. Sia math:D il valore del Pulsante Numerico Distance , math:E quello dello slider Energy e and math:r la distanza dalla luce Lamp dal punto dove `e calcolata l’intensit`a math:I della luce. Se i pulsanti Quad e Sphere sono disattivati: D = E D+r Da quanto affermato `e evidente che: l’intensit`a della luce `e uguale alla met`a dell’energia per math:r=D . Se il Pulsante Quad `e attivo: 2
D D = E D+Q e un po’ pi` u complesso e dipende dai valori degli slider Quad1 2 2 Questo ` 1 r D +Q2 r ( math:Q 1 ) e Quad2 ( math:Q 2 ). Tuttavia, `e chiaro come l’attenuazione `e lineare per math:Q 1=1, Q 2=0
e pienamente quadratica per math:Q 1=0, Q 2=1 quest’ultimo diventa il default. Abbastanza interessante se math:Q 1=Q 2=0 dove l’intensit` a della luce non si attenua affatto. Se il pulsante Sphere viene premuto l’intensit` a della luce math:I viene ulteriormente modificata dalla moltiplicazione per il termine che ha una progressione lineare per math:r da 0 a math:D ed `e identicamente 0 altrove. Se il pulsante Quad `e disattivato, e quello Sphere `e premuto: D D−r s = E D+r D ifr < D; 0altrimentiNel caso in cui entrambi i pulsanti Quad e Sphere sono attivi: 2
D D D−r s = E D+Q ifr < D; 0altrimentiQuesta figura pu`o essere d’aiuto per 2 2 D 1 r D +Q2 r comprendere tali comportamenti in modo grafico.
243
Figura 32.2: Esempio di Luce tipo Lamp. Quad: Quad1=0, Quad2=1.
Suggerimento per la Luce di Tipo Lamp: Dato che la luce di tipo Lamp non produce ombre essa risplende alleg
244
CAPITOLO 32. LUCE DI TIPO LAMPADA (LAMP)
Figura 32.3: Attenuazione della luce: a) Lineare di default di Blender; b) Quadratica di default di Blender con Quad1=0, Quad2=1; c) Quadratica di Blender con Quad1=Quad2=0.5; d). Quadratica di Blender con Quad1=Quad2=0. Nel grafico sono rappresentate anche le stesse curve, negli stessi colori, ma col pulsante Sphere premuto.
Capitolo 33
Faretto (Spot) La luce di tipo Faretto (Spot) `e quella pi` u complessa tra le luci di Blender ed, infatti, tra quelle pi` u usate grazie al fatto che `e la sola in grado di proiettare ombre. Una luce Spot `e un fascio a forma di cono generato dalla posizione della sorgente di luce, che `e la punta del cono, in una data direzione. Lo Schema della luce di tipo Faretto (Spot). dovrebbe chiarire ci` o. La luce Spot usa tutti i pulsanti di una Luce Lampada, e con lo stesso significato, ma `e pi` u complessa tanto che necessita di un secondo Pannello di pulsanti ( I pulsanti delle Opzioni del Faretto (Spot). ): Spot .
33.1
Spot Options
• Shadows - Attiva o disattiva la proiezione d’ombre per questo faretto (spot).
Figura 33.1: Schema della luce di tipo Faretto (Spot).
• Only Shadow - Fa s`ı che il faretto proietti solo ombre senza illuminare. Tale opzione sar`a analizzata in seguito in la Sezione Regolazione delle Luci . • Square - I Faretti (Spot) per default proiettano un cono di luce di sezione circolare. Ci sono casi in cui `e utile una sezione quadrata, ottenendo, in effetti, una pirami-
245
246
CAPITOLO 33. FARETTO (SPOT) de di luce anzich´e un cono. Tale pulsante attiva quest’opzione. • Halo - Permette al faretto di irradiare raggi di luce simili ad aloni o aureole attraversando un mezzo semiopaco. Questo verr`a spiegato in seguito nella sezione Luce Volumetrica .
33.2
Pulsanti del Faretto (Spot)
Figura 33.2: I pulsanti delle Opzioni del Faretto (Spot). La colonna di pulsanti pi` u a destra del Pannello Spot regola la geometria dello Spot e delle ombre ( I Pulsanti del Faretto (Spot). ):
Figura 33.3: I Pulsanti del Faretto (Spot).
• SpotSi - L’angolo al vertice del cono, o apertura dello
Spot. • SpotBl - La zona tra la luce del cono e la circostante area non illuminata. Il pi` u basso rende i bordi netti, il pi` u alto li ammorbidisce. Si noti che
33.2. PULSANTI DEL FARETTO (SPOT)
247 questo vale solo per i bordi del faretto, non per la morbidezza dei bordi delle ombre proiettate dal faretto, che sono governate da un altro insieme di pulsanti descritti nella sottosezione ’Ombre’.
• HaloInt - Se il pulsante Halo `e attivo, questo slider definisce l’intensit`a dell’alone del faretto. Anche per questo si fa riferimento a la Sezione Luce Volumetrica .
Il gruppo in fondo di pulsanti della luce tipo Spot riguarda le ombre e costituisce un ampio argomento che merita una sottosezione a s´e. Prima di passare alle Ombre, la Esempi di Illuminazione con Spot per SpotSi=45◦ mostra dei risultati per una luce Spot che illumina il primo test con diverse configurazioni.
Note: In Esempi di Illuminazione con Spot per SpotSi=45◦ le ombre sono disattivate! Le ombre vengono tratta
248
CAPITOLO 33. FARETTO (SPOT)
Figura 33.4: Esempi di Illuminazione con Spot per SpotSi=45◦
Capitolo 34
Luce Areale (Area) La Luce Areale (Area Light) `e pensata per simulare la luce che si origina da superfici emettenti (o simili): uno schermo televisivo, i neon del tuo supermercato, una finestra, un cielo nuvoloso... Essa produce ombre con contorni morbidi (bordi netti sono il pi` u delle volte prodotti da luci artificiali puntiformi) istanziando una lampada su di una griglia di dimensioni definite dall’utente. La figura seguente ( Principi alla base della Luce Areale ) aiuta a comprendere come vengano simulate le ombre morbide. (a) `e la Luce Areale cos`ı come `e definita in Blender. Se la sua forma `e un quadrato (Square), allora la morbidezza dei contorni delle ombre `e definita dal numero di Campionamenti della luce (light Samples) in ognuna direzione della geometria. Per esempio, (b) illustra il caso equivalente di una Luce Areale (di forma quadrata), con tre Campionamenti: la Luce Areale viene cio`e considerata come una griglia con una risoluzione di 3 in ogni direzione, e con una Luce duplicata sui vertici (dupliverted) ad ogni nodo (in totale 9 Luci). Se nel caso (a) abbiamo Energia = E, nel caso (b), l’Energia di ogni singola Luce equivalente `e uguale a E/(Numero di luci). Ogni Luce produce un’ombra debole (proporzionale all’Energia della Luce), e il sovrapporsi delle ombre le rende morbide (esse sono pi` u scure nei punti in cui le singole ombre si sovrappongono molto, e pi` u chiare in tutti gli altri punti).
34.1
Opzioni della Luce Areale
Quando viene selezionata una Luce di tipo Areale, avete immediatamente accesso a due nuovi pulsanti nel pannello ’Lamp’ dell’Area Light. Il primo permette di scegliere la forma della Luce Areale: Square - L’emettitore di Luce Areale ha una forma quadrata. La dimensione dell’emettitore sono impostate attraverso il pulsante numerico Size . Rect - L’emettitore di Luce Areale ha una forma rettangolare. La dimensione dell’emet249
250
CAPITOLO 34. LUCE AREALE (AREA)
titore `e impostata mediante due pulsanti numerici: SizeX e SizeY . L’altro/gli altri pulsanti definiscono le dimensioni della Luce Areale:
Figura 34.1: Principi alla base della Luce Areale
Size, SizeX, SizeY – Imposta le dimensioni dell’Area Light in base alla sua forma: Size x Size per la Luce Areale quadrata, e SizeX x SizeY per la Luce Areale rettangolare.
Suggerimenti per la Forma: Scegliere adeguatamente la forma dell’Area Lig
34.2 le
Figura 34.2: Il pannello Lamp della Luce Areale.
Pulsanti della Luce Area-
Quando attivate il pulsante Ray Shadow nel pannello ’Shadow and Spot’ ( Il pannello delle ombre della Luce Areale ) avete accesso ad altri parametri. Nel pannello ’Render’ del menu Scene ( F10 ) , dovete anche attivare i pulsanti Shadow e Ray .
Samples – (Campionamenti)Imposta l’ammontare di campionamenti usati per simulare la Luce Areale. Pi` u sono i campionamenti, pi` u appariranno morbide le ombre ma maggiore sar` a il tempo del rendering. Per le Luci Areali quadrate dovete scegliere un solo valore ( Samples ). Per le Luci Areali rettangolari, potrete impostare campionamenti differenti nelle due direzioni complanari all’Area della Luce: ( SamplesX e SampleY ).
34.2. PULSANTI DELLA LUCE AREALE
251
I seguenti tre parametri sono pensati per incrementare artificialmente l’effetto di morbidezza delle ombre, con una possibile caduta di qualit`a, come raffigurato in Esempio di una Luce Areale con Campionamenti 2.0: Tremolio, Rumore, Tremolio pi` u Rumore : Umbra - Avete bisogno di valori di campionamento uguali o superiori a 2 per apprezzare l’influenza di questo pulsante. Umbra vi permette di enfatizzare Figura 34.3: Il pannello delle l’intensit`a delle ombre nell’area totalmente protetombre della Luce Areale ta dai raggi provenienti dalla sorgente luminosa: la transizione luminosa tra aree totalmente ombreggiate e aree pienamente illuminate avviene molto rapidamente. Dither – (Tremolio) Applica un campionamento ai contorni delle ombre, pressapoco allo stesso modo con cui l’anti-aliasing (anti scalettatura) `e applicato dal pulsante OSA sui contorni di un oggetto. Esso ammorbidisce artificialmente i contorni delle ombre; quando i Campionamenti (Samples) sono impostati a valori molto bassi potete aspettarvi risultati mediocri, per cui `e meglio usare il Dither con valori medi di campionamento. Non `e per niente utile con campionamenti alti, dal momento che i contorni delle ombre appariranno gi` a morbidi. Noise - (Rumore) I campionamenti delle ombre vengono spostati tra di loro in maniera pseudo-casuale, per ammorbidire artificialmente i contorni delle ombre. Ancora una volta, questa opzione non `e molto utile quando usate alti valori di campionamento; lo svantaggio `e che questo Rumore genera una grana abbastanza evidente.
Figura 34.4: Esempio di una Luce Areale con Campionamenti 2.0: Tremolio, Rumore, Tremolio pi` u Rumore ciamo che se il vostro computer ha bassa potenza di calcolo e se volete usare le luci Areali ed il Raytracing comunque, potreste trovare utile impostare un basso valore di Samples (come 2.00) e attivare i pulsanti Dither e/o Noise al fine di simulare ombre leggermente pi` u morbide. Dovrebbe essere ovvio che questi risultati non saranno mai migliori che una stessa illuminazione con un numero maggiore di Campionamenti.
252
CAPITOLO 34. LUCE AREALE (AREA)
Suggerimenti per le Luci Areali: Noterete che cambiando il parametro Size della vostra sorgente di luce estesa
Suggerimenti per le Luci Areali: Con uguali valori di Energy e Dist , una Luce Areale ed una normale Lampad
Capitolo 35
Buffer delle Ombre Gli schemi di illuminazione analizzati finora producono sugli oggetti solo aree pi` u o meno illuminate, ma nessuna proiezione di ombre o auto ombreggiatura, ed una scena senza un’appropriata ombreggiatura perde profondit`a e realismo. D’altra parte, il calcolo delle ombre giuste richiede un vero - e lento - ray tracer. Per ogni scan liner, come lo `e Blender, le ombre possono essere calcolate usando un buffer delle ombre shadow buffer per le luci che proiettano ombre. Questo implica che una ’immagine’, viene ’vista’ nel rendering come se fosse vista dalla luce Spot stessa, e, per ciascun punto, `e memorizzata la distanza dal faretto. Ogni punto dell’immagine del rendering pi` u lontano di ciascuno di questi punti `e considerato essere in ombra. Lo shadow buffer immagazzina questi dati. Per tenere l’algoritmo compatto, efficiente e veloce tale shadow buffer ha una dimensione fissata inizialmente e che in Blender pu`o andare da 512x512 a 10240x10240, il valore pi` u alto `e quello pi` u accurato. L’utente pu`o controllare l’algoritmo tramite i pulsanti in basso nel Pannello Spot ( Pulsanti per ombra della Luce di tipo Spot. ). ShadowBuffSize - Pulsante numerico, da 512 a 10240, definisce la dimensione del Buffer dell’ombra. ClipSta, ClipEnd - Per accrescere ulteriormente l’efficienza dei calcoli dell’ombra vengono in realt`a eseguite solo in una gamma predefinita di distanze dalla posizione del faretto (spot). Tale gamma va da ClipSta , pi` u vicino alla luce Spot, a ClipEnd , pi` u lontano ( BSG.LIG.F.S68.112 ). Tutti gli oggetti pi` u vicini di ClipSta , a partire dallo Spot, non vengono controllaFigura 35.1: Pulsanti per ombra ti per le ombre, e sono sempre illuminati. Gli oggetti della Luce di tipo Spot. oltre ClipEnd non vengono controllati per le ombre, e sono sempre in ombra. Per avere un’ombra realistica ClipSta dev’essere inferiore alla distanza tra qualsiasi oggetto rilevante della scena dallo spot, e ClipEnd maggiore della distanza pi` u grande. Per l’uso migliore della memoria allocata ed una migliore qualit` a dell’ombra, ClipSta dev’essere il pi` u grande possibile e ClipEnd il pi` u piccolo possibile. Questo minimizza il volume dove le ombre dovranno essere calcolate.
253
254
CAPITOLO 35. BUFFER DELLE OMBRE
Samples - Per ottenere delle ombre morbide lo shadow buffer, una volta calcolato, partecipa al rendering con un proprio algoritmo di anti-scalettatura (anti-aliasing) che funziona effettuando una media del valore delle ombre su un quadrato con lato di una dato numero di pixels. Samples `e il numero di pixels. Il suo default `e 3, vale a dire un quadrato 3x3. Valori pi` u alti danno un migliore anti-aliasing, ed un tempo di calcolo pi` u ` la distorsione (bias) usata nel calcolo delle ombre, pi` lento. Bias - E u alto `e il valore, migliore `e il risultato ma pi` u lento.
Soft - Controlla la morbidezza del bordo dell’ombra. Pi` u `e alto il valore, pi` u `e morbido e pi` u `e esteso il bordo dell’ombra. Usualmente si dovrebbe assegnare un valore nell’intervallo tra lo stesso valore del Pulsante numerico Sample al doppio di tale valore.
Halo step - Il passo di campionamento della luminescenza [halo] per le ombre volumetriche quando `e attivata la luce volumetrica. Ci`o sar`a spiegato nella sezione Luce Volumetrica .
Nota: Per calcolare le ombre nel rendering, esse devono essere abilitate ad un livello globale . Questo vuol dire
255
Figura 35.2: Esempi di ombre con illuminazione di tipo Spot.
256
CAPITOLO 35. BUFFER DELLE OMBRE
Capitolo 36
Luce Volumetrica A partire da Blender v2.31 La Luce Volumetrica `e l’effetto che si vede in un’aria da foschia, quando i raggi di luce diventano visibili perch´e la luce si disperde nella nebbia, foschia, polvere ecc. Usata con attenzione pu`o aggiungere molto realismo alla scena... o ucciderla. La luce volumetrica in Blender pu`o essere generata solo da Luci tipo Spot, una volta premuto il pulsante Halo nel Pannello Spot ( Il pulsante halo nella Luce tipo Spot. ). Se si prova la disposizione mostrata in Impostazione della Luce tipo Spot. , e viene premuto il pulsante Halo, il risultato del rendering sar`a simile a quello di Il rendering di una Luminescenza (Halo). .
Figura 36.1: Il pulsante halo nella Luce tipo Spot.
Figura 36.2: Impostazione della Luce tipo Spot. L’effetto della luce volumetrica `e abbastanza forte. L’intensit`a della luminescenza (Halo) pu` o essere regolata con lo slider HaloInt ( Lo Slider per l’intensit` a della luminescenza (Halo). ). A valori bassi corrispondono luminescenze deboli.
257
258
CAPITOLO 36. LUCE VOLUMETRICA
Figura 36.3: Il rendering di una Luminescenza (Halo). Il risultato `e interessante. Abbiamo una luce volumetrica, ma mancano ombre volumetriche! L’alone passa attraverso la sfera, che per`o proietta un’ombra. Questo `e dovuto al fatto che l’alone si trova in tutto il cono del Faretto (Spot) a meno di non dire a Blender di fare altrimenti. Il cono deve essere campionato per avere un’ombra volumetrica, ed il campioFigura 36.4: Lo Slider per l’intensit`a della namento avviene con un passo defiluminescenza (Halo). nito dal pulsante numerico HaloStep ( Il pulsante numerico Halo Step. ). Il valore di default 0 significa nessun campionamento, quindi l’assenza di ombra volumetrica. Un valore di 1 `e u po’ pi` u raffinato, e quindi risultati migliori, ma con un rallentamento del rendering ( L’alone (Halo) con l’ombra volumetrica, Halo Step = 1 ), mentre un valore pi` u alto d` a risultati peggiori ma rendering pi` u veloci ( L’alone (Halo) con l’ombra volumetrica, Halo Step = 12 ).
Figura 36.5: Il pulsante numerico Halo Step.
259
Figura 36.6: L’alone (Halo) con l’ombra volumetrica, Halo Step = 1
I valori di HaloStep: Un valore di 8 di solito `e un buon compromesso tra
Figura 36.7: L’alone (Halo) con l’ombra volumetrica, Halo Step = 12
260
CAPITOLO 36. LUCE VOLUMETRICA
Capitolo 37
Regolazione del Buffer delle Ombre
A partire da Blender v2.31 Ok, abbiamo visto le basi. Ora possiamo veramente parlare d’illuminazione. Lavoreremo su un singolo esempio, pi` u complicato di un piano: ’una sfera su di un piano’, per vedere cosa si pu`o ottenere in Blender con un’illuminazione realistica. Ricostruiremo La composizione per la regolazione della Luce. . La figura scimmiesca `e Cornelius, il fratellino piccolo di Suzanne. Ha un materiale piuttosto lucido marrone chiaro ( R =0.8, G =0.704 B =0.584, Ref =0.7, Spec =0.444, Hard =10 S`ı, non molto scimmiesco, ma si parla di luci, non di materiali!) ed `e posizionato su un piano blu ( R =0.275, G =0.5, B =1.0, Ref =0.8, Spec =0.5, Hard =50). Per ora `e illuminato da un singolo faretto [spot] ( Energy =1.0, R = G = B =1.0, SpotSi =45.0, SpotBl =0.15, ClipSta =0.1, ClipEnd =100, Samples =3, Soft =3, Bias =1.0, BufSize =512).
Un rendering di Cornelius con questa impostazione, con OSA =8 e le ombre (Shadows) abilitate, d` a il risultato di Una semplice impostazione della luce Spot. . Il risultato `e brutto. Ci sono delle irrealistiche ombre molto nere su Cornelius, e quelle proiettate da Cornelius stesso sono inaccettabili.
261
262
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
Figura 37.1: La composizione per la regolazione della Luce.
La prima regolazione `e su ClipSta e ClipEnd , se sono regolati in modo da includere il pi` u possibile la scena ( ClipSta =5, ClipEnd =21) i risultati sono decisamente migliori, almeno per le ombre proiettate. Quella di Cornelius resta troppo nera ( L’impostazione di una sola luce Spot con una taglio (Clipping) adeguato. ).
C’`e un trucco utile per impostare i valori del Clipping: Ciascun oggetto in Blender pu`o agire da Telecamera nella vista 3D. Quindi si pu`o selezionare il faretto (Spot) e cambiare la vista attraverso di esso premendo CTRL-NUM0 . Figura 37.2: Una semplice impostazione della Quello che si vede, in modo ombreggialuce Spot. to (shaded), `e mostrato in Regolazione dello Spot. . Tutte le cose pi` u vicine al faretto di ClipSta e quelle pi` u lontane di ClipEnd non appaiono affatto. Quindi si possono regolare con precisione questi valori verificando che tutti gli oggetti che proiettano ombre siano visibili.
263
Figura 37.3: L’impostazione di una sola luce Spot con una taglio (Clipping) adeguato.
Figura 37.4: Regolazione dello Spot. A sinistra: ClipSta troppo alto; Al centro: Buono; A Destra: ClipEnd trop basso. luminato emana luce esso stesso, quindi le ombre non sono completamente nere giacch´e un po’ di luce s’irradia dalle regioni limitrofe. Questa diffusione di luce `e correttamente tenuta in conto in un Ray Tracer, ed anche in Blender, tramite il Motore della Radiosit`a. Ci sono per`o dei metodi con cui si pu`o imitare questo fenomeno in modo accettabile.
264
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
Li analizzeremo, dal pi` u semplice al pi` u complesso.
37.1
I tre punti Luce
Il metodo dei tre punti luce `e un classico, uno schema molto semplice per ottenere una scena con un’illuminazione pi` u morbida. La luce Spot `e la principale, o la Luce Chiave [ Key Light ], della scena, quella che proietta l’ombra. Aggiungeremo altre due luci per simulare la diffusione. La seconda luce `e per la Retro Illuminazione [ Back Light ]. Viene posta dietro Cornelius ( Impostazione della Retro-Illuminazione [Back Light]. ). Questa illumina il lato nascosto del personaggio, e consente di separare il primo piano dell’immagine dal fondo, aggiungendo complessivamente un senso di profondit`a. Di solito la Back Light `e forte come la Key Light, se non di pi` u. Qui usiamo Energy=1 per la Luce di tipo Lamp ( La sola Key Light (a sinistra). Solo la Back Light (al centro) ed entrambe (a destra). ).
Figura 37.5: Impostazione della RetroIlluminazione [Back Light]. Il risultato `e ancora migliore. Infine, la terza luce `e quella di Riempimento [ Fill Light ]. Lo scopo della luce Fill `e quello di illuminare le ombre davanti a Cornelius. Porremo la luce Fill esattamente nella posizione della telecamera, con una Energy pi` u bassa della luce Key e della Back ( Impostazione della Luce di Riempimento (Fill). ). Per questo esempio `e stata scelta una Energy=0.75 ( Le sole luci Key e Back (a sinistra). Solo la luce Fill (al centro) e tutte e tre (a destra). ).
37.1. I TRE PUNTI LUCE
265
Figura 37.6: La sola Key Light (a sinistra). Solo la Back Light (al centro) ed entrambe (a destra).
Figura 37.7: Impostazione della Luce di Riempimento (Fill). La luce di Riempimento (Fill) rende visibili le parti del modello totalmente immerse nell’ombra dalle sole luci Key e Back.
Perdita del colore: Il metodo dei tre punti pu`o essere ulteriormente migliorato aggiungendo una quarta luce, pe Questo vuol dire che, se il pavimento `e orizzontale e z=0, come nel nostro esempio, e con la Key light posta in (x=-5, y=-5, z=10), allora la luce di diffusione del pavimento sar` a posta nel punto (x=-5, y=-5, z=-10), puntando in alto ( L’impostazione della Luce
266
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
di Diffusione del Pavimento. ).
Figura 37.8: Le sole luci Key e Back (a sinistra). Solo la luce Fill (al centro) e tutte e tre (a destra). L’energia per tale luce sar`a pi` u bassa della Luce Key (qui `e 0.8) ed il suo colore deve coincidere con quello del pavimento (qui R =0.25, G =0.5, B =1.0). Il risultato appare in L’impostazione della Luce di Diffusione del pavimento.2 .
Perdita del colore2: Si noti che abbiamo usato una luce Spot no
37.2 I tre punti luce Esterno Usando una luce Spot come luce chiave il precedente metodo `e Figura 37.9: L’impostazione della Luce di sfortunatamente limitato ad interni o, al massimo, esterni notturDiffusione del Pavimento. ni. Questo perch´e la Key light `e ad una distanza finita, da cui si diffondono i raggi, ed il pavimento non `e uniformemente illuminato.
37.2. I TRE PUNTI LUCE - ESTERNO
267 In esterno, su una chiara giornata assolata, tutti i pavimenti saranno uniformemente illuminati, e le ombre proiettate. Per avere un’illuminazione uniforme su tutto il pavimento `e ottima una luce Solare (Sun). E se si aggiunge una luce Hemi per simulare la luce proveniente da tutti i punti del cielo (come in BSG.LIG.F.S68.111 ) si ottiene una bella illuminazione esterna... ma non abbiamo ombre!
L’impostazione della luce Chiave (la Sun, R =1.0, G =0.95, B =0.9, Energy =1.0) e le Luci Fill/Back (entrambe Figura 37.10: L’impostazione della Luce di rappresentate dalla Hemi, R =0.8, G Diffusione del Pavimento.2 =0.9, B =1.0, Energy =0.4) appare in Impostazione della luce Sun e della Hemi per l’illuminazione esterna. ed il rendering relativo in Il rendering dell’illuminazione esterna con la Sun e la Hemi.
Figura 37.11: Impostazione della luce Sun e della Hemi per l’illuminazione esterna. La mancanza di ombre fa apparire Cornelius come se fluttuasse nello spazio. Per avere l’ombra si pone un faretto (Spot) in coincidenza della Sun con la stessa direzione. Lo si rende uno Spot con solo ombre [Shadow Only] col pulsante appropriato. Se Energy `e pi` u bassa di 0.9 e tutte le altre impostazioni sono tenute ai valori usati nell’esempio
268
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
precedente ( BufSize =512, Samples =3, Soft =3, Bias =1, ClipSta =5, ClipEnd =21) il risultato `e quello della Figura Il rendering in esterno. (al centro).
Figura 37.12: Il rendering dell’illuminazione esterna con la Sun e la Hemi.
Figura 37.13: Il rendering in esterno. BufSize `e troppo piccolo, ed il valore di Samples `e troppo basso per tenerlo correttamente in conto. Se si alzano BufSize a 2560, Samples a 6 e Bias a 3.0 il risultato `e quello in Figura Il rendering in esterno. (a destra). Pi` u morbido.
37.3. PSEUDO-AREA LUMINOSA
37.3
269
Pseudo-Area Luminosa
Il concetto di Luce proveniente da un punto `e un’approssimazione. Nessuna sorgente di luce nel mondo reale `e senza dimensioni. Tutte le luci si irradiano da superfici, non da punti. Questo implica un paio di cose interessanti, principalmente sulle ombre:
• Le ombre nette non esistono: le ombre hanno bordi sfocati. • La messa a fuoco dei bordi dipende dalle posizioni relative e dalle dimensioni della luce, l’ombra si disperde da un oggetto e l’oggetto riceve l’ombra. Il primo punto `e approssimato con la regolazione di ’Soft’ del faretto (Spot), ma non il secondo. Per chiarire tale punto si immagini un palo alto e sottile in mezzo a un pavimento illuminato dal Sole. Il Sole non `e un punto, ha una dimensione e, per noi terrestri, ha un’ampiezza di mezzo grado. Se si guarda l’ombra si noter`a che `e molto netta verso la base del palo e lsi sfoca andando verso la punta. Se il palo `e abbastanza alto e sottile la sua ombra svanisce. Per afferrare questo concetto si dia uno sguardo alla Figura L’area luminosa e la sua ombra. . Il Sole irradia la luce, l’oggetto in mezzo ostruisce completamente i raggi del Sole solo nella zona blu scuro. Per un punto nella regione blu chiaro il Sole `e parzialmente visibile, quindi ciascuna di tali aree `e parzialmente illuminata. La regione blu chiaro `e una regione parzialmente in ombra dove l’illuminazione si riduce lentamente dalla luce piena al buio ` anche evidente, totale. E dalla Figura L’area luminosa e la sua ombra. che questa regione di transizione `e pi` u piccola subito dopo l’ombra proiettata dall’oggetto e si allarga allontanandosi da esso. Inoltre, se l’ombra proiettata dall’oggetto `e pi` u piccola della luce proiettata dall’oggetto (e se la luce Figura 37.14: L’area luminosa e la sua ombra. proiettata dall’oggetto `e il Sole si ricade in questo caso) c’`e una distanza oltre la quale resta solo l’ombra parziale Figura L’area luminosa e la sua ombra 2. .
270
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE In Blender, se si pone un solo Spot ad una distanza fissa dal primo piano e si guarda l’ombra proiettata sul secondo piano dato che questo secondo piano `e ulteriormente pi` u lontano si noter`a che l’ombra si allarga ma non si sfoca ( La luce Spot e la sua ombra. ).
Figura 37.15: L’area luminosa e la sua ombra 2.
Per simulare un’area luminosa con Blender si possono usare diverse luci Spot, come se si simulasse l’area della luce proiettata con un numero discreto di punti luce. Questo pu`o ottenersi ponendo diverse luci Spots manualmente, o usando la Duplicazione ai Vertici [DupliVert] di Blender (la Sezione Duplicazione ai Vertici [DupliVerts]), che `e pi` u efficiente. Si aggiunge una Mesh Griglia [Grid] di 4x4. Dove c’`e la luce Spot, ci si assicuri che la normale punti in basso, consentendo a Blender di mostrare le Normali ed eventualmente ribaltandole, come spiegato nella Modellazione Elementare della Mesh nel Capitolo 2 ( Impostazione della Griglia (Grid). ). Si imparenta lo Spot alla Grid, si seleziona la Grid e nel Contesto Oggetto [Object] il Pannello Anim Settings ( F7 ) si preme DupliVert e Rot . Rot non `e strettamente necessario ma aiuter`a nel successivo posizionamento dell’Area Luminosa. Si dovr` a avere un insieme di Spots come nella Figura La luce Spot ed i suoi duplicati ai vertici [dupliverts]. .
37.3. PSEUDO-AREA LUMINOSA
271
Figura 37.16: La luce Spot e la sua ombra.
Figura 37.17: Impostazione della Griglia (Grid). Si diminuisce l’energia (Energy) dello Spot. Se per un solo Spot si `e usata una certa energia, ora la si deve suddividere fra tutti i duplicati. Ci sono 16 Spots, quindi si divider` a per 1/16 di Energia (ovvero Energy =0.0625). Gli stessi due renderings di sopra, con questo nuovo taglio dell’area della luce produrr`a il risultato della Figura Simulazione di un’area di luminosa con pi` u Spots. . Il risultato `e lontano da quello atteso, perch´e il campione di luce Spot dell’area di luce `e troppo grossa. D’altra parte un campionamento pi` u fine richiederebbe un maggior numero di Spots duplicati e dei tempi di rendering inaccettabili.
272
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
Figura 37.18: La luce Spot ed i suoi duplicati ai vertici [dupliverts].
Figura 37.19: Simulazione di un’area di luminosa con pi` u Spots. ts, ovvero impostando SpotBl =0.45, Sample =12, Soft =24 e Bias =1.5 ( Simulazione di un’area luminosa con pi` u Spot soffusi. ).
Finalmente, Cornelius sotto l’Area Luminosa. mostra ci`o che capita a Cornelius una volta che la Luce Chiave (Key) viene sostituita con i 65 Spots duplicati con Energy=0.0154 in disposizione circolare. Si noti come l’ombra ricada pi` u morbidamente partendo da netta vicino ai piedi e sfocandosi man mano che ci si allontana da lui. Questo `e il comportamento fisico corretto.
Un risultato migliore si pu` o raggiungere ammorbidendo gli Spo-
37.4. ILLUMINAZIONE GLOBALE (ED OMBREGGIATURA GLOBALE)
273
Figura 37.20: Simulazione di un’area luminosa con pi` u Spot soffusi.
37.4
Illuminazione Globale (ed Ombreggiatura Globale) Le tecniche precedenti funzionano quando c’`e una sola sorgente, o, almeno un numero finito di luci, che proiettano ombre distinte. Le sole eccezioni stanno nella composizione per esterni, dove la luce tipo Hemi simula quella proveniente dal cielo, e nell’Area Luminosa, dove pi` u faretti simulano una sorgente di luce di dimensioni finite. La prima di queste due `e molto vicina ad una buona luce esterna, per il fatto che la luce Hemi non deve produrre ombre e quindi non c’`e bisogno di un risultato realistico.
Figura 37.21: Cornelius sotto l’Area Luminosa.
Per ottenere una situazione realistica per gli esterni, specie per un tempo nuvoloso, si deve avere una luce proveniente da tutte le direzioni del cielo, e che proietti ombre!
274
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
Questo si pu` o avere usando una tecnica molto simile a quella usata per l’Area Luminosa, ma usando una semisfera come mesh genitore. Questa viene solitamente chiamata Illuminazione Globale. Si pu` o usare sia una Sfera UV sia una IcoSfera, quest’ultima ha i vertici distribuiti uniformemente mentre la prima ha una maggior concentrazione di vertici ai poli. Usando una IcoSfera quindi si ottiene un’illuminazione pi` u ’uniforme’, tutti i punti del cielo irradiano con la stessa intensit` a; una Sfera UV ha molta pi` u luce al/i polo/i. Personalmente raccomando la IcoSfera. Prepariamo la composizione, includendo un piano e qualche solido, come nella Figura La scena dell’Illuminazione Globale. . Useremo delle forme semplici per apprezzare meglio il risultato.
Figura 37.22: Globale.
La scena dell’Illuminazione
Ci si sposta nella vista dall’alto per aggiungere una IcoSfera, una suddivisione di livello 2 della IcoSphere di solito `e sufficiente, con un livello 3 si hanno risultati pi` u omogenei. Si dimensiona la IcoSfera in modo che contenga completamente ed approssimativamente tutta la scena. Si torna nella vista frontale e, in Modo Edit, si cancella la met`a inferiore della IcoSfera ( La Volta Celeste. ). Questa sar`a la nostra Volta Celeste con cui i vertici saranno imparentati e duplica-
ti ai vertici (duplivert). Ancora nella Vista dall’Alto si aggiunge una Luce Spot, la si imparenta alla mezza IcoSfera ( CTRL-P ) e si premono i pulsanti DupliVert e Rot esattamente come nell’esempio precedente. Il risultato, nella Vista Frontale, `e quello in Figura La volta Celeste con gli Spots duplicati. . Questo non `e quello che vogliamo, dato che tutti gli spots puntano verso l’esterno della scena e non la illuminano. Ci`o `e ` possibile inverdovuto al fatto che le normali della IcoSfera puntano verso l’esterno. E tirne la direzione selezionando tutti i vertici in Modo Edit e premendo il pulsante Flip Normals nel Pannello Mesh Tools del Contesto di Editing ( F9 ) ( Ribaltamento delle normali. ). Figura 37.23: La Volta Celeste.
37.4. ILLUMINAZIONE GLOBALE (ED OMBREGGIATURA GLOBALE)
275
Figura 37.24: La volta Celeste con gli Spots duplicati.
Questo produce la nuova composizione di La volta celeste corretta e le Luci Spot duplicate ai vertici. .
Figura 37.25: Ribaltamento delle normali.
Per ottenere un buon risultato si seleziona la Luce Spot originale se ne cambiano i parametri per avere un angolo maggiore con bordi pi` u diffusi ( SpotSi =70.0; SpotBl =0.5); con i valori ClipSta e ClipEnd adatti; in questo caso 5 e 30, rispettivamente, in ogni caso i valori appropriati per racchiudere tutta la scena; si aumenta samples a 6 e softness a 12. Si diminuisce Energy a 0.1; ci si ricordi che si stanno usando molti faretti, quindi ciascuno dev’essere indebolito ( La regolazione della Luce Spot. ).
276
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
Figura 37.26: La volta celeste corretta e le Luci Spot duplicate ai vertici. Ora si pu`o effettuare il rendering. Se si assegnano dei materiali e viene dato un Mondo (World), il risultato dovrebbe essere quello della Figura SisteFigura 37.27: La regolazione della Luce Spot. mazione con la Luce Spot. . Si notino le ombre dell’illuminazione ’omnidirezionale’. Un risultato ancora migliore lo si ottiene con una IcoSfera di livello 3.
Questa tecnica dell’Illuminazione Globale sostituisce efficacemente, ad un costo computazionale molto alto, la Hemi per la composizione per esterni precedente. ` possibile aggiungere una componente direzionale della luce simulando il Sole sia con E un unico Spot sia con un’Area Luminosa.
Un’alternativa potrebbe consistere nel rendere la IcoSfera ’meno uniforme’ suddividendo una delle sue facce un certo numero di volte, come fatto per le facce posteriori in La creazione di un’area pi` u densa di faretti. Questo viene fatto selezionando una faccia e premendo il pulsante Subdivide , ancora nel Pannello Mesh Tools del Contesto di Editing ( F9 ). Quindi si deseleziona tutto e si ri-seleziona la piccola faccia interna la si suddivide ancora, e cos`ı via.
37.4. ILLUMINAZIONE GLOBALE (ED OMBREGGIATURA GLOBALE)
277
Figura 37.28: Sistemazione con la Luce Spot.
Ne risulta una luce direzionale molto soffusa con l’illuminazione globale della volta celeste o, brevemente, una volta celeste asimmetrica ( Il rendering con una volta celeste asimmetrica. ). Questa `e ottima per delle condizioni nuvolose, ma non molto buone per delle limpide giornate assolate. Per dei giorni davvero sereni, `e meglio mantenere la volta celeste separata dalla luce Solare, in modo da poter usare colori differenti per ciascuno. Figura 37.29: La creazione di un’area pi` u densa di faretti.
278
CAPITOLO 37. REGOLAZIONE DEL BUFFER DELLE OMBRE
Figura 37.30: Il rendering con una volta celeste asimmetrica.
Parte VI
IL MONDO E L’UNIVERSO
279
281 Blender fornisce una gran quantit` a di scelte interessanti per completate i rendering ag` possibile giungendo uno sfondo realistico, ed alcuni interessanti effetti di profondit`a. E accedervi attraverso il Contesto di Shading (F5) e nel sotto-contesto ( F5 ) della pulsan) Per default `e presente un mondo uniforme molto tiera World mostrato in Figura ( semplice. Lo si pu` o modificare o aggiungere un nuovo Mondo (World).
Figura 37.31: I pulsanti del Mondo
282
Capitolo 38
Lo sfondo del mondo Il modo pi` u semplice per usare i Pulsanti del Mondo (World) consiste nel fornire alle immagini uno sfondo ben sfumato. I pulsanti nel World consentono di definire il colore all’orizzonte (pulsanti HoR,HoG, HoB ) ed allo zenith (pulsanti ZeR, ZeG, ZeB ). Questi pretati se ai Panel ):
colori vengono interdiversamente, in baPulsanti nel Preview ( Colori dello sfondo
• Blend - Il colore di sfondo `e sfumato dall’orizzonte allo zenith. Se viene Figura 38.1: Colori dello sfondo premuto solo questo tasto, la sfumatura va dal basso verso l’alto dell’immagine ottenuta dal rendering, indipendentemente dall’orientamento della telecamera. • Real - Se anche questo tasto viene attivato la miscelazione dipende dall’orientamento della telecamera. Il colore dell’orizzonte `e esattamente all’orizzonte (sul piano x-y), ed il colore allo zenith viene usato per i punti verticalmente sopra e sotto la telecamera. • Paper - Se questo tasto `e attivato la sfumatura di colore va allo zenith-orizzontezenith. Cos`ı, ci sono due transizioni sull’immagine, che 283
284
CAPITOLO 38. LO SFONDO DEL MONDO rispecchiano la rotazione della telecamera ma mantenendo il colore dell’orizzonte al centro e il colore dello zenith agli estremi.
I Pulsanti Mondo [World] forniscono inoltre un Pannello Texture con due Tab (fincature). Essi vengono utilizzati in modo molto simile alle textures dei Materiali, tranne per un paio di differenze ( Pulsanti Texture ): • Ci sono solo 6 canali texture. • Texture mapping - ha solo le opzioni Object e View con View che `e l’orientamento di default. • Affect - La Texture influenza solo il colore, ma in quattro modi differenti: Essa pu` o influenzare il canale Blend , mostrando il colore dell’Orizzonte dove la texture `e non-zero; il colore di Hori (orizzonte); ed il colore allo Zenith, superiore( ZenUp o inferiore ZenDo ).
Figura 38.2: Pulsanti Texture
Capitolo 39
Ambient Occlusion L’Ambient Occlusion `e un sofisticato trucco ambientale che simula una illuminazione globale diffusa prendendo in considerazione la quantit`a di cielo (che viene considerato come la sorgente luminosa)vista da un singolo punto. Questo si ottiene lanciando raggi da ogni punto visibile, e calcolando quanti di questi effettivamente raggiungono il cilelo, e quanti, al contrario, sono ostruiti da oggetti. La quantit` a di luce sul punto `e quindi proporzionale al nomero di raggi che sono ’passati’ e hanno raggiunto il cielo. Questo si ottiene sparando intorno un emisfero di raggi-ombra. Se un raggio Figura 39.1: Il pannello Ambient colpisce un’altra faccia (ovvero se `e occluso) allora Occlusion. quel raggio `e considerato ’ombra’, in caso contrario `e considerato ’luce’. La proporzione tra i raggi ’ombra’ e ’luce’ definisce quanto sar`a luminoso un determinato pixel. I settaggio dell’ Ambient Occlusion (AO) si trovano nel pannello Shading, una sottovoce del pannello World, nella fincatura Amb Occ . Per default AO `e inattivo, se viene attivato, nel pannello appaiono i relativi tasti ( Il pannello Ambient Occlusion. ) I raggi sono inviati all’emisfero secondo una distribuzione casuale, questo causa differenze sensibili nel pattern di occlusione dei pixel circostanti fino a che il numero di raggi emessi `e sufficientemente elevato da fornire buoni dati statistici. Ecco perch`e AO genere immagini con grana, che appaiono un po sporche se non ci sono abbastanza raggi. Il numero di raggi emessi `e controllato dal pulsante numerico Samples (campionamenti). Il valore di default 5 `e generalmente adatto a generare anteprime. Il reale numero di raggi emessi `e questo valore al quadrato. (quindi Samples =5 significa 25 raggi). Effetto di diversi valori di campionamento. mostra una piccola scena, con un numero crescente di campionamenti. Ovviamente anche i tempi di rendering aumentano con l’aumentare del numero dei campionamenti! I tasti Dist e Use Distances consentono un ulteriore controllo sull’ ombreggitura definendo un comportamento influenzato dalla distanza nell’occlusione. La colonna di tasti Add , Sub e Both controlla il comportamento dell’ occlusione. 285
286
CAPITOLO 39. AMBIENT OCCLUSION
• Add - Il pixel riceve luce in base al numero di raggi non ostacolati. La scena `e pi` u luminosa.
• Sub - Il pixel riceve ombre (luce negativa)in base al numero di raggi ostacolati. La scena `e pi` u scura.
• Both - Entrambi i precedenti, la scena ha pi` u o meno la stessa luminosit`a.
Nota: Se si sceglie Sub allora deve esserci una sorgente luminosa da qualche parte, altrimenti la scena sar` a davv
La colonna di tasti Plain , Sky Color e Sky Texture controlla il colore della luce:
• Plain -Il pixel riceve pura luce bianca in base al numero di raggi non ostacolati.
• Sky Color - Il pixel riceve luce colorata, il colore `e calcolato in base alla porzione di cielo colpita dai raggi non ostacolati ( Ambient Occlusion con Sky Color.Lo Zenith `e blu,L’ Horizon `e arancio, e il tipo `e Blend cos`ı il cielo diventa completamente arancione al Nadir. ).
• Sky Texture - Deve esserci una immagine come texture del cielo, possibilmente una AngMap o una SphereMap . Si comporta come Sky Color ma il colore del raggio dipende dal colore del pixel colpito sulla sky texture.
287
288
CAPITOLO 39. AMBIENT OCCLUSION
Lo slider Energy controlla la quantit`a di luci/ombre create dalla procedura di AO. Dal momento che l’AO avviene sulla mesh originale faccettata, `e possibile che la luce AO renda le facce visibili anche su oggetti con ’smooth’ attivo. Ci`o `e dovuto al modo Figura 39.3: mbient Occlusion con Sky Color.Lo Zenith `e blu,L’ Horizon in cui i rag`e arancio, e il tipo `e Blend cos`ı il cielo diventa completamente arancione gi AO vengono sparaal Nadir. ti, e pu`o venire controllato con la barra numerica Bias (polarizzazione). Le impostazioni di polarizzazione permettono di controllare quanto morbide appariranno le facce nel rendering con AO. Il ’bias’ denota l’angolo (in radianti) in cui l’emisfero sar`a considerato pi` u stretto. Valori da 0.05 a 0.1 tipicamente funzionano bene. ( Il valore bias dell’Ambient Occlusion. ).
Si tenga conto che questo `e raytracing, per cui tende ad essere lento. Per di pi` u le prestazioni dipendono massicciamente dalla dimensione dell’Octree, si veda il capitolo sul Rendering per maggiori informazioni.
289
290
CAPITOLO 39. AMBIENT OCCLUSION
Capitolo 40
Foschia La Foschia pu` o aumentare ampiamente l’illusione della profondit`a nei propri rendering. Per creare una foschia, sostanzialmente Blender mischia il colore dello sfondo col colore dell’oggetto ed aumenta la gradazione del primo, quanto pi` u l’oggetto `e lontano dalla telecamera. Le impostazione della Foschia (Mist) stanno nel Pannello Mist Stars Physics e sono mostrate in I Pulsanti della Foschia .
Il pulsante Mist attiva e disattiva la foschia. La riga di tre Interruttori sotto tale pulsante mostra l’indice di rarefazione della foschia come Qua dratica, Lin eare, and Sq uare R oot (Radice Quadrata). Queste impostazioni controllano la legge che governa l’intensit`a della foschia man mano che ci si allontana dalla telecamera. La foschia comincia da una distanza dalla telecamera definita dal tasto Sta: , e viene calcolata per tutta la distanza definita dal pulsante Di: . Gli oggetti pi` u distanti dalla telecamera di Sta+Di vengono completamente nascosti dalla foschia. Per Figura 40.1: I Pulsanti default, la foschia copre tutta l’immagine uniformemente. della Foschia Per produrre un effetto pi` u realistico si dovrebbe fare in modo che la foschia diminuisca con l’altezza (altitudine, o z) usando il Tasto Numerico Hi: . Se il valore di questo pulsante `e diverso da zero esso imposta, in unit`a Blender, un intervallo, intorno a z=0 in cui la foschia va dall’intensit`a massima (sotto) a zero (sopra). Infine, il pulsante numerico Misi: definisce l’intensit`a, o densit`a, della foschia. Una composizione di prova per la foschia. mostra una possible impostazione di prova.
Rendering senza foschia (a sinistra) e con foschia (a destra). mostra i risultati con e senza foschia. Le impostazioni appaiono in Impostazione del Mondo. ; la texture `e una semplice texture procedurale cloud (nube) con impostato il rumore Hard .
291
292
CAPITOLO 40. FOSCHIA
Figura 40.2: Una composizione di prova per la foschia.
Figura 40.3: Rendering senza foschia (a sinistra) e con foschia (a destra).
Distanze della foschia
Figura 40.4: Impostazione del Mondo.
Capitolo 41
Stelle Le stelle sono oggetti simili alle luminescenze [halo] disposte casualmente sullo sfondo. Le impostazioni della Stella appaiono nella parte destra del Pannello Mist Stars Physics ( I pulsanti della Stella. ) Nella creazione delle stelle, bisogna comprendere un paio di concetti:
• StarDist: `e la distanza average tra le stelle. Le stelle hanno l’intrinseca caratteristica 3D di essere poste nello spazio, non sull’immagine! Figura 41.1: della Stella.
I pulsanti
` la distanza minimum dalla telecamera • MinDist: E a cui sono poste le stelle. Questa dovrebbe essere pi` u grande della distanza dalla telecamera dell’oggetto pi` u lontano della scena, a meno che non si voglia rischiare di avere le stelle davanti agli oggetti.
• Il pulsante numerico Size: definisce la reale dimen` meglio tenerlo pi` sione dell’alone della stella. E u piccolo di quello proposto per default, in modo da tenere il materiale pi` u piccolo della dimensione del pixel ed avere stelle ben definite. Molto pi` u realistiche. • Il pulsante numerico Colnoise: aggiunge una tinta casuale a quelle che, altrimenti, sarebbero semplici stelle bianche. Solitamente `e buona norma aggiungere un piccolo ColNoise. Il rendering delle Stelle. mostra la stessa immagine nebbiosa della Foschia ma con in pi` u le stelle. Le impostazioni delle Stelle usate per l’immagine appaiono in Le impostazioni della Stella.
293
294
Figura 41.2: Le impostazioni della Stella.
Figura 41.3: Il rendering delle Stelle.
CAPITOLO 41. STELLE
Parte VII
ANIMAZIONE
295
297 Gli oggetti possono essere animati in molti modi. Possono essere animati come Oggetti, si pu` o cambiare la posizione, l’orientamento o la dimensione nel tempo; si possono animare deformandoli; se ne possono animare i vertici o i punti di controllo; oppure possono essere animati tramite delle complesse e flessibili interazioni con uno speciale tipo di oggetto: l’Armatura. In questo capitolo parleremo del primo caso, ma gli elementi forniti qui sono veramente vitali per comprendere anche i capitoli successivi. Nel software di animazione per spostare un oggetto 3D vengono, normalmente, usati tre metodi: In Blender i primi due metodi sono totalmente integrati in uno solo, il sistema IPO (InterPOlation). Fondamentalmente, il sistema IPO consiste in curve di moto standard. La semplice pressione di un pulsante cambia il sistema da IPO a Fotogrammi Chiave, senza conversione, e senza cambiare i risultati. L’utente pu`o lavorare con Fotogrammi Chiave, cambiare in Curve di Moto, e tornare ancora indietro, con qualsiasi modo produca il risultato migliore e soddisfi le preferenze dell’utente. Anche il sistema IPO ha delle rilevanti implicazioni nelle animazioni dei Percorsi.
298
Capitolo 42
Blocco IPO In Blender il blocco IPO `e universale. Non fa alcuna differenza se si utilizza per il movimento di un oggetto o per le impostazioni di un materiale. Una volta imparato a lavorare con un oggetto IPO, diventer` a ovvio lavorare con gli altri. Ad ogni modo Blender non fa distinzione tra i diversi tipi di IPO e l’interfaccia tiene automaticamente traccia di ci`o. Ogni tipo di blocco IPO dispone di un numero fisso di canali . Ciascuno di questi ha un nome ( LocX , SizeZ , ecc.) che ne indica il modo con cui `e usato. Dopo aver aggiunto una curva IPO ad un canale, immediatamente inizia l’animazione. A propria discrezione (e ci sono dei canali separati per questo), si pu`o collegare una curva direttamente ad un valore ( LocX ...), oppure pu` o riguardarne una sua variazione ( dLocX ...). Quest’ultimo consente di spostare un oggetto come si fa di solito, con la Traslazione [Grabber], senza disturbare la IPO. L’attuale posizione `e determinata quindi dalle Curve IPO relative a quella posizione. L’interfaccia di Blender offre molte possibilit`a per copiare le IPO, collegarle a pi` u di un oggetto (una IPO pu` o animare pi` u oggetti), o cancellarne i collegamenti. La sezione Riferimento [Reference] della Finestra IPO fornisce una dettagliata descrizione. Questo capitolo `e limitato alle opzioni principali per un’applicazione.
299
300
CAPITOLO 42. BLOCCO IPO
Capitolo 43
Le curve IPO e le chiavi IPO 43.1
Le curve IPO
Ora andiamo a vedere esattamente cosa avviene. La prima Schermata (Screen) preimpostata nel file di start-up di Blender `e eccellente per questo. Lo si attiva con CTRL-LEFTARROW . Sulla destra si vede la finestra delle IPO . Ovviamente si pu`o trasformare qualunque finestra in una finestra IPO con la voce del men` u del Tipo di finestra di pertinenza, ma `e pi` u pratico avere sia una finestra 3D Figura 43.1: La Finestra IPO. che una IPO contemporaneamente. Questa mostra tutte le curve IPO, i canali utilizzati e quelli disponibili. Una finestra IPO si pu` o ingrandire o rimpicciolire o traslare proprio come qualsiasi Finestra Blender. Oltre ai canali standard, che si possono impostare tramite IKEY , si hanno delle opzioni delta , come dLocX . Questi canali consentono di assegnare una modifica relativa e sono utilizzati prevalentemente per controllare pi` u oggetti con la stessa IPO. Inoltre, `e 301
302
CAPITOLO 43. LE CURVE IPO E LE CHIAVI IPO
possibile lavorare su ’livelli’ [layers] di animazione. In questo modo si possono effettuare dei lavori delicati senza dover disegnare delle curve complicate. Ciascuna curva pu` o essere selezionata individualmente con RMB . Inoltre, le modalit`a Traslazione e Dimensionamento operano proprio come nella finestra 3D. Le IPO si possono selezionare cliccando sul pulsante del colore alla destra della colonna dei nomi dei canali. Cliccando il nome del canale IPO in effetti si nasconde/mostra la curva relativa. Selezionando tutte le curve ( AKEY ) e spostandole a destra ( GKEY ), si pu`o spostare l’intera animazione nel tempo. Ogni curva pu` o essere posta in Modo Edit singolarmente, o collettivamente. Si selezionano le curve e si preme TAB . Appaiono i singoli vertici e le maniglie della curva. Le maniglie [handles] di B´ezier sono codificate, come nell’Oggetto Curva:
• Maniglia Libera (nera). Questa pu`o essere usata in qualsiasi modo si vuole. Hotkey: HKEY (scambia tra Libera ed Allineata). • Maniglia Allineata (rosa [altrove indicata con viola]). Queste maniglie giacciono sempre su una linea retta. Hotkey: HKEY (scambia tra Libera ed Allineata). • Maniglia Vettore (verde). Entrambe le parti di una maniglia puntano alla maniglia precedente o alla successiva. Hotkey: VKEY . • Maniglia Automatica (gialla). Questa maniglia ha una lunghezza ed una direzione completamente automatiche. Hotkey: SHIFT-HKEY . Le maniglie possono essere spostate selezionandone prima il vertice centrale con RMB . Con questo si selezionano anche gli altri due vertici. Con RMB premuto e spostando si entra immediatamente in Modo Traslazione [Grab]. Le maniglie possono essere ruotate selezionandone l’estremit` a di uno dei vertici e quindi trascinandole tenendo premuto RMB e spostandosi. Appena si ruotano le maniglie, automaticamente cambia il tipo:
• La maniglia Automatica diventa Allineata [da Gialla a Rosa]. • La maniglia Vettore diventa Libera [da Verde a Nera]. In una curva vengono poste per default le maniglie Auto. La prima e l’ultima maniglia Auto si spostano sempre orizzontalmente, per creare un’interpolazione fluida. Le curve IPO hanno un’importante caratteristica che le distingue dalle normali curve: `e impossibile avere pi` u di un segmento di curva orizzontalmente. Anelli e cerchi in una IPO non hanno senso essendo ambigui. Una IPO pu`o avere 1 solo valore nello stesso momento. Questo viene rilevato automaticamente nella finestra IPO. Spostando orizzontalmente delle porzioni di Curva IPO, si vedranno i vertici selezionati spostarsi ’attraverso’ la curva. Questo consente di duplicare tratti di curva ( SHIFT-D ) e spostarli in un’altra porzione di tempo.
43.1. LE CURVE IPO
303
` importante indicare come una curva IPO debba essere letta all’esterno [prima e dopo] E della curva stessa. Per questo ci sono quattro opzioni nel sub-men` u Curve>>Extend Mode nella testata della Finestra IPO ( Opzioni per l’estensione della IPO. ). L’effetto per ciascuna di queste pu`o essere apprezzato nella Le IPO prolungate. . Da sinistra a destra:
Figura 43.2: Opzioni per l’estensione della IPO.
• Modo di estensione Costante (Extend mode Constant): Le estremit`a delle curve IPO vengono estrapolate continuamente (orizzontalmente). Questo `e il funzionamento di default.
• Modo di estensione Estrapolata (Extend mode Extrapolation): Le estremit` a delle curve IPO continuano nella direzione finale. • Modo di estensione Ciclico (Extend mode Cyclic): Tutta la curva IPO viene ciclicamente ripetuta. • Modo di estensione ad Estrapolazione Ciclica (Extend Mode Cyclic Extrapolation): Tutta la curva IPO viene ciclicamente estrapolata. Oltre alle B´eziers,, ci sono altri due possibili tipi di curve IPO. Per selezionarle si usa il comando TKEY , ed il men` u che appare, o la voce del sotto-men` u Curve>>Interpolation Mode per selezionarla. L’interpolazione della Curva IPO selezionata pu`o essere impostata a: • Constant (costante) - dopo ogni vertice della curva, questo valore resta costante. Non viene effettuata alcuna interpolazione. • Linear (lineare) - avviene un’interpolazione lineare tra i vertici. • Bezier (Bezier) - l’interpolazione fluida standard. Le curve IPO non devono necessariamente essere impostate creando Fotogrammi Chiave. Esse si possono anche disegnare ’a mano’. Si usa il comando CTRL-LMB . Queste sono le regole: • Non c’`e ancora un blocco IPO (in questa finestra) ed `e stato selezionato un canale :viene creato un nuovo blocco IPO con la prima curva IPO con un vertice posizionato dove si `e cliccato col mouse.
304
CAPITOLO 43. LE CURVE IPO E LE CHIAVI IPO • C’`e gi` a un blocco IPO, ed `e stato selezionato un canale senza una curva IPO: viene aggiunta una curva IPO con un vertice. • C’`e gi` a un blocco IPO, ed `e stato selezionato un canale con una curva IPO esistente: viene aggiunto un nuovo punto alla curva IPO selezionata.
Questo non `e possibile se ci sono pi` u curve IPO selezionate o in modo Edit.
Figura 43.3: Le IPO prolungate. le trasformazioni. Con le Curve di Moto si pu`o lavorare molto intuitivamente, ma solo se tale moto pu` o basarsi sugli assi XYZ. Per una posizione, questo `e rilevante, ma per dimensionamento e rotazione sono disponibili delle descrizioni matematiche migliori: le matrici (3x3 numeri) per il dimensionamento ed i quaternioni (4 numeri) per la rotazione. Anche queste possono essere elaborate nei canali, ma possono portare a delle situazioni confuse e matematicamente complicate. La limitazione del dimensionamento a tre numeri XYZ `e ovvia, ma questo lo limita ad una distorsione rettangolare. Un dimensionamento diagonale come la ’inclinazione’ [shearing] `e impossibile. Questo si pu`o risolvere semplicemente lavorando nelle gerarchie. Un Genitore dimensionato in modo non -uniforme influenzer`a la rotazione di un Figlio ’inclinato’ [shear]. La limitazione a tre numeri XYZ delle rotazioni `e meno intuitiva. Questa, chiamata rotazione di Eulero, non `e uniforme -la stessa rotazione pu`o essere espressa con differenti
43.2. CHIAVI IPO
305
numeri- ed ha il fastidioso effetto che non `e possibile ruotare da una posizione ad un’altra, l’infausto gimbal lock . Lavorando con diverse Chiavi di Rotazione, l’utente pu`o improvvisamente imbattersi in delle interpolazioni inaspettate, o pu`o concludere che `e impossibile forzare un particolare asse di rotazione quando si effettuano delle modifiche manuali. Anche qui, una soluzione migliore consiste nel lavorare con le gerarchie. Un ` utile sapere che Genitore assegner` a sempre l’asse di rotazione specificato al Figlio. (E le rotazioni X, Y e Z vengono calcolate dopo le altre. La curva che riguarda il canale RotX , determina sempre l’asse di rotazione X). Fortunatamente, Blender calcola tutto internamente con le matrici ed i quaternioni. Cos`ı le gerarchie funzionano normalmente, ed il Modo Rotazione fa quello che ci si aspetta da esso. Solo le IPO sono una limitazione qui, ma in questo caso la facilit`a d’uso prevale su una poco intuitiva purezza matematica.
43.2
Chiavi IPO
Il modo pi` u semplice di lavorare con le curve di moto consiste nel convertirle in Chiavi IPO. Torniamo nella situazione dell’esempio precedente: abbiamo indicato due posizioni in un oggetto IPO nel frame 1 e nel frame 31 con IKEY . Alla destra dello schermo, si pu` o vedere una finestra IPO. Impostiamo il frame corrente a 21 ( La Finestra IPO. ).
Figura 43.4: La Finestra IPO.
306
CAPITOLO 43. LE CURVE IPO E LE CHIAVI IPO
cose:
• La finestra IPO cambia in modo Chiave IPO. • All’oggetto selezionato viene assegnato l’opzione DrawKey (Disegna Chiave). Ciascuna delle due azioni ha un diverso significato.
• Ora la finestra IPO disegna linee verticali attraverso tutti i vertici di tutte le curve IPO visibili (ora le IPO sono nere). I vertici con lo stesso valore di ’frame’ sono collegati a linee verticali. Le linee verticali (le Chiavi IPO) possono essere selezionate, spostate e duplicate, proprio come i vertici in Modo Edit. Le Chiavi IPO si possono spostare solo orizzontalmente. • L’oggetto non solo appare nella sua attuale posizione ma appaiono anche degli oggetti ’fantasma’ in tutte le posizioni delle Chiavi. Inoltre per essere in grado di visualizzare le posizioni Chiave dell’oggetto, queste si possono modificare anche nella finestra 3D. In questo esempio, si usa il modo Traslazione [Grab] sull’oggetto per cambiare le Chiavi IPO selezionate . Di seguito ci sono delle istruzioni per utilizzare la potenza del sistema:
• Si pu` o usare solo RMB per selezionate le Chiavi IPO nella finestra IPO. La Selezione Delimitata [Border], e l’estensione della selezione, qui non sono abilitate. Si selezionano tutte le Chiavi IPO per trasformare tutto il sistema di animazione nella finestra 3D. • Il comando Insert Key riguarda sempre tutti gli oggetti selezionati. Le Chiavi IPO per pi` u oggetti possono essere trasformate simultaneamente nella finestra 3D. Si usa il comando SHIFT-K : Show and select all keys per trasformare una completa animazione di un gruppo di oggetti tutto in una volta. • Si usano i comandi PAGEUP e PAGEDOWN per selezionare le chiavi precedenti e le successive nella finestra 3D. • Si possono creare le Chiavi IPO con qualsiasi combinazione di canali. Escludendo consapevolmente certi canali, si pu`o forzare una situazione in cui le modifiche alle posizioni chiave nella finestra 3D possono essere compiute solo ai valori specificati dai canali visibili. Per esempio, con il solo canale LocX selezionato, le chiavi si possono spostare solo nella direzione X. • Ciascuna Chiave IPO `e composta da vertici che hanno esattamente lo stesso valore di fotogramma. Se i vertici vengono spostati manualmente, si possono avere un gran numero di chiavi, ciascuna con una sola curva. In questo caso, si usa il ` possibile anche comando JKEY (Join) per unire le Chiavi IPO selezionate. E assegnare i vertici delle Chiavi IPO selezionate per tutte le curve visibili: si usa IKEY nella finestra IPO e si sceglie Selected keys.
43.3. ALTRE APPLICAZIONI DELLE CURVE IPO
307
• L’opzione DrawKey ed il modo Chiave IPO possono essere attivati e disattivati in modo indipendente. Si usa il pulsante EditButtons->DrawKey per disattivare questa opzione o l’oggetto. Si pu`o attivare o disattivare il modo Chiave IPO da s´e con KKEY nella finestra IPO. Solo KKEY nella finestra 3D attiva e disattiva sia il modo DrawKey che IPOKey.
43.3
Altre applicazioni delle Curve IPO
Ci sono diverse altre applicazioni delle IPO oltre l’animazione del movimento di un Oggetto. I Pulsanti del Men` u IPO Type nella testata [header] ( La finestra IPO. ) permettono la selezione del tipo di Blocco IPO, quello attivo `e l’Oggetto IPO appena descritto finora, ma ci sono IPO del Materiale, IPO del Mondo [World], IPO dei Vertici Chiave, IPO dei Vincoli e IPO di Sequenza. Non tutte le voci sono sempre presenti, dipende dal contesto. Il blocco di Curva IPO appare se l’oggetto selezionato `e una curva ma non una Mesh, appare solo la IPO Lampada, se l’oggetto selezionato `e una lampada.
Figura 43.5: La finestra IPO.
La IPO del Materiale `e un modo per animare un Materiale. Proprio come per gli oggetti, le Curve IPO possono essere usate per indicare le ’posizioni chiave’ per i Materiali. Col mouse nella Pulsantiera, il comando IKEY richiama un men` u con le voci per le diverse variabili del Materiale. Se si `e in un Blocco IPO di Materiale, Lampada o World allora appare un piccolo Pulsante Numerico subito dopo il Men` u del tipo di IPO nella barra degli strumenti della Finestra IPO. Questo indica quale sia il canale della texture attivo. Con le Curve IPO si pu` o controllare la mappatura per tutti gli 8 canali!
A rigor di termini, con le textures sono possibili altre due animazioni. Dato che gli Oggetti possono dare le coordinate su altri oggetti (In Blender ogni oggetto pu` o essere usato come una sorgente di coordinate di texture. Per fare ci` o, si deve selezionare l’opzione Object nei pulsanti verdi Coordinates input e vi si deve digitare il nome dell’oggetto. Viene quindi eseguita una trasformazione inversa sulla coordinata globale del rendering per ottenere la coordinata locale dell’oggetto) `e possibile animare la texture semplicemente animando la posizione, dimensione e rotazione dell’oggetto.
Inoltre, in ciascun fotogramma, si pu`o fare in modo che Blender carichi un’altra Imma` anche possibile gine (numerata) come mappa di texture invece di averne una fissa. E usare, per questo, file di filmati SGI o AVI.
43.4
La IPO del Tempo
Con la curva IPO del Tempo si pu`o manipolare il tempo dell’animazione degli oggetti senza cambiare l’animazione o le altre IPO. Infatti, viene cambiata la mappatura del
308
CAPITOLO 43. LE CURVE IPO E LE CHIAVI IPO
tempo di animazione nel tempo di animazione globale ( La IPO del tempo lineare ). Per afferrare questo concetto, si fa una semplice animazione, con Fotogrammi Chiave di un oggetto in movimento, da una posizione ad un’altra in, diciamo, 50 frames. Quindi si seleziona il canale Time e si crea una IPO del Tempo nella Finestra IPO che va dal punto (1,1) al punto (50,50). Usando NKEY ed immettendo i valori numericamente `e semplice impostare il punto iniziale e finale di una IPO.
Figura 43.6: La IPO del tempo lineare
Nei frames dove la pendenza della IPO del Tempo `e positiva, l’oggetto avanza nella sua animazione. La velocit`a dipende dal valore della pendenza. Una pendenza maggiore di 1 accelerer`a l’animazione base. Una pendenza pi` u piccola di 1 la rallenter`a. Una pendenza di 1 significa nessuna variazione all’animazione, valori negativi della pendenza consentiran-
no di invertire l’animazione. La IPO del Tempo `e interessante specialmente per i sistemi di particelle, consentendo di congelare le particelle di animarle o di animarle in modo che siano assorbite da un oggetto anzich´e emesse. Altre possibilit`a consistono nell’inserire pause o rallentare il moto dell’animazione.
IPO del Tempo multiple: Per effettuare un totale rallentamento si deve copiare la IPO del Tempo per ciascun s
Parte VIII
DEFORMAZIONI
309
311 Animare un Oggetto o un Materiale, non `e la sola cosa che si pu`o fare in Blender. Si pu` o cambiare, ristrutturare, deformare i propri oggetti nel tempo! Ci sono addirittura diverso modi per farlo, ed una tecnica `e talmente potente e generale che c’`e un intero capitolo dedicato: Animazione di Personaggi. Le altre tecniche saranno trattate qui di seguito.
312
Capitolo 44
Oggetti Hook (Ganci) Gli hooks (ganci) danno accesso a livello oggetto alla geometria base di mesh, curve, superfici e lattici. Un hook `e una caratteristica di un oggetto ed `e come un genitore di un oggetto, ma per i vertici. Si possono creare quanti hook si vogliono per un og` possibile anche getto, ed assegnare a ciascun hook i vertici che verranno influenzati. E sovrapporre gli hook, nel qual caso viene fornito un fattore di peso per ciascun hook che determina l’influenza che ciascun hook avr`a sui vertici condivisi. Nota: Quando si rimodella totalmente qualcosa, bisogna anche riassegnare gli hook esistenti.
44.1
Aggiungere hooks
Dato che gli hook riguardano i vertici ed i punti di controllo, la maggior parte delle opzioni di modifica sono disponibili in modo Edit per mesh, curve, superfici e lattici. Si seleziona un numero qualsiasi di vertici e si preme CTRL-H per accedere al men` u degli hook.
• Add, New Empty Aggiunge un nuovo hook e crea un nuovo oggetto Empty, che sar` a un genitore della selezione, al centro della selezione. • Add, To Selected Object Quando viene selezionato un altro oggetto (lo si pu`o fare in modo edit con CTRL-RMB ) il nuovo hook viene creato ed imparentato a tale oggetto.
44.2
Uso degli hooks
All’interno del modo edit, gli hook vengono disabilitati, per consentire una migliore modellazione. In realt` a solo in modo oggetto si possono usare gli hook. Qui sono possibili tutte le opzioni e le trasformazioni a livello oggetto, compreso l’uso di gerarchie, vincoli, ipo e animazioni di percorso.
313
314
CAPITOLO 44. OGGETTI HOOK (GANCI) Si pu`o anche rendere il genitore-hook un figlio dell’oggetto originale se non si vuole che le trasformazioni dell’oggetto deformino gli hook.
44.3
Opzioni in Modo Edit
Appena in un oggetto sono disponibili gli hook, il men` u CTRL-H fornir`a ulteriori opzioni:
Figura 44.1: Il menu Hooks
• Remove... Presenter`a un nuovo men` u con un elenco degli hook da rimuovere. • Reassign... Lo si usa se si vogliono assegnare dei nuovi vertici ad un hook. • Select... Per selezionare i vertici di un dato hook.
• Clear Offset... trasformazione corrente di un genitore hook.
44.4
Questo neutralizzer`a la
Il Pannello Hooks I pulsanti per gli hook si possono trovare nel contesto oggetto ( F7 ) nel tab Hooks . Qui si pu`o imporre un nuovo nome ad un hook, quello di default `e il nome del genitore, gli si pu`o dare un nuovo genitore digitando il nome del nuovo genitore o gli si pu`o assegnare Force , un fattore di pesatura.
Figura 44.2: Il menu esteso degli Hooks
• Force Poich´e pi` u hook possono agire sugli stessi vertici, in questo modo si pu`o regolare l’influenza di un hook. Le regole di pesatura sono:
– Se il totale di tutte le forze `e pi` u piccolo di 1.0, il resto, 1.0 - le forze, sar` a il fattore che avr`a la posizione originale come forza. – Se il totale di tutte le ’forze’ `e maggiore di 1.0, si useranno solo le trasformazioni degli hook, mediati dai loro pesi. • Falloff (Attenuazione) Se diverso da zero, il Falloff `e la distanza oltre la quale l’influenza di un hook si azzera. Attualmente si usa un’interpolazione fluida, comparabile agli Strumenti di Modifica Proporzionale (PET) Proportional Editing Tools . (Si veda mesh modeling PET )
44.4. IL PANNELLO HOOKS
315
• Delete Cancella l’hook dall’oggetto corrente. • Clear offset Neutralizza l’attuale trasformazione di un a hook.
Figura 44.3: Il Pannello Hooks
316
CAPITOLO 44. OGGETTI HOOK (GANCI)
Capitolo 45
Introduzione Le shape keys (chiavi di forma) permettono la memorizzazione di forme relative a partire da una mesh di base. Altre applicazioni 3D le chiamerebbero ’morph targets’. Queste forme possono venire miscelate su di una base percentuale con altre chiavi di forma in modo da ottenere l’effetto desiderato. Si prenda per esempio un volto. L’utente pu` o modellare un a faccia con un’espressione neutrale ed avere la forma chiave per un sorriso, per aggrottare le sopracciglia, per chiudere l’occhio sinistro o l’occhio destro, etc. Quindi, le forme chiave permetterebbero la combinazione di queste espressioni, cosicch`e la mesh potrebbe apparire sorridente con l’oc- Figura 45.1: Esempio di un chio sinistro chiuso e l’occhio destro chiuso soltanto del mix di Shape Keys 50%
317
318
CAPITOLO 45. INTRODUZIONE
Capitolo 46
Uso 46.1
Creazione di Chiavi di Forma
46.1.1
Inserimento della mesh di base
(si noti che d’ora in poi in questo documento chiameremo le Shape Keys indifferentemente anche con i termini ’chiavi’ o ’forme’) Partendo da una mesh di base, l’utente abilita le chiavi inserendo la chiave di base. Questo si ottiene selezionando l’oggetto mesh e premendo IKEY e quindi scegliendo Mesh . Alternativamente, questo passaggio pu`o venire eseguito selezionando l’oggetto mesh, andando nei pulsanti di Editing ( F9 ) e selezionando il pannello Shapes . Quindi si preme il pulsante Add Shape Key .
46.1.2
Inserimento di chiavi addizionali
Una volta che la chiave di base `e stata creata, l’utente pu`o creare forme chiave addizionali nello stesso modo. Con la mesh selezionata, si pu`o sia premere IKEY e quindi scegliere Mesh oppure cliccare sul pulsante Add Shape Key . Nel pannello Shapes , verr`a creata una nuova chiave. Se questa `e la prima chiave creata dopo la forma di base, essa verr` a chiamata Key 1 . Una cosa da notare qui, `e che quando si crea una nuova forma, essa sar`a creata in base alla forma attualmente selezionata. Quando si creano forme chiave dalla forma di base, la nuova forma sar` a una copia di quella; mentre se l’utente crea una forma chiave mentre ne `e selezionata un’altra che era gi`a stata modificata, la nuova forma sar`a una copia della forma modificata. Le chiavi addizionali possono essere rinominate cliccando sul nome della forma chiave nel pannello Shapes .
46.1.3
Modifica delle chiavi di forma 319
320
CAPITOLO 46. USO
Quando si sar` a creata una chiave addizionale, essa pu` o venire modificata selezionandola tramite il pannello Shapes . Questo pu` o essere fatto in due modi. La si pu` o scegliere dal menu a tendina, oppure scorrendo le voci con l’uso delle frecce. Una volta che la chiave desiderata `e stata scelta, la forma Figura 46.1: Posizione dello pu` o essere alterata entrando in editmode TAB e spostan- strumento di selezione delle chiavi di forma nel pannello do i vertici. Shapes Nota: Aggiungere o rimuovere un vertice una volta che le forme chiave sono state create `e molto macchinoso. I cambiamenti si propagano alle altre forme in base alla loro posizione relativamente alla forma attuale, ed i risultati sulle altre forme possono essere pessimi. SAppena le forme vengono selezionate dal pannello Shapes , le forme alterate verranno mostrate sull’oggetto mesh.
46.1.4
Puntaspilli
Quando una mesh non ha una chiave appuntata, essa pu` o mostrare molte chiavi contemporaneamente. Per evitare questo, si prema l’icona puntaspilli. L’oggetto mesh attuale `e ora bloccato alla forma chiave, a mostrer` a esclusivamente quella forma chiave. Questa caratteristica `e utile quando chiavi multiple stanno agendo su di una mesh e l’u- Figura 46.2: Posizione deltente vuole vedere l’effetto di una in particola- l’icona Pin (puntaspilli) nel pannello Shapes re.
46.1.5
Galleria di chiavi di forma
Un altro uso del puntaspilli `e la creazione di una galleria di forme chiave. Dal momento che Blender permette la creazione di Duplicati Collegati che condividono dati di blocchi subordinati (come i dati di mesh e di shape key) si potranno creare copie multiple di una mesh usando ALT-D . Quando un duplicato `e stato creato, si muova il duplicato in una posizione diversa dello schermo. Si punti il duplicato su di una forma cliccando sull’icona puntaspilli nel pannello Shapes. Infine, si riselezioni la mesh ’originale’. Se si fa questo procedimento per tutte le chiavi, si otterr` a una galleria di forme chiave (che `e utile quando si modificano le chiavi).
46.2. MISCELARE CHIAVI DI FORMA
46.2
321
Miscelare chiavi di forma
Le chiavi di forma si possono miscelare in molti modi diversi. Questi metodi hanno in comune come esito finale la creazione di dati IPO, ma differiscono nell’interfaccia.
46.2.1
Il Pannello Shapes
Nel pannello Shapes quando una chiave non `e appuntata dispone di una riga addizionale con dei pulsanti; value (valore), min e max. La prima barra numerica esprime il valore di una chiave nel fotogramma attuale. Regolando il valore verr` a inserito al fotogramma attuale un punto di controllo nell’applicazione della forma chiave. AnIl pannello dando su ogni forma e regolandone il valore, si pu`o Figura 46.3: ottenere una forma miscelata al fotogramma attua- Shapes e le forma chiave le. I pulsanti min e max regolano i margini di applicazione per la barra numerica value sia nel pannello Shapes che nella finestra Action Editor . Conviene impostare le forme, ed i settaggi min / max nel pannello Shapes , e miscelare il tutto nell’ Action Editor .
46.2.2
La finestra Action Editor
Nella finestra dell’ Action Editor , si espanda il pulsante Sliders e si usino le barre numeriche per impostare il valore delle chiavi al fotogramma attuale. I valori min / max impostati nel pannello Shapes si riflettono nella finestra Action Editor per la forma chiave relativa. Figura 46.4: Action Editor Se non esiste ancora un fotogramma chiave in and Shape Keys corrispondenza della linea verde, ne verr`a creato uno.
46.2.3
La finestra IPO
La finestra IPO contiene le informazioni subordinate che vengono controllate con gli altri ` in questa finestra che i valori sono mappati ai fotogrammi per metodi di miscelazione. E ogni forma chiave. Al fine di accedere alle IPO della chiave, si selezioni Shape dal menu a comparsa dei tipi di IPO nell’intestazione della finestra IPO . Ogni forma verr`a elencata nella lista IPO sul lato destro, e potr`a essere alterata allo stesso modo di una qualsiasi
322
CAPITOLO 46. USO
IPO di Blender. Si veda la documentazione sulle IPO per maggiori informazioni.
46.2.4
Le guide IPO [Drivers]
Si veda la documentazione sulle guide IPO per maggiori informazioni riguardo a come impostare una guida IPO. Le guide IPO lavorano allo stesso modo sia per le IPO di forme chiave che per qualsiasi altro tipo di IPO.
Capitolo 47
Vertici Chiave Assoluti In Blender si possono anche creare Vertici Chiave [VertexKeys] (in contrapposizione agli Oggetti Chiave, che indicano la posizione degli oggetti); i VertexKeys sono le indicazioni delle posizioni dei vertici all’interno di un Oggetto. Dato che questo pu`o coinvolgere migliaia di vertici, non vengono create delle Curve di Moto per ciascun vertice, ma viene, invece, utilizzato il tradizionale sistema di Posizioni Chiave. Viene usata una sola Curva IPO per determinare come eseguire l’interpolazione ed i momenti in cui si pu`o vedere un VertexKey. I VertexKeys fanno parte dei Dati dell’Oggetto [Object Data], non dell’Oggetto. Quando si duplica l’Object Data, viene copiato anche il blocco di VertexKey. In Blender non `e possibile consentire a pi` u Oggetti di condividere gli stessi VertexKeys, dato che non sarebbe molto pratico. Il blocco Vertex Key `e universale e comprende la distinzione tra una Mesh, una Curva, una Superficie ed un Lattice. Anche l’interfaccia e l’uso `e uniformato. In questa sezione `e spiegata in dettaglio la lavorazione dei VertexKeys della Mesh, e contiene diverse brevi osservazioni sugli altri Object Data. La posizione della prima VertexKey che si crea `e sempre la Chiave [Key] di riferimento . Tale Chiave definisce le coordinate della texture. Solo se si attiva tale Chiave si possono ` consentito assegnare ad altre Chiavi cambiare le facce, le curve o il numero dei vertici. E un numero diverso di vertici. Il sistema della Chiave li interpola automaticamente. Di seguito viene fatto un esempio pratico. Quando si lavora con le VertexKeys, risulta molto pratico avere una finestra IPO aperta. Per esempio, si pu`o usare il primo Schermo [Screen] dal file standard di Blender. Nella finestra IPO, si deve indicare che si vogliono vedere le VertexKeys. Questo si fa col Pulsante Men` u tipo IPO e selezionando Vertex . Si va nella finestra 3D col cursore del mouse e si preme IKEY . Con un oggetto Mesh selezionato ed attivo. Il men` u Insert Key ha diverse voci, riguardanti la Mesh . Appena selezionata, appare una seconda dialog ( Il Men` u Insert Vertex Keys. ) chiedendo di scegliere tra Vertici Chiave Relativi o Assoluti. Si sceglier` a Absolute Keys ; viene disegnata una linea gialla orizzontale nella Finestra IPO. Questa `e la prima chiave e quindi la Chiave di riferimento . Viene anche creata una 323
324
CAPITOLO 47. VERTICI CHIAVE ASSOLUTI
Curva IPO per Speed ( La Chiave [Key] di riferimento e la IPO della Velocit` a [Speed]. ).
Figura 47.1: Keys.
Il Men` u Insert Vertex
Creazione di una Vertex Key: La creazione di una VertexKeys in Blen Si va ancora un paio di fotogrammi in avanti e si seleziona: IKEY , Mesh (nella finestra 3D). La seconda Chiave viene disegnata come una linea blu chiaro. Questa `e una Chiave normale; tale chiave e tutte le successive riguarderanno solo l’informazione del vertice. Si preme TAB per il Modo Edit e si sposta uno dei vertici nella Mesh. Quindi si torna indietro di un paio di fotogrammi: non appare niente! Fin quando si resta in Modo Edit, non vengono applicate le altre VertexKeys. Quello che si vede in Modo Edit `e sempre la VertexKey attiva . Si esce dal Modo Edit e ci si sposta ancora di un paio di fotogrammi. Ora si vede l’effetto del sistema di VertexKey. Le VertexFigura 47.2: La Chiave [Key] di ri- Keys si possono selezionare solo nella finestra ferimento e la IPO della Velocit`a IPO. Questo lo si fa sempre fuori dal Modo Edit: i ’contenuti’ della VertexKey ora ap[Speed]. paiono temporaneamente nella Mesh. Si pu`o modificare la Chiave specificata entrando in Modo Edit. Ci sono tre metodi per lavorare con i Vertici Chiave [Vertex Keys]: Il metodo ’performance animation’.
325 • Questo metodo funziona interamente in Modo Edit, cronologicamente da posizione a posizione: • Insert Key. Viene indicato il riferimento. • Qualche fotogramma avanti: Insert Key. Si modifica la Mesh per la seconda posizione. • Qualche frames avanti: Insert Key. Si modifica la Mesh per la terza posizione. • Si continua il processo precedente... Il metodo ’editing’. • Prima si inseriscono tutte le Chiavi richieste, a meno che non si siano gi`a create le Chiavi col metodo descritto prima. • Blender non `e in Modo Edit. • Si seleziona una Chiave. Ora si entra in Modo Edit, si modifica la Mesh e si esce dal Modo Edit. • Si seleziona una Chiave. Si entra in Modo Edit, si modifica la Mesh e si esce dal Modo Edit. • Si continua il processo precedente.... Il metodo ’insert’ • In questo metodo non importa se ci siano o meno gi`a delle Chiavi e che si sia o meno in Modo Edit. • Si va nel frame in cui si deve inserire la nuova Chiave. • Insert Key. • Si va in un nuovo frame, Insert Key. • Si continua il processo precedente... Stando in Modo Edit, non si pu` o cambiare la Chiave. Se l’utente prova a farlo, appare un avviso. Ciascuna Chiave `e rappresentata da una linea disegnata ad una data altezza. L’altezza viene scelta in modo che la chiave intersechi la IPO Speed nel fotogramma in cui si `e definita la Chiave. Sia la Curva IPO che la VertexKey si possono selezionare separatamente con RMB . Dato che potrebbe essere troppo difficoltoso lavorare con esse, la selezione delle linee Chiavi viene disattivata quando la curva `e in modo Edit. Si pu`o usare il pulsante channel per nascondere temporaneamente la curva ( SHIFT-LMB su Speed) in modo da facilitare la selezione delle Chiavi. Le linee delle Chiavi nella Finestra IPO, una volta
326
CAPITOLO 47. VERTICI CHIAVE ASSOLUTI
create, possono essere poste in qualsiasi posizione verticale. Per farlo si seleziona la linea e si usa il Modo Traslazione [Grab]. Anche la Curva IPO pu`o essere processata nello stesso modo descritto nel capitolo precedente. Tuttavia, invece di un ’valore’, la curva determina l’interpolazione tra le Chiavi, p. es. si pu`o usare una curva seno per creare un’animazione ciclica. Durante l’animazione il contatore del fotogramma [frame] d`a un certo valore della IPO Speed, che viene utilizzato per scegliere la/e Chiave/i da usare, possibilmente con l’interpolazione, per produrre la mesh deformata. La IPO Speed ha il funzionamento standard di una IPO, anche per l’interpolazione. La linea della Chiave ha tre tipi di interpolazione. Si preme TKEY con la linea di una Chiave selezionata per aprire un men` u con le seguenti voci:
• Linear : l’interpolazione tra le Chiavi `e lineare. La linea della Chiave appare come una linea punteggiata. • Cardinal : l’interpolazione tra le Chiavi `e fluida, l’impostazione standard. • BSpline : l’interpolazione tra le Chiavi `e molto fluida ed include quattro Chiavi nel calcolo dell’interpolazione. Le posizioni, per`o, non vengono pi` u mostrate con precisione. La linea della Chiave `e disegnata tratteggiata. Chiavi Assolute. mostra una semplice animazione di Vertex Key di un cilindro. Il cilindro si deforma in una grande stella, quindi si deforma in una piccola stella, poi, dato che la IPO Speed torna a 0 la deformazione viene ripetuta in ordine inverso. Qualche utile suggerimento:
• Le posizioni Chiave vengono sempre aggiunte con IKEY, anche se sono poste nella stessa posizione. Questo si usa per copiare le posizioni durante l’inserimento. Si possono anche usare due linee di chiavi nella stessa posizione per cambiare l’effetto dell’interpolazione. • Se non `e selezionata nessuna Chiave, si pu`o entrare in Modo Edit come al solito. Quando per`o si esce dall’Edit tutte le modifiche saranno perse. In questo caso si inserisce una Chiave stando in Modo Edit. Figura 47.3: Chiavi Assolute.
• Per quanto riguarda le Chiavi, non c’`e alcuna differenza tra selezionata ed attiva . Non `e per`o possibile selezionare pi` u Chiavi.
47.1. CURVE E SUPERFICI CHIAVE
327
• Quando si lavora con le Chiavi con un diverso numero di vertici, le facce si possono disordinare. Non c’`e alcuno strumento per indicare l’esatta sequenza dei vertici. Questa possibilit`a `e veramente adatta solo per le Mesh che hanno solo vertici come gli Aloni [Halos].
47.1
Curve e Superfici Chiave
Come menzionato precedentemente, le Curve e le Superfici Chiave funzionano esattamente allo stesso modo delle Mesh Chiave. Per le Curve, non c’`e un particolare interesse nel porre Curve Chiave nell’oggetto profilo. Bench´e quest’animazione non sia mostrata in tempo reale nella Finestra 3D, parteciper`a al rendering.
47.2
Lattice Chiave
Appena in un Lattice `e presente una Chiave, i pulsanti usati per determinare la risoluzione vengono bloccati.
328
CAPITOLO 47. VERTICI CHIAVE ASSOLUTI
Capitolo 48
Chiavi di Vertici Relative [Relative VertexKeys] Le Relative Vertex Keys (RVK) funzionano in modo diverso in quanto vengono memorizzate solo le differenze tra la mesh di riferimento e quella deformata. Questo permette di mischiare assieme diverse Chiavi per ottenere delle animazioni complesse. Tratteremo le RVK con un esempio. Creeremo un’animazione facciale con la RVK. Mentre le Vertex Keys Assolute vengono controllate soltanto con una sola Curva IPO, le Vertex Keys Relative vengono controllate da una curva di interpolazione per ogni posizione chiave, che indica ’quanta’ di questa deformazione relativa sia usata per produrre la mesh deformata. Ecco perch´e si possono miscelare (aggiungere, sottrarre, ecc) le chiavi relative. Per l’animazione facciale, la posizione base deve essere una posizione rilassata con le labbra leggermente aperte e le palpebre aperte a met`a. Si devono quindi definire le chiavi per l’occhiolino sinistro/destro, contento, triste, sorridente, accigliato, ecc. Il trucco con le vertex keys relative consiste nel fatto che solo i vertici che sono cambiati tra la base e la chiave, modificano il risultato finale durante la miscelazione. Questo significa che `e possibile avere diverse chiavi che influiscono sull’oggetto in posti diversi tutte allo stesso tempo. Per esempio, una faccia con tre chiavi: il sorriso, e l’occhiolino sinistro/destro pu`o essere animata per sorridere, quindi per battere a palpebra sinistra, poi battere la palpebra destra, infine aprire entrambi gli occhi e finalmente smettere di sorridere - tutto miscelando 3 chiavi. Senza le vertex keys relative si sarebbero dovute generare 6 vertex keys, una per ciascuna posizione voluta. Si consideri la testa femminile nella La testa femminile da animare. : Per aggiungere una RVK basta premere IKEY e selezionare Mesh come per le AVK, ma, dal men` u che appare si seleziona Relative Vertex Keys . Con questo si memorizza la Chiave di riferimento che apparir` a come una linea gialla orizzontale nella finestra IPO. 329
330 CAPITOLO 48. CHIAVI DI VERTICI RELATIVE [RELATIVE VERTEXKEYS] Le chiavi relative vengono definite inserendo altre vertex keys. Ogni volta che si preme IKEY e si seleziona Mesh appare una nuova linea orizzontale nella finestra IPO. Se il numero del fotogramma viene aumentato ogni volta, le linee orizzontali vengono poste una sull’altra. Per facilitare la modellazione si nascondono tutti i vertici ad esclusione di quelli della faccia ( Tutti i vertici nascosti ad esclusione di quelli della faccia ).
Figura 48.1: La testa femminile da animare. Ci si sposta, ora, su un altro fotogramma, diciamo il numero 5, e si aggiunge una nuova Chiave. Apparir`a una linea azzurra sopra la gialla, che ora diventa arancione. Si entra in Modo Edit e si chiude la palpebra sinistra. Una volta fatto si esce dal Modo Edit. Se si seleziona la chiave di riferimento si vedr`a la mesh originale. Se si seleziona la prima RVK si vedr`a quella deformata ( L’occhio sinistro chiuso. ).
Figura 48.2: Tutti i vertici nascosti ad esclusione di quelli della faccia.
( Il sorriso. ).
Si ripete il passaggio per l’occhio destro. Si faccia attenzione che le chiavi appena inserite sono basate sulla mesh della chiave attualmente attiva , quindi `e in genere buona norma selezionare la chiave di riferimento prima di premere IKEY . Quindi si aggiunge un sorriso
331
Figura 48.3: L’occhio sinistro chiuso.
La finestra IPO sar`a simile alla Le Chiavi nella Finestra IPO.
L’ordine verticale delle Vertex Keys (le linee blu) dal basso verso l’alto determina la sua corrispondente curva IPO, cio`e la linea della chiave blu pi` u in basso sar`a controllata dalla curva Key1 , la seconda dal basso sar`a controllata dalla curva Key2 , e cos`ı via.
Figura 48.4: Il sorriso.
Non `e presente alcuna IPO per la mesh di riferimento in quanto `e tale mesh che viene utilizzata se tutte le altre Chiavi hanno un valore della IPO di 0 in un dato fotogramma.
Si selezioni Key1 e si aggiunga una IPO col metodo preferito. Si dia uno sguardo alla La curva IPO Key 1. .
332 CAPITOLO 48. CHIAVI DI VERTICI RELATIVE [RELATIVE VERTEXKEYS]
Figura 48.5: Le Chiavi nella Finestra IPO.
Questo render` a la mesh indeformata fino al fotogramma 10, quindi dal fotogramma 10 al fotogramma 20 la Key 1 comincer`a ad influire sulla deformazione. Dal fotogramma 20 al fotogramma 40 la Key 1 superer`a completamente la mesh di riferimento (valore della IPO `e 1), e l’occhio sar` a completamente chiuso. L’effetto svanir`a dal fotogramma 40 al fotogramma 50.
Si pu` o controllare con ALT-A , o impostando manualmente i numeri del frame. La seconda scelta `e migliore, a meno che il computer non sia particolarmente potente!
Tale IPO si copia usando il pulsante con la freccia in basso nella toolbar della Finestra IPO (Figura 15-10). Si seleziona Key 2 e si incolla la curva con la freccia in alto. Ora entrambe le chiavi hanno la stessa influenza sulla faccia e gli occhi si chiuderanno nello stesso momento ( I pulsanti per il copia/incolla [Clipboard]. )
333
Figura 48.6: La curva IPO Key 1.
Spostamento [Panning] della Toolbar: Pu`o capitare che la toolbar sia pi` u lunga della fin
Figura 48.7: I pulsanti per il copia/incolla [Clipboard].
Si aggiunge anche una IPO per la Key 3 . Facciamolo in modo diverso ( Tutte le IPO. ).
In questo modo chiude gli occhi e comincia a sorridere, il sorriso `e al massimo quando gli occhi sono chiusi, quindi sorride ’meno’ mentre gli occhi si riaprono e si mantiene sorridente ( La Sequenza. ).
334 CAPITOLO 48. CHIAVI DI VERTICI RELATIVE [RELATIVE VERTEXKEYS]
Figura 48.8: Tutte le IPO.
Figura 48.9: La Sequenza. tive. Tali curve dovrebbero essere create nel modo tipico. La posizione finale viene determinata aggiungendo tutti gli effetti di ciascuna singola Curva IPO.
335
Le RVK nella Finestra Azione: Si pu`o operare cone le RVK anche nella Finestra Azione [Action] ( SHIFT-F12
I valori esterni all’intervallo [0,1]: Una parte importante delle Chiavi Relative riguarda l’uso di posizioni aggiun
Figura 48.10: [Action].
Le RVK nella Finestra Azione
336 CAPITOLO 48. CHIAVI DI VERTICI RELATIVE [RELATIVE VERTEXKEYS]
Capitolo 49
Animazione del Lattice Imparentare (affiliare) una mesh ad un lattice `e un buon modo per applicare le deformazioni alla prima durante la modellazione, ma `e anche un modo per deformarla nel tempo! Nell’animazione si possono usare i Lattici in due modi:
• Animando i vertici coi vertex keys (o i vertex keys relativi);
• Spostando il lattice o l’oggetto figlio del lattice.
La prima tecnica fondamentalmente non `e nient’altro che quella contenuta nelle precedenti due sezioni ma applicata ad un lattice che ha un oggetto imparentato ad esso. Con la seconda si possono creare animazioni che schiacciano cose tra rulli, o dare l’effetto di una conosciutissima astronave che accelera alla velocit`a Curvatura [Warp]. Si crei un’astronave e si aggiunga del lattice intorno alla nave. Si renda il lattice coi parametri in Impostazione del Lattice. . Si seleziona la nave, si estende la selezione al lattice ( SHIFT premuto mentre si seleziona), e si preme CTRL-P per rendere il lattice genitore della nave. Non si vedr`a alcuna deformazione della nave in quanto il lattice `e ancora normale. I successivi pochi passi `e importante farli in Modo Edit. Ora si seleziona il lattice, si va in Modo Edit, si selezionano tutti i vertici ( AKEY ), e si ridimensiona lungo l’asse x (si preme MMB mentre si inizia a dimensionare) per avere l’allungamento desiderato. La mesh della nave mostra subito la deformazione provocata dal lattice ( Lo stiramento ).
337
338
CAPITOLO 49. ANIMAZIONE DEL LATTICE
Figura 49.1: Impostazione del Lattice.
Si modifica il lattice in Edit in modo che i verFigura 49.2: Lo stiramento tici a destra abbiano una distanza crescente dagli altri. Questo aumenter`a la distorsione appena la nave entra nel lattice. I vertici all’estrema destra sono stati ridotti in modo da ridurli quasi a un punto; questo provocher` a, alla fine, la scomparsa della nave ( La deformazione finale del lattice. ). Si seleziona ancora la nave e la si sposta attraverso il lattice per avere un’anteprima dell’animazione. Ora si pu`o effettuare una normale animazione con un fotogramma chiave [keyframe] per far volare la nave attraverso il lattice.
Inseguimento con la Telecamera: Con questa
Figura 49.3: La deformazione finale del lattice.
339
Figura 49.4: Qualche fotogramma dell’animazione risultante.
340
CAPITOLO 49. ANIMAZIONE DEL LATTICE
Parte IX
SOFT BODIES E FLUIDI
341
343 Il sistema di SoftBody (corpi elastici) di Blender permette ai vertici di muoversi in base alle leggi della fisica. Ci` o significa che essi possono essere predisposti per reagire alla forza di gravit` a e al vento. Gli oggetti in Blender possono essere impostati per comportarsi come un corpo morbido. Solo gli oggetti Mesh ed i Lattice sono implementati nella release 2.37. Il sistema dei SoftBody `e principalmente pensato per potenziare il sistema di animazione, inclusa l’animazione dei personaggi. Gli effetti come una pelle flessibile o corrugata sono ora molto semplici da ottenere. Nei file dimostrativi della 2.37 (4 MB) `e possibile trovare due esempi di soft bodies, softbody basics.blend e wind soft.blend http://download.blender.org/demo/test/test237a.zip .
344
Capitolo 50
Soft Bodies 50.1
Le basi
Per controllare l’effetto del Soft Body ci sono due metodi: • Goal - Il Goal (obiettivo) del Soft body agisce come un freno sull’insieme dei vertici scelti; regolando la quantit` a dell’effetto Soft Body che agisce su di essi. Con Goal attivato al massimo (1.0), l’oggetto si comporta come un normale oggetto animato (senza alcun effetto di Soft Body). Quando si imposta Goal a 0.0, l’oggetto `e governato solo dalle leggi fisiche. Regolando Goal tra 0.0 e 1.0, si pu`o miscelare tra l’avere l’oggetto influenzato solo dal sistema di animazione e l’oggetto influenzato solo dall’effetto del Soft Body. Goal funge anche da memoria, per assicurarsi che gli oggetti elastici non si deformino troppo, assumendo una forma animata non elastica. Usando il sistema dei pesi del Gruppo di Vertici [Vertex Group], si pu`o definire il peso di un Goal per ciascun vertice. Per farlo sembrare pi` u naturale, si possono definire le forze elastiche per controllare di quanto i vertici si possano spostare dalla posizione originale. • Springs - L’ Edge Spring Stiffness (Rigidit`a del Lato Tirante) definisce di quanto i lati debbano resistere nel mantenere la loro lunghezza originale. Per esempio, aggiungendo lati diagonali all’interno di un cubo, questi diventa pi` u rigido (meno gelatinoso). Regolando il parametro E Stiff , gli oggetti si possono impostare affinch´e resistano, pi` u o meno, nel mantenere la loro forma originale, pur muovendosi liberamente secondo con la dinamica.
Nota: Quando si abilita l’effetto del Soft Body su un oggetto, questo viene sempre simulato negli istanti futuri. Una volta soddisfatti della simulazione, la si pu`o Cuocere (memorizzare) [ Bake ] in un sistema di animazione statica. Un Corpo Elastico cotto viene riprodotto molto pi` u velocemente, e non sar` a pi` u dipendente dalla simulazione.
Nota: Si raccomanda di cuocere i Corpi Elastici quando si effettua il rendering delle animazioni, dato che la sim Dato che nei Corpi Elastici i vertici vengono considerati come particelle, si applicano anche le opzioni per Campi di forza [ Force fields ] e Deflettori [ Deflectors ]. Da 345
346
CAPITOLO 50. SOFT BODIES
notare che la deflessione (delle collisioni) funziona solo su Mesh indeformate (che non usano ganci [hooks], armature, lattici, ecc). Per ulteriori informazioni si consultino le note della release [release notes].
50.2
Interfaccia
Alla interfaccia per il SoftBody si accede dal pannello Object , ( F7 ) sotto la fincatura Softbody . Si veda Le impostazioni del Softbody. . Le impostazioni del Softbody
• Enable Soft Body - Abilita il sistema del SoftBody sull’oggetto selezionato. • Bake settings - Apre le impostazioni di Bake (Cottura). Vedi Le impostazioni della Cottura [Bake]. .
Figura 50.1: Le impostazioni del Softbody.
• Friction - Regola la quantit`a di attrito dell’oggetto. Un valore alto indica che le forze, per esempio Gravit` a o Vento , trascinano facilmente l’oggetto spostandolo. • Grav - Gravit`a, la quantit`a di forza nella direzione dell’asse Z negativo. La gravit`a sulla terra `e un valore prossimo a 9.8. • Error Limit - Il limite Runge-Kutta . Definisce l’ampiezza del passo [step] durante l’animazione. Piccoli valori danno una precisione maggiore, ma aumentano il tempo si calcolo. • Mass - Il valore della massa per ciascun vertice. Masse grandi rallentano il movimento, eccetto che per la gravit`a dove il moto `e costante a prescindere dalla massa. • Speed - Con questo valore si pu`o controllare la temporizzazione interna del sistema del SoftBody. • Apply Deform First - Applica i calcoli del softbody dopo le altre deformazioni, come quelle provocate dai Lattici e dalle Armature. • Use Goal - Nella simulazione usa il moto provocato dalle animazioni (Ipo, Deform, Parents, ecc). Il Goal `e la posizione finale desiderata
50.2. INTERFACCIA
347 per i vertici in base a questa animazione. Come un corpo elastico tenti di raggiungere questo obiettivo [goal] lo si pu`o definire con le forze di rigidit`a [stiffness] e di attrito [damping]. • Goal - Il peso del goal di default per tutti i vertici quando non viene assegnato nessun Vertex Group. Se un gruppo di vertici `e presente ed assegnato, invece, questo pulsante mostra il nome del Gruppo di Vertici del goal. • G Stiff - La rigidit`a dell’elasticit`a per il Goal. Un valore basso crea tiranti molto deboli (legamenti pi` u flessibili al goal), un valore alto crea un tirante rigido (legamenti pi` u rigidi al goal). • G Damp - L’attrito per il Goal. Valori alti frenano l’effetto del goal sul corpo elastico. • G Min/GMax - Quando si dipingono i valori nei gruppi di vertici (usando la modalit`a WeightPaint), si possono usare GMin e Gmax per regolare con pi` u precisione i valori dei pesi. Il valore pi` u basso dei pesi dei vertici (blu) diventer`a GMin, quello pi` u alto (rosso) diventer`a GMax. • Use Edges - Anche i lati in un Oggetto Mesh (se ce ne sono, si controlli il Pannello Editing>Mesh) possono agire come tiranti. • Stiff Quads - Per le facce quadrate, i lati diagonali vengono usati come tiranti. Questo per evitare che le facce quadrate collassino completamente. • E Stiff - La rigidit`a elastica per i lati (quanto i lati siano allungabili). Un valore basso indica una tirante debolissimo (un materiale molto elastico), un valore alto `e un tirante forte (un materiale pi` u rigido). • E Damp - L’attrito per un l’elasticit`a di una lato. Valori elevati frenano l’effetto E Stiff.
Le impostazioni della Cottura [Bake].
• Start/End - Indica il range della simulazione del Soft Body da cuocere.
348
CAPITOLO 50. SOFT BODIES • Interval - Indica il numero di fotogrammi per ciascun passo di cottura (la risoluzione del risultato della cottura). Le posizioni intermedie verranno calcolate usando i passi come fotogrammi chiave [key frames], con una interpolazione B Spline.
• Bake - Avvia il processo di Cottura [Bake]. A seconda della complessit`a, pu`o durare un po’. Si pu` o premere ESC per fermare la cottura. Una volta cotto, questo pulsante si trasforma in un pulsante Free Bake (Libera Cottura). Si deve liberare il risultato della cottura per modificare le impostazioni del corpo elastico.
50.3
Esempio L’esempio mostra un modo per fare una semplice bandiera che sventola al vento. Si crea un piano nella vista frontale e la si suddivide tre volte. Nei pulsanti di Edit F9 si attiva Subsurf . Si imposta il livello di subsurf a 2 per un miglior risultato. Si preme Set Smooth . Si aggiungono due spilli [pins] alla bandiera sia nell’angolo superiore che in quello inferiore del piano.
Figura 50.2: Le impostazioni della Cottura [Bake].
• Si crea un nuovo Vertex Group, e si imposta Weight a 0 . Si selezionano tutti i vertici e si
preme Assign . • Ora, si selezionano entrambi gli angoli superiore ed inferiore di un lato della bandiera. Si imposta Weight a 1.0 e si preme di nuovo Assign . Questo far`a in modo che i due vertici restino al loro posto durante la simulazione del softbody. In Modo Weight Paint si dovrebbe vedere qualcosa come questo in Impostazione del Peso [Weight] dell’esempio. . • In seguito, si esce dal Modo Edit e si va nel pannello Softbody nella Pulsantiera dell’Oggetto F7 . Si clicca su Enable Soft Body . Si alza Grav a 9.8 . Si attiva il pulsante Use Goal . Si clicca sul pulsantino dopo Use Goal e si sceglie il nome del Vertex Group da usarsi per il goal, in questo caso, la sola scelta dovrebbe essere il nome di default Group . Si regola la rigidit`a dei lati E Stiff a 0.9 , si imposta Mass a 0.5 , Friction a 0.14 e Speed a 2 . • Quindi si preme ALT-A per vedere la bandiera che reagisce alla gravit`a.
50.3. ESEMPIO
349
Ora si aggiunge un po’ di vento alla simulazione. • Si mette un empty nella scena che segnaler`a la sorgente del vento. Si seleziona il tab Particle Interaction e si attiva il pulsante Wind . Si pone Strength a 1 . Figura 50.3: Impostazione del Peso [Weight] dell’esempio.
• Quindi si ruota e si sposta l’empty in modo che l’asse Z punti verso la bandiera. Vedi Impostazione del Vento [Wind] dell’esempio. .
Suggerimento: Si pu`o temporaneamente aumentare il valore di Strength in modo da vedere pi • Si preme ALT-A per vedere la reazione della bandiera al vento. • Aggiungendo una curva IPO per simulare il cambiamento della forza del vento si aggiunger`a un ulteriore realismo all’animazione. Vedi La IPO dell’Intensit` a [Strength] del vento dell’esempio. .
Figura 50.4: dell’esempio.
Impostazione del Vento [Wind]
Figura 50.5: La IPO dell’Intensit`a [Strength] del vento dell’esempio.
350
CAPITOLO 50. SOFT BODIES
Capitolo 51
Simulazione Fluidi Il seguente capitolo descrive come animare dei liquidi usando il simulatore di fluidi integrato in Blender a partire dalla versione 2.40. Problema di cartelle nella Versione 2.40: Su di un sistema (cio`e sul Mac OSX) la versione attuale di blender si
51.1
Visione d’insieme del flusso di lavoro
• Modellando una scena con Blender si possono contrassegnare alcuni oggetti al fine di includerli nella simulazione dei fluidi, col ruolo di fluido oppure di ostacolo. La scatola rettangolare [bounding box] di un altro oggetto verr`a usata per definire una regione a forma di parallelepipedo all’interno della quale avverr`a la simulazione del fluido.
• I parametri globali di simulazione come la viscosit`a e la gravit`a possono essere impostati su questo oggetto, che funge da dominio.
• Con il pulsante bake la geometria e le impostazioni verranno esportate verso il simulatore e verr` a lanciata la simulazione, generando una mesh superficie assieme ad un’anteprima per ogni fotogramma di animazione, e salvandole sul disco rigido.
• La superficie del liquido corrispondente al fotogramma corrente viene caricata dal disco e visualizzata o renderizzata in Blender.
Le due immagini all’inizio e alla fine di questo paragrafo sono un esempio delle animazioni dei fluidi create con il simulatore El’Beem in Blender (e renderizzate mediante Yafray).
351
352
CAPITOLO 51. SIMULAZIONE FLUIDI
Figura 51.1: Esempio: animazione del cedimento di una diga.
51.2
Spiegazione delle impostazioni della GUI:
Screenshot della GUI per un oggetto dominio. Dopo aver abilitato la siFigura 51.2: Un’altro esempio di animazione: la caduta di una goccia. mulazione di fluidi per un oggetto, pu` o essere scelto il tipo (dominio, fluido, ostacolo,...) determinando di conseguenza la presenza di parametri specifici per ogni tipo. Dopo aver abilitato la simulazione del fluido per un oggetto mesh, saranno disponibili i cinque seguenti tipi di oggetto.
• Domain: (Dominio) La scatola rettangolare [bounding box] nella quale `e inscritto questo oggetto circoscriver` a la simulazione. Occorre notare che la forma dell’oggetto non ha importanza (per cui di solito non c’`e ragione di usare forme diverse da un parallelepipedo). Se sono necessari ostacoli o argini diversi da un parallelepipedo sar` a necessario inserire oggetti ostacolo aggiuntivi. Attualmente pu`o esistere un solo ogetto che svolga la funzione di dominio della simulazione del fluido. Le lunghezze delle facce del parallelepipedo possono essere differenti. – Resolution: (risoluzione) La risoluzione alla quale l’attuale simulazione dei fluidi viene calcolata. Questo `e probabilmente il settaggio pi` u importante ai fini della simulazione dal momento che determina la misura del dettaglio del fluido, l’uso di memoria e di disco rigido ed anche il tempo di calcolo. Si noti che il quantitativo di memoria RAM richiesta cresce rapidamente: una risoluzione di 32 richiede circa 5MB, 64 richiede circa 40MB, mentre 128 ha gi` a bisogno di pi` u di 250MB. Assicurarsi di impostare la risoluzione sufficientemente bassa, in relazione al quantitativo di memoria di cui si dispone, per evitare che Blender termini o si blocchi. Se il dominio non `e cubico, la
51.2. SPIEGAZIONE DELLE IMPOSTAZIONI DELLA GUI:
353
risoluzione verr` a campionata sul lato pi` u lungo. La risoluzione sugli altri lati verr` a ridotta in proporzione alle loro lunghezze. – Preview-Res.: (risoluzione dell’anteprima) Questa `e la risoluzione alla quale verranno generate le superfici mesh di anteprima. Per cui essa non influenza la simulazione attuale, ed anche se non si vede nulla nell’anteprima, ci potrebbe essere una sottile superficie di fluido che non pu`o essere risolta con l’anteprima. – Start time: (tempo iniziale) Tempo della simulazione (in secondi) del primo fotogramma di blender. Questa opzione permette all’animazione in Blender di iniziare posticipata rispetto alla simulazione. – End time: (tempo finale) Tempo della simulazione corrispondente all’ultimo fotogramma di Blender. – Disp.-Qual.: (qualit` a di visualizzazione) Definisce come visualizzare nella GUI di Blender (primo menu a discesa) o nel rendering finale (secondo menu a discesa) la simulazione memorizzata: geometria originale [original geometry], mesh di anteprima [preview mesh] o mesh finale [final mesh]. Quando il programma non trova dati gi`a memorizzati [baked], di default verr`a mostrata la mesh originale.
– Bake directory: Directory e prefisso dei file per salvare le sequenze di superfici mesh processate. Questo somiglia alle impostazioni di salvataggio di un’animazione, solo la scelta del file `e un po’ particolare: quando viene scelto una qualsiasi delle mesh generate in precedenza (come untitled OBcube fluidsurface final 0132.bobj. ) verr` a automaticamente impostato il prefisso dei nomi dei file ( untitled OBcube per questo esempio). In questo modo la simulazione pu`o essere lanciata pi` u volte con impostazioni diverse, e permette rapidi cambiamenti delle diverse categorie di dati delle superfici. – Bake-Button: (Pulsante inforna) Esegue la simulazione del fluido attuale. La GUI di Blender si bloccher`a, visualizzando solo il fotogramma che `e simulato. Premendo ESCAPE verr`a annullata la simulazione. Al termine ci saranno due .bobj.gz per ogni fotogramma, nella directory selezionata.
Liberare dalle precedenti infornature: Cancellando il contenuto della cartella di salvataggio (bake directory) `e u
•
– Advanced-Button: (Pulsante Avanzate) Premendo questo pulsante verranno visualizzate opzioni pi` u avanzate, che generalmente non si modificano spesso. – Gravity vector: (vettore gravit`a) Entit`a e direzione dell’accellerazione di gravit` a. Attualmente la componente principale dovrebbe essere orientata e rivolta verso l’asse z negativo [m/sˆ2]. Ad ora questi valori non possono essere tutti 0 (almeno qualche numero piccolo). – Viscosity: Viscosit` a, intesa come spessore del fluido. Si pu`o alternativamente inserire direttamente un valore od usarne uno tra quelli predefiniti. Per l’inserimento manuale, il valore `e specificato da un numero a virgola mobile che deve aggirarsi intorno ad 1.0, e da un esponente negativo. Ci`o semplifica l’inserimento di numeri molto piccoli, come per esempio la viscosit`a dell’acqua che si aggira intorno a 10ˆ-6 .
354
CAPITOLO 51. SIMULAZIONE FLUIDI – Real-World size: (Dimensione del Mondo Reale) Dimensione dell’oggetto dominio rapportato al mondo reale, in metri. Se si vuole creare un bicchiere d’acqua, questo valore pu`o essere 0.2 metri, mentre per una singola goccia sar` a pi` u adatto un centimetro (quindi 0.01 m). La dimensione impostata qui si riferisce al lato maggiore del parallelepipedo [bounding box] del dominio. – Gridlevel: (livello della griglia) Quanti livelli di gliglia adattivi verranno usati durante la simulazione - impostando questo valore a -1 verr`a eseguita una selezione automatica. – Compressibillity: (compressibilit`a) Se si riscontrano problemi con ampie regioni di fluido con risoluzione elevata, potrebbe essere utile ridurre tale valore (si noti che aumenteranno i tempi di calcolo). • Fluid: (Fluido) Tutte le regioni di questo oggetto che si trovino all’interno del parallelepipedo di definizione del dominio verranno usate come fluido nella simulazione. Se si collocano pi` u di un oggetto fluido all’interno del dominio, essi dovrebbero, allo stato attuale, non intersecarsi. Assicurarsi inoltre che le normail delle superfici puntino verso l’esterno. A differenza con gli oggetti dominio, l’attuale geometria della mesh viene usata per gli oggetti fluido. – Initial velocity: (Velocit`a iniziale) Velocit`a del fluido all’inizio della simulazione, in metri al secondo. • Obstacle: (Ostacolo) Questo oggetto verr`a usato come ostacolo nella simulazione. Come per gli oggetti fluido, gli oggetti ostacolo non dovrebbero intersecarsi. Come per gli oggetti fluido, la geometria attuale della mesh verr`a usata nella simulazione degli sotacoli. – Nessuna impostazione per ora...
Suggerimenti: Il vostro ostacolo dovrebbe avere uno spessore superiore dell’unit`a usata nel dominio (per cui il l • Inflow: (Flusso entrante) Questo oggetto immetter`a fluido nella simulazione (si pensi ad un rubinetto). – Initial velocity: (velocit`a iniziale) Velocit`a del fluido che `e creato all’interno dell’oggetto. • Outflow: (Flusso uscente) Qualunque fluido che entra nella regione di questo oggetto verr` a cancellato (si pensi ad uno scarico). Ci`o pu`o tornare utile in combinazione con un Flusso entrante per evitare che l’intero dominio si riempa. – Nessuna impostazione per questo...
51.3
Qualche informazione di riferimento
La animazione del fluido pu` o prendere molto tempo - meglio si comprende come funziona, pi` u facile sar` a valutare come saranno i risultati. La procedura usata per questo progetto `e il metodo del Lattice di Boltzmann (LBM), altri approcci sono i risolutori di Navier-Stokes (NS) ed i metodi di idrodinamica delle particelle fluide ( Smoothed Particle Hydrodynamics SPH). LBM si trova a met`a strada fra questi due. In generale per i
51.4. ULTERIORI INFORMAZIONI
355
calcolatori correnti `e realmente duro simulare correttamente persino un serbatoio di un metro di acqua. Per simuare un’onda che si infrange contro una citt`a, probabilmente avreste bisogno di uno dei pi` u costosi supercomputer che potreste ottenere, e potrebbe non funzionare ancora correttamente - a prescindere da quale dei 3 algoritmi sopra citati voi stiate usando. Ma, in modo simile a quello che i cineasta hanno fatto per anni nelle pellicole analogiche, potete fingere di avere un’onda in una citt`a sviluppando un modello pi` u piccolo, avere una piccola onda nel modello e sperare che nessuno noti la differenza fra un’onda di 100 metri e un’onda di 1 metro. Per il simulatore LBM, le seguenti cose renderanno la simulazione pi` u dura da computare:
• grandi dominii • durata lunga • viscosit` a basse • ed alte velocit` a. La viscosit` a dell’acqua `e gi` a effettivamente bassa, cos`ı particolarmente per le risoluzioni basse, la turbolenza dell’acqua non pu`o essere resa correttamente. Se osservate da vicino, la maggior parte delle simulazioni dei liquidi nella grafica al calcolatore ancora non assomiglia ad acqua reale, sinora. In generale, non si conti troppo sulle regolazioni fisiche (quali la dimensione fisica del dominio o la lunghezza fisica della animazione in secondi). Piuttosto si provi ad ottenere il movimento complessivo con una risoluzione di livello basso ed in seguito si aumenti la risoluzione tanto quanto possibile o voluta.
51.4
Ulteriori informazioni
• Tutorial 1: Very Basic Introduction • Tutorial 2: The Next Step • Tutorial 1&2 Gui Changes for newer builds • Developer documentation (implementation, dependencies,...)
51.5
Ringraziamenti
L’integrazione del motore di simulazione del fluido `e stata realizzata come progetto del Google Summer-of-Code. Maggiori informazioni relative al solutore si possono trovare su www.ntoken.com . Queste animazioni sono state create con il solutore prima della sua integrazione in Blender: Adaptive Grids , Interactive Animations . Grazie a Chris Want per aver organizzato il progetto Blender-SoC, ed a Jonathan Merrit per essere stato mentor di questo! E ovviamente grazie a Google per aver fatto partire tutto questo... Gli aggiornamenti dei progressi del SoC sono stati inseriti qui: SoC-Blenderfluid-Blog at PlanetSoC . Il risolutore in s`e `e stato sviluppato con l’aiuto e la supervisione delle
356
CAPITOLO 51. SIMULAZIONE FLUIDI
seguenti persone: U. Ruede, T. Pohl, C. Koerner, M. Thies, M. Oechsner and T. Hofmann at the Department of Computer Science 10 (System Simulation, LSS) in Erlangen, Germany.
Parte X
RENDERING
357
359 editor’s note: this info should not be on the front page of Part XII, I I believe. Here should be more general information, the text below should be moved to an introductional section.
Il rendering `e il processo finale della CG (in pratica il post-processing, ovviamente) ed `e la fase in cui finalmente viene creata l’immagine corrispondente alla propria scena 3D.
Alla pulsantiera del Rendering si accede tramite il Contesto Scene ed il subcontesto Render ( F10 o il pulsante ). I Pulsanti ed i Pannelli del rendering appaiono in I Pulsanti del Rendering. .
Figura 51.3: I Pulsanti del Rendering. ne eseguito premendo il grande tasto centrale RENDER nel pannello Render , o premendo F12 . Il risultato del rendering viene mantenuto in un buffer e mostrato in una propria finestra. Pu` o essere salvato premendo F3 o col men` u File >> Save Image . Il rendering dell’immagine viene effettuato secondo le dimensioni definite nel Pannello Format ( I tipi di Immagine e le dimensioni. ).
Figura 51.4: I tipi di Immagine e le dimensioni.
Normalmente le dimensioni SizeX e SizeY sono 320x256 e possono essere cambiate come per qualsiasi altro Pulsante Numerico. I due pulsanti sotto definiscono il rapporto di aspetto [aspect ratio] dei pixel. Questo `e il rapporto tra le dimensioni X e Y del pixel dell’immagine. Di norma `e 1:1 dato che i pixel dello schermo del computer sono quadrati, ma pu`o essere cambiato se si sta creando un cortometraggio per la televisione dato che i pixel TV non sono quadrati. Per semplificarsi la vita il blocco di pulsanti pi` u a destra ( Dimensioni preimpostate dell’immagine. ) fornisce delle comuni preselezioni:
360
Figura 51.5: Dimensioni preimpostate dell’immagine.
Capitolo 52
Antiscalettatura [Antialiasing] Un’immagine generata dal computer `e composta da pixel, questi pixel, ovviamente, possono essere di un solo colore. Nel processo di rendering il motore del rendering deve quindi assegnare un solo colore a ciascun pixel a seconda dell’oggetto che si sta rappresentando con tale pixel. Questo porta spesso a dei pessimi risultati, specialmente sui bordi netti, o dove siano presenti delle linee sottili, ed `e particolarmente evidente per le linee oblique. Per superare tale problema, conosciuto come Scalettatura o Aliasing , `e possibile far ricorso ad una tecnica di Anti-scalettatura o Anti-Aliasing. Fondamentalmente, ciascun pixel `e ’sovracampionato’ [oversampled], nel rendering `e come se ci fossero 5 pixel o pi` u, ed al pixel in esame viene assegnato un colore ’medio’. I pulsanti per controllare l’Anti-Aliasing, o Sovracampionamento [OverSAmple (OSA)], stanno sotto il pulsante del rendering nel Pannello Render ( Il Pannello Render. ). Premendo il pulsante OSA viene attivata l’antiscalettatura, selezionando uno dei quattro pulsanti numerici sotto di esso, si sceglie il livello di sovracampionamento (da 5 a 16). Blender usa un sistema per il rendering ad Accumulazione di Delta che mischia i campionamenti. I valori di OSA (5, 8, 11, 16) sono numeri preimpostati che indicano il numero di campionamenti; un valore alto produce bordi migliori, ma rallenta il rendering.
Figura 52.1: Il Pannello Render.
Un altro parametro che pu`o migliorare la qualit`a del disegno quando si usa l’OSA `e il parametro Gaussian filter (filtro Gaussiano), posizionato anche nel pannello Render . Premendo il pulsante Gauss si attiva tale filtro. Lo slider numerico alla destra del pulsante Gauss definisce la di361
362
CAPITOLO 52. ANTISCALETTATURA [ANTIALIASING]
mensione della mashera di campionamento. Il sub-pixel campione crea una piccola maschera pesata della dimensione definita, che pu`o riguardare anche i pixel limitrofi. Ne risultano dei bordi pi` u morbidi, meno sensibili alla gamma, e molto adatti alla riduzione dell’aliasing da movimento [motion-aliasing] ( Render Panel. )
Nota: Attualmente l’opzione Gauss funziona solo per i lati delle facce normali. Non funziona per i rendering tr Rendering senza OSA (a sinistra) con OSA=5 (al centro) ed OSA=8 (a destra). mostra dei rendering con l’OSA disattivato e con campionamenti di OSA a 5 e a 8 campioni.
Figura 52.2: Rendering senza OSA (a sinistra) con OSA=5 (al centro) ed OSA=8 (a destra).
Capitolo 53
Rendering di Animazioni Il rendering di un’animazione viene controllato tramite il Pannello Anim ( I pulsanti per il rendering dell’animazione. ).
Figura 53.1: I pulsanti per il rendering dell’animazione.
Il pulsante ANIM avvia il rendering. Il primo e l’ultimo fotogramma dell’animazione sono indicati da due pulsanti numerici in basso ( Sta: ed End: ), e solitamente sono impostati a 1 e 250. Normalmente viene effettuato il rendering dell’animazione della scena 3D, per usare l’editor delle sequenze bisogna selezionare l’interruttore Do Sequence . Di solito il rendering dell’animazione viene effettuato nella directory indicata nel Pannello Output ( Posizione dell’animazione ed estensioni. ). Se `e stato selezionato un formato AVI, allora il nome sar`a #### ####.avi dove ’####’ indica il frame di inizio e di fine dell’animazione, gli interi sono riempiti con zeri per arrivare a 4 cifre. Se viene scelto un formato di un’immagine, dall’altra parte, una serie di immagini chiamate #### , (’####’ `e il numero del frame di pertinenza) vengono create nella directory. Se `e necessaria l’estensione del file, questa viene ottenuta premendo l’interruttore Extensions ( Posizione dell’animazione ed estensioni. ).
Animazioni Complesse: A meno che la propria animazione non sia particolarm Figura 53.2: Posizione dell’animazione ed estensioni.
363
364
CAPITOLO 53. RENDERING DI ANIMAZIONI
Capitolo 54
Formati di output Il file viene salvato in qualsiasi formato che sia stato selezionato dal pulsante Men` u di pertinenza nel Pannello Format ( BSG.REN.F.S68.002 ). Da qui si possono selezionare molti formati di immagini o di animazioni ( I formati delle Immagini e delle Animazioni. ). Il tipo di immagine di default `e il Targa , ma, dato che l’immagine viene immagazzinata in un buffer e poi salvata, usando questo men` u, `e possibile cambiare il tipo di file dopo il rendering e prima di salvare. Normalmente Blender riproduce immagini a colori ( RGB ) ma sono possibili anche immagini in Bianco e Nero [Black and White] ( BW ) ed a colori con un Canale Alfa ( RGBA ). Si faccia attenzione al fatto che Blender non aggiunge automaticamente l’estensione ai file, quindi qualsiasi estensione .tga o .png deve essere scritta esplicitamente nella finestra per il Salvataggio del File. Figura 54.1: I formati delle Immagini e delle Animazioni.
Ad eccezione del formato Jpeg, che produce una compressione con perdita, tutti gli altri formati sono pi` u o meno equivalenti. In genere non `e una buona l’idea di usare il JPG dato che `e a perdita di informazione. Meglio usare il formato Targa e convertirlo in JPG per pubblicarlo sul web, mantenendo l’originale in Targa.
Ad ogni modo, per quello che riguarda gli altri formati: TARGA raw `e il Targa non compresso, spreca molto spazio su disco. PNG sta per Portable Network Graphics, uno standard per rimpiazzare il vecchio GIF in quanto `e a perdita di informazione, ma supporta immagini con tutti i colori. HamX `e un formato RLE (Run Length Encoded bitmap) ad 8 bit sviluppato internamente; crea dei file estremamente compatti che possono essere visualizzati rapidamente. Da usarsi solo per l’opzione Play. Iris `e il formato standard di SGI, ed Iris + Zbuffer `e lo stesso con in pi` u le informazioni dello Zbuffer. Infine Ftype usa un file Ftype, per indicare che questo file serve come esempio per i tipi di formati grafici in cui Blender deve salvare le immagini. Tale metodo consente 365
366
CAPITOLO 54. FORMATI DI OUTPUT
di elaborare i formati con una ’mappa di colori’. I dati della mappa dei colori vengono letti dal file ed usati per convertire i grafici disponibili a 24 o 32 bit. Se viene specificata l’opzione RGBA, il colore standard numero ’0’ viene usato come colore di trasparenza. Blender legge e scrive IFF (Amiga), Targa, (SGI) Iris e formati a mappa di colore CDinteractive (CDi) RLE. Per quello che riguarda le animazioni: • AVI Raw - salva un AVI come fotogrammi non compressi. Senza perdita, ma sono file enormi. • AVI Jpeg - salva un AVI come una serie di immagini Jpeg. Con perdita, file pi` u piccoli ma non tanto quanto si potrebbe fare con un algoritmo di compressione migliore. Inoltre il formato AVI Jpeg non viene letto da alcuni riproduttori. • AVI Codec - salva un AVI comprimendolo con un codec. Blender automaticamente prende la lista dei codecs disponibili dal sistema operativo consentendo di ` possibile anche cambiarlo o cambiarne le impostazioni, impostarne i parametri. E una volta selezionato, tramite il pulsante Set Codec che appare ( Le impostazioni del Codec AVI. ). Per un’animazione AVI `e possibile impostarne la velocit`a dei fotogrammi (frame rate) ( Le impostazioni del Codec AVI ) che, normalmente, `e di 25 fotogrammi [frames] al secondo.
Figura 54.2: Le impostazioni del Codec AVI.
Capitolo 55
Opzioni per il Rendering 55.1
Rendering Parziali
` possibile effettuare il rendering di un’immagine in porzioni, una dopo l’altra, anzich´e E avere tutto in una volta. Questo `e utile per le scene molto complesse, dove il rendering di piccole sezioni successive, richiede il calcolo di una piccola parte della scena, usando meno memoria. Inserendo un valore diverso da 1 nei Pulsanti Numerici Xparts e Yparts nel Pannello Render ( I pulsanti per il rendering parziale. ), si impone a Blender di suddividere l’immagine in una griglia di Xparts per Yparts sotto-immagini,di cui, quindi, viene effettuato il rendering, una dopo l’altra ed infine assemblate assieme. Nota: Blender non gestisce pi` u di 64 porzioni.
55.2
Rendering Panoramici
Per ottenere dei rendering panoramici, fino ad una vista completa di 360◦ sull’orizzonte, Blender fornisce una procedura automatica. Se Xparts `e pi` u grande di 1 ed il pulsante Pano del pannello Render `e premuto ( Il pulsante per il Panorama. ), alloFigura 55.1: I pulsanti per il ra l’immagine del rendering viene creata in modo rendering parziale. da essere larga Xparts per SizeX ed alta SizeY , il rendering di ciascuna parte viene effettuato come se la telecamera ruotasse opportunamente per ottenere le immagini senza discontinuit`a (cuciture). Impostazione di prova del Panorama. mostra un’impostazione di prova con 12 sfere attorno alla telecamera. Lasciando la telecamera dov’`e, si ottiene il rendering mostrato in Il rendering non panoramico. . Impostando Xparts a 3 e selezionando Pano il risultato `e un’immagine tre volte pi` u larga in cui appare un ulteriore fotogramma della telecamera a destra ed una a sinistra ( Il rendering panoramico. ).
367
368
CAPITOLO 55. OPZIONI PER IL RENDERING
Figura 55.2: Il pulsante per il Panorama.
Figura 55.3: Impostazione di prova del Panorama.
Figura 55.4: panoramico.
Per ottenere qualcosa di simile senza l’opzione Panorama, il solo modo consiste nel ridurre la lunghezza focale della telecamera. Per esempio, Il rendering a occhio di pesce [Fish-eye]. mostra una vista paragonabile, ottenuta con una lunghezza focale di 7.0, equivalente ad un angolo molto ampio, o a delle lenti a occhio di pesce [fish-eye]. La distorsione `e molto evidente.
Il rendering non
Figura 55.5: Il rendering panoramico. ` noto Per ottenere una vista completa di 360◦ `e necessario qualche aggiustamento. E ◦ che una lunghezza focale di 16.0 corrisponde ad un angolo di vista di 90 . Quindi un rendering panoramico con 4 Xparts ed una telecamera con una lente di 16.0 produce
55.2. RENDERING PANORAMICI
369
una visione piena a 360◦ , come quella mostrata in Un panorama completo di 360◦ con lenti da 16.0. . Questa `e ampiamente distorta, dato che una lente di 16.0 `e una lente per grandangolo, e distorce ai bordi.
Figura 55.6: Il rendering a occhio di pesce (Fish-eye).
Figura 55.7: Un panorama completo di 360◦ con lenti da 16.0. la lunghezza focale dovrebbe essere all’incirca 35.0. Un panorama completo di 360◦ con lenti da 38.5. mostra il risultato per un panorama con 8 Xparts ed una telecamera con una lente da 38.5, corrispondente ad un angolo di vista di 45◦ .
Figura 55.8: Un panorama completo di 360◦ con lenti da 38.5. si deve porre particolare attenzione alla proporzione. L’immagine originale era di 320x256 pixel. Il panorama nella Full 360◦ panorama with 16.0 lenses. `e largo 4 x 320. Per mantenere questo nuovo panorama della stessa larghezza, si deve impostare il SizeX dell’immagine a 160 in modo che 8 x 160 = 4 x 320. Ma la dimensione dell’an-
370
CAPITOLO 55. OPZIONI PER IL RENDERING
golo di vista della telecamera capita per la dimensione maggiore, perci`o, se SizeX viene mantenuta a 256 l’immagine si apre di 45◦ verticalmente ma meno che orizzontalmente, in questo modo il risultato finale non `e un panorama di 360◦ a meno che SizeX ≥ SizeY o si voglia fare qualche tentativo.
55.3
Motion Blur
Solitamente il rendering delle animazioni di Blender viene effettuato producendo una sequenza di immagini perfettamente ferme . Questo non `e realistico, dato che gli oggetti in moto rapido appaiono ’in movimento’, vale a dire, offuscati dal loro stesso moto, sia nei fotogrammi di un film che in una fotografia di una vera macchina fotografica. Per ottenere questo Effetto Movimento (Motion Blur), si pu`o imporre a Blender di effettuare il rendering non solo del fotogramma corrente ma di altri fotogrammi, tra quelli reali, e fonderli per ottenere un’immagine dove i dettagli in rapido movimento vengono ’sfocati’.
Per accedere a tali opzioni si seleziona il pulsante MBLUR successivo al pulsante OSA nel pannello Render ( I pulsanti dell’Effetto Movimento (Motion Blur). ) Questo fa s`ı che Blender effettui il rendering di pi` u fotogrammi ’intermedi’ a seconda del numero di sovracampionamento impostato (5, 8, 11 o 16) e li accantona, uno Figura 55.9: I sull’altro, per formare un unico fotogramma. Il pulsante numerico pulsanti dell’EfBf: o Fattore di Sfocatura [Blur Factor] definisce la durata dell’otfetto Movimento turatore come sar` a mostrato nell’esempio sotto. Non `e necessaria (Motion Blur). l’impostazione del Pulsante OSA dato che il processo del Motion Blur aggiunge comunque un po’ di effetto anti-scalettatura [antialiasing], ma per ottenere un’immagine realmente omogenea, si pu`o attivare anche l’effetto OSA . Questo fa s`ı che ciascuna immagine sovrapposta subisca l’effetto di anti-aliasing. Per afferrare meglio il concetto si assuma di avere un cubo, che si sposta uniformemente di 1 unit` a Blender, a destra, ogni fotogramma. Questo `e certamente veloce, specie se il cubo stesso ha i lati di soli 2 unit` a Blender. Il fotogramma 1 del cubo in movimento senza il Motion Blur. mostra il rendering del frame 1 senza l’Effetto Movimento, Il fotogramma 2 del cubo in movimento senza il Motion Blur. mostra il rendering del frame 2. La scala sotto il cubo aiuta ad apprezzare il movimento di 1 unit`a Blender.
55.3. MOTION BLUR
371
Figura 55.10: Il fotogramma 1 del cubo in movimento senza il Motion Blur.
D’altra parte, la Il frame 1 del cubo in movimento con un Motion Blur, 8 campionamenti, Bf=0.5 mostra il rendering del frame 1 col Motion Blur effettuato con 8 frame ’intermedi’. Bf Figura 55.11: Il fotogramma 2 del cubo in movimento senza il Motion `e impostato Blur. a 0.5; questo vuol dire che gli 8 frame ’intermedi’ vengono calcolati su un periodo di 0.5 frame a cominciare dal frame 1. Ci` o `e molto evidente dato che tutto l’ ’offuscamento’ del cubo si ha su mezza unit` a prima e mezza unit` a dopo il corpo principale del cubo.
Il frame 1 del cubo in movimento con un Motion Blur, 8 campionamenti, Bf=1.0 e Il frame 1 del cubo in movimento con un Motion Blur, 8 campionamenti, Bf=3.0 mostrano l’effetto dell’aumento del valore di Bf. Un valore maggiore di 1 implica un otturatore molto ’lento’ della telecamera.
372
CAPITOLO 55. OPZIONI PER IL RENDERING
Figura 55.12: Il frame 1 del cubo in movimento con un Motion Blur, 8 campionamenti, Bf=0.5
Figura 55.13: Il frame 1 del cubo in movimento con un Motion Blur, 8 campionamenti, Bf=1.0 Risultati migliori di quelli mostrati si possono ottenere impostando 11 o 16 campionamenti invece di 8, ma, ovviamente, dato che sono necessari molti rendering separati come campionamenti un rendering col Motion Blur richiede pi` u tempo di uno senza. Il miglior Anti-Aliasing: Se il Motion Blur `e attivo, anche se nella scena non c’`e niente in movimento, Blender,
55.4
Profondit` a di Campo
La Profondit` a di Campo [Depth of Field (DoF)] `e un interessante effetto della fotografia nel mondo reale che aggiunge molto alle immagini generate dalla CG. Essa `e conosciuta anche come Sfocatura Focale [Focal Blur]. Il fenomeno `e collegato al fatto che una telecamera del mondo reale pu`o mettere a fuoco su un soggetto ad una data distanza, quindi gli oggetti pi` u vicini e quelli pi` u lontani alla
` DI CAMPO 55.4. PROFONDITA
373
telecamera stanno al di fuori del piano focale, apparendo, quindi, leggermente sfocati nella fotografia risultante.
Figura 55.14: Il frame 1 del cubo in movimento con un Motion Blur, 8 campionamenti, Bf=3.0
Il grado di sfocatura degli oggetti pi` u vicini e pi` u lontani varia molto con la lunghezza focale e la dimensione dell’apertura della lente e, se usato abilmente, pu`o dare degli effetti molto piacevoli.
Il rendering di Blender non fornisce un meccanismo automatico per ottenere l’effetto della Profondit` a di Campo, ma ci sono due strade alternative per ottenerlo. Una si basa sulle sole componenti interne di Blender, e sar`a discussa qui. L’altra richiede un plugin di sequenza esterno e sar` a descritto nel Capitolo dell’Editor della Sequenza.
Il trucco per ottenere la Profondit`a di campo in Blender si affida ad un’abile uso del Motion Blur descritto prima, facendo muovere circolarmente la telecamera attorno a quella che dovrebbe essere l’apertura dell’obiettivo della lente della ’macchina fotografica reale’, e puntando costantemente verso un punto dove si desidera che la messa a fuoco sia ’perfetta’. Si supponga di avere una scena con delle sfere allineate, come mostrato a sinistra nella La scena di test per la Profondit` a di Campo. . Un rendering standard di Blender produrr` a l’immagine sulla destra della La scena di test per la Profondit` a di Campo. , con tutte le sfere perfettamente nette e messe a fuoco.
Il primo passo consiste nel porre una Empty ( SPACE >>Add>>Empty) dove ci sar`a il fuoco. Nel nostro caso al centro della sfera di mezzo ( Sistemazione della Empty per il Fuoco. ).
374
CAPITOLO 55. OPZIONI PER IL RENDERING
Figura 55.15: La scena di test per la Profondit`a di Campo. Quindi, assumendo che la Telecamera sia gi`a piazzata nella posizione corretta, si pone il cursore sulla Telecamera (Si seleziona la Telecamera, SHIFTS >>Curs->Sel) e si aggiunge un cerchio NURBS ( SPACE >>ADD>>Curve>>NURBS Circle). Si esce dal Modo Edit ( TAB ) Figura 55.16: Sistemazione della Empty per il Fuoco. si dimensiona la circonferenza. Questo `e molto arbitrario, e si potrebbe volerla ri-dimensionare in seguito per un risultato migliore. Fondamentalmente, la dimensione della circonferenza `e collegata all’apertura fisica, o diaframma, della ’reale’ telecamera. Pi` u grande `e il cerchio pi` u sar`a limitata la regione con una perfetta messa a fuoco, e gli oggetti pi` u vicini e quelli pi` u lontani appariranno sfocati. L’offuscamento dato dalla Profondit`a di campo sar`a meno evidente rimpicciolendo la circonferenza. Ora si faccia in modo che la circonferenza insegua la Empty con un vincolo o col vecchio Inseguimento [Tracking] come in La circonferenza NURBS che insegue la Empty del Fuoco . Dato che la normale al piano su cui giace la circonferenza `e l’asse Z locale, si avr`a un inseguimento corretto in modo che il locale asse Z della circonferenza punti verso la Empty e la circonferenza sia ortogonale alla linea che connette il suo centro alla Empty. Si seleziona la Telecamera poi la circonferenza e si imparenta la Telecamera alla circonferenza ( CTRL-P ). La circonferenza sar`a il Percorso della Telecamera in modo che si possa usare una semplice parentela e quindi si attiva il pulsante CurvePath , o si usa la relazione di parentela Follow Path . Con la circonferenza ancora selezionata, si apre una finestra IPO si seleziona il tipo di Curva IPO. La sola IPO disponibile `e ’Speed’. CTRL-LMB due volte dove capita nella finestra IPO per aggiungere una IPO con due punti casuali. Quindi si posizionano questi due punti numericamente utilizzando NKEY per Xmin e Ymin a 0, Xmax e Ymax a 1. Per completare la modifica della IPO la si rende
` DI CAMPO 55.4. PROFONDITA
375
ciclica con la voce di menu Curve>>Extend Mode>>Cyclic . Il risultato finale dovrebbe essere simile a quello mostrato in La IPO Speed IPO per il percorso circolare NURBS. .
Figura 55.17: La circonferenza NURBS che insegue la Empty del Fuoco. Con queste impostazioni abbiamo in realt`a creato una Telecamera che ruota attorno alla propria posizione lungo la circonferenza NURBS in esattamente 1 fotogramma. Ci`o cambia leggermente le viste della scena con l’opzione del Motion Blur ed alla fine crea l’effetto della Profondit`a di Campo. Resta un’ultima regolazione da fare. Si seleziona prima la Telecamera e Figura 55.18: La IPO Speed IPO per il percorso circolare quindi la Empty del fuoNURBS. co, e si fa in modo che la Telecamera punti alla Empty nel modo che si preferisce. Ora la Telecamera dovrebbe puntare verso la Empty, come in La Telecamera che punta verso la Empty del Fuoco . Se si preme ALT-A non si dovrebbe vedere alcun movimento in quanto la Telecamera compie esattamente un intero giro per ogni fotogramma, quindi appare come ferma, tuttavia il motore del Motion Blur rilever`a questi spostamenti. L’ultimo tocco `e quello di andare nella pulsantiera del Rendering ( F10 ) e selezionare il pulsante MBLUR . Molto probabilmente non ci sar`a bisogno di attivare il pulsante OSA, ` altamente dato che il Motion Blur effettuer` a implicitamente un po’ di antialiasing. E raccomandato che si imposti il fattore del Motion Blur a 1, dato che, in questo modo,
376
CAPITOLO 55. OPZIONI PER IL RENDERING
si attraverser` a tutto il frame per la sfocatura [blurring], per tutta la lunghezza della ` necessario anche impostare i sovracampionamenti al massimo livello circonferenza. E (16) per il risultato migliore ( Le impostazioni per il Motion Blur. ).
Figura 55.19: La Telecamera che punta verso la Empty del Fuoco Effettuando un rendering( F12 ) si otterr`a il risultato desiderato. Ci` o pu` o essere molto pi` u lento di un rendering senza Profondit`a di Campo dato che in realt`a Blender effettua il rendering di 16 immagini e poi le mette assieme. Il rendering finale del Motion Blur. Figura 55.20: Le mostra il risultato, da confrontare con quello in La scena di test per a di Campo. . Bisogna notare che la circonferenza `e staimpostazioni per la Profondit` ta dimensionata molto meno per ottenere questo disegno mostrato il Motion Blur. nella schermata di esempio. Queste ultime sono state fatte con un ampio raggio (pari a 0.5 unit` a Blender) per dimostrare la tecnica migliore. D’altra parte, la Motion Blur final rendering. ha una circonferenza con un raggio di 0.06 unit`a Blender. Questa tecnica `e interessante e con essa `e abbastanza facile ottenere piccoli gradi di Profondit` a di Campo. Per le grandi variazioni del fuoco `e limitato dal fatto che non `e possibile avere pi` u di 16 sovracampionamenti.
55.5
Bordi da Vignetta
I nuovi ombreggiatori [shaders] dei materiali di Blender, come per la versione 2.28, includono Ombreggiatori per la diffusione, per la specularit`a e uno simpatico per le vignette. Usando questi ombreggiatori si pu` o effettuare il proprio rendering per ottenere qualcosa di simile ad un giornale a fumetti o ad un manga, modificando le sfumature dei colori, come si pu` o apprezzare in Una scena con materiali da Vignetta. .
55.5. BORDI DA VIGNETTA
377
Figura 55.21: Il rendering finale del Motion Blur.
L’effetto non `e perfetto dato che le vere vignette ed i manga hanno anche un contorno con inchiostro di china. Blender pu`o aggiungere questa funzionalit`a come operazione di post-elaborazione.
Per accedere a questa opzione si seleziona il pulsante Edge nel Pannello Output della Pulsantiera di Rendering ( F10 ) ( I pulsanti dei Bordi da Vignetta. ). Questo fa in modo che Blender, nel rendering, cerchi i bordi e vi aggiunga un ’contorno’.
378
CAPITOLO 55. OPZIONI PER IL RENDERING
Figura 55.22: Una scena con materiali da Vignetta. Prima di ripetere il rendering `e necessario regolare dei parametri. Edge Settings apre una finestra per tali impostazioni ( Impostazioni dei Bordi da Vignetta. ).
Figura 55.23: I pulsanti dei Bordi da Vignetta. ( Eint =255).
Figura 55.24: Impostazioni dei Bordi da Vignetta.
In questa finestra `e possibile impostare il colore del bordo, che normalmente `e nero, e la sua intensit`a, Eint che `e un intero nell’intervallo da 0 (il pi` u tenue) a 255 (il pi` u marcato). Gli altri pulsanti sono utili se viene utilizzato il Rendering Unificato (si veda la prossima sezione). La scena del nuovo rendering con i Bordi da Vignetta. mostra la stessa immagine della Una scena con materiali da Vignetta. ma con i Bordi da Vignetta, di colore nero ed alla massima intensit`a
55.5. BORDI DA VIGNETTA
Figura 55.25: La scena del nuovo rendering con i Bordi da Vignetta.
379
380
CAPITOLO 55. OPZIONI PER IL RENDERING
Capitolo 56
Il Rendering Unificato Una caratteristica meno conosciuta di Blender `e il pulsante per il Rendering Unificato nell’angolo in basso a destra della pulsantiera del Rendering Pannello Format ( Il pulsante del Rendering Unificato. ). Le impostazion di default del rendering di Blender sono particolarmente ottimizzate per la velocit`a. Questo `e stato ottenuto suddividendo il processo in diversi passaggi. Per primi vengono gestiti i materiali ’normali’. Quindi vengono presi in considerazione i Materiali con una trasparenza (Alfa). Infine si aggiungono gli Aloni [Halo] ed i riflessi ottici.
Figura 56.1: Il pulsante del Rendering Unificato.
Questo `e veloce, ma pu`o condurre a dei risultati meno ottimali, specialmente con gli Aloni. D’altra parte, il Rendering Unificato funziona con un unico passaggio. Questo `e pi` u lento, ma fornisce dei risultati migliori, specie con gli Aloni luminescenti.
Inoltre, dato che i materiali trasparenti non partecipano al rendering contemporaneamente a quelli convenzionali, vi si possono applicare anche i Bordi da Vignetta, premendo il pulsante All nella finestra dell’impostazione dei Bordi. Se viene selezionato il Rendering Unificato appare un ulteriore gruppo di pulsanti nel Pannello Output ( I pulsanti addizionali del Rendering Unificato. ). Lo slider Gamma `e relativo alla procedura OSA. Il sovracampionamento di pixel che vengono miscelati per generare il pixel del rendering finale. Il rendering convenzionale ha un valore di Gamma=1, ma in quello Unificato si pu`o cambiare tale valore. Il pulsante Post process fa apparire una finestra di dialogo ( Sottomen` u del post-process nel Rendering Unificato ). Da questa si possono controllare tre tipi di post processing: lo slider Add definisce una quantit` a di contrasto da aggiungere al valore del colore RGB per ciascun pixel. Valori positivi rendono l’immagine uniformemente chiara, quelli ne381
382
CAPITOLO 56. IL RENDERING UNIFICATO
gativi uniformemente scura.
Figura 56.2: I pulsanti addizionali del Rendering Unificato. Lo slider Mul definisce un valore per cui saranno moltiplicati tutti i valori RGB dei pixel. I valori maggiori di 1 renderanno l’immagine pi` u chiara, quelli pi` u piccoli di 1 la scuriranno. Lo slider Gamma opera la correzione di gamma standard di qualsiasi programma di disegno. Figura 56.3: Sottomen` u del post-process nel Rendering Unificato.
Capitolo 57
Yafray editor’s note: not sure what should go in here, since there’s enough information for a complete section...
383
384
CAPITOLO 57. YAFRAY
Capitolo 58
Preparare il proprio lavoro per il video Una volta acquisita una certa dimestichezza coi trucchi dell’animazione si comincer`a sicuramente a produrre delle magnifiche animazioni, codificate coi propri codecs preferiti e possibilmente li si condivider` a su Internet con tutto il resto della comunit`a. Ma, alla fine, verr` a il desiderio di costruire un’animazione per la Televisione, o probabilmente registrando dei propri DVD. Per risparmiarsi delle delusioni, qui ci sono delle dritte specifiche per la preparazione dei Video. La prima e la principale da ricordare `e quella della doppia linea tratteggiata bianca nella vista Telecamera! Se si effettua il rendering per il PC allora verr`a mostrata tutta l’immagine prodotta giacente all’interno del rettangolo tratteggiato esterno . Per la Televisione qualche linea e qualche parte delle linee si potrebbero perdere a causa del meccanismo di irraggiamento del tubo a raggi catodici del TV. Si `e garantiti che quello che si vede all’interno del rettangolo tratteggiato interno sar`a visibile sullo schermo. Tutto quello che capita tra i due rettangoli pu` o essere o meno visibile, a seconda del tipo di TV su cui si guarda il video. Inoltre la dimensione del rendering `e strettamente imposta dallo standard TV. Blender ha tre pre-selezioni per comodit` a:
• PAL 720x576 pixels con un rapporto di aspetto di 54:51. • NTSC 720x480 pixels con un rapporto di aspetto di 10:11. • PAL 16:9 720x576 con un rapporto di aspetto di 64:45, per gli schermi TV larghi a 16:9. Da notare l’argomento Rapporto di Aspetto [Aspect Ratio]. Gli schermi del TV non hanno i pixels quadrati come quelli dei monitor dei Computer, i loro pixels sono alquanto rettangolari, quindi `e necessario generare immagini pre-distorte che appariranno male 385
386
CAPITOLO 58. PREPARARE IL PROPRIO LAVORO PER IL VIDEO
su un computer ma ben mostrate su un apparecchio TV.
58.1
Saturazione del Colore
La maggior parte dei video registratori e dei segnali video non sono basati sul modello RGB ma in Europa sul modello YUV (o YCrCb) ed in USA sul YIQ, quest’ultimo `e molto simile al primo. Quindi `e necessaria anche un po’ di conoscenza di questi. Il modello YUV manda le informazioni di ’Luminanza’, ed intensit`a (Y) e due segnali di ’Crominanza’, rosso e blu. In realt`a su un apparecchio Bianco e Nero appare solo la luminanza, mentre un apparecchio a colori ricostruisce il colore dalla Crominanza. Vale a dire: Y = 0.299R + 0.587G + 0.114B U = Cr = R-Y V = Cb = B-Y Mentre un’immagine RGB a 24 bit ha 8 bit per ciascun canale, per mantenere bassa la banda, e considerando che l’occhio umano `e pi` u sensibile alla luminanza che alla crominanza, Il segnale della luminanza viene spedito con pi` u bit degli altri due segnali di crominanza. A questo corrisponde una dinamica inferiore dei colori, nel Video, rispetto a quella usata nei Monitor. Si deve tenere quindi in mente che non tutti i colori possono apparire correttamente. La Regola d’oro consiste nel tenere i colori pi` u ’grigiati’ e ’non saturati’ possibile, questo pu` o essere grossolanamente convertito tenendo la dinamica dei colori entro 0.8. In altre parole la differenza tra il valore RGB pi` u alto e quello RGB pi` u basso non deve superare 0.8 (nell’intervallo [0-1]) o 200 (nell’intervallo [0-255]). Questo non `e rigoroso, talvolta `e accettabile pi` u di 0.8, ma un materiale con RGB=(1.0,0,0) sar` a bruttissimo.
58.2
Il rendering in quadri
Gli standard TV prevedono che ci siano 25 fotogrammi al secondo (PAL) o 30 fotogrammi al secondo (NTSC). Dato che i fosfori dello schermo non mantengono molto a lungo la luminosit` a, si potrebbe provocare un notevole tremolio. Per ridurre ci`o, i TV non rappresentano i fotogrammi come lo fa un Computer ma rappresentando la met`a dei fotogrammi, o quadri [fields] (o fotogrammi) con una doppia velocit`a di aggiornamento, quindi 50 semi-quadri al secondo sul PAL o 60 semi-quadri al secondo su NTSC. In origine questi valori sono stati adattati alle linee elettriche in Europa (50Hz) e negli
58.2. IL RENDERING IN QUADRI
387
Stati Uniti (60Hz). In particolare i quadri sono interlacciati nel senso che un quadro presenta tutte le linee pari del fotogramma completo ed il quadro successivo tutte quelle dispari. Dato che c’`e una differenza di tempo non da poco tra ciascun quadro, (1/50 o 1/60 di secondo), un puro rendering di un fotogramma nel modo solito e la successiva divisione in due met` a del fotogramma non funziona. Si presenterebbe un notevole tremolio dei bordi e degli oggetti in movimento. Per gestire in modo ottimale questa situazione, Blender consente di effettuare il rendering per ciascun Campo [Field]. Quando `e premuto il pulsante Fields nel Pannello Render ( L’impostazione del Rendering del Campo [Field]. ), Blender prepara ciascun quadro (fotogramma) in due passi. Col primo effettua il rendering delle linee pari, quindi avanza nel tempo della durata di mezzo passo ed effettua il rendering delle restanti linee dispari. Figura 58.1: L’impostazione del Rendering del Campo [Field].
Questo produce degli strani risultati sullo schermo di un PC ( Il risultato del Rendering del Campo. ) ma apparir`a correttamente su un dispositivo TV. Uno dei due pulsanti successivi al pulsante Fields obbliga ad effettuare prima il rendering dei campi Dispari ( Odd ) e l’altro disabilita il passaggio della durata di mezzo frame tra i quadri ( x ).
Impostazione della sequenza corretta dei campi: Le impostazioni di d
Figura 58.2: Il risultato del Rendering del Campo.
388
CAPITOLO 58. PREPARARE IL PROPRIO LAVORO PER IL VIDEO
Parte XI
RADIOSITY
389
391 La maggior parte dei modelli di rendering, incluso il ray-tracing, suppongono un modello spaziale semplificato, altamente ottimizzato per la luce che entra nel nostro ’occhio’ al fine di disegnare l’immagine. A questo modello si possono aggiungere la riflessione e le ombre per ottenere un risultato pi` u realistico. Eppure, c’`e un aspetto importante che manca! Quando una superficie ha una componente di luce riflettente, essa non solo appare nella nostra immagine, ma illumina anche le superfici vicine. E viceversa. Infatti, la luce rimbalza nell’ambiente finch´e non sia assorbita tutta l’energia luminosa (o fuoriesce!). La luce re-irradiata trasporta le informazioni sull’oggetto che l’ha rilanciata, in particolare il colore. Dunque, non solo le ombre sono ’meno nere’ a causa della luce reirradiata, ma anch’essa tende a mostrare il colore dell’oggetto vicino ben illuminato. Un fenomeno spesso citato come ’fuoriuscita di colore’ ( Esempio di Radiosit` a. ). In ambienti chiusi, l’energia della luce viene generata da ’emittenti’ ed `e rappresentata dalla riflessione o assorbimento delle superfici dell’ambiente. La percentuale di energia che lascia una superficie `e chiamata ’radiosit`a’ della superficie. Diversamente dai modelli convenzionali di rendering, i metodi di Radiosit`a calcolano prima di tutto le interazioni della luce in un ambiente in modo indipendente dalla vista, dopodich´e, si possono effettuare, in tempo reale, i rendering di diverse viste. Figura 58.3: Esempio di Radiosit`a.
In Blender, sin dalla versione 2.28, la Radiosit`a `e sia uno strumento sia di rendering che di modellazione. Questo vuol dire che si pu`o abilitare la Radiosit`a all’interno del rendering oppure usare la Radiosit` a per dipingere i colori dei vertici o la luminosit`a dei vertici delle proprie mesh, per un uso successivo.
392
Capitolo 59
Radiosity Rendering 59.1
Il metodo per la Radiosit` a di Blender
Prima di tutto un po’ di teoria! Se si vuole si pu`o saltare alla sezione successiva, e tornare indietro se ci saranno domande. Alla fine degli anni ottanta ed all’inizio dei novanta la Radiosit` a ha costituito un argomento caldo della computer grafica 3D. Sono stati sviluppati molti metodi diversi. La soluzione che ha avuto pi` u successo `e basata sul metodo del raffinamento progressivo con uno schema di suddivisione adattativa. E questo `e quello che usa Blender. Per essere in grado di sfruttare al massimo il metodo della Radiosit` a di Blender, `e importante capire i seguenti principi:
• Metodo degli elementi finiti Il metodo della Radiosit` a `e un esempio tipico di metodo ad elementi finiti in quanto ogni faccia viene considerata un ’elemento finito’ e le sue emissioni di luce vengono considerate nel loro insieme.
• Patches (Toppe) ed Elementi • Raffinamento Progressivo • Il metodo dell’emicubo • Suddivisione adattativa • Rappresentazione e Post Processing • La Radiosit` a per la Modellazione Come ogni cosa in Blender, le impostazioni della Radiosit`a vengono memorizzate in un blocco di dati [datablock]. Esso `e legato ad una Scena, e ciascuna Scena in Blender pu`o avere un diverso ’blocco’ di Radiosit`a. Tale funzionalit`a si usa per dividere ambienti complessi in Scene con solutori di Radiosit`a indipendenti.
393
394
59.2
CAPITOLO 59. RADIOSITY RENDERING
Il Rendering con la Radiosit` a
Si supponga di avere una scena pronta, e di volerne effettuare il Rendering della Radiosit` a. La prima cosa da comprendere quando ci si occupa della Radiosit`a `e che non `e necessaria alcuna lampada , ma sono richieste solo le mesh con un materiale con la propriet` a Emit maggiore di zero, dato che saranno le sorgenti di luce. Si pu`o costruire la scena di prova mostrata in BSG.RAD.F.S68.101 , essa `e abbastanza semplice. Basta fare un grande cubo per la stanza, dare dei materiali diversi alle pareti, aggiungere un cubo con un parallelepipedo al suo interno, ed aggiungere un piano con un valore di Emit diverso da zero vicino al tetto, per simulare l’area luminosa ( Allestimento per il test della Radiosit` a. ). Si assegnano i Materiali come al solito all’immissione dei modelli. Il valore RGB del Materiale definisce il colore della Patch. Il valore ’Emit’ di un Materiale indica se una Patch debba essere caricata di energia all’avvio della simulazione della Radiosit` a. Il valore ’Emit’ viene moltiplicato con l’area di una Patch per calcolarne l’ammontare iniziale di energia non emessa.
Facce emittenti: Si Controlli il numero di patch ’emittenti’ sulla console di Blender! Se `e zero non succeder` a nu
Quando si assegnano i materiali ci si assicuri che tutti abbiano attivato il selettore Radio per abilitare il Pannello Shader dei pulsanti del sub-contesto Material ( Il materiale abilitato per la Radiosit` a. ).
Si noti che l’emissione di luce `e gestita dalla direzione delle normali di una mesh, quindi il piano che emette luce dovrebbe avere la normale che punta in gi` u ed il cubo esterno (la stanza) dovrebbe avere le Figura 59.1: Allestimento per il test della normali che puntano all’interno, (sono da Radiosit` a. ribaltare!). Ci si sposta nel sub-contesto della Radiosit`a nel contesto Shading. I Pannelli, mostrati in I pulsanti della Radiosit` a per il rendering della radiosit` a. , sono due: Radio Rendering che gestisce la Radiosit`e quando viene usata come uno strumento per il rendering (caso attuale) e Radio Tool , che gestisce la Radiosit`e come strumento di modellazione (sezione seguente).
` 59.2. IL RENDERING CON LA RADIOSITA
395
Figura 59.2: Il materiale abilitato per la Radiosit` a. I pulsanti definiscono:
• Hemires: - La risoluzione dell’emicubo; le immagini codificate in colore usate per cercare gli elementi che Figura 59.3: Radiosity buttons for radiosity rendering. siano visibili da un ’colpo di Patch’, e che quindi ricevano energia. Gli emicubi non vengono immagazzinati, ma ricalcolati ogni volta per ogni Patch che spara energia. Il valore ’Hemires’ determina la qualit`a della Radiosit` a ed aumenta significativamente il tempo di soluzione. • Max Iterations: - Il numero massimo di iterazioni della Radiosit`a. Se posto a zero la Radiosit`a andr`a avanti fino a verificare il criterio di convergenza. Si `e energicamente avvisati di impostare un numero diverso da zero, di solito maggiore di 100. • Mult: , Gamma: - Lo spazio dei
396
CAPITOLO 59. RADIOSITY RENDERING colori [colourspace] della soluzione di Radiosit`a `e pi` u dettagliato di quello espresso con semplici valori RGB a 24 bit. Quando gli Elementi vengono convertiti in facce, i loro valori di energia vengono convertiti in colore RGB usando i valori Mult e Gamma . Col valore di Mult si pu`o moltiplicare il valore dell’energia, con Gamma si pu`o cambiare il contrasto dei valori di energia. • Convergence: Quando la quantit`a di energia non irradiata in un ambiente `e pi` u bassa di tale valore, la soluzione della Radiosit`a si ferma. L’energia non irradiata in un ambiente viene moltiplicata per l’area delle Patch. Durante ciascuna iterazione, parte dell’energia viene assorbita, o scompare quando l’ambiente non `e un volume chiuso. Nel sistema di coordinate standard di Blender un tipico emettitore (come nei files di esem-
` 59.2. IL RENDERING CON LA RADIOSITA
397 pio) ha un’area relativamente piccola. Il valore di convergenza viene diviso per un fattore 1000 prima di verificare per questa ragione.
Si imposta Max Iterations: a 100 e ci si sposta nel Contesto della Scene e nel Subcontesto Render ( F10 ). Si cerca il Pulsante Interruttore Radio ( Abilitazione della Radiosit` a nella Pulsantiera del Rendering. ) nel pannello Render e lo si imposta ad ’on’ per abilitare la Radiosit` a, quindi il pulsante Render! ( F12 ).
Figura 59.4: Abilitazione della Radiosit` a nella Pulsantiera del Rendering.
Il rendering impiegher`a pi` u tempo del solito, nella console si noter`a avanzare un contatore aumentare. Il risultato sar`a molto mediocre (Il rendering della Radiosit`a per mesh grossolane (a sinistra).) in quanto il rendering della radiosit`a automatica non esegue un affinamento adattativo! Si selezionano tutte le mesh, una dopo l’altra, e in Modo Edit si suddividono almeno tre volte. La stanza, che `e molto pi` u grande delle altre mesh, la si pu`o anche suddividere quattro volte. Si imposta Max Iterations un po’ pi` u in alto, 300 o pi` u. Si provi ancora il Rendering ( F12 ). Questa volta il rendering durer`a pi` u a lungo ma i risultati saranno molto migliori, con ombre morbide e perdita di colore ( Il rendering della Radiosit` a per mesh pi` u raffinate (a destra). ).
Nota: Nel Rendering della Radiosit` a
Figura 59.5: Il rendering della Radiosit`a per mesh grossolane (a sinistra) e mesh pi` u raffinate (a destra).
398
CAPITOLO 59. RADIOSITY RENDERING
Capitolo 60
La Radiosit` a come strumento di Modellazione La Radiosit` a pu` o essere usata anche come uno strumento di Modellazione per definire i colori dei Vertici e le luci. Questo pu`o tornare molto utile se si vogliono fare altri ritocchi ai propri modelli, o se si vogliono utilizzare nel Game Engine. Inoltre la Modellazione con la della Radiosit` a consente un affinamento Adattativo, mentre il Rendering della Radiosit` a non lo fa! Ci sono un paio di punti importanti per una comprensione pratica della Modellazione della Radiosit` a: In Blender solo gli oggetti mesh sono consentiti come input per la Modellazione della Radiosit` a. Questo perch´e il processo genera colori di vertici... e quindi devono esserci ` anche importante capire che ogni faccia in una Mesh diventa una Patch, e di vertici. E conseguenza un potenziale riflettore o emittente di energia. Solitamente, grosse Patch ` quindi importante avere come input inviano e ricevono pi` u energia di quelle piccole. E un modello ben bilanciato con Patch abbastanza grandi da fare la differenza! Quando si aggiungono facce estremamente piccole, queste (il pi` u delle volte) non riceveranno abbastanza energia da essere prese in considerazione dal metodo della rifinitura progressiva, che sceglie solo le Patch con una grande quantit`a di energia non emessa. Oggetti Non-mesh: Only Meshes (Solo Mesh) significa che si devono convertire le Curve e le Superfici in Mesh
60.1
Fase 1: Selezionare le Mesh
Tutte le Mesh selezionate e visibili della scena corrente vengono convertite in Patch appena il tasto Collect Meshes del pannello Radio Tool viene premuto ( Il pulsante Gourad ). Come conseguenza appare un nuovo Pannello, Calculation . Blender `e entrato in modalit` a Modellazione Radiosit`a, e le altre funzioni di editing sono bloccate finch´e non viene premuto il tasto Free Data appena creato. Il testo Phase sopra il pulsante ora porta la scritta Init e mostra il numero di Patch e di Elementi. Dopo che le Mesh sono state raccolte, vengono mostrate in modo pseudo-illuminato, palesemente 399
` COME STRUMENTO DI MODELLAZIONE 400 CAPITOLO 60. LA RADIOSITA diverso dalla visualizzazione normale. Il pannello Radio Tool ( Il pulsante Gourad ) ha tre Pulsanti Radio: Wire, Solid, Gour . Queste sono tre opzioni indipendenti di modi di disegno [drawmode] di quelli indicati in una finestra 3D. La visualizzazione Gouraud viene eseguita solo dopo l’avvio del processo di Radiosit`a. Il pulsante Gour si preme per avere dei risultati pi` u levigati per le superfici curve.
60.2
Fase 2: Limiti della suddivisione Blender offre alcune regolazioni per definire la dimensione massima e minima delle Patch e degli Elementi nei Pannelli Radio Tools e Calculation ( I Pulsanti della Radiosit` a per la Suddivisione. ).
Figura 60.1: Il pulsante Gourad
• Limit Subdivide Le Patch vengono suddivise secondo i valori PaMax e PaMin. Questa suddivisione viene sempre effettuata automaticamente quando si avvia un’azione GO.
• PaMax, PaMin, ElMax, ElMin Le dimensioni massima e minima di una Patch di un Elemento. Questi limiti vengono usati durante tutte le fasi della Radiosit`a. L’unit`a `e espressa in 0,0001 delle dimensioni del rettangolo circoscritto all’intero ambiente. Quindi, con le impostazioni di default 500 e 200 della dimensione massima e minima della Patch a 1/20 (0.05) dell’intero modello e 1/50 (0.02) dell’intero modello.
• ShowLim, Z Questa opzione visualizza i limiti della Patch e dell’Elemento. Premendo l’opzione Z , i limiti vengono disegnati ruotati in modo diverso. Le linee bianche mostrano i limiti della Patch, le linee blu mostrano i limiti degli Elementi.
60.3
Fase 3: Suddivisione Adattativa
Le ultime regolazioni prima di iniziare l’analisi ( I Pulsanti della Radiosit` a ).
60.3. FASE 3: SUDDIVISIONE ADATTATIVA
401
Figura 60.2: I Pulsanti della Radiosit` a per la Suddivisione. • MaxEl Il numero Massimo di Elementi consentito. Dato che gli Elementi vengono suddivisi automaticamente in Blender, la quantit`a di memoria usata e la durata della soluzione possono essere controllate con questo pulsante. Come regola a spanna 20,000 elementi richiedono fino a 10 Mb di memoria. • Max Subdiv Shoot Il Massimo numero di Patch emittenti che vengono valutate per la suddivisione adattativa (descritta sotto). Se zero, vengono valutate tutte le Patch col valore di ’Emit’. • Subdiv Shoot Patch Spruzzando energia verso l’ambiente, si possono rilevare gli errori che indicano la necessit`a di una ulteriore suddivisione delle Patch. La suddivisione viene eseguita una sola volta, ogni volta che si chiama tale funzione. Come risultato si hanno delle Patch pi` u piccole e pi` u tempo necessario alla soluzione, ma un pi` u alto realismo della soluzione. Questa azione pu`o essere eseguita anche automaticamente quando viene avviata l’azione con GO . • Subdiv Shoot Element Spruzzando energia verso l’ambiente, e rilevando le variazioni elevate di energia (frequenze) all’interno di una Patch, gli Elementi di tale Patch vengono selezionati per essere suddivisi di un ulteriore livello. La suddivisione viene eseguita solo una volta, ogni volta che si chiama tale funzione. Come risultato si hanno Elementi pi` u piccoli e pi` u tempo necessario alla soluzione e probabilmente una maggiore scalettata [aliasing], ma un pi` u alto livello di dettagli. Questa opzione pu` o essere eseguita anche automaticamente quando viene avviata l’azione di GO . • SubSh P Il numero di volte che viene testato l’ambiente per rilevare le Patch che necessitano di una suddivisione. • SubSh E Il numero di volte che viene testato l’ambiente per rilevare gli Elementi che necessitano di una suddivisione. Nota: Hemires , Convergence e Max iterations nel pannello Radio Render restano attivi ed hanno lo stesso
• GO Con questo pulsante si avvia la simulazione della Radiosit`a. Le fasi sono: – Limit Subdivide. (Suddivisione Limite). Quando le Patch sono troppo grandi, esse vengono suddivise.
` COME STRUMENTO DI MODELLAZIONE 402 CAPITOLO 60. LA RADIOSITA – Subdiv Shoot Patch. (Suddivisione della Patch irradiante). Il valore di SubSh P definisce il numero di chiamate alla funzione Subdiv Shoot Patch . Come risultato, le Patch vengono suddivise. – Subdiv Shoot Elem. (Suddivisione dell’Elemento irradiante) Il valore di SubSh E definisce il numero di chiamate alla funzione Subdiv Shoot Element . Come risultato, gli Elementi vengono suddivisi. – Subdivide Elements. (Suddivisione degli Elementi). Quando gli Elementi ` qui restano pi` u grandi della dimensione minima, essi vengono suddivisi. E che viene di solito allocata la massima quantit`a di memoria. – Solve. (Soluzione). Questo `e l’attuale metodo del ’raffinamento progressivo’. Il puntatore del mouse mostra il passo dell’iterazione, l’attuale totale delle Patch che spruzzano la loro energia nell’ambiente. Questo processo continua finch`e l’energia non ancora emessa nell’ambiente `e inferiore al valore di Convergence o quando `e stato raggiunto il massimo numero di iterazioni. – Convert to faces . (Conversione in facce). Gli elementi vengono convertiti in triangoli o quadrangoli con lati ’ancorati’, per assicurare una visualizzazione di Gouraud piacevole senza discontinuit`a. Questo processo pu` o essere terminato con ESC durante qualsiasi fase.
60.4
Fase 4: Modifica della soluzione Una volta calcolata la soluzione di Radiosit`a restano poche altre azioni da compiere ( La post-elaborazione della Radiosit`e. ). • Element Filter Questa opzione filtra gli Elementi per rimuovere scalettature [aliasing] artificiali, per ammorbidire i bordi delle ombre, o per forzare i colori equalizzati per l’opzione RemoveDoubles .
• RemoveDoubles Quando due Elementi limitrofi appaiono con dei colori che differiscono meno del limite indicato nel Pulsante Numerico Lim , gli Elementi vengono uniti. Il valore di Lim viene usato dal precedente ed `e espresso in una risoluzione standard ad 8 bits; nell’intervallo di colore 0 - 255.
Figura 60.3: Radiosit` a
I Pulsanti della
• FaceFilter Gli Elementi vengono convertiti in facce per essere visualizzati. FaceFilter impone un ulteriore appianamento nel risultato mostrato, senza cambiare i valori degli stessi Elementi. • Mult: , Gamma: questi Pulsanti Numerici hanno lo stesso significato che nel Rendering della Radiosit`a.
60.4. FASE 4: MODIFICA DELLA SOLUZIONE
403
• Add New Meshes Le facce della soluzione di Radiosit`a attualmente visualizzate vengono convertite in Oggetti Mesh con colori al vertice. Viene aggiunto un nuovo Materiale per consentire un rendering immediato. Le Mesh iniziali restano invariate . • Replace Meshes Come il precedente, ma le Mesh iniziali vengono rimosse. • Free Radio Data Tutte le Patch, gli Elementi e le Facce vengono liberate dalla Memoria. Si deve sempre eseguire questa azione dopo l’uso della Radiosit`a per essere in grado di tornare al normale editing.
Figura 60.4: La post-elaborazione della Radiosit`e
` COME STRUMENTO DI MODELLAZIONE 404 CAPITOLO 60. LA RADIOSITA
Parte XII
TECNICHE DI MODELLAZIONE SPECIALI
405
Capitolo 61
Particelle 61.1
Particelle Semplici
Il sistema di particelle di Blender `e veloce, flessibile e potente. Ogni oggetto Mesh pu`o servire per emettere particelle. Come particelle si possono usare sia gli Aloni luminescenti [Halo] e sia altri oggetti con l’opzione della Duplicazione ai Vertici [DupliVert]. Qualunque tipo di oggetto di Blender pu`o essere utilizzato per la Duplicazione ai Vertici, per esempio oggetti-Mesh, Curve, Metaballs, ed anche Lampade. Le particelle possono essere influenzate da una forza globale per simulare effetti fisici come la gravit`a o il vento. Con questa funzionalit` a si pu` o generare fumo, fuoco, esplosioni, Fuochi d’artificio e persino stormi di uccelli. Con le particelle statiche si pu`o generare pelle, erba ed anche piante.
61.2
Un primo Sistema di Particelle
Si azzeri Blender alla scena di default, o si crei una scena con un solo piano aggiunto dalla vista dall’alto. Questo piano sar`a l’emittente di particelle. Si ruoti la vista in modo da avere una buona visione del piano e dello spazio sopra di esso ( L’emittente ).
Si vada nel Tab Effects nel Contesto Object ( F7 o ) e click sul pulsante NEW Effect nella parte centrale del Pannello. Si cambi il Pulsante Men` u da Build a Particles . Appariranno i Pulsanti delle Particelle ( I Pulsanti delle Particelle ).
407
408
CAPITOLO 61. PARTICELLE
Figura 61.1: L’emittente.
Figura 61.2: I Pulsanti delle Particelle.
Si imposti il Pulsante Numerico Norm: a 0.100 con un click sulla parte destra del pulsante o usando SHIFT-LMB per inserire il valore da tastiera. Si avvii l’animazione premendo ALT-A col mouse sulla Finestra 3D. Si vedr`a un flusso di particelle salire verticalmente dai quattro vertici. Congratulazioni - avete appena generato il primo sistema di particelle in pochi semplici passi! Per rendere il sistema un po’ pi` u interessante, `e necessaria una comprensione maggiore del sistema e dei suoi pulsanti ( Impostazioni delle Particelle ):
• Il parametro Tot: controlla il conteggio totale delle particelle. Con la velocit`a delle moderne CPU si pu` o aumentare il numero delle particelle senza accorgersi del rallentamento. • Tutte le particelle, il cui numero totale `e indicato nel pulsante Tot: , vengono create uniformemente durante un intervallo di tempo. Quindi viene definito tale intervallo di tempo dai Pulsanti Numerici Sta: e End: , che controllano l’intervallo (in frames) in cui vengono generate le particelle. • Le particelle hanno un ciclo di vita, esse durano un dato numero di di fotogrammi [frames], da quello da cui sono prodotte in poi, quindi scompaiono. Si pu`o cambiare la durata della vita delle particelle col pulsante numerico Life: . • Il Pulsante Numerico Norm: utilizzato prima, crea delle particelle inizialmente con una velocit` a costante di un certo valore (0.1) diretto lungo le normali ai vertici. Per rendere la cosa un po’ pi` u casuale si pu`o impostare anche il Pulsante Numerico Rand: a 0.1. Ci` o rende l’inizio delle particelle con una variazione casuale della velocit` a.
61.3. IL RENDERING DI UN SISTEMA DI PARTICELLE
409
• Il gruppo di pulsanti numerici Force: si usa per simulare una forza costante, come vento o gravit` a. Per esempio, un valore di Force: Z: di -0.1 far`a cadere le particelle al suolo. Questo dovrebbe essere abbastanza per partire, ma non ci si deve intimorire nel toccare gli altri parametri mentre si sperimenta. Li vedremo in dettaglio nelle seguenti sezioni.
Figura 61.3: Impostazioni delle Particelle.
61.3 Il Rendering di un sistema di particelle
Pu`o darsi che si abbia provato ad effettuare il rendering di un disegno dall’esempio sopra. Se la telecamera `e stata allineata correttamente, sar`a apparsa un’immagine nera con delle goccioline grigie puntiformi su di essa. Questo `e il materiale standard Alone [Halo] che Blender assegna ai sistemi di particelle appena generati. Si posizioni la telecamera in modo da avere una buona visione del sistema di particelle. Volendo aggiungere un semplice ambiente, si ricordi di aggiungere delle luci. Gli Aloni possono partecipare al rendering senza luci, salvo indicazioni contrarie, ma gli altri oggetti necessitano di luci per essere visibili. Si vada nella Pulsantiera dei Materiali ( F5 ) e si aggiunga un nuovo materiale per l’emittente se non se ne ha gi`a uno. Click sul pulsante Halo dalla gruppo mediano (Le impostazioni dell’Alone (Halo)).
Figura 61.4: Le impostazioni dell’Alone (Halo) ma in quella per gli Aloni. Si scelga Line , e si regoli Lines: : ad un valore a scelta (si pu` o vedere un effetto direttamente nell’Anteprima-Materiale). Si abbassi HaloSize: a 0.30, e si scelga un colore per l’Alone e per le linee ( Le impostazioni dell’Alone (Halo) ). Ora si pu` o effettuare il rendering di un disegno con F12 , o di una completa animazione e vedere migliaia di stelle volare intorno ( Stelle cadenti ).
La Pulsantiera del Materiale si trasfor-
410
61.4
CAPITOLO 61. PARTICELLE
Oggetti come particelle
Usare un oggetto reale come particelle `e molto semplice, `e esattamente simile alla tecnica descritta nel la Sezione Vertici Duplicati (DupliVerts) . Si parte creando un cubo, o qualunque altro oggetto a piacere, nella scena. Vale molto valutare la potenza del proFigura 61.5: Stelle cadenti prio computer nel decidere quanti oggetti si hanno indicati nel Tot: della scena. Questo vuol dire avere tanti vertici quanto il numero di vertici dell’oggetto scelto moltiplicato per Tot: ! Si ridimensioni l’oggetto appena creato in modo da adeguarlo alla dimensione della scena. Ora si selezioni l’oggetto, quindi con SHIFT-RMB sull’emittente e lo si renda genitore del cubo usando CTRL-P . Si selezioni solo l’emittente e si segni l’opzione DupliVerts nel Pannello Anim Settings del Contesto Oggetto ( F7 ). I cubi duplicati ai vertici appariranno subito nella Finestra 3D. Prima di premere ALT-A si potrebbe voler abbassare il numero di particelle ( Impostazioni delle Particelle Duplicate ai Vertici. ). Nell’animazione si noter`a che tutti i cubi condividono lo stesso orientamento. Questo pu`o essere interessante, ma pu`o essere interessante anche avere dei cubi orientati casualmente. Lo si pu`o fare segnando l’opzione Vect nei parametri della particella, facendo in modo che gli oggetti duplicati ai vertici seguano la rotazione delle particelle, col risultato di un moto pi` u naturale ( Impostazioni delle Particelle Duplicate ai Vertici ). Un fotogramma dell’animazione appare in ( Il rendering delle particelle Duplicate ai Vertici ).
L’Oggetto Originale: Si abbia cura di spostare l’oggetto originale fuori dell’inquadratura, in quanto, diversamen
61.5. FARE IL FUOCO CON LE PARTICELLE
411
Figura 61.6: Impostazioni delle Particelle Duplicate ai Vertici.
61.5
Fare il fuoco con le particelle
Il sistema di particelle di Blender `e molto utile per creare un fuoco realistico ed il fumo. Questo pu`o essere una candela, un bivacco o una casa in fiam` utime. E le considerare come il fuoco sia regolato dalla fisica. Le fiamme di un fuoco sono gas caldi. Esse si sollevano perFigura 61.7: Il rendering delle particelle Duplicate ai Vertici. ch´e la loro densit`a `e pi` u bassa, in confronto all’aria circostante pi` u fredda. Le fiamme sono calde e luminose al centro, mentre sbiadiscono e diventano pi` u scure verso la periferia. Si prepari una semplice disposizione per il fuoco, con qualche pezzo di legno, e qualche sasso ( Impostazione del bivacco. ).
61.5.1
Il sistema di particelle
412
CAPITOLO 61. PARTICELLE
Si aggiunga un piano al centro del cerchio di sassi. Questo piano costituir`a l’emittente delle particelle. Si suddivida il piano una volta. Ora si possono spostare i vertici in modo da posizionarli sul legname da dove si devono originarsi le fiamme (particelle). Ora si va nel Contesto Oggetto F7 e si aggiunge, al piano, un nuovo effetto di particelle. I numeri dati qui ( Le impostazioni del fuoco con le particelle. ) dovrebbero Figura 61.8: Impostazione del bivacco. creare un fuoco realistico ma potrebbero essere necessarie delle modifiche, a seconda della dimensione reale dell’emittente. Qualche nota: • Per avere un fuoco che bruci dall’inizio dell’animazione si renda Sta: negativo. Per esempio, si provi 50. Il valore di End: dovrebbe riflettere la lunghezza desiderata per l’animazione.
Figura 61.9: Le impostazioni del fuoco con le particelle.
• Il valore Life: [vita] delle particelle `e 30. Per`o pu`o restare a 50 per adesso. Useremo in seguito questo parametro per regolare l’altezza delle fiamme.
• Si renda il parametro Norm: un po’ negativo (-0.008) con questo si avr`a un maggior volume del fuoco alla base. • Si usi un valore di Force: Z: [forza] di circa 0.200. Se il fuoco appare troppo lento, questo `e il parametro da regolare. • Si porti Damp: a 0.100 per rallentare le fiamme dopo un po’. • Si attivi il Pulsante Bspline . Con questo verr`a usato un metodo di interpolazione che consente un movimento pi` u fluido.
61.5. FARE IL FUOCO CON LE PARTICELLE
413
• Per aggiungere un po’ di casualit`a alle nostre particelle, si regoli il parametro Rand: a circa 0.014. Si usi il parametro Randlife: per aggiungere una casualit`a nel ciclo di vita delle particelle; qui un valore molto alto d`a una fiamma vivace. • Si usino circa 600-1000 particelle in tutto per l’animazione ( Tot: ). Nella Finestra 3D, si avr` a ora la prima impressione di quanto realisticamente si muovono le fiamme. Ma la cosa pi` u importante per il nostro fuoco sar`a il materiale.
61.5.2
Il materiale del fuoco
Con l’emittente di particelle selezionata, si va nel Contesto di Ombreggiatura [Shading] F5 e si aggiunge un nuovo Materiale. Si crea il nuovo materiale di tipo Alone attivando il pulsante Halo . Si attiva anche HaloTex , posizionato sotto questo pulsante. Questo consentir` a in seguito di usare una texture.
Figura 61.10: Il materiale delle Fiamme. diminuisca il valore di Alpha a 0.700; questo render`a le fiamme un po’ trasparenti. Si aumenti lo slider Add fino a 0.700, in modo che gli Aloni si illumineranno a vicenda, dando una luminosit` a interna alle fiamme, e pi` u scura all’esterno. ( Il materiale delle Fiamme ). Figura 20-12. La Texture delle fiamme.
Si dia al materiale un colore rosso saturo con gli sliders RGB. Si
414
CAPITOLO 61. PARTICELLE Se ora si effettua un rendering di prova,
Figura 61.11: La Texture delle fiamme. si vedr` a solo una brillante fiamma rossa. Per aggiungere un tocco di ulteriore realismo, sar` a necessaria una texture. Sempre con l’emittente selezionata, si Pannello Texture e si aggiunge una nuova Texture si seleziona il tipo Cloud per essa nella Pulsantiera della Texture ( F6 ). Si regoli NoiseSize: a 0.600. ( La Texture delle fiamme ). Si torna nella pulsantiera del Materiale F5 e si d`a un colore giallo alla texture con gli sliders RGB sul lato destro dei pulsanti del materiale. Per stendere le macchie gialle della texture di tipo nube si diminuisce il valore SizeY fino a 0.30. Un rendering di prova ora mostrer`a un bel fuoco. Ma avremo necessit`a di sbiadire le particelle sopra il fuoco. Questo si potr` a fare con l’animazione del materiale di Alpha e di Halo Size . Ci si assicuri che l’animazione sia al frame 1 ( SHIFT-LEFTARROW ) e si sposti il mouse sulla finestra del Materiale. Ora si prema IKEY e si scelga Alpha dal men` u che appare. Si avanzi lo slider del frame fino al fotogramma 100, si imposti Alpha a 0.0 e si inserisca un’altra chiave per Alpha con IKEY . Si trasformi una Finestra nel tipo IPO. Si attivi il Materiale Tipo IPO cliccando sulla Voce di Men` u pertinente nell’Header della IPO. Si vedr`a una curva per il canale Alfa del Materiale ( La IPO del Materiale per il fuoco ).
Nota: Un’animazione per un materiale di particelle viene sempre pianificato a partire dai primi 100 frames dell
Figura 61.12: La IPO del Materiale per il fuoco
Ora si pu`o effettuare il rendering di un’animazione. Pu`o darsi che si debbano ritoccare alcuni parametri come la durata della vita delle particelle. Si pu`o aggiungere un grande tocco di realismo alla scena ani-
61.6. UNA SEMPLICE ESPLOSIONE
415
mando le luci (o usando faretti e ombre) ed aggiungendo al fuoco un sistema di particelle per le scintille. Si raccomanda anche di animare l’emittente per avere delle fiamme pi` u vive, o usare pi` u di un’emittente ( Il rendering finale ).
61.6
Una semplice esplosione
Questa esplosione `e progettata per essere usata come una texture animata, per comporla nella scena attuale o per usarla come texture animata. Per il rendering di una diapositiva, o per un’esplosione al rallentatore, si dovr`a fare un po’ di lavoro aggiuntivo per renFigura 61.13: Il rendering finale. derla veramente ottimale. Ma si consideri che, un’esplosione, viene vista solo per mezzo secondo ( L’esplosione ).
Figura 61.14: L’esplosione. una IcoSfera. Per rendere l’esplosione un po’ irregolare, si cancella la disposizione dei
416
CAPITOLO 61. PARTICELLE
vertici con la funzione di selezione circolare in Modo Edit. Per una specifica scena si pu`o preferire di usare un oggetto come emittente, che abbia una forma diversa, per esempio come l’oggetto che si vuol far esplodere. L’esplosione `e composta da due sistemi di particelle, una per la nube di gas ed una per le scintille. Si prende una versione ruotata dell’emittente per generare le scintille. Inoltre, si effettua l’animazione della rotazione delle emittenti mentre si generano le particelle.
61.6.1
I materiali
Le particelle per l’esplosione sono dei semplicissimi materiali aureolari [halo], cui viene applicata una texture nubiforme per aggiungervi della casualit`a, anche le scintille hanno un materiale molto simile, si veda da Il materiale per la nube dell’esplosione a La Texture per entrambi .
Figura 61.15: Il materiale per la nube dell’esplosione.
Figura 61.16: Il materiale per le scintille.
Figura 61.17: La Texture per entrambi. re Alfa delle particelle aureolari da 1.0 a 0.0 per i primi 100 fotogrammi. Questo sar`a mappato sul ciclo di vita delle particelle, come al solito. Si noti l’impostazione di Star nel materiale delle scintille ( Il materiale per le scintille ). Questo d`a un po’ forma alle scintille. Avremmo potuto usare una speciale texture per questo, ma, in questo caso
Si effettui l’animazione del valo-
61.7. FUOCHI D’ARTIFICIO
417
l’impostazione di Star `e l’opzione pi` u semplice.
61.6.2
I sistemi di particelle
Figura 61.18: Il sistema di particelle per la nube
Figura 61.19: Il sistema di particelle per le scintille
Come si pu`o osservare in Il sistema di particelle per la nube e in Il sistema di particelle per le scintille , i parametri sono fondamentalmente gli stessi. La differenza sta nell’impostazione di Vect per le scintille, ed un valore pi` u alto per Norm: per dare maggior velocit`a alle scintille. Ho anche messo Randlife: a 2.000 per le scintille per dare loro un una forma irregolare. Suggerisco di partire sperimentando, usando questi parametri per iniziare. Le impostazioni attuali dipendono da cosa si vuol raggiungere. Si provi ad aggiungere pi` u emittenti per i
detriti, il fumo, ecc.
61.7
Fuochi d’artificio
Un pulsante non ancora usato `e Mult: . L’intera terza linea di pulsanti nel Pannello `e relativa a questo. Si prepara un piano e si aggiunge un sistema di particelle al piano. Si regolino i parametri in modo da avere alcune particelle che volano nel cielo, quindi si aumenta il valore di Mult: a 1.0. Questo far`a s`ı che il 100% delle particelle genereranno particelle figlie alla fine del loro ciclo di vita. Solo adesso ogni particella generer`a quattro figli. Quindi sar` a necessario aumentare il valore di Child: portandolo a circa 90 ( I pulsanti della Moltiplicazione delle particelle ). Si dovrebbero ora vedere dei fuochi artificiali convincenti creati dalle particelle, quando si effettua un’anteprima dell’animazione con ALT-A .
418
CAPITOLO 61. PARTICELLE Col rendering dei fuochi artificiali si avr`a una visione molto impressionante. Questo per il materiale standard aureolare assegnato da Blender. Di conseguenza, il passo successivo consiste nell’assegnare un materiale migliore.
Figura 61.20: I pulsanti della Moltiplicazione delle particelle.
Ci si assicura di avere l’emittente selezionato e si va Contesto di Shading e nella Pulsantiera del Materiale ( F5 ). Si aggiunge un nuovo materiale col Pulsante men` u, e si imposta il tipo ad Halo .
Figura 61.21: Fuochi d’artificio, Material 1. te [halo] semplice; si possono vedere i parametri in Fuochi d’artificio, Material 1 . Il rendering dell’animazione appare molto migliorato, ma resta ancora qualcosa da fare.
Mentre l’emittente `e selezionato si va nel Contesto di Editing F9 e si aggiunge un nuovo indice del materiale cliccando sul pulsante New nel Pannello Link and Materials ( L’inserimento di un secondo materiale all’emittente ).
Figura 20-23. L’inserimento di un secondo materiale all’emittente.
Si torna nel Contesto di Shading. Si vedr`a che il riquadro di anteprima dei dati del materiale `e diventato blu. Il pulsate etichettato con 2 indica che questo materiale `e usato da due utenze. Ora si clicca sul pulsante 2 e si conferma. Si rinomina il Materiale in Material 2 e si cambia il colore della luminescenza [halo] e delle linee ( Material 2 ).
Si `e usato un bel materiale luminescen-
61.8. CONTROLLO DI PARTICELLE CON UN LATTICE
419
Figura 61.22: L’inserimento di un secondo materiale all’emittente.
Figura 61.23: Material 2
Ci si sposta nei parametri delle particel-
le e si cambia il pulsante Mat: in 2. Si effettui ancora il rendering e si vedr`a che la prima generazione di particelle usa il primo materiale e la seconda generazione il secondo materiale. In questo modo si pu` o arrivare fino a 16 (che `e il massimo dell’indice del materiale) materiali per particelle.
Ulteriori miglioramenti: Oltre al cambio dei materiali si possono usare le IPO dei materiali per animare le impo
61.8
Controllo di Particelle con un Lattice
Il sistema di particelle di Blender `e estremamente potente, ed il corso delle particelle pu` o essere determinato non solo da forze ma anche incanalato da un lattice. Si prepara una singola mesh quadrata e si aggiunge un sistema di particelle in essa con una forza z negativa ed i parametri generali di Impostazioni delle Particelle . Questo potrebbe risultare buono per il fumo di quattro piccole fiammelle di fuoco in un giorno senza vento, ma le si vuole contorcere! Si aggiunge un lattice e lo si deforma come in Impostazioni del lattice .
420
CAPITOLO 61. PARTICELLE
Figura 61.24: Impostazioni delle Particelle
Si imparenta l’emettitore di particelle al lattice ( CTRL-P ). Se ora si seleziona l’emettitore di particelle, si cambiano i pulsanti dell’Animazione ( F7 ) e si preme RecalcAll ci si accorger`a che le particelle seguono, pi` u o meno, il lattice ( Effetti della deformazione del lattice sulla sinistra).
Come ulteriore tocco, si ruota ciascuna sezione orizzontale del lattice di 60 gradi in senso orario nella vista dall’alto, in modo incrementale, come se si volesse creare un’elica. Dopo di ch´e, si ricalcolano ancora le particelle. Il risultato `e in Effetti della deformazione del lattice sulla destra. Figura 61.25: Impostazioni del lattice.
L’avvitamento `e evidente, ed ovviamente si pu`o ottenere anche un effetto pi` u stretto ruotando di pi` u il lattice o usando un lattice con pi` u suddivisioni. Se si d`a all’emittente un materiale luminescente [halo] e si effettua il rendering si vedr`a qualcosa di simile alla Figura Particelle normali, a sinistra; particelle Vettore, al centro; e oggetti Duplicati ai Vertici che seguono le particelle, a destra. sulla sinistra.
61.8. CONTROLLO DI PARTICELLE CON UN LATTICE
421
Figura 61.26: Effetti della deformazione del lattice. Se si seleziona l’emittente, si cambiano i pulsanti dell’animazione e si preme il Pulsante delle Particelle Vect le particelle cambieranno da punti a segmenti, con una lunghezza ed una direzione proporzionale alla velocit`a delle particelle. Effettuando un rendering ora si avrebbe il risultato di Figura Particelle normali, a sinistra; particelle Vettore, al centro; e oggetti Duplicati ai Vertici che seguono le particelle, a destra. al centro. Se poi si Duplica un oggetto ai Vertici dell’emittente, imparentandolo e premendo il pulsante Duplivert , gli oggetti Duplicati ai Vertici avranno lo stesso orientamento dell’oggetto originale se le particelle sono normali particelle, ma ruoteranno e si allineeranno alla direzione delle particelle se le Particelle sono impostate come a vert . Selezionando l’Oggetto Originale e giocherellando con i pulsanti Track si pu`o cambiare la rotazione (Figura Particelle normali, a sinistra; particelle Vettore, al centro; e oggetti Duplicati ai Vertici che seguono le partiFigura 61.27: Particelle normali, a sinistra; particelle Vettore, al centro; e oggetti Duplicati ai Vertici che seguono le particelle, a destra.
422
CAPITOLO 61. PARTICELLE
celle, a destra. sulla destra).
61.9
Particelle Statiche
Le particelle statiche sono utili per fare oggetti come fibre, erba, pellicce o piante. Si provi a creare un piccolo personaggio, o solo una palla, per provare le particelle statiche. Si provi a modellare una specie di ’palla pelosa’. Un emittente non viene visualizzato nel rendering, quindi si deve duplicare la mesh (o qualsiasi tipo di oggetto usato e convertirlo ( ALT-C ) in una mesh). Una suddivisione frattale della mesh per metterci un po’ di casualit` a, `e solitamente una buona idea. Se si finisce con una mesh troppo densa, si usa Remove Doubles con un limite aumentato. Si tagliano via delle parti con la selezione delimitata (circolare) dove non si vuole la peluria. Ora, si assegni il sistema di particelle e, si attiva Static . Figura 20-29. Impostazioni delle particelle statiche. Si usano questi parametri in Impostazioni delle particelle statiche . Con la combinazione di Life e di Norm si pu`o controllare la lunghezza dei capelli. Si usi una forza negativa nella direzione z per piegare i capelli. Si attivi Face per generare le particelle, non solo sui vertici ma distribuite anche sulle facce. Si selezioni anche Vect ; questo generer`a particelle come fibre. Il valore Step definisce quante Figura 61.28: Impostazioni delle particelle particelle per ciclo di vita si debbano generare. Si imposti questo ad un valore basso statiche per avere delle curve pi` u morbide per le particelle, e ci si assicuri di non dimenticare l’impostazione del valore Rand . Quando si effettuer` a il rendering, si vedranno particelle molto sfocate. Il materiale usato per le particelle statiche `e molto importante, quindi si aggiunga un materiale per l’emittente nella Contesto di Shading ( F5 ).
Figura 61.29: Impostazioni del Materiale. Pulsante Numerico si pu` o vedere ci`o, quindi per regolare click sul pulsante con LMB
Si `e usato un piccolissimo HaloSize (0.001). Nel
61.9. PARTICELLE STATICHE
423
mentre si tiene premuto SHIFT . Si abilita l’opzione Shaded per far s`ı che le particelle siano influenzate dalle luci nella scena, e quindi si attivi HaloTex . Si user`a una texture per dar forma ai capelli ( Impostazioni del Materiale ).
Ci si sposti nella sub contesto Texture ( F6 ) e si aggiunga una nuova texture di tipo Blend . Si scelga Lin come sotto-tipo. Si attivi l’opzione Colorband e si regoli il colore come in Impostazioni della Banda di Colori [Colorband] della Texture . Si vedr`a un bel miscuglio, dal trasparente al viola ed ancora al trasparente.
Figura 61.30: Impostazioni della Banda di Colori [Colorband] della Texture.
Si torni nei Pulsanti del sub-contesto del Materiale e ci si assicuri che sia attivato Alpha nell’output della mappature della texture sulla destra dei Pulsanti del Materiale. Quindi si usino sizeX e sizeY per formare una luminescenza [halo] nell’anteprima del materiale per avere una piccola fibra ( Impostazione della Texture nei Pulsanti del Materiale ).
Se la peluria non `e abbastanza densa, si incrementi il conteggio delle particelle con Tot o si aggiungano altre emittenti. Inoltre, si cambino un po’ i parametri delle particelle per queste ulteriori emittenti in modo da avere delle variazioni nei capelli ( Il risultato finale ).
Figura 61.31: Materiale.
Impostazione della Texture nei Pulsanti del
424
CAPITOLO 61. PARTICELLE
Figura 61.32: Il risultato finale.
Capitolo 62
Interazione di Particelle 62.1
Introduzione
Il sistema di particelle di Blender consente alle particelle di interagire in due modi campi di forza [force fields] e deflessione [deflection]. • Campi di forza Le varianti di campi di forza sono: • Standard Force field che funziona come un campo forza di gravit`a (attraente) • Vortex field (vortice). Un campo vortice ha pi` u l’effetto di un tornado, con le particelle a spirale attorno al centro del vortice. • Wind - Forza del Vento. I campi di forza sono disponibili per tutti i tipi di oggetti. Attualmente `e implementato un campo puntiforme [point-based] con un’attenuazione [fall-off] sferica. I campi di forza possono essere impostati per qualsiasi oggetto. Le particelle verranno quindi: attratte con un valore negativo di Strength (intensit`a), o respinte se si ha un valor positivo di Strength . C’`e anche il parametro di Fall-off (attenuazione) che definisce quanta intensit` a diminuisca con la distanza dall’origine dell’oggetto. • Deflection Consente di impostare qualsiasi oggetto mesh come un deflettore di particelle. Le particelle quindi rimbalzeranno sulla superficie della mesh. Si pu`o regolare la quantit`a di rimbalzo col valore di Damping (attenuazione), e qualche casualit`a nei rimbalzi con Rnd Damping e si pu` o definire la percentuale di particelle che passano attraverso la mesh col parametro Permeability .
Normali delle superfici: Per una corretta deflessione ci si assicuri che le normali della superficie della mesh sian
425
426
CAPITOLO 62. INTERAZIONE DI PARTICELLE
62.2
L’interfaccia
Le impostazioni dell’interazione delle particelle vengono gestite tramite il Pannello Particle Interaction nel contesto Oggetto ( F7 ).
62.2.1
Campo Forza/Vortice Campo Forza/Vortice
• Strength - L’intensit`a dell’effetto del campo. • Fall-off - Quanto diminuisce la forza con la distanza.
Figura 62.1: Il Pannello Particle Interaction.
Aggiungendo un campo forza/vortice ad un oggetto, questi verr`a segnato con un piccolo disegno che indica che `e connesso ad un’interazione di particelle.
• Il campo di forza avr`a dei piccoli cerchi grigi. • I campi vortice avranno il disegno di una spirale. • La forza del Vento avr`a disegnati una serie di cerchi che mostrano direzione e influenza della forza. • Esiste anche un indicatore dell’influenza per il parametro MaxDist che mostra un cerchio attorno all’oggetto del campo di forza.
62.2.2
Deflessione
La sezione a destra del pannello Particle Interaction gestisce le impostazioni per la deflessione. Deflettori: Con i deflettori non c’`e alcun segno grafico da vedere dato che si associano ai campi di forza. I parametri della deflessione
• Damping (Attenuazione) - Controlla la quantit`a di rimbalzo posseduta dalla superficie. • Rnd Damping - Aggiunge un elemento casuale al rimbalzo. Per esempio, con un Damping di 1.0 ed un Rnd Damping di 0.5, il rimbalzo varier´a tra 1.0 e 1.5. • Permeability (Permeabilit` a) - La percentuale di particelle che passa attraverso la mesh.
62.3. ESEMPIO
427
Nell’impostare un deflettore di particelle ci si deve avere un numero sufficiente di chiavi affinch´e Blender calcoli le collisioni con sufficiente dettagli. Se si nota che le particelle si spostano attraverso il deflettore o rimbalzano in posizioni sbagliate, il problema potrebbe consistere in troppo poche chiavi o che le particelle o il deflettore si muovono troppo velocemente.
Keys: Si pu` o animare il movimento dei deflettori ma le particelle possono infiltrarsi attraverso la mesh se il defl Figura 20-37. Il Pannello Effects. Si possono inserire delle chiavi Ipo per tutti i parametri (eccetto MaxDist ) dei campi forze e deflettori. Le curve Ipo si modificano come tipi di Oggetto Object Ipo nella finestra Ipo. Si veda la Capitolo 14 per ulteriori informazioni sull’Animazione e le Ipo.
62.3
Esempio
Questo `e un piccolo esempio per illustrare i deflettori di particelle.
Figura 62.2: Esempio: fotogramma 40.
62.4
Render di esempio
Qui viene aggiunto un oggetto Meta ed il cerchio viene impostato come genitore. Si attiva DupliVerts sul cerchio e si imposta il materiale con Alpha basso per simulare un liquido. Si gioca con le impostazioni Rnd Damping per ottenere un gradevole effetto di spruzzo. Si sceglie un fotogramma bello o l’intera animazione e si renderizza...
428
Figura 62.3: Le impostazioni Deflection dell’esempio.
Figura 62.4: Il risultato finale modificato.
CAPITOLO 62. INTERAZIONE DI PARTICELLE
Capitolo 63
Capelli, pellicce, piume in Blender 63.1
Visione d’insieme
Blender ha un generatore di particelle formidabile che non solo `e capace di generare particelle, ma `e anche capace di creare le fibre di peli che possono servire per ricreare capelli, pellicce o anche piume. Questo `e ottenuto convertendo le particelle in fili poligonali renderizzabili. I fili poligonali non scendono mai sotto 1 pixel in dimensione, e ci`o aiuta a tenere gli artefatti del rendering alla larga quando il motore di rendering renderizza i fili. Iniziamo col dare un’occhiata al generatore di particelle e a come funziona. Questo `e come appare in Blender 2.40:
Come si pu` o vedere in I Pannelli del generatore di particelle si hanno molte opzioni. Bisogna prima creare un emittente di particelle per poter vedere questo menu. L’emittente di particelle pu` o realmente essere qualsiasi cosa... ma `e una buona idea che sia un oggetto. Iniziamo semplicemente aggiungendo una sfera: SPACE >>Add>>Mesh>>UVsphere. Si diano alla sfera 20 segmenti e 20 linee. Si esca tornando in object mode con TAB . Ora si vada alla sezione menu e si prema F7 per accedere al menu oggetto. Il menu ha due pulsanti di opzione: Objects o Physics . Si prema il pulsante Physics . Quindi si trover` a una fincatura chiamata Particles . Si prema >> NEW e si vedr`a il menu proprio 429
430
CAPITOLO 63. CAPELLI, PELLICCE, PIUME IN BLENDER
come in I Pannelli del generatore di particelle . Siccome stiamo per creare dei capelli o dei peli avremo bisogno di rendere le particelle statiche. Si prema il pulsante static e poi animated se si pensa di animare le particelle in seguito. Per disegnare fili tra ogni particella generata abbiamo bisogno di attivare ’vector’ sotto la sezione display - si prema >> vect . Se si vuole che la mesh si mostri durante la generazione dei fili particellari basta premere >> Mesh sotto la sezione ’display’. Ora abbiamo bisogno di vedere le particelle ma non abbiamo ancora istruito il generatore su come emetterle dal nostro oggetto mesh. Per vederle si vada sulla fincatura ’Particle Motion’ e si imposti normal a 0.010 . La vostra sfera dovrebbe apparire pressapoco come in La sfera con le particelle statiche . Se non la si vede, si prema Z per entrare im visualizzazione ombreggiata.
Tutto ci` o `e abbastanza noioso, non trovate? Questo perch`e per ora sono solo un mucchio di fili. Andando al di l´ a di una sfera, potete ovviamente applicarle a qualsiasi oggetto vogliate.
63.2
Emettere fili dalla mesh
La mesh emette particelle. Queste particelle sono come fotoni; un certo numero sono emesse, ed esse hanno velocit` a, direzione e una quasi vita. Maggiore `e il numero ( Amount ) di particelle emesse, pi´ u folti saranno i capelli. Pi´ u a lungo resteranno in vita ( Life ), pi´ u lunghi saranno i capelli. Queste particelle sono compattate molto vicine ` uno spreco di CPU calcolare tra di loro; molte possono trovarsi in un singolo pixel. E particelle in posti ridondanti, per cui se ne saltano ( Skip ) alcune (5 `e il default) nel mezzo. Per i renders di prova, non avete bisogno di visualizzare ( Disp ) il 100% delle particelle; una percentuale inferiore accelerer`a il rendering. Si pu` o anche specificare da dove ( From ) verranno emessi i fili: tutto l’oggetto o solamente una certa porzione di esso. esistono due possibili selezioni in questa sezione del pannello: Verts (vertici) e Faces (facce). Se ne scelga una o entrambe, come si preferisce. Verts emette i fili solamente dai vertici della mesh. Di default tutti i vertici emettono fili. Per emettere particelle solamente da una porzione della mesh, si definisca un gruppo di vertici (vertex group) (si veda Editing F9) e si inserisca il mome del
63.3. L’OMBREGGIATORE STRAND (FIBRA):
431
gruppo nel campo di inserimento VGroup (attenzione alle maiuscole/minuscole). Per esempio, se aveste una testa umana, vorreste definire un gruppo di vertici per lo scalpo e quindi inserirlo in questo campo. Se volete che i capelli vengano emessi anche dalle zone tra i vertici (le facce della mesh) si selezioni ’Faces’. Ora sar`a necessario decidere tra una distribuzione casuale ( Random ) e Even alternata delle particelle/capelli. per una chioma pi´ u naturale ed organica si scelga Random. Il Dithering [tremolio] `e un processo di sovrapposizione di punti uno sull’altro in modo da sfuocare e ammorbidire. Si scelga un valore differente di dither per andare incontro alla vostra idea di acconciatura. Ora rendiamo pi` u belli i capelli! Per fare ci`o avremo bisogno di To do this we will need to make the strands ease out and anti-alias into the environment around the object. We can even change the size of the hair strands and how the tip will look like, but more about that later, let’s take a look at how we map the strands to look real soft and fluffy.
63.3
L’ombreggiatore Strand (fibra):
Blender possiede un nuovo ombreggiatore! Esso `e stato implementato per seguire la direzione dei nuovi poligoni derivanti dalle fibre particellari. In altre parole se selezionate i capelli e assegnate loro una texture o un gradiente essa seguir`a la direzione dei fili. Ora useremo i gradienti per ombreggiare le fibre in modo che sfumino nel nulla - dandoci l’illusione di una risoluzione molto maggiore, questo effetto `e noto come anti-aliasing. Ad ogni modo on `e proprio possibile renderizzare entit`a inferiori al pixel - per cui si usa questo trucchetto per rendere le estremit`a dei capelli pi´ u fini ed in modo che dissolvano nel nulla. fig-3:
Come potete vedere in fig-3 ora vi trovate nel menu del materiale ( F5 ). Da qui c’`e bisogno di creare un nuovo materiale ed aggiungergli una texture, in pratica converr`a creare due materiali se intendete rendere visibile anche la mesh originale, ma per ora ci concentreremo sull’ombreggiatura delle particelle. Cercate di fare la vostra selezione come in fig-3. Strand attiva la mappatura lungo le fibre, e Alpha attiva il canale della trasparenza. Il canale alpha contribuisce a rendere le textures opache ed il loro sfondo invisibile. Questo `e il trucchetto di cui parlavamo prima, che serve a fare sfumare nel nulla la texture. Ora lavoriamo sulla texture della dissolvenza. Stiamo per aggiungere un gradiente Blend
432
CAPITOLO 63. CAPELLI, PELLICCE, PIUME IN BLENDER
sul nostro canale 1 delle textures. Si veda fig-4. fig-4:
Aggiungeremo gradienti di colore alla nostra texture di sfumatura per la dissolvenza, premete –>Colorband per accedere al menu successivo e cambiate il colore di default con il bianco e fatelo sfumare da sinistra a destra (basta trascinare le piccole lineecontrassegno presenti nella finestra del gradiente e portarle in modo che corrispondano alla figura). Se avete fatto tutto correttamente dovreste vedere qualcosa come in fig-5. fig-5:
Ok, ora che abbiamo creato il gradiente che servir`a a realizzare il nostro effetto dissolvenza sui capelli particellari, torniamo al menu dei materiali (F5) e deselezioniamo il pulsante COL . La ragione per cui lo facciamo sta nel fatto che vogliamo i nostri colori e non quelli del gradiente di colore che abbiamo appena impostato. Abbiamo bisogno di un gradiente solo perch`e dissolva da 100 % (opaco) a 0 (trasparente). fig-6:
63.3. L’OMBREGGIATORE STRAND (FIBRA):
433
Ora imposteremo il colore per i capelli, andate nel menu del materiale ed aggiustate i colori come vedete e spostate la barra dell’Alpha ( A ) a zero. Facciamo questo per fare in modo che il gradiente del canale alpha che avevamo fatto in fig-4 controlli il nostro alpha al 100%. Ovviamente potete regolare questo valore in modo che vada incontro ai vostri gusti nel caso non vogliate che si arrivi ad una trasparenza del 100%, ma per ora tenete queste impostazioni. fig-7:
Se avete eseguito tutto come descritto e premete F12 per effettuare il render, esso dovrebbe apparire simile a questo: fig-8:
Come potete vedere - ora abbiamo delle chiome soffici, ma possiamo fare ancora meglio prima di aggiungere pi´ u particelle. Blender ha ancora un’altra opzione nel menu del materiale chiamata ombreggiatura tangente. L’ombreggiatore tangente crea una curva del progilo del capello/pelo pi´ u spessa/fine a seconda della lunghezza delle vostre particelle. Potete aggiustare questo valore per fare iniziare le fibre pi´ u spesse/fini e per impostare quanto nette o arrotondate esse appariranno. fig-9:
434
CAPITOLO 63. CAPELLI, PELLICCE, PIUME IN BLENDER
Ho impostato la forma a -0.900 in modo che appaia molto appuntita.
E se renderizzate ora, ecco come dovrebbe apparire: fig-10:
Ora che avete seguito tutti i passaggi potete divertirvi un mondo con capelli/pellicce, tornate al modificatore delle particelle e create tantissime pellicce. Nel vostro menu delle particelle aggiungete molte pi` u particelle...diciamo 20000, se non avete un computer molto potente potete cambiare il valore DISP in modo che ne mostri circa il 20% di modo che, quando lavorate con le particelle, ne verranno mostrate solo il 20% all’interno della finestra 3D mentre durante il rendering saranno presenti tutte le particelle. Ora che abbiamo moltissimi peli particellari, diamo loro un po’ di peso. Come si sa...la gravit` a attira verso il basso, per cui cambieremo il valore Z: della forza a circa -0.02 e per renderli un po’ spettinati e dall’aspetto casuale aggiungeremo 0.005 al pulsante numerico Random: nella sezione velocit`a ( Velocity: ). Per creare una distribuzione ancora pi` u gradevole della pelliccia possiamo fare in modo che le nostre particelle emettano da vertici e facce sia in modo casuale che in modo alternato, potete impostare ci´ o riferendovi alla fig-11 dove sta scritto From: . fig-11:
63.3. L’OMBREGGIATORE STRAND (FIBRA):
435
Se renderizzate ora, apparir` a qualcosa come in fig-12. Se non assomiglia al vostro rendering, allora `e possibile che le vostre impostazioni delleluci siano molto diverse da quelle usate nell’esempio. ILe luci sono molto importanti per le fibre particellari, ovviamente per via dell’ombreggiatura. Se avete bisogno di un’illuminazione adeguata allora consultate i tutorial sull’illuminazione o la sezione del manuale e ripetete questo tutorial, cos´ı potrete ottenere dei risutati incoraggianti nel fare i vostri esercizi avendo una buona illuminazione. fig-12:
` decisamente semplice da realizzare con Ora pettiniamo i capelli con le guide : E le nuove guide, tutto quello che dovete fare per pettinare i capelli nella vostra nuova palla di pelo `e aggiungere una curva e dire che essa `e una curva guida. Per farlo Spazio–>Add–>Curve–>Bezier Curve e con la curva selezionata andate nel menu F7 e date un’occhiata al menu a tendina che si trova sotto il menu fields and deflection :
Ora che avete scelto che agisca da curva guida potete vedere che istantaneamente essa
436
CAPITOLO 63. CAPELLI, PELLICCE, PIUME IN BLENDER
agisce sulla vostra palla di pelo. Potete notare anche che l’acconciatura segue l’andamento della curva. Siete chiaramente liberi di sagomare la curva in qualsiasi maniera vogliare, Blender aggiorner` a in tempo reale non appena muovete i segmenti della curva di Bezier e ne aggiungete di nuovi con –>E (extrude).
fig-13:
Ancora una volta, non vi stresser`o mai abbastanza nel sottolineare quanto siano importanti le luci e le ombre per ottenere dei capelli di qualit`a, imparate a fare bene le impostazioni delle luci e sarete ricompensati con dei capelli bellissimi. Un buon metodo per ottenere dei capelli brillanti e puliti `e quello di ridurre la specularit`a di poco ed aumentare il valora della durezza (hardness) a circa 70-100.
Una cosa che potreste voler fare al fine di rendere i capelli pi` u soffici `e quella di selezionare l’opzione Ztransparency che si trova nel menu dell’ombreggiatore (F5) sotto la fincatura del ’mirror transp’. Questo renderizzer`a i capelli su livelli alpha di trasparenza facendoli antiscaletttare ancora meglio e dandovi dei risultati veramente eccezionali, chiaramente...questo coster` a in termini di tempo di rendering, ma `e ben speso. Potete usare Ray-Transparency ed impostare la profondit`a (depth) a qualsiasi valore vi sembri opportuno - ed esso renderizzer` a in qualche modo pi` u veloce, ma non apparir`a tanto buono che con la Ztransparency.
fig-14:
63.3. L’OMBREGGIATORE STRAND (FIBRA):
437
Dei bei capelli eh? Volete vedere le impostazioni usate? Eccole, sono in fig-15. fig-15:
Diamo un’occhiata a cosa abbiamo fatto per ottenere dei capelli cos`ı buoni. Ho reso l’oggetto precedente un poco pi` u piccolo scalandolo in modo che l’emettitore-partenza dei capelli fosse pi` u piccolo (solo per l’apparenza - davvero). Poi ho alzato il valore Normal (speed) che si trova nella sezione della particle motion (velocity), gli ho dato una vita random (0.4) per rendere un po’ varia la velocit`a. Ho anche scalato e mosso intorno la curva guida di Bezier per influenzare i capelli. Provate queste variazioni, sarete sorpresi di quanto possa essere flessibile e di quante variazioni possiate fare. Volete diventare ancora pi` u esperti? Continuate a leggere... Potete usare curve multiple per guidare in giro i vostri capelli. Fate un duplicato della vostra curva e giratele entrambe esattamente come in fig-16. fig-16:
438
CAPITOLO 63. CAPELLI, PELLICCE, PIUME IN BLENDER
Ora controllate di nuovo il menu F7 - fields and deflections e premete il pulsante Additive. Questo pulsante crea un campo di approssimazione con le vostre curve guida in modo che possiate miscelarne due o pi` u cotemporaneamente - esso agir`a su parti delle vostre chiome a seconda delle impostazioni presenti in Min-Dist e falloff. Usate un valore piccolo di min-dist come si vede in fig-17 per entrambe le curve e sperimentate i valori di falloff (iniziate con piccoli numeri). Se ora unite assieme queste curve, posizionandole vicino all’emettitore di capelli potete vedere in tempo reale l’effetto e regolare oportunamente i valori di falloff/min/max-dist. Questi valori dipenderanno dalle vostre curve, dal numero di segmenti e dalla dimensione dell’emittente, ecc., per cui in altre parole essi cambieranno con le vostre creazioni.
fig-17:
Se avete fatto tutto in modo corretto - dovreste riuscire a controllare la separazione dei vostri capelli in sezioni come si vede qui:
fig-18:
63.3. L’OMBREGGIATORE STRAND (FIBRA):
439
Come vedete in fig-18 ora avete il completo controllo su dove mettete i vostri capelli. Potete anche modificare la lunghezza di ogni curva in modo che ci`o agir`a sulla lunghezza dei capelli che si trovano in prossimit`a della curva. Non finisce qua - non per molto! Non c’`e quasi limite a come si possono controllare i capelli con Blender. Potete arrotolarli, intrecciarli, farli girare vorticosamente, scrollarli, e si, fare ogni cosa vogliate. Diventate acconciatori di fama mondiale - i vostri personaggi non andranno pi` u in giro spettinati. Tommy Helgevold (JoOngle)
440
CAPITOLO 63. CAPELLI, PELLICCE, PIUME IN BLENDER
Capitolo 64
Effetto Costruzione e Onde 64.1
Effetto Build (Costruzione progressiva)
L’effetto Build funziona sulle Mesh e fa apparire le facce dell’Oggetto, una dopo l’altra, col passare del tempo. Se il Materiale della Mesh `e un Materiale Halo [Alone], invece di uno standard, allora sono i vertici della Mesh, non le facce, ad apparire in sequenza. Facce, o vertici, appaiono nell’ordine in cui sono immagazzinate in memoria. Tale ordine pu`o essere modificato selezionando l’Oggetto e premendo CTRL-F fuori dal Modo Edit. Questo fa s`ı che le facce vengano riordinate in funzione dei loro valori (la coordinata Z) nel riferimento locale della Mesh.
Riordinamento: Se si crea un piano e vi si aggiungete l’effetto Bu Figura 64.1: L’effetto Costruzione Progressiva [Build].
L’effetto Build ha solo due controlli numerici ( L’effetto Costruzione Progressi-
va [Build]. ):
• Len - Definisce in quanti fotogrammi [frames] avr`a luogo la costruzione. • Sfra - Definisce il fotogramma di inizio del processo di costruzione.
64.2
Effetto Onda (Wave)
L’effetto Onda (Wave) aggiunge un moto alla coordinata Z dell’Oggetto Mesh. L’effetto Onda viene generato da un dato punto iniziale definito dai Pulsanti Numerici Sta X e Sta Y . Queste coordinate sono in un riferimento locale alla Mesh ( Origine 441
442
CAPITOLO 64. EFFETTO COSTRUZIONE E ONDE
dell’Onda. ).
Figura 64.2: Wave Control Panel La deformazione dell’effetto Onda ha origine da un dato punto iniziale e si propaga lungo la Mesh con un fronte circolare, o con un fronte d’onda rettilineo, parallelo agli assi X e Y. Questo viene controllato dai due interruttori X e Y . Se solo uno di questi `e Figura 64.3: Origine premuto i fronti sono lineari, se sono entrambi premuti, i fronti dell’Onda. sono circolari ( Tipi di fronti d’Onda. ). L’onda stessa ha un andamento gaussiano che pu`o essere un singolo impulso o una serie di increspature, se `e premuto il pulsante Cycl .
Figura 64.4: Tipi di fronti d’Onda.
L’Onda `e governata da due serie di controlli, la prima definisce la forma dell’Onda, la seconda la durata dell’effetto. Per quello che concerne la Forma d’Onda, i controlli sono Speed , Height , Width e Narrow ( I controlli della forma d’Onda. ).
Il Pulsante Numerico Speed controlla la velocit`a, in Unit`a per Frame, dell’ondulazione. Il Pulsante Numerico Height controlla l’altezza, in Unit`a Blender e lungo l’asse Z, dell’ondulazione ( Caratteristiche del fronte d’Onda ). Se il pulsante Cycl `e premuto, il Pulsante Numerico Width indica la distanza, in Unit`a Blender, tra i picchi di due onde successive, ed il totale dell’effetto Onda `e dato dall’inclusione di tutti i singoli impulsi ( Caratteristiche del fronte d’Onda ). Questo ha un effetto indiretto sull’ampiezza dell’onda. Avendo l’onda una forma Gaussiana, se gli impulsi sono troppo vicini tra loro l’inviluppo pu`o non raggiungere pi` u quota z=0. In questo caso Blender abbassa addirittura l’intera onda in modo che il minimo sia zero e, di conseguenza, il massimo `e pi` u basso di quello atteso dal valore dell’ampiezza, come mostrato in Caratteristiche del fronte d’Onda al fondo. La vera larghezza per ciascun impulso Gaussiano `e controllata dal Pulsante Numerico Narrow , pi` u alto `e il valore pi` u stretto `e l’impulso. La vera larghezza dell’area in cui il singolo impulso `e decisamente diverso da zero in Unit` a Blender `e dato da 4 diviso il valore di Narrow . Vale a dire, se Narrow `e 1 l’impulso `e largo 4 Unit` a, e se Narrow `e 4 l’impulso `e largo 1 Unit`a.
64.2. EFFETTO ONDA (WAVE)
443
Figura 64.5: I controlli della forma d’Onda. Per ottenere un’Onda Sinusoidale: Per Gli ultimi controlli dell’Onda sono i controlli del tempo. I tre Pulsanti Numerici definiscono:
Figura 64.6: Caratteristiche del fronte d’Onda
• Time sta il di Fotogrammi [Frame] in cui comincia l’Onda; • Lifetime il nume-
ro di fotogrammi in cui l’effetto finisce; • Damptime `e un ulteriore numero di fotogrammi in cui l’onda si attenua dal valore dell’ampiezza a zero. L’attenuazione avviene per tutte le onde ed inizia nel primo frame successivo a Lifetime
444
CAPITOLO 64. EFFETTO COSTRUZIONE E ONDE (Durata della vita). Le onde scompaiono entro Damptime frame.
Figura 64.7: I controllo del tempo dell’Onda.
Capitolo 65
Duplicazione ai Vertici [DupliVerts] Il DupliVerts non `e n´e un gruppo rock n´e una parola olandese per qualcosa di illegale (anche se potrebbe essere) ma l’abbreviazione di DUPLIcation at VERTiceS (Duplicazione ai Vertici), ed indica le duplicazioni di un Oggetto base ubicate su ciascun Vertice di una Mesh (o anche di un sistema di Particelle). In altre parole, quando si usa il DupliVerts su una mesh, viene posto un’istanza dell’oggetto base su ogni vertice della mesh. Attualmente ci sono due approcci alla modellazione coi DupliVerts. Possono essere usati come uno strumento per posizionare, consentendoci di modellare disposizioni geometriche di oggetti (p. es.: le colonne di un tempio Greco, gli alberi di un giardino, un esercito di soldati robot, i banchi in un’aula scolastica). L’oggetto pu`o essere un qualsiasi tipo di oggetto supportato da Blender. Il secondo approccio consiste nell’usarlo per modellare un Oggetto partendo da una singola porzione (cio`e: i chiodi di una mazza, le spine di un riccio di mare, i mattoni di un muro, i petali di un fiore).
65.1
DupliVerts come uno Strumento di Dislocazione
Tutto ci` o che serve `e un oggetto base (p. es.: un albero o una colonna ) ed una mesh coi suoi vertici disposti secondo la struttura che abbiamo in mente. Per la seguente parte, user` o una semplice scena. Essa consiste in una telecamera, le luci, un piano (per il pavimento) ed uno strano uomo che ho modellato da un famoso personaggio di Magritte ( Una semplice scena con cui effettuare le prove. ). Se non vi piace il surrealismo troverete questa parte estremamente noiosa. ` buona norma porlo al centro del Ad ogni modo l’uomo sar` a il mio Oggetto base . E sistema di coordinate, ripulito da tutte le rotazioni. Si sposta il cursore sul centro della base dell’oggetto e, dalla Vista dall’alto si aggiunge una mesh circolare, con 12 vertici o gi` u di l`ı ( La mesh genitrice pu` o essere una qualunque primitiva. ).
445
446
CAPITOLO 65. DUPLICAZIONE AI VERTICI [DUPLIVERTS]
Figura 65.1: Una semplice scena con cui effettuare le prove.
Si esce dal Modo Edit, si seleziona l’Oggetto base e si aggiunge il cerchio alla selezione (l’ordine qui `e molto importante). Si imparenta l’oggetto base col cerchio premendo CTRL-P . Ora, il cerchio `e il genitore del personaggio ( L’uomo `e imparentato al cerchio. ). Abbiamo quasi finito.
Figura 65.2: La mesh genitrice pu`o essere una qualunque primitiva.
65.1. DUPLIVERTS COME UNO STRUMENTO DI DISLOCAZIONE
447
Figura 65.3: L’uomo `e imparentato al cerchio. Ora si seleziona solo il cerchio, si cambia la Pulsantiera nel contesto Oggetto (tramite o F7 ) e si seleziona il Pulsante DupliVerts nel pannello Anim Settings ( I pulsanti dell’Animazione ).
Figura 65.4: I pulsanti dell’Animazione. Wow, non `e grande? Non vi preoccupate dell’oggetto al centro ( In ogni vertice del cerchio viene posto un uomo ). Esso `e visibile nelle viste 3D ma non ne sar`a effettuato il rendering. Ora si pu` o selezionare l’oggetto base, cambiarlo (ridimensionare, ruotare, in Modo Edit) [1] i cambiamenti si ripercuoteranno su di esso e su tutti gli oggetti Duplicati ai Vertici. Ma la cosa pi` u interessante da notare `e che si pu`o modificare anche il cerchio genitore.
Nota: L’Oggetto base non partecipa al rendering se `e Duplicato ai Vertici di una Mesh ma lo `e se `e Duplicato a Si seleziona il cerchio e lo si ridimensiona. Si potr`a vedere che gli uomini misteriosi si ridimensioneranno con esso. Si pone in Modo Edit il cerchio, si selezionano tutti i vertici con AKEY e si ingrandisce di circa tre volte. Uscendo dal Modo Edit gli oggetti Duplicati ai Vertici verranno aggiornati ( Modifica della dimensione del cerchio in Modo Edit.
448
CAPITOLO 65. DUPLICAZIONE AI VERTICI [DUPLIVERTS]
). Questa volta essi resteranno della loro dimensione originale ma la distanza tra di loro sar` a cambiata. In Modo Edit, non solo si pu`o ridimensionare, ma anche cancellare o aggiungere dei vertici per cambiare la disposizione degli uomini.
Figura 65.5: In ogni vertice del cerchio viene posto un uomo. In Modo Edit si selezionano e si duplicano tutti i vertici ( SHIFT-D ). Ora si ingrandiscono i nuovi vertici verso l’esterno in modo da avere un secondo cerchio intorno all’originale. Lasciando il Modo Edit, apparir`a un secondo cerchio di uomini ( Una seconda fila di uomini di Magritte. ). Finora tutti gli uomini di Magritte stanno di fronte alla telecamera, ignorandosi reciprocamente. PossiaFigura 65.6: Modifica della dimensione del cerchio in mo ottenere un risultato migliore usando il Pulsante Modo Edit. Rot di seguito al pulsante DupliVerts nel Pannello Anim Settings . Con questo Pulsante attivo, possiamo ruotare gli oggetti Duplicati ai Vertici secondo le normali dell’Oggetto genitore. Pi` u precisamente, gli assi degli Oggetti
65.1. DUPLIVERTS COME UNO STRUMENTO DI DISLOCAZIONE
449
Duplicati vengono allineati con la normale nella posizione del vertice. Quale sia l’asse allineato (X, Y o Z) con la normale della mesh genitore dipende da quale pulsante `e indicato tra TrackX, Y, Z e tra i pulsanti UpX, Y, Z in alto nel Pannello Anim Settings . Provandoli con la nostra camerata surrealista, constateremo che gli strani risultati dipendono da queste impostazioni. Il modo migliore per capire cosa avverr`a consiste prima di tutto nell’allineare gli assi dell’oggetto base e di quelFigura 65.7: Una seconda fila di uomini di Magritte. li del genitore con gli assi del Mondo. Questo viene fatto selezionando entrambi gli oggetti e premendo CTRL-A , e cliccando sul men` u Apply Size/Rot? . Quindi si rendono visibili gli assi dell’oggetto base e gli assi e le normali dell’oggetto genitore ( Si facciano apparire gli assi dell’oggetto per avere la disposizione che si vuole - in questo caso, avendo un cerchio senza facce, deve essere prima definita una faccia affinch´e sia visibile la normale - in realt`a non ne esistono affatto).
Figura 65.8: Si facciano apparire gli assi dell’oggetto per avere la disposizione che si vuole.
Ora si seleziona l’oggetto base (il nostro uomo di Magritte) e si gioca un po’ coi pulsanti Tracking. Si notino i diversi allineamenti degli assi con le diverse combinazioni di UpX, Y, Z e TrackX, Y, Z
( L’asse Y negativo `e allineato alla normale al vertice (che punta verso il centro del cerchio). , L’asse Y positivo `e allineato alla normale. , L’asse X positivo `e allineato alla normale. , L’asse Z positivo `e allineato alla normale.
450
CAPITOLO 65. DUPLICAZIONE AI VERTICI [DUPLIVERTS]
(strano, eh?) ).
Figura 65.9: L’asse Y negativo `e allineato alla normale al vertice (che punta verso il centro del cerchio).
Figura 65.10: L’asse Y positivo `e allineato alla normale.
65.2. DUPLIVERTS PER MODELLARE UN SINGOLO OGGETTO
451
Figura 65.11: L’asse X positivo `e allineato alla normale.
65.2
DupliVerts per Modellare un Singolo Oggetto Con le Duplicazioni ai Vertici ed una primitiva standard si possono fare dei modelli molto interessanti.
Figura 65.12: L’asse Z positivo `e allineato alla normale. (strano, eh?)
Partendo da un cubo in Vista Frontale, ed estrudendo un paio di volte ho modellato qualcosa che appare essere un tentacolo, una volta attivato il SubSurfs ( Lo strano tentacolo e la versione con SubSurfs. ). Quindi ho aggiunto una Icosfera con 2 suddivisioni.
Sono stato molto attento affinch´e il tentacolo fosse posizionato al centro della sfera, e che sia gli assi dei tentacoli che quelli della sfera fossero allineati con gli assi del Mondo [World] come sopra ( Riferimento locale del tentacolo. ).
452
CAPITOLO 65. DUPLICAZIONE AI VERTICI [DUPLIVERTS]
Figura 65.13: Lo strano tentacolo e la versione con SubSurfs.
Poi, ho semplicemente reso la icosfera genitrice del tentacolo. Si seleziona la sola icosfera e la si rende DupliVert nel pannello Anim Settings ( Le Duplicazioni ai Vertici non ruotate. ). Si preme il pulsante Rot per ruotare i tentacoli ( Le Duplicazioni ai Vertici ruotate. ).
Figura 65.14: Riferimento locale del tentacolo.
Figura 65.15: Le Duplicazioni ai Vertici non ruotate. Ancora una volta per fare in modo che i tentacoli puntino verso l’esterno bisogna guardare attentamente gli assi. Quando si applica Rot , Blender prova ad allineare uno degli assi del tentacolo col vettore normale al vertice della mesh genitore.
65.2. DUPLIVERTS PER MODELLARE UN SINGOLO OGGETTO
453
Non ci si deve preoccupare del cerchio Genitore dell’uomo di Magritte, ma ci si deve preoccupare qui della Sfera, e si noter`a che essa non partecipa al rendering. Probabilmente si vorr`a aggiungere un’altra sfera per il rendering per completare il modello.
Figura 65.16: Le Duplicazioni ai Vertici ruotate.
Si pu`o sperimentare un po’ coi tentacoli in Modo Edit, spostandone i vertici lontano dal centro della sfera, ma il centro dell’oggetto dovrebbe sempre restare al centro della sfera per avere una figura simmetrica. Si faccia attenzione, per`o, a non ingrandire o ridurre lungo un asse nel Modo Oggetto dato che si potrebbero ottenere dei risultati imprevedibili negli oggetti Duplicati ai Vertici premendo il pulsante Rot ,. Una volta finito il modello e sarete soddisfatti dei risultati, si potr`a selezionare il tentacolo e premere SHIFT-CTRL-A e cliccare sulla voce di men` u Make duplis real ? per trasformare le copie virtuali in mesh reali ( Il nostro modello completo. ).
Figura 65.17: Il nostro modello completo.
454
CAPITOLO 65. DUPLICAZIONE AI VERTICI [DUPLIVERTS]
Capitolo 66
Duplicazione nei Fotogrammi [DupliFrame] I DupliFrame si possono considerare in due modi: uno strumento di disposizione o uno per la modellazione. In un modo, I DupliFrame sono molto simili alle Duplicazioni ai Vertici [DupliVerts]. La sola differenza `e che coi DupliFrame gli oggetti si dispongono facendoli seguire una curva invece che i vertici di una mesh. DupliFrame sta per DUPLIcation at FRAMES (Duplicazione ai Fotogrammi) ed `e una tecnica di modellazione molto utile per gli oggetti che devono essere ripetuti lungo un percorso, come le traversine di legno della ferrovia, le assi di un recinto o gli anelli di una catena, ma anche per modellare oggetti curva complessi come cavatappi, conchiglie e spirali.
66.1
Modellare coi DupliFrame
Modelleremo una catena con i suoi anelli usando i DupliFrame. Le prime cose vengono prima. Per spiegare l’uso dei DupliFrame come tecnica di modellazione, inizieremo modellando un singolo anello. Per fare ci`o, nella vista frontale si aggiunge una Curva Circolare [Curve Circe] (B´ezier o NURBS, qualsiasi). In Modo Edit, la si suddivide una volta e si spostano un po’ i vertici per fargli assumere il profilo di un anello di una catena ( Il profilo dell’anello. ). Si esce dal Modo Edit e si aggiunge un oggetto Superficie Circolare [Surface Circle] ( La sezione trasversale dell’anello. ). Le superfici NURBS sono ideali per quest’uso, in quanto, dopo la creazione, gli si pu`o cambiare facilmente la risoluzione, e se necessario, si ` molto importante non confondere Curve Circle possono convertire in un oggetto mesh. E con Surface Circle. La prima funzioner`a come profilo dell’anello ma non ci consentir`a di fare il rivestimento nel passaggio successivo. La seconda sar`a la sezione trasversale per il rivestimento.
455
456
CAPITOLO 66. DUPLICAZIONE NEI FOTOGRAMMI [DUPLIFRAME]
Figura 66.1: Il profilo dell’anello. Si imparenta la superficie circolare alla curva circolare (il profilo dell’anello) come un Normal parent (genitore) (Non un vincolo Curve Follow). Si seleziona la curva e nel Contesto Object e nel Pannello Anim Settings si premono CurvePath e CurveFollow ( Impostazioni della curva: Curve Path e Curve Follow. ). Probabilmente la superficie circolare apparir`a spostata. Basta selezionarla e premere ALT-O per cancellarne l’origine ( Rimozione dell’origine. ). Figura 66.2: La sezione trasversale dell’anello.
Figura 66.3: Impostazioni della curva: Curve Path e Curve Follow. Se si preme ALT-A il cerchio seguir`a la curva. Probabilmente, ora, si dovranno regolare i pulsanti dell’animazione TrackX, Y, Z e UpX, Y, Z per fare in modo che il cerchio vada perpendicolarmente al percorso curvo ( Puntamento degli assi giusti. ).
66.1. MODELLARE COI DUPLIFRAME
457
Figura 66.4: Rimozione dell’origine.
Ora si seleziona la Superficie Circolar [Surface Circle] e si va nel Pannello Anim Settings e si preme DupliFrames . Un numero di istanze della sezione circolare trasversale apparir`a lungo la curva percorso ( DupliFrames! ).
Figura 66.5: assi giusti.
Puntamento degli
Il numero di cerchi che si vogliono si pu`o regolare coi pulsanti DupSta , DupEnd , DupOn e DupOff . Questi pulsanti controllano l’Inizio [Start] e la Fine [End] della duplicazione, il numero di duplicati di ogni volta ed anche la distanza [Offset] tra le duplicazioni. Se si vuole che l’anello sia aperto, si possono provare diverse valori per DupEnd ( I valori per il DupliFrame. Nota DupEnd: 35 termina l’anello prima che finisca la curva. ).
458
CAPITOLO 66. DUPLICAZIONE NEI FOTOGRAMMI [DUPLIFRAME]
Figura 66.6: DupliFrames!
Per trasformare la struttura in un vero oggetto NURBS, si seleziona la Superficie Circolare e si preme CTRL-SHIFT-A . Apparir`a un men` u per la conferma OK? Make Dupli’s Real ( Rendere Reali i Duplicati. ).
Figura 66.7: I valori per il DupliFrame. Nota DupEnd: 35 termina l’anello prima che finisca la curva.
Non si deselezioni niente. Ora si ha un insieme di NURBS che formano il profilo dell’oggetto, ma non `e ancora rivestito, quindi non lo rivedr`a in un’anteprima ombreggiata o in un rendering. Per farlo, si devono unire tutti gli anelli in un oggetto. Senza deselezionare alcun anello, si preme CTRL-J e si conferma il men` u che apparir`a. Ora, si entra in Modo Edit per l’oggetto appena creato e si preme AKEY per selezionare tutti i vertici ( Il rivestimento dell’anello. ). Siamo pronti per ricoprire il nostro oggetto. Si preme FKEY e Blender generer` a automaticamente l’oggetto solido. Questa operazione `e chiamata Skinning (Rivestimento) ed `e completamente descritta nel capitolo sul rivestimento .
66.2. DISPOSIZIONE DI OGGETTI COL DUPLIFRAME
Figura 66.8: Duplicati.
459
Rendere Reali i Uscendo dal Modo Edit, si potr`a vedere l’oggetto nella vista ombreggiata. Ma `e molto nero. Per porvi rimedio, si entra in Modo Edit e si selezionano tutti i vertici, quindi si preme WKEY . Si sceglie Switch Direction dal men` u e di esce dall’Edit. Ora l’oggetto apparir`a correttamente ( L’anello rivestito. ). L’oggetto creato `e un oggetto NURBS. Questo significa che lo si pu`o continuare a modificare. Cosa pi` u interessante, si pu`o anche controllare la risoluzione dell’oggetto NURBS con la Pulsantiera di Edit.
Qui si pu`o impostare la risoluzione dell’oggetto usando ResolU e ResolV , in modo da poterlo modificare lavorando con l’oggetto in bassa risoluzione, e quindi impostarlo ad alta risoluzione per il rendering finale. Gli oggetti NURBS sono anche molto piccoli come dimensione del file delle scene salvate. Si confronti la dimensione di una scena NURBS con la stessa scena in cui tutte le NURBS sono state convertite ( ALT-C ) in mesh.
Figura 66.9: dell’anello.
Il rivestimento
Alla fine si pu` o cancellare la curva usata per dare la forma all’anello, dato che non verr`a pi` u usata.
66.2
Disposizione di oggetti col DupliFrame
Ora continueremo modellando la catena stessa. Per questo si aggiunge una CurvaPercorso [Curve Path] (si pu` o usare una curva diversa ma questa da risultati migliori). In Mode Edit, si spostano i suoi vertici fino ad avere la forma desiderata per la catena ( Uso di una Curva-Percorso [Curve Path] per modellare la catena. ). Se non si usa
460
CAPITOLO 66. DUPLICAZIONE NEI FOTOGRAMMI [DUPLIFRAME]
una Curve Path, si dovrebbe attivare il pulsante 3D nella pulsantiera di Edit per fare in modo che la catena sia veramente 3D.
Figura 66.10: L’anello rivestito. Si seleziona l’oggetto Link modellato nel passo precedente e lo si imparenta alla curva della catena, ancora come genitore normale. Dato che si sta usando una CurvePath l’opzione CurvePath nella pulsantiera dell’Animazione sar`a attivata automaticamente, non per`o l’opzione CurveFollow , quindi la si dovr`a attivare ( Le impostazioni della curva. ).
Figura 66.11: Uso di una Curva-Percorso [Curve Path] per modellare la catena.
Se l’anello `e spostato, lo si seleziona e si preme ALT-O per cancellare l’origine. Finora abbiamo fatto poco pi` u che animare l’anello lungo la curva. Si pu`o avere conferma avviando l’animazione con ALT-A .
Ora, con l’anello selezionato ancora una volta, si va nel Contesto Object e nel Pannello Anim settings . Qui, si attiva l’opzione DupliFrames come prima. Si modificano i Pulsanti Numerici DupSta: , DupEnd: e DupOf: . Normalmente si user`a DupOf: 0 ma per una catena, se usando DupOf: 0 gli anelli sono troppo vicini gli uni agli altri si dovrebbe ridurre il valore PathLen per la curva del percorso nel Contesto di Editing e nel Pannello Curve and Surface e cambiare di conseguenza il valore DupEnd: per l’anello inserendovi questo numero ( Regolazione dei DupliFrame. ).
66.3. ANCORA ANIMAZIONE E MODELLAZIONE
Figura 66.12: della curva.
Le impostazioni
Figura 66.13: DupliFrame.
Regolazione dei
461
Si deve fare in modo che l’anello ruoti lungo la curva di animazione, quindi si deve ruotare ciascun anello di 90 gradi rispetto al precedente anello. Per fare ci`o, si seleziona l’anello e si preme Axis nella pulsantiera di Edit per palesare gli assi dell’oggetto. Si inserisce un keyframe di rotazione nell’asse parallelo alla curva. Ci si sposta di 3 o 4 frames in avanti e si ruota lungo tale asse premendo RKEY seguito da XKEY XKEY ( XKEY due volte), YKEY - YKEY , o ZKEY - ZKEY per ruotare secondo l’asse locale X, Y o Z ( La rotazione dell’anello. ).
Figura 66.14: La rotazione dell’anello.
Si apre una finestra IPO per modificare la rotazione dell’anello lungo il percorso. Si preme Extrapolation Mode in modo che l’anello ruoter`a continuamente fino alla fine del percorso. Si pu`o modificare la curva della IPO per far s`ı che l’anello ruoti esattamente di 90 gradi ogni uno, due o tre anelli (ciascun anello `e un frame). Si usa NKEY per posizionare esattamente un nodo a X=2.0 e Y=9.0, che corrisponde a 90 gradi in un frame (dal frame 1 al 2).
Ora abbiamo una bella catena ( La catena fatta col DupliFrame. )!
66.3
Ancora Animazione e Modellazione
Non c’`e un limite nell’uso della Curve Paths per modellare le cose. Queste vengono usate per la propria convenienza, ma in qualche caso non sono necessarie.
462
CAPITOLO 66. DUPLICAZIONE NEI FOTOGRAMMI [DUPLIFRAME] Nella vista frontale si inserisce una superficie circolare [surface circe] (si dovrebbe sapere perch´e, ora Una Superficie Circolare. ). La si suddivide una volta, per squadrarla un po’. Si spostano e si dimensionano un po’ i vertici per dargli la forma di un trapezoide ( Una sezione trasversale trapezoidale. ).
Figura 66.15: La catena fatta col DupliFrame. Figura 66.16: Una Superficie Circolare. Quindi si ruotano tutti i vertici di pochi gradi. Tutti i vertici si afferrano e si spostano di qualche unit` a pi` u a destra o a sinistra in X (ma nella stessa posizione Z). Si pu`o usare CTRL per farlo in modo preciso. Si esce dal Modo Edit ( La sezione trasversale trapezoidale, ruotata e traslata. ).
Figura 66.17: Una sezione trasversale trapezoidale. Al momento la sola cosa da fare `e modificare le curve IPO dell’animazione. Quindi questo si potrebbe intitolare Modellazione con l’Animazione, volendo. Non andremo mai in Modo Edit per la superficie. Ci si sposta nella vista dall’alto. Si inserisce un Fotogramma Chiave [KeyFrame] per la rotazione nel frame 1, si va avanti di 10 frames e si ruota la superficie di 90 gradi sulla sua nuova origine. Si inserisce un altro KeyFrame. Si apre una finestra IPO, e si imposta la rotazione IPO in Modo Estrapolazione ( La IPO della Rotazione per la sezione trasversale. ).
66.3. ANCORA ANIMAZIONE E MODELLAZIONE
463
Figura 66.18: La sezione trasversale trapezoidale, ruotata e traslata. Si torna al frame 1 e si inserisce un keyframe per la posizione [Location]. Ci si sposta nella vista frontale. Si va al frame 11 (basta premere UPARROW ) e si sposta la superficie in Z di un paio di unit`a. Si inserisce un nuovo keyframe per Location. Nella finestra IPO si imposta LocZ nel Modo Estrapolazione ( La IPO di traslazione per la sezione trasversale. ). Ora, ovviamente, si va nella pulsantiera dell’Animazione e si preme DupliFrames . Si Figura 66.19: La IPO della Rotazione per potr`a vedere come la superficie sale in una spirale nello spazio 3D formando qualcosa di la sezione trasversale. ` carina, ma si vuole simile ad una molla. E di pi` u. Si disattiva DupliFrames per continuare. Nel frame 1 si riduce la superficie fino a quasi zero e di inserisce un keyframe per la dimensione [Size]. Si va avanti al frame 41, e si cancella il dimensionamento con ALT-S . Si inserisce un nuovo keyframe per la dimensione. Questa IPO non star`a in modo estrapolazione dato che non la si vuole dimensionare all’infinito, giusto ( La IPO Dimensione [Size] per la sezione trasversale. )? Figura 66.20: La IPO di traslazione per la sezione trasversale.
Se ora si attiva il DupliFrame si vedr`a un bellissimo profilo di un cavatappi ( Cavatappi coi DupliFrame attivati. ). Ancora una volta gli ultimi passi sono: Rendere le duplicazioni reali, Unire le superfici, Selezionare tutti i vertici e rivestire, Cambiare la direzione delle normali se necessario e uscire dal Modo Edit ( Cavatappi con i Duplicati resi reali. ).
464
CAPITOLO 66. DUPLICAZIONE NEI FOTOGRAMMI [DUPLIFRAME]
Figura 66.21: La IPO Dimensione [Size] per la sezione trasversale.
Figura 66.22: attivati.
Cavatappi coi DupliFrame
Si pu` o vedere questo che `e stato un semplice esempio. Con ulteriori modifiche delle curve IPO si possono ottenere degli effetti molto interessanti e complessi. Basta usare la propria immaginazione.
66.3. ANCORA ANIMAZIONE E MODELLAZIONE
Figura 66.23: Cavatappi con i Duplicati resi reali.
465
466
CAPITOLO 66. DUPLICAZIONE NEI FOTOGRAMMI [DUPLIFRAME]
Parte XIII
SEQUENZE
467
469 Una funzione di Blender spesso sottovalutata `e l’Editor di Sequenze. Questo `e un sistema completo di video editing che consente di combinare pi` u canali video ed aggiungervi degli effetti. Anche se ha un limitato numero di operazioni, si possono usare per creare degli arrangiamenti video fortissimi (specialmente in combinazione con la potente animazione di Blender!) E, inoltre, `e estensibile tramite il sistema di Plugin molto simile ai plugin della Texture.
470
Capitolo 67
Editor di Sequenze Video 67.1
Imparare ad usare l’Editor di Sequenze
Questa sezione illustra un esempio pratico di editing video esponendo la maggior parte delle funzionalit` a intrinseche dell’Editor di Sequenze. Verranno messe assieme diverse animazioni fatte con Blender per ottenere degli effetti sbalorditivi. Uno dei fotogrammi dell’animazione risultante `e riprodotto in Il risultato finale.
67.2
Prima Animazione: due cubi Iniziamo con qualcosa di semplice e vediamo dove porta. Si inizia con Blender pulito e si rimuove il piano di default. Si divide la finestra 3D e se ne cambia una in vista telecamera con NUM0 . Nella vista dall’alto, si aggiunge un cubo e lo si sposta appena fuori il rettangolo tratteggiato che indica la vista telecamera ( Rimozione del cubo dalla vista della telecamera. )
Si vuole creare una semplice animazione del cubo in movimento nel campo visiFigura 67.1: Il risultato finale. vo, ruota una volta e quindi scompare. Si imposta la fine dell’animazione a 61 (si imposta il valore di End: nel Pannello Anim del Contesto della Scena, Pulsantiera del Rendering F10 ) e si inserisce un Fotogramma Chiave [KeyFrame] LocRot sul frame 1 con IKEY e selezionando LocRot dal men` u che appare - questo memorizzer`a sia la posizione che la rotazione del cubo in questo fotogramma. Si va al frame 21 (si preme UPARROW due volte) e si sposta il cubo pi` u vicino alla 471
472
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
telecamera. Si inserisce un altro KeyFrame. Sul Frame 41, si mantiene il cubo nella stessa posizione ma ruotato di 180 gradi e si inserisce un altro KeyFrame.
Infine sul frame 61 si sposta il cubo fuori dalla vista, sulla destra e si inserisce l’ultimo KeyFrame.
Figura 67.2: Rimozione del cubo dalla vista della telecamera.
Si avr`a necessit`a di due versioni dell’animazione: una con un materiale pieno ed una a ’Fil-di-Ferro’. Per il materiale, ho usato un semplice bianco a cui ho aggiunto due lampade luminose - una bianca ed una blu col valore di energia di due ( Un rendering del cubo pieno... ). Per il cubo a ’Fil-di-Ferro’ [WireFrame], si imposta il tipo di materiale a ’Wire’ e si cambia il colore in verde ( ...ed un rendering del cubo a Fil-di-Ferro. ).
Figura 67.3: Un rendering del cubo pieno... Si inserisce un nome appropriato per il file (per esempio ’cube solid.avi’), nel campo Pics (il primo pulsante testo in alto) del Contesto Scena sub-contesto Render Pannello Output ( F10 ) ( Imposizione del nome del file di output dell’animazione. ).
67.3. PRIMA SEQUENZA: CUBO A FIL-DI-FERRO RITARDATO
473
Figura 67.4: ...ed un rendering del cubo a Fil-di-Ferro. Si esegue il rendering del cubo pieno bianco. Questo verr`a salvato sul disco. Lo si salva come file AVI. Si usi possibilmente AVI Raw per la qualit`a pi` u alta - la compressione dovrebbe essere l’ultima cosa nel processo di editino - altrimenti, se manca spazio sul disco su usa AVI Jpeg o AVI Codec, il primo `e meno compresso e quindi spesso con una qualit`a maggiore. Figura 67.5: Imposizione del nome del file di output dell’animazione.
Si cambia il materiale in Fil-di-Ferro verde, si effettua ancora il rendering dell’animazione e salvando il risultato come cube wire.avi.
Ora sull’hard disk si hanno ’cube solid.avi’ e ’cube wire.avi’. Questo basta per il nostro primo editing di sequenza.
67.3
Prima Sequenza: Cubo a Fil-di-Ferro ritardato
La prima sequenza user` a solo l’animazioni a ’Fil-di-Ferro’ - due volte - per creare un effetto interessante. Si creeranno pi` u strati sul video, dando ad essi una piccola differenza di tempo e mettendoli insieme. Questo simuler`a l’effetto ’cometa’ che si vede sugli schermi di un radar. Si avvia un file Blender nuovo e si cambia la finestra 3D in una finestra dell’Editor di Sequenze premendo SHIFT-F8 o selezionando l’icona dell’Editor di Sequenze della finestra il Men` u del Tipo di Finestra. Si aggiunge un filmato alla finestra premendo SHIFT-A e selezionando Movie ( L’inserimento di una striscia video ) o utilizzando la voce di Men` u Add>>Movie . Dalla Finestra per la Selezione di Files che appare, si seleziona l’animazione a ’Fil-di-Ferro’ del cubo creata precedentemente. Dopo aver selezionato e caricato il file del filmato, si vedr`a una striscia blu che lo rappresenta. Dopo aver aggiunto una striscia, si andr`a automaticamente in modalit`a traslazione [grab] e la striscia segue il mouse. Sulla barra appare sia il fotogramma
dall’header
474
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
iniziale che quello finale.
Si guardi meglio lo schermo dell’Editor di Sequenze. Orizzontalmente si vede il valore del tempo. Verticalmente, si vedono i ’canali’ video. Ciascun canale pu`o contenere un’immagine, un filmato o un effetto. Stratificando i diversi canali uno sull’altro, ed applicando gli effetti, si possono miscelare assieme diverse sorgenti. Se si seleziona la striscia di un video, il suo tipo, lunghezza, ed il nome del file, saranno stampati in fondo alla finestra.
Figura 67.6: L’inserimento di una striscia video
Si sposti la striscia video e la si faccia partire al frame 1. La si ponga sul canale 1, quello sulla fila in basso e si preme LMB per completare ( Disposizione della striscia. ).
Fotogrammi iniziali, finali e diapositive:: Si possono aggiungere diapositive iniziali e finali sele
Si duplica la striscia del filmato con SHIFT-D , si pone il duplicato nel canale 2 e lo si sposta di un frame sulla destra. Ora si hanno due strati di video uno sull’altro, ma solo uno sar`a mostrato. Per miscelare i due strati si dovr` a applicare loro un effetto.
Si selezionano entrambi le strisce e si me SHIFT-A . Si seleziona ADD dal nu che appare ( Miscelazione delle strisce video. ) Altrimenti si Add>>Effect>>Add .
Figura 67.7: Disposizione della striscia.
premedue usa
Per vedere cos’`e avvenuto si divide la finestra dell’editor e si seleziona il pulsante nell’header ( Il pulsante per l’anteprima dell’Editor di Sequenze. ). Questo attiver`a l’anteprima automatica ( Inserimento della finestra di anteprima. ) Se si seleziona un frame nella finestra dell’editor di sequenze con le strisce, automaticamente sar`a aggiornata l’anteprima (con tutti gli effetti applicati!).
67.3. PRIMA SEQUENZA: CUBO A FIL-DI-FERRO RITARDATO
475
Figura 67.8: Miscelazione delle due strisce video.
Figura 67.9: Il pulsante per l’anteprima dell’Editor di Sequenze.
Se si preme ALT-A nella finestra dell’anteprima, Blender avvier`a l’animazione. (Il rendering degli effetti la prima volta richiede molto tempo di elaborazione, quindi non ci si aspetti un’anteprima in tempo reale!).
Anteprima senza
Figura 67.10: Inserimento della finestra di anteprima. questa animazione! Si duplica un altro strato del film e lo si pone nel canale 4. Lo si aggiunge ad un effetto ADD esistente nel canale video 3 con un nuovo effetto ADD. Si ripete ci` o una volta e si avranno quattro cubi a ’Fil-di-Ferro’ nella finestra di anteprima ( La sequenza con 4 strisce del cubo a Fil-di-Ferro messe assieme. ). Tutti i cubi hanno la stessa luminosit`a, ma io voglio ottenere come una attenuazione della luminosit` a. Questo si prepara facilmente aprendo una finestra IPO da qualche parte ( F6 ) e selezionando l’icona della sequenza nel suo Men` u del Tipo di IPO ( Il
Ora `e il momento di aggiungere pi` u cagnara a
476
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
pulsante della IPO della sequenza. ).
Figura 67.11: La sequenza con 4 strisce del cubo a Fil-di-Ferro messe assieme. Si seleziona la prima striscia aggiunta (quella nel canale 3), si tiene premuto CTRL e click con LMB nella Finestra IPO su un valore di 1. Questo imposta la luminosit`a di quest’operazione add al massimo. Si ripete questo per altre due strisce, ma, per ciascuno di essi, si diminuisce un po’ il valore, diciamo circa 0.6 e 0.3 ( Definizione della luminosit` a di uno strato con una IPO. ) Figura 67.12: Il pulsante della IPO della sequenza.
A seconda dei valori di ADD che si sono appena impostati, il risultato dovrebbe assomigliare a quello mostrato in Quattro cubi a ’Fil-di-Ferro’ combinati con gli effetti di dissolvenza [fading].
Figura 67.13: Definizione della luminosit` a di uno strato con una IPO.
67.4. SECONDA ANIMAZIONE: UN CUBO PIENO IN RITARDO
477
Ora si hanno gi` a 7 strisce e si deve solo avviare la sequenza! Si pu`o immaginare come lo schermo diventi ben presto sovraffollato! Per rendere il progetto pi` u gestibile, si selezionano tutte le strisce (anche qui funzionano ( AKEY e BKEY ), si preme MKEY e quindi ENTER o click sulla voce Make Meta . Altrimenti si pu`o usare la voce di Menu Strip>>Make Meta Strip . Le strisce saranno combinate in una meta-striscia, e possono essere copiate e spostate tutte assieme. Con la meta-striscia selezionata, si preme NKEY e si immette un nome, per esempio ’Wire/Delay’, per ricordare meglio cosa sia ( Una META striscia con nome. )
Figura 67.14: Quattro cubi a ’Fil-di-Ferro’ combinati con gli effetti di dissolvenza [fading].
67.4
Seconda Animazione: Un cubo pieno in ritardo Ora `e il momento di usare delle maschere. Si vogliono creare due aree in cui l’animazione giri con la differenza di un frame di tempo. Questo crea un interessantissimo effetto simile alla visione attraverso un vetro.
Figura 67.15: Una META striscia con nome.
Si comincia creando un’immagine bianco e nero simile a quella in La maschera dell’animazione. Si pu`o usare un programma di disegno, o lo si pu`o fare in Blender. Il modo pi` u semplice per farlo in Blender consiste nel creare un materiale bianco con un valore di emissione [emit] a 1 o un materiale bianco senza ombre [shadeless] su qualche curva Circolare smussata [beveled]. In questo modo, non si deve sistemare alcuna lampada. Si salvi l’immagine come mask.tga.
478
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Figura 67.16: La maschera dell’animazione.
Ci si sposti nell’editor di sequenza e si metta da una parte la meta-striscia creata prima (la riposizioneremo in seguito). Si aggiunge l’animazione del cubo pieno ( SHIFT-A >>Movie ). Quindi, si aggiunge l’immagine della maschera. Per default, nell’editor della sequenza, un’immagine ferma avr`a una lunghezza di 50 frames. La si cambi in modo da farla combaciare con la lunghezza dell’animazione del cubo con RMB e GKEY per trascinare le frecce ai lati della striscia dell’immagine col tasto destro del mouse. Ora si selezionino entrambe le strisce (tenendo premuto SHIFT ), si preme SHIFT-A e aggiungendo un effetto SUB (sottrazione) ( Sottrazione della maschera dal video. )
Ora nella finestra di anteprima si potr`a vedere l’effetto; le aree dove la maschera `e bianca sono state rimosse dal disegno ( La maschera sottratta. ).
Figura 67.17: Sottrazione della maschera dal video.
Questo effetto ora `e pronto; si selezionano tutte e tre le strisce e le si converte in una META striscia premendo MKEY . Ora si ripetono i passaggi precedenti, per`o questa volta non si user`a l’effetto SUB ma l’effetto MUL (moltiplicazione) ( La maschera moltiplicata. ) Si vedr`a l’immagine originale dove la maschera `e bianca. Ancora una volta si trasformano le tre strisce di questo effetto in una metastriscia.
67.4. SECONDA ANIMAZIONE: UN CUBO PIENO IN RITARDO
479
Figura 67.18: La maschera sottratta.
Per il passo finale ho combinato assieme i due effetti. Si sposta una delle meta strisce sopra l’altra e le si da una differenza di tempo di un frame. Si selezionano entrambe le strisce e si aggiunge un effetto ADD ( Inserimento dei due effetti. ).
Figura 67.19: La maschera moltiplicata.
Nella finestra di anteprima, si pu`o ora vedere il risultato della combinazione dell’animazione e della maschera ( Gli strati traslati due volte. ). Quando pronti, si selezionano le due meta-strisce e l’effetto ADD e si converte il tutto in una nuova meta-striscia. (Esatto! Si possono creare delle meta-strisce dentro metastrisce!)
Entrare in una Meta Striscia: To edit the contents of a meta strip, select it and press TAB . Per editare il cont
480
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Figura 67.20: Inserimento dei due effetti.
67.5
Terza Animazione: un tunnel Si vuole un terzo ’effetto’ per arricchire ulteriormente l’animazione, un ’tunnel’ 3D da usare come effetto di sottofondo. Questo `e molto semplice da fare. Primo, si salvi il lavoro attuale - se ne avr`a bisogno in seguito!
Figura 67.21: Gli strati traslati due volte.
Si inizia una nuova scena ( CTRL-X ) e si cancella il piano di default. Si va in vista frontale ( NUM1 ). Si aggiunge un cerchio di 20 vertici a circa 10 unit`a sotto la linea di z=0 (la linea rosa sul proprio schermo) ( Inserimento di un cerchio di 20 vertici. ).
Stando in Modo Edit, ci si sposta nella vista laterale ( NUM3 ) si accosta il cursore nell’origine ponendolo decisamente al punto x,y,z=0 e si preme SHIFT-S . Si seleziona Curs>>Grid . Si vuol trasformare il cerchio in un tubo circolare, o toro. Per farlo, user` o la funzione Spin. Si va nel Contesto di Editing ( F9 ) e si immette il valore 180 nel Pulsante Numerico Degr e ’10’ nel Pulsante Numerico Steps nel Pannello Mesh Tools . Premendo Spin i vertici selezionati ruoteranno intorno al cursore di 180 gradi ed in 10 passi ( Ribaltamento del cerchio attorno al cursore. ).
67.5. TERZA ANIMAZIONE: UN TUNNEL
481
Figura 67.22: Inserimento di un cerchio di 20 vertici. Si esce dal Modo Edit ( TAB ). Con le impostazioni di default, Blender ruoter`a e scaler`a attorno al centro dell’oggetto, mostrato come un piccolo punto. Tale punto `e giallo quando l’oggetto `e deselezionato e rosa quando `e selezionato. Col cursore ancora nell’origine, si preme il pulsante Center Cursor nella pulsantiera di Edit per spostare il centro dell’oggetto all’attuale posizione del cursore. Si preme RKEY e si ruota il tubo di 180 gradi attorno al cursore. Ora `e il momento di muovere la telecamera nel tunnel. Si apra un’altra finestra 3D e la porti in vista telecamera ( NUM0 ). Si posizioni la Figura 67.23: Ribaltamento del cerchio telecamera nella finestra con la vista laterale in attorno al cursore. modo da combaciare con La telecamera dentro il tunnel. , la vista-telecamera dovrebbe coincidere con la La vista telecamera dell’interno del tunnel. .
I bordi scomparsi: Se non appaiono tutti i bordi del tunnel, si pu`o forzare Blender a disegnarli selezionando il P
Figura 67.24: La telecamera dentro il tunnel. er evitare errori, si effettua questo rendering come un’animazione ripetitiva. Se ne posso
482
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
quindi aggiungere tante copie quante se ne voglio nella compilation video finale.
Figura 67.25: La vista dell’interno del tunnel.
telecamera
Ci sono due cose da tenere in mente nel creare un’animazione ripetuta. Primo, ci si assicuri che non ci siano ’salti’ nell’animazione quando ricomincia. Per questo, si deve porre cura nella creazione dei KeyFrames e nell’impostazione della lunghezza dell’animazione. Si creano due KeyFrames: uno con la rotazione attuale del tubo sul frame 1, ed un altro ruotato di 90 gradi (si prema CTRL mentre si ruota!) sul frame 51. Nell’animazione, il frame 51 `e ora uguale al frame 1, quando, quindi, si effettua il rendering si dovr`a omettere il frame 51 ed effettuare il rendering dall’ 1 al 50.
Si noti che la rotazione di 90 gradi non `e scelta a caso, ma perch´e il tunnel `e periodico con un periodo di 18, quindi bisogna ruotarlo do un multiplo di 18, e 90 lo `e, per garantire che il frame 51 sia esattamente lo stesso del frame 1. Secondo, per avere un moto lineare bisogna rimuovere le variazioni della rotazione. Questo lo si pu` o vedere nella finestra IPO del tubo dopo l’inserimento dei KeyFrames della rotazione. La morbidezza della IPO comincia e finisce con una funzione coseno. Si vuole che sia dritta. Per farlo si seleziona la curva di rotazione, si entra in Modo Edit ( TAB ) si selezionano tutti i vertici ( AKEY ) e si preme VKEY (’Vettore’) per trasformare la curva in una retta ( La IPO di rotazione del tunnel senza variazioni d’inizio e di fine. ). Per creare un effetto pi` u spettacolare, si seleziona la telecamera stando nella Vista Telecamera ( La rotazione della telecamera per un effetto pi` u spettacolare. ). La telecamera stessa viene mostrata come un riquadro non punteggiato. Si preme RKEY e la si ruota un po’. Se ora si avvia l’animazione la si vedr`a senza cuciture. Come tocco finale, si aggiunge al tubo un materiale a ’Fil-di-Ferro’ blu e si aggiunge una piccola lampada dove `e posta la telecamera. Tirando il valore Dist della lampaFigura 67.26: La IPO di rotazione del da (distanza di attenuazione) si pu`o fare in tunnel senza variazioni d’inizio e di fine. modo che la fine del tubo scompaia nel buio senza dover lavorare con la foschia ( Un tunnel scavato. ). Una volta soddisfatti del risultato, si effettua il rendering dell’animazione
67.6. SECONDA SEQUENZA: UTILIZZO DEL TUNNEL COME SFONDO
483
e la si salva come ’tunnel.avi’.
Figura 67.27: Rotate the camera to get a more dramatic effect
67.6
Seconda Sequenza: Utilizzo del tunnel come sfondo
Figura 67.28: Un tunnel scavato.
Si ricarichi il file Blender della compilation video. Il tunnel creato nell’ultimo passo verr`a usato come fondale per l’intera animazione. Per renderlo pi` u interessante si modifica un effetto ADD per cambiare il tunnel in un fondale pulsante. Si prepara un disegno completamente nero e lo si chiami ’black.tga’ (si provi a premere F12 in un file Blender vuoto. Lo si salvi con F3 , ma ci si assicuri di aver selezionato TGA come formato del file nella pulsantiera del Rendering). Si aggiunga sia black.tga che l’animazione del tunnel combinandoli con l’effetto ADD ( Impostazione dell’effetto per il fondale. ).
Con l’effetto ADD selezionato, si apra una finestra IPO e si selezioni il pulsante Sequence Editor nel suo header. Dai frame 1-50, si disegni una linea irregolare usando CTRL e click destro. Ci si assicuri che i valori stiano tra 0 e 1 ( Inserimento di casualit` a con una IPO irregolare. ).
484
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Figura 67.29: per il fondale.
Impostazione dell’effetto Quando pronti, si dia uno sguardo al risultato nell’anteprima e si trasformi l’animazioni in una meta striscia. Salvare il lavoro!
67.7 Quarta Animazione: un logo saltellante Andiamo a creare un po’ di casualit`a e del caos! Si prenda il logo (basta aggiungere un oggetto testo) e facciamolo saltellare sullo schermo. Ancora, il modo pi` u facile per faFigura 67.30: Inserimento di casualit`a con re questo consiste nell’aggiungere i vertici una IPO irregolare. direttamente nella finestra IPO (si seleziona prima un canale LocX, LocY o LocZ ), ma questa volta si dovr`a essere un po’ pi` u accurati coi valori di minimo e di massimo per ciascun canale. Non ci si preoccupi del fatto che appaia troppo - nel passo successivo sar`a comunque difficilmente riconoscibile ( Il logo saltellante. ). Si salvi l’animazione come ’jumpylogo.avi’.
67.8
Quinta Animazione: barre di particelle
L’ultimo effetto user` a una maschera animata. Combinando questo col logo del passo precedente, otterr` o un effetto strisciante che introduce il logo all’animazione. Questa maschera `e fatta usando un sistema di particelle. Per impostarne uno, si cambia in
67.8. QUINTA ANIMAZIONE: BARRE DI PARTICELLE
485
vista laterale, si aggiunge un piano alla scena e, mentre questo `e selezionato, si va nella Contesto Oggetto ( F7 ) nel Tab Effects del Pannello Constraints . Si seleziona New effect e quindi si cambia l’effetto di default build in Particles . Si cambiano le impostazioni del sistema come indicato in Le impostazioni del sistema di particelle. .
Figura 67.31: Il logo saltellante.
Figura 67.32: Le impostazioni del sistema di particelle.
Si preme TAB per entrare in Modo Edit, si selezionano tutti i vertici e si suddivide il piano due volte premendo WKEY e selezionando Subdivide dal menu a comparsa. Quindi ci si sposta in una vista frontale e si aggiunga un altro piano. Lo si scali lungo l’asse X per trasformarlo in un rettangolo (si preme SKEY e si sposta il mouse orizzontalmente. Quindi si preme XKEY o MMB per ridimensionarlo solo lungo l’asse indicato). Si dia al rettangolo un materiale bianco con un valore di emissione [emit] di uno.
Ora bisogna cambiare le particelle in rettangoli usando la funzione dupliverts. Si seleziona il rettangolo, quindi l’emittente delle particelle e li si imparenta. Si seleziona solo il piano e nel Contesto Oggetto e nel Pannello Anim Settings si seleziona il Pulsante DupliVerts . Ciascuna particella viene sostituita da un rettangolo ( I rettangoli Duplicati ai Vertici (le particelle) ). Ora aggiungo un po’ di nebbia come taglio netto per dare a ciascun rettangolo una diversa tonalit` a di grigio. Si va nella pulsantiera del Mondo [World] con F5 per spostarsi nel Contesto Shading, quindi click sul pulsante e si seleziona Add New nel pannello World . Ora appaiono le impostazioni del mondo. Per default, il cielo sar` a visto come gradazione tra il blu ed il nero. Si cambi il colore dell’orizzonte (HoR, HoG, HoB) in nero puro ( L’impostazione della nebbia. ).
486
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Figura 67.33: I rettangoli Duplicati ai Vertici (le particelle)
Per attivare il rendering della nebbia, si attiva il pulsante Mist al centro dello schermo. Utilizzando la nebbia, bisogner`a indicare la distanza dalla telecamera alla quale si vedr`a. Si seleziona la telecamera, si va nella Contesto di Editing e si abilita ShowMist nel panFigura 67.34: L’impostazione della nebbia. nello Camera . Ora si va in una vista dall’alto e si ritorna nel Contesto di Shading ( F5 ) e nella Pulsantiera del Mondo [World]. Si spostano i valori dei parametri Sta: e Di: (Start e Distance rispettivamente) in modo che la foschia copra tutta l’ampiezza del flusso di particelle ( L’impostazione della nebbia. e Impostazione dei parametri della nebbia. ).
Si imposti lunghezza dell’animazione a 100 frames e se ne effettui il rendering su disco. Il file lo si chiami ’particles.avi’ ( Il rendering delle particelle rettangolari. ).
67.9. TERZA SEQUENZA: COMBINAZIONE DEL LOGO E DELLE BARRE DI PARTICELLE487
Figura 67.35: Impostazione dei parametri della nebbia.
67.9
Terza Sequenza: Combinazione del logo e delle barre di particelle
Ormai conoscete il trucco: Si ricarichi il file del progetto della compilation, si vada nella finestra dell’Editor della Sequenza e si aggiunga al progetto sia particles.avi sia logo.avi. Si combinino assieme con un effetto MUL . Dato che l’animazione del logo `e di 50 frames e quella delle particelle `e 100 frames, bisogner`a duplicare una volta l’animazione del logo ed applicarvi un secondo effetto MUL ( Il doppio uso dell’animazione del logo. e L’animazione delle particelle combinata con l’animazione del logo. ). Figura 67.36: Il rendering delle particelle rettangolari. Si combinano queste tre strisce in una metastriscia. Se si ha coraggio si possono fare un paio di copie dando loro una piccola differenza di tempo, proprio come il cubo a ’Fil-di-Ferro’.
488
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Figura 67.37: Il doppio uso dell’animazione del logo.
67.10
Sesta Animazione: ingrandimento del logo Se si decide di mettere assieme tutte le animazioni appena completate si otterr`a una compilation video veramente caotica. Ma se deve essere la presentazione della propria azienda, allora `e forse meglio presentare il logo in un modo pi` u riconoscibile. La parte finale della compilation sar`a quindi concentrata sulla produzione di un’animazione del logo che si ingrandisce molto lentamente. Lo si prepari e lo si salvi come ’zoomlogo.avi’. Si prepari anche un disegno bianco e lo si salvi come ’white.tga’.
Figura 67.38: L’animazione delle particelle combinata con l’animazione del logo.
Ora useremo l’effetto CROSS (incrocio) per avere una rapida transizione tra il nero e il bianco, quindi fra il bianco e l’animazione del logo. Infine, una transizione al nero
concluder` a la compilation. Si parte ponendo black.tga nel canale 1 e white.tga nel canale 2. Si rendano entrambi lunghi 20 frames. Si selezionino entrambi e vi si applichi un effetto di incrocio [cross]. L’incrocio cambier` a gradualmente l’immagine risultante dallo strato 1 allo strato 2. In questo caso, il risultato sar` a una transizione dal nero al bianco ( La transizione dal nero al bianco. ). Quindi si aggiunge un duplicato di white.tga allo strato 1 e lo si pone direttamente a destra di black.tga. Lo si renda lungo circa la met`a dell’originale. Si ponga l’animazione del logo ingrandito nello strato 2 e si aggiunga un effetto di incrocio tra i due. A que-
67.11. ASSEMBLAGGIO DI TUTTO QUANTO CREATO FINORA
489
sto punto, l’animazione appare come un flash bianco seguito dall’animazione del logo ingrandito ( La transizione dal bianco al video. ).
Figura 67.39: La transizione dal nero al bianco. L’ultima cosa da fare `e quella di assicurarsi che l’animazione abbia una bella transizione finale verso il nero. Si aggiunge un duplicato di black.tga e vi si applica un altro effetto incrocio. Quando pronti, si trasforma tutto in una metastriscia ( La transizione da video a nero. ).
67.11 Assemblaggio di tutto quanto creato finora ` ora di aggiunSiamo alla fine del lavoro! E gere alla compilation quello che abbiamo appena creato e vedere come funziona. La cosa pi` u importante da considerare mentre si crea la compilation finale, `e che quando si effettua il rendering dell’animazione, l’editor di sequenza ’vede’ solo lo strato superiore del video. Questo vuol dire che ci si deve assicurare o che ci sia una striscia pronta da utilizzarsi, oppure che ci sia un effetto come l’ ADD che combini le diverse strisce evidenziate. Figura 67.40: La transizione dal bianco al video.
Il fondale della compilation sar` a il tunnel oscillante. Si aggiungano alcuni duplicati della meta striscia del tunnel e la si ponga nel canale uno. Quindi si mettano assieme in una meta striscia. Non ci si preoccupi ancora della esatta durata dell’animazione; si possono
490
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
sempre duplicare ulteriori strisce del tunnel. Sopra questo, si ponga il cubo ritardato a ’Fil-di-Ferro’ nel canale 2. Si aggiunga il canale 1 al canale 2 e si metta l’effetto add nel canale 3 ( Combinazione del tunnel e del cubo a Fil-di-Ferro. ). Ora si pu`o aggiungere l’animazione del cubo pieno. Lo si pone nel canale 4, sovrapponendo l’animazione a Fil-di-Ferro nel canale 2. Vi si aggiunge l’animazione del tunnel nello strato uno. Qui le cose cominciano a farsi pi` u difficili; se si decide di lasciarlo cos`ı com’`e, l’animazione nel canale 5 (il cubo pieno assieme al tubo) si sovrapporr`a Figura 67.41: La transizione da video a all’animazione nel canale 2 (il cubo a Filnero. di-Ferro) ed il cubo a Fil-di-Ferro diverr`a invisibile all’apparire del cubo solido. Per risolvere la questione, si aggiunge il canale 3 al canale 5 ( Combinazione del tunnel, del cubo a Fil-di-Ferro e di quello pieno. ).
Figura 67.42: Combinazione del tunnel e del cubo a Fil-di-Ferro. Si avr` a spesso necessit` a di fare ulteriori operazioni per rimediare alla perdita di parti video. Questo diverr` a pi` u evidente dopo il rendering della sequenza finale. Si sposti leggermente a sinistra la finestra dell’Editor della Sequenza e si aggiunga la meta striscia con l’animazione delle particelle/logo. Si piazzi tale striscia nello strato 2 e si metta un effetto add nello strato 3. Per qualche variazione, si duplichi l’animazione a Fil-di-Ferro e la si combini con l’effetto add nello strato 3 ( Inserimento dell’animazione particelle/logo. ).
67.11. ASSEMBLAGGIO DI TUTTO QUANTO CREATO FINORA
491
Figura 67.43: Combinazione del tunnel, del cubo a Fil-di-Ferro e di quello pieno.
Ora si vada alla fine della striscia dell’animazione del tunnel. Ci dovrebbe essere abbastanza spazio da mettere l’animazione dell’ingrandimento del logo alla fine lasciando prima un po’ di spazio libero ( Inserimento dell’animazione dell’ingrandimento del logo. ). Se no, si seleziona la striscia del tunnel, si preme TAB e si aggiunge un duplicato dell’animazione alla fine. Si Preme TAB ancora per uscire dall’edit della meta striscia. Figura 67.44: Inserimento dell’animazione particelle/logo.
Avendo dello spazio libero, si potr`a aggiunger`a una copia dell’animazione del cubo pieno. Per far s`ı che appaia correttamente, bisogner`a dargli due canali add: uno per combinarlo con l’animazione delle particelle del logo, ed una per combinarla con l’animazione dell’ingrandimento del logo ( Inserimento di un ultimo dettaglio. ).
492
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Figura 67.45: Inserimento dell’animazione dell’ingrandimento del logo. La sequenza completa. mostra la sequenza completa..
67.12
Figura 67.46: Adding one last detail
Conclusione
Ora si `e pronti per il rendering finale della composizione video! Per dire a Blender di usare le informazioni dell’Editor della Sequenza mentre effettua il rendering, si seleziona il pulsante Do Sequence dalla pulsantiera del Rendering. Dopo di che, si effettua il rendering e si salva l’animazione come in precedenza (assicurandosi di non sovrascrivere alcun AVI della sequenza!).
67.13
Plugins dell’edi-
tor di sequenze Come detto in precedenza, Blender `e estendibile con il sistema di plugin, e si possono trovare due tipi di plugin: plugin Texture e Sequenza. I plugins di sequenza funzionano sulle striscie in modo simile a quello delle comuni operazioni ADD , CROSS ecc. E’ necessario avere almeno una striscia selezionata e premere SHIFT-A >>Plugin o dal menu Add>>Effect>>Plugin . Questo apre una finestra di selezione di file nella quale si pu` o selezionare il plugin desiderato. La funzionalit`a del plugin varia talmente che non `e possibile descriverli in questa sede. A differenza dei plugin di texture, i plugin di sequenza non hanno un pulsante in una qualche finestra dei pulsanti, ma i loro parametri possono essere modificati tramite NKEY .
67.13. PLUGINS DELL’EDITOR DI SEQUENZE
Figura 67.47: The complete sequence
493
494
CAPITOLO 67. EDITOR DI SEQUENZE VIDEO
Capitolo 68
Editor delle Sequenze Audio Fin da Blender 2.28 c’`e un (ancora limitato) strumento per la messa in sequenza dell’Audio. Si possono aggiungere file WAV col menu SHIFT-A e selezionando la voce Sound . Verr` a creata una striscia audio verde. Attualmente non sono presenti funzioni da mixer ad ’alto livello’. Si possono avere quante strisce Audio si vogliono ed il risultato sar`a la miscelazione di tutte loro. Si pu` o dare a ciascuna striscia un nome ed una amplificazione [Gain] (in dB) col menu NKEY . Si pu` o ammutolire una striscia o spostarla nel tempo [Pan]; -1 `e tutto a sinistra, +1 `e tutto a destra. Come fatto per gli effetti delle strisce, nella Finestra IPO si pu`o aggiungere una IPO ’Volume’ alla striscia. Qui il canale Fac `e il volume. I fotogrammi [frames] IPO 1-100 corrispondono all’intera lunghezza del campione, 1.0 `e a tutto volume, 0.0 `e totalmente muto. Blender non pu` o ancora miscelare il suono nel prodotto finale dell’Editor di Sequenze. Il risultato dell’Editor di Sequenze `e quindi un file video, se il pulsante ANIM nel pannello Anim del Contesto Scene, Sub-contesto Render `e usato come descritto in precedenza, o un file WAV separato contenente tutta la sequenza audio, nella stessa directory del file video e con lo stesso nome ma estensione .WAV . Questo file audio viene creato tramite il pulsante MIXDOWN nel pulsante Sequencer del Contesto Scene, Sub-contesto Sound. In seguito si possono mixare Video ed Audio con un programma esterno. Il vantaggio di usare l’Editor di Sequenze di Blender consiste nella facile sincronizzazione raggiungibile dalla sequenza di fotogrammi e del suono nella stessa applicazione. Per abilitare la sincronizzazione audio dopo aver importato una traccia audio, si selezioni il pulsante Scene (F10) nella finestra dei pulsanti quindi si scelga il pulsante Sound Block (piccola onda sinusoidale). Qui si vedranno gli strumenti Sync e Scrub. Sync permette a Blender di scartare fotogrammi al fine di mantenere l’audio in tempo reale quando si riproduce un’animazione nella finestra 3D. Ci`o permette di avere una visione generale grezza dei tempi della vostra animazione. Scrub permette di trascinare il contrassegno del fotogramma o di cambiare fotogrammi in ogni finestra e riprodurr`a una traccia audio a tempo in quel punto. Trascinando il contrassegno del fotogramma su di una serie di fotogrammi nell’Action editor permetter`a di ascoltare approssimativamente 495
496
CAPITOLO 68. EDITOR DELLE SEQUENZE AUDIO
dove si sentir` a un particolare suono, im modo da poter collocare chiavi di pose o forme in quel fotogramma.
Parte XIV
ESTENDERE BLENDER
497
499 A differenza di altri programmi dei quali potreste essere a conoscenza, Blender non `e monolitico e statico. Potete estendere le sue funzionalit`a senza dover modificare i sorgenti e ricompilare. Ci sono due modi di estendere Blender: con gli script Python e con i plugins binari. Il primo metodo `e quello preferito e pi` u usato. Questa parte li descriver`a entrambi.
500
Capitolo 69
Creare uno Script ’Bundled’ Per rendere uno script registrato all’interno di blender (in modo che appaia in un menu) dovete includere una intestazione (header) allo script. Consultate Registering Scripts su questa pagina — Python API Page .
501
502
CAPITOLO 69. CREARE UNO SCRIPT ’BUNDLED’
Capitolo 70
Scripts Integrati Qui di seguito ci sono gli scripts che attualmente sono rilasciati assieme a Blender.
70.1
Import
Questi scripts sono accessibili dal menu File->Import. • ac3d import.py • bvh import.py • lightwave import.py • nendo import.py • wings import.py • truespace import.py • off import.py • obj import.py • paths import.py • radiosity import.py • raw import.py • slp import.py
70.2
Export
Questi scripts sono accessibili dal menu File->Export. • ac3d export.py 503
504
CAPITOLO 70. SCRIPTS INTEGRATI • bvh export.py • DirectX8Exporter.py • DirectXExporter.py • lightwave export.py • nendo export.py • uv export.py • videoscape export.py • vrml97 export.py • wings export.py • wrl2export.py • x3d export.py • truespace export.py • obj export.py • off export.py • blender2cal3d.py • radiosity export.py • raw export.py • save theme.py
70.3
Object
Questi scripts sono accessibili dal menu Object->Scripts della finestra 3d in Object Mode.
• Axiscopy.py • batch name edit.py • knife.py • renameobjectbyblock.py • obdatacopier.py
70.4. MESH
70.4
505
Mesh
Questi scripts sono accessibili dal menu Object->Scripts della finestra 3d in Mesh Edit Mode. • Apply def.py • bevel center.py • clean mesh.py • discombobulator.py • disp paint.py • fixfromarmature.py • rvk1 torvk2.py • skin.py • unweld.py
70.5
Animation
Questi scripts sono disponibili nella finestra Scripts, menu Scripts->Animation. • armature symetry.py • bvh2arm.py • camera changer.py • envelope assignment.py • envelope symmetry.py
70.6
Help
Questi scripts sono disponibili nel menu Help. • help browser.py • help getting started.py • help manual.py • help py reference.py • help release notes.py • help tutorials.py • hotkeys.py
506
CAPITOLO 70. SCRIPTS INTEGRATI
70.7
Websites
Questi scripts sono disponibili nel menu Help->Websites. • help web blender.py • help web devcomm.py • help web eshop.py • help web usercomm.py
70.8
System
Questi scripts sono disponibili nel menu Help->System. • config.py • console.py • doc browser.py • sysinfo.py
70.9
Wizards
Questi scripts sono disponibili nella finestra degli Scripts, menu Scripts->Wizards. • kloputils.py
70.10
FaceSelect
Questi scripts sono accessibili dal menu Select della finestra 3d in Face Edit Mode. • sel same.py
70.11
UV
Questi scripts sono accessibili dalla finestra UV, menu UV. • tex2uvbaker.py
Capitolo 71
Script in Python Blender ha una caratteristica molto potente ma spesso trascurata. Dispone di un interprete Python interno pienamente equipaggiato. Questo permette agli utenti di aggiungere funzionalit` a scrivendo script in Python. Python `e un linguaggio di programmazione interpretato, interattivo e orientato agli oggetti. Comprende moduli, eccezioni, gestione dinamica dei tipi, tipi dinamici di alto livello e classi. Python combina una notevole po` stato espressamente progettato per essere usato tenza con una sintassi molto chiara. E come linguaggio di estensione per applicazioni che richiedono un’interfaccia programmabile, e per questo Blender ne fa uso. Dei due modi di estendere Blender, l’altro usa plugin binari. Gli script Python sono ` generalmente preferibile pi` u potenti, versatili e pi` u facili da capire oltre che robusti. E usare gli script Python anzich´e scrivere un plugin. Attualmente la programmazione Python ha avuto delle funzionalit`a limitate fino a Blender 2.25, l’ultimo rilascio della NaN. Quando Blender `e diventato Open Source molti dei nuovi sviluppatori si sono radunati attorno alla Fondazione decidendo di lavorarci e, con la modifica alla UI (Interfaccia Utente), l’API di Python `e probabilmente la sola ` stato riorganizzato tutto parte di Blender che ha usufruito dello sviluppo maggiore. E l’esistente e vi sono stati aggiunti molti moduli nuovi. Tale evoluzione continua e ci si deve aspettare una migliore integrazione nelle prossime versioni di Blender. Tra i vari tipi di finestre, Blender ha una Finestra Testo accessibidel Men` u dei Tipi di Finestra o tramite SHIFT-F11 . le tramite il pulsante La finestra Testo appena aperta `e grigia e vuota, con una barra degli strumenti molto semplice ( Text Toolbar. ). Da sinistra a destra ci sono il pulsante standard di selezione del Tipo di Finestra ed il men` u Finestra. Il pulsante per ingrandirla a tutto schermo, seguiti da un pulsante che mostra/nasconde i numeri di riga per il testo e il normale pulsante Men` u. Il pulsante menu ( ) permette di selezionare quale buffer di testo visualizzare, oltre a permettere di creare un nuovo buffer o caricare un file di testo. Se si sceglie di caricare un file la Finestra Testo diventa temporaneamente una Finestra per la Selezione di File, con le solite funzioni. Una volta che un buffer di testo `e in una finestra testo, questa si comporta come un editor molto semplice. Scrivendo sulla tastiera si genera un testo 507
508
CAPITOLO 71. SCRIPT IN PYTHON
nel buffer. Come al solito premendo LMB trascinando e rilasciando LMB si seleziona il testo. Sono disponibili i seguenti comandi da tastiera:
• ALT-C o CTRL-C - Copia il testo selezionato in un raccoglitore di testo; • ALT-X o CTRL-X - Taglia il testo selezionato in un raccoglitore di testo; • ALT-V o CTRL-V - Incolla il testo dal raccoglitore alla posizione del cursore nella Finestra di Testo; • ALT-S - Salva il testo come un file di testo, appare una Finestra di Selezione File; • ALT-O - Carica un testo, appare una Finestra di Selezione File; • ALT-F - Fa comparire la toolbox per la Ricerca [Find]; • SHIFT-ALT-F o RMB - Fa comparire il men` u File per la Finestra Testo; • ALT-J - Fa comparire un Pulsante Numerico in cui specificare il numero di linea a cui far saltare il cursore; • ALT-P - Esegue il testo come script Python; • ALT-U - Undo (Annulla); • ALT-R - Redo (Ripeti); • CTRL-R - Riapre (ricarica) il buffer corrente; • ALT-M - Converte il contenuto della finestra di testo in un testo 3D (massimo 100 caratteri); Il raccoglitore di taglia/copia/incolla di Blender `e separato dal raccoglitore [clipboard] di Window. Quindi normalmente non si pu` o tagliare/copiare/incollare da/verso Blender. Per accedere alla clipboard di Windows si usa SHIFT-CTRL-C SHIFT-CTRL-V Per cancellare un buffer di testo semplicemente premere il pulsante ’X’ vicino al nome del buffer, proprio come si fa per i materiali ecc. La combinazione di tasti pi` u importante `e ALTP che fa interpretare il contenuto del buffer dall’interprete Python incluso in Blender. La prossima sezione presenter`a un esempio di script in Figura 71.1: La barra degli strumenti Python. Prima di proseguire occorre notare che del testo. Blender `e fornito solo del semplice interprete Python incorporato, e di alcuni moduli specifici di Blender, quelli descritti in Python Reference .
Altri usi della finestra Testo: La finestra testo `e comoda anche quando si vuol condividere i propri file .blend co Per accedere ai moduli standard di Python occorre un’installazione completa e funzionante di Python. La si pu` o scaricare da python.org
71.1. IMPOSTAZIONE DELLA VARIABILE D’AMBIENTE PYTHONPATH
71.1
509
Impostazione della variabile d’ambiente PYTHONPATH
Accertarsi di verificare su http://www.blender.org qual `e la esatta versione di Python incorporata in Blender per evitare problemi di compatibilit`a. Blender deve anche sapere dove `e stato completamente installato Python. Questo si ottiene definendo una variabile d’ambiente chiamata PYTHONPATH .
71.1.1
Impostazione di PYTHONPATH su Win95,98,Me
Dopo aver installato Python in, ad esempio, C: PYTHON22 occorre aprire il file C: AUTOEXEC.BAT con un editor di testo ed aggiungere una linea: e riavviare il sistema.
71.1.2
Impostazione di PYTHONPATH su WinNT,2000,XP
Dopo aver installato Python in, ad esempio, C: PYTHON22 andare sull’icona Risorse del computer [My Computer] sul desktop, RMB e selezionate Propriet` a . Selezionare il tab Avanzate e cliccare sul pulsante Variabili d’Ambiente . Sotto alla casella Variabili di sistema (la seconda casella), cliccare su Nuovo . Se non si `e un amministratore si potrebbe non avere il permesso di farlo. In quel caso cliccare su Nuovo nella casella in alto. Ora, nella casella Nome variabile, inserire PYTHONPATH, nella casella Valore variabile inserire: Cliccare ripetutamente su OK per uscire da tutte le finestre. Pu`o essere necessario riavviare il sistema, dipende dal Sistema Operativo.
71.1.3
Impostazione di PYTHONPATH su Linux e altri UNIX
Normalmente Python dovrebbe essere gi`a installato. Se no, occorre installarlo. Occorre ` semplice, basta avviare una console di Python aprendo una scoprire dove si trova. E shell e scrivendo python . Inserire i seguenti comandi: e annotare l’output, dovrebbe assomigliare a Aggiungere questa al proprio file rc preferito come impostazione di variabile d’ambiente. Ad esempio, aggiungere nel proprio .bashrc la linea tutto su una sola riga. Aprire una nuova shell di login, oppure effettuare il logoff e di nuovo il login.
510
71.2
CAPITOLO 71. SCRIPT IN PYTHON
Un esempio di Python in funzione
Ora che abbiamo visto che Blender si pu`o estendere con Python e che abbiamo le basi per maneggiare gli script e per eseguirli, e prima di arrovellarsi il cervello con la guida di riferimento sull’API Python contenuta nella prossima lezione, diamo un’occhiata a un veloce esempio funzionante. Presenteremo un piccolo script per generare poligoni. Questo duplica in qualche modo l’opzione della toolbox SPACE Add>>Mesh>>Circle , ma creer`a poligoni ’pieni’, non solo il contorno. Per rendere lo script semplice ma completo conterr`a un’Interfaccia Utente Grafica (GUI) interamente scritta con le API di Blender.
71.2.1
Intestazioni, importazione di moduli e variabili globali
Le prime 32 linee di codice sono riportate di seguito Intestazione dello script Dopo i necessari commenti con la descrizione di cosa fa lo script (linee 016-022) ci sono le importazioni dei moduli Python. Blender `e il modulo principale dell’API Python di Blender. NMesh `e il modulo che fornisce l’accesso alle mesh di Blender, mentre BGL e Draw danno accesso rispettivamente alle costanti e funzioni di OpenGL e all’interfaccia a finestre di Blender. Il modulo math `e il modulo matematico di Python, ma dato che sia il modulo ’math’ che il modulo ’os’ sono incorporati in Blender non `e necessario una completa installazione di Python per questo! I poligoni sono definiti dal numero di lati che hanno e dal loro raggio. Questi parametri hanno valori che devono essere definiti dall’utente tramite la GUI per questo le linee (025-026) creano due oggetti ’pulsante generico’, con i loro valori iniziali di default. Infine, gli oggetti della GUI lavorano con eventi e generano eventi. Gli identificatori di evento sono interi definiti dal programmatore. Normalmente `e buona abitudine definire nomi facili da ricordare, come `e stato fatto nelle linee (029-031).
71.2.2
Disegno della GUI
Il codice responsabile del disegno della GUI deve risiedere in una funzione draw draw ( Disegno della GUI ). Disegno della GUI Le linee (037-039) semplicemente garantiscono l’accesso ai dati globali. La cosa veramente interessante inizia dalle linee (042-044). La finestra OpenGL `e inizializzata e la posizione corrente `e impostata a x=8, y=103. L’origine di riferimento `e l’angolo
71.2. UN ESEMPIO DI PYTHON IN FUNZIONE
511
in basso a sinistra della finestra di testi. Poi `e stampato il titolo Demo Polygon Script . Viene scritta un’ulteriore stringa (linee 047-048), poi sono creati i pulsanti di input per i parametri. Il primo (linee 049-050) `e un Pulsante Numerico, esattamente uguale a quelli delle varie finestre pulsanti di Blender. Per il significato dei tutti i parametri vedere la guida di riferimento dell’API. Brevemente ci sono l’etichetta del pulsante, l’evento generato, la posizione (x, y) e le dimensioni (larghezza, altezza), il valore, i valori minimo e massimo permessi e una stringa di testo che appare come aiuto quando si passa col mouse sopra il pulsante. Le linee (051-052) definiscono uno slider, con una sintassi molto simile. Le linee (055056) infine creano un pulsante Draw (Disegna) che generer`a il poligono e un pulsante Exit .
71.2.3
Gestione degli eventi
La GUI non sar` a disegnata, e non funzioner`a, finch´e non sar`a scritto e registrato un opportuno gestore di eventi ( Gestione degli eventi ). Gestione degli eventi Le linee (058-060) definiscono il gestore degli eventi da tastiera, in questo caso risponde al tasto QKEY con una semplice chiamata a Exit() . Pi` u interessanti sono le linee (062-072), incaricate di gestire gli eventi della GUI. Ogni volta che si usa un pulsante della GUI questa funzione viene chiamata, con il numero di evento definito per il pulsante passato come parametro. Il nucleo di questa funzione `e quindi una struttura select che esegue codice differente a seconda del numero dell’evento. Alla fine viene chiamata la funzione Register . Questa effettivamente disegna la GUI ed avvia il ciclo di cattura degli eventi.
71.2.4
Gestione delle Mesh
Infine, Intestazione dello script mostra la funzione principale, quella che crea il poligo` un editing di mesh abbastanza semplice, ma illustra molti punti importanti della no. E struttura dati interna di Blender. Intestazione dello script La prima linea importante `e la (082). Qui `e creato un nuovo oggetto mesh, poly . L’oggetto mesh `e costituito da una lista di vertici e una lista di facce, pi` u alcune altre cose interessanti. Per i nostri scopi sono sufficienti la lista di vertici e quella delle facce. Ovviamente la nuova mesh creata `e vuota. Il primo ciclo (linee 085-092) calcola le posizioni x, y, z dei NumberOfSides vertici necessari per definire il poligono. Essendo una
512
CAPITOLO 71. SCRIPT IN PYTHON
figura piatta z=0 per tutti. La linea (091) chiama il metodo Vert di NMesh per creare un nuovo oggetto vertice di coordinate (x,y,z). Tale oggetto viene poi aggiunto (linea 096) nella lista verts della Mesh poly . Infine (linee 095-096) un ultimo vertice viene aggiunto nel centro. Le linee (099-104) ora connettono questi vertici per creare le facce. Non `e necessario creare prima tutti i vertici e poi le facce. Si pu`o tranquillamente creare una nuova faccia non appena tutti i suoi vertici sono disponibili. La linea (100) crea un nuovo oggetto faccia. Un oggetto faccia ha la sua lista di vertici v (fino a 4) che lo definiscono. Le linee (101-103) aggiungono tre vertici alla lista inizialmente vuota f.v I vertici sono due vertici consecutivi del poligono e il vertice centrale. Questi vertici devono essere presi dalla lista verts della Mesh. Infine la linea (104) aggiunge la faccia appena creata alla lista faces della nostra mesh poly .
71.2.5
Conclusioni
Se si crea un file polygon.py contenente il codice sopra descritto, lo si carica in una finestra testo di Blender come abbiamo imparato nella sezione precedente e si preme ALT-P in quella finestra per eseguirlo, si vedr`a che lo script scompare e la finestra diventa grigia. Nell’angolo in basso a sinistra sar`a disegnata la GUI ( La GUI del nostro esempio. ). Selezionando, per esempio, 5 vertici e un raggio di 0.5, e premendo il pulsante Draw apparir`a un pentagono nel piano xy della finestra 3D ( Il risultato del nostro script di esempio. ).
71.3 Figura 71.2: La GUI del nostro esempio.
71.4
Python Reference
La completa Interfaccia di programmazione per applicazioni [API, Application Programmer Interface] in Python di Blender ha una documentazione di riferimento che `e essa stessa un libro. Per ragioni di spazio non `e stata inclusa qui. E’ qui :)
Scripts in Python
Ci sono pi` u di un centinaio di scripts per Blender su internet. Come i plugins, gli scripts sono molto dinamici, cambiano interfaccia, funzionalit`a e indirizzo web molto rapidamente, per cui per una lista aggiornata e per dei link attivi fate riferimento a uno dei
71.4. SCRIPTS IN PYTHON siti principali su Blender, www.blender.org o www.elysiun.com .
Figura 71.3: Il risultato del nostro script di esempio.
513
514
CAPITOLO 71. SCRIPT IN PYTHON
Capitolo 72
Il Sistema di Plugin di Blender Questa sezione riporta un approfondito riferimento alla codifica dei plugin di Texture e Sequenze di Blender.
72.1
Scrivere un Plugin Texture
In questa Sezione scriveremo un plugin di texture base e quindi percorreremo i passi per usarlo. La base dietro un plugin texture `e che si stanno fornendo alcuni input; posizione e valori delle normali cos`ı come qualche altra informazione. Viene quindi restituita l’intensit` a, il colore e/o l’informazione sulla normale a seconda del tipo di plugin texture. Tutti i file necessari per lo sviluppo dei plugin cos`ı come qualche plugin di esempio si possono trovare in blender/plugins. In alternativa si possono prendere un mucchio di plugin da http://www.cs.umn.edu/ mein/blender/plugins I plugin sono supportati (caricati/chiamati) in Blender usando la famiglia di chiamate dlopen(). Per quelli che non hanno familiarit` a con il sistema dlopen esso consente ad un programma (Blender) di usare un oggetto compilato come se facesse parte del programma stesso, un po’ come le librerie dinamiche eccetto che gli oggetti da caricare vengono determinati in fase di esecuzione. Il vantaggio di usare il sistema dlopen per i plugin `e che consente un accesso molto veloce alle funzioni, e quindi non c’`e un sovralavoro nell’interfacciare un plugin, fatto critico quando (come nel caso dei plugin texture) il plugin pu`o essere chiamato diversi milioni di volte in un solo rendering. Lo svantaggio del sistema `e che il codice del plugin funziona proprio come se facesse parte di Blender stesso, se il plugin fallisce, fallisce Blender. I file include che si trovano nella subdirectory plugin/include/ dell’installazione di Blender documentano le funzionalit` a di Blender per i plugin. Queste includono le funzioni di libreria Imbuf per il caricamento e la gestione di immagini e buffer di immagini, e funzioni di rumore e turbolenza per la coerenza delle texture.
515
516
CAPITOLO 72. IL SISTEMA DI PLUGIN DI BLENDER
72.1.1
Specifiche:
• #include • char name[]=Tiles; • define NR TYPES 2 char stnames[NR TYPES][16]= {Square, Deformed}; NR STYPES dovrebbe essere definito come il numero di sottotipi richiesti dal plugin, e si dovrebbe fornire un nome per ciascun sottotipo. Ogni plugin dovrebbe avere almeno 1 sottotipo col relativo nome. • VarStruct varstr[]= {...}; • typedef struct Cast {...}; Cast dovrebbe contenere, nell’ordine, un intero o un float per ogni pulsante definito nella varstr, inclusi i pulsanti testo. Di solito questi dovrebbero avere lo stesso nome dei pulsanti per semplificare i riferimenti. • float result[8]; • float cfra • plugin tex doit prototype • plugin tex getversion • plugin but changed • plugin init • plugin getinfo • plugin tex doit
72.1.2
Interazione tra Texture e Materiale
Blender `e piuttosto diverso dalla maggior parte dei pacchetti 3D nella separazione logica tra texture e materiali. In Blender le texture sono oggetti che restituiscono certi valori, generatori di segnali infatti. I materiali controllano la mappatura delle texture negli oggetti, riguarda chi, quanto, in che modo, ecc. I plugin ben progettati dovrebbero includere solo le variabili che riguardano il segnale restituito non la sua mappatura. I pulsanti per controllare il dimensionamento, la gamma di valori, gli assi, ecc. `e meglio includerli solo quando rendono la texture pi` u facile da usare (nel caso del pulsante del dimensionamento nel plugin Tiles) o quando velocizzano il calcolo (i sottotipi Intensity/Color/Bump nel plugin Clouds2). Altrimenti la Pulsantiera del Materiale rende ridondanti tali pulsanti, e l’interfaccia diventa inutilmente complessa.
72.1. SCRIVERE UN PLUGIN TEXTURE
72.1.3
Plugin di Texture Generico:
72.1.4
Le nostre Modifiche:
517
Il primo passo inizia col progetto di un gioco. Cosa deve fare questo plugin, come l’utente deve interagire con esso. Per questo esempio si creer`a una semplice texture che crea una semplice disposizione di blocchi di mattoni. Ora si copier` a il nostro plugin generico cube.c e si faranno le aggiunte. Aggiungere dei commenti `e sempre una buona idea. Prima si dice agli utenti cosa fa il plugin, dove si pu` o prenderne una copia, chi contattare per modifiche/bug, e qualsiasi limitazione di licenza del codice. Quando si usano commenti ci si assicuri di usare lo stile /* */. I plugin sono in C e qualche compilatore C non accetta lo stile //. Successivamente si inserisce il nome [Name], in realt`a dovrebbe essere lo stesso del file .c, preferibilmente descrittivo, con meno di 23 caratteri, senza spazi e tutto in minuscolo. Manterremo semplice questo plugin, ed avr`a un solo tipo che riguarda l’intensit`a. Quindi c’`e bisogno di ci` o che segue: Per l’interfaccia utente si consentir`a alle persone di cambiare la dimensione del mattone e della malta, cos`ı come i valori di intensit`a restituiti dal mattone e dalla malta. Per questo bisogna modificare varstr e Cast. Cast dovrebbe avere una variabile per ciascuna voce in varstr. Ora si deve riempire plugin tex doit, fondamentalmente si deve dividere la texture in celle che consisteranno di un mattone e della malta assieme al bordo inferiore del mattone. Quindi si determina se si `e nel mattone o nella malta. Il codice che segue dovrebbe fare ci` o. Una cosa da notare, la funzione ABS `e definita in un header in plugins/include. L`ı ci sono altre funzioni comuni si dia uno sguardo.
72.1.5
Compilazione:
bmake `e una semplice utility (uno script shell) di aiuto alla compilazione e sviluppo dei plugin e la si pu` o trovare nella sub-directory plugins/ della directory di installazione di Blender. Viene richiamato con: bmake (plugin name.c) e prover`a a linkare le librerie giuste e compilare il file C indicato in modo appropriato al proprio sistema. Se si prova a sviluppare dei plugin su una macchina Windows bmake potrebbe non funzionare nel qual caso si deve vedere di usare lcc. Per compilare un plugin con lcc si pu`o usare: Si assume che si abbiano i plugin c: blender plugins. Qui c’`e un esempio di come si dovrebbe compilare il plugin di texture sinus.c. Si apre una finestra dos e si digita: (Nota: Ci si dovr` a assicurare che nel path ci sia la directory lcc
518
CAPITOLO 72. IL SISTEMA DI PLUGIN DI BLENDER
bin)
72.2
Scrittura di un Plugin di Sequenza [Sequence Plugin]
In questa sezione si scriver` a un plugin di sequenza elementare e quindi si percorreranno i passi per usare un plugin di sequenza. Le basi dietro un plugin di sequenza sono degli input: da 1 a 3buffer di immagini in ingresso cos`ı come qualche altra informazione e restituisce il buffer dell’immagine risultante. Tutti i file necessari allo sviluppo dei plugin cos`ı come un paio di plugin di esempio si trovano nella directory blender/plugins. In alternativa si possono prendere un bel po’ di plugin da http://www.cs.umn.edu/ mein/blender/plugins
72.2.1
Specifiche:
• #include • char name[]=Blur; • VarStruct varstr[]= {...}; Ciascuna voce di VarStruct consiste in un tipo, un nome, un l’informazione sull’intervallo ed un tool tip.
• typedef struct Cast {...}; cast dovrebbe contenere, nell’ordine, un intero o un float per ogni pulsante definito in varstr, inclusi i pulsanti testo. Di solito dovrebbero avere lo stesso nome del pulsante per semplificare i riferimenti.
• float cfra • plugin seq doit prototype • plugin seq getversion • plugin but changed • plugin init • plugin getinfo • plugin seq doit
72.2. SCRITTURA DI UN PLUGIN DI SEQUENZA [SEQUENCE PLUGIN]
519
Struttura immagine ImBuf La struttura ImBuf contiene sempre 32 bit RGBA di dati sul pixel. La struttura ImBuf ha sempre le dimensioni uguali, indicate valori passati di x e y . Interazione con l’Utente Non c’`e modo per blender di sapere quanti input si aspetta un plugin, cos`ı `e possibile per un utente includere solo un input ad un plugin che ne aspetta due. Per questa ragione `e importante verificare sempre i buffer che usa il plugin per essere sicuri che siano sempre validi. I plugin di sequenza dovrebbero includere anche un’etichetta di testo con la descrizione degli input richiesti nell’interfaccia dei pulsanti.
72.2.2
Plugin di Sequenza Generico:
72.2.3
Le nostre modifiche:
Il primo passo inizia col progetto di un gioco. Cosa deve fare questo plugin, come l’utente deve interagire con esso. Per questo esempio si creer`a una semplice filtro che avr`a uno slider per l’intensit` a da 0 a 255. Se ciascuna delle componenti R,G, e B di un pixel nell’immagine sorgente `e inferiore all’intensit`a scelta, ritorner`a nero ed alfa, altrimenti torner` a quello che era nell’immagine. Ora si copier`a il plugin generico in simpfilt.c e si faranno le aggiunte. Aggiungere dei commenti `e sempre una buona idea. Prima si dice agli utenti cosa fa il plugin, dove si pu` o prenderne una copia, chi contattare per modifiche/bug, e qualsiasi limitazione di licenza del codice. Quando si usano commenti ci si assicuri di usare lo stile /* */. I plugin sono in C e qualche compilatore C non accetta lo stile //. Successivamente si inserisce il nome [Name], in realt`a dovrebbe essere lo stesso del file .c. Preferibilmente descrittivo, con meno di 23 caratteri, senza spazi e tutto in minuscolo. Cast e varstr devono essere sincronizzate. Si vuole un solo slider quindi si fa ci`o che segue: Ora si deve riempire plugin seq doit. Fondamentalmente si vuol fare un loop per ciascun pixel e se RGB sono inferiori dell’intensit`a imposta l’output a: 0,0,0,255 altrimenti lo imposta al valore dell’input per quella posizione. Quindi si deve concludere con simpfilt.c
72.2.4
Compilazione:
bmake `e una semplice utility (uno script shell) di aiuto alla compilazione e sviluppo dei plugin e la si pu` o trovare nella sub-directory plugins/ della directory di installazione di Blender. Viene richiamato con: bmake (plugin name.c) e prover`a a linkare le librerie giuste e compilare il file C indicato in modo appropriato al proprio sistema. Se si prova a sviluppare dei plugin su una macchina Windows, bmake potrebbe non funzionare. Nel qual caso si deve vedere di usare lcc. Per compilare un plugin con lcc si pu`o usare: Si assume che si abbiano i plugin c: blender
520
CAPITOLO 72. IL SISTEMA DI PLUGIN DI BLENDER
plugins. Qui c’`e un esempio di come si dovrebbe compilare il plugin di texture sweep.c. Si apre una finestra dos e si digita: (Nota: Ci si dovr`a assicurare che nel path ci sia la directory lcc bin)