Capitolo 9. Curve e Superfici

Sommario
Curve
Le Superfici
Il Testo
Estrusione lungo un percorso
Curve Profilatrici [Taper]
Curva Deformante
Rivestimento

Curve e superfici sono oggetti come le mesh, ma differiscono perché sono espresse in termini di funzioni matematiche, invece che una serie di punti.

Blender implementa curve e superfici di Bézier e Non Uniform Rational B-Splines (NURBS). Entrambe, anche se seguono diverse leggi matematiche, sono definite nei termini di un insieme di "vertici di controllo" che definisce un "poligono di controllo". Il modo in cui curve e superfici sono interpolate (Bézier) o attratte (NURBS) da questi possono sembrare simili, a prima vista, alla suddivisione delle superfici di Catmull-Clark.

In confronto alle mesh, le curve e le superfici hanno sia vantaggi che svantaggi. In quanto le curve sono definite da meno dati, producono dei buoni risultati usando meno memoria durante la modellazione, mentre la richiesta aumenta quando si effettua il rendering.

Delle tecniche di modellazione, come l'estrusione di un profilo lungo un percorso, sono possibili solo con le curve. Ma con le curve non è possibile il controllo preciso di ciascun vertice di una mesh.

Ci sono occasioni in cui le curve e le superfici sono più vantaggiose delle mesh, ed occasioni dove le mesh sono più utili. Se è stato letto il Capitolo precedente, e si sta leggendo questo si sarà in grado di scegliere se usare le mesh o le curve.

Curve

A partire da Blender v2.31

Questa sezione descrive sia le curve di Bézier che le NURBS, e mostra un esempio funzionante del primo.

Bézier

Le curve di Bézier sono il tipo più 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à degli oggetti in funzione del tempo.

Un punto di controllo (un vertice) di una curva di Bézier consiste in un punto e due maniglie. Il punto, nel mezzo, è 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ézier è tangente al segmento che passa per il punto e la maniglia. La 'ripidità' della curva è controllata dalla lunghezza della maniglia.

Ci sono quattro tipi di maniglie (Figura 9-1):

  • Maniglia Libera (nera). Questa può 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ù levigato risultato. Hotkey: SHIFT-H.

Figura 9-1. Tipi di Maniglie per le curve di Bézier.

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:

  • La maniglia Automatica diventa Allineata;

  • La maniglia Vettore diventa Libera.

Anche se la curva di Bézier è 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à risoluzione, che definisce il numero di punti, tra ogni coppia di punti di controllo, da calcolarsi. Per ciascuna curva di Bézier si può impostare una diversa risoluzione (Figura 9-2).

Figura 9-2. Impostazione della risoluzione nella Bézier.

NURBS

Le curve NURBS sono definite come polinomiali razionali, e sono più generali, a rigor di termini, delle convenzionali curve B-Splines e Bézier in quanto sono in grado si seguire esattamente ogni contorno. Per esempio una circonferenza di Bézier è una approssimazione polinomiale di una circonferenza, e tale approssimazione è evidente, mentre una circonferenza NURBS è esattamente una circonferenza. Le curve NURBS hanno un ampio insieme di variabili, che consente di creare forme matematicamente perfette (Figura 9-3). Comunque, lavorare con esse richiede u po' più di teoria:

Figura 9-3. Pulsanti di Controllo delle Nurbs.

  • 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 pre-impostazioni. Uniform (Uniforme) produce una divisione uniforme per le curve chiuse, ma quando è usata con quelle aperte si dovranno prendere estremità "libere", difficili da localizzare precisamente. Endpoint (Estremità) imposta i nodi in modo che il primo e l'ultimo dei vertici facciano sempre parte della curva, cosa che le rende molto più facili da posizionare;

  • Order. L'ordine è la 'profondità' del calcolo della curva. Ordine '1' è un punto, ordine '2' è lineare, ordine '3' è una quadrica, e così via. Si usi sempre l'ordine '5' per le curve delle traiettorie in quanto risulterà fluida in tutte le circostanze, senza produrre irritanti discontinuità nel movimento. Parlando matematicamente, questo è 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 9-4. Impostazione dei pesi e del poligono di Controllo delle Nurbs.

La Figura 9-4 mostra le impostazioni del vettore di Nodi così come l'effetto della variazione del peso di un singolo nodo. Come con le Bézier, la risoluzione può essere impostata per ciascuna curva.

Esempio funzionante

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.

La Figura 9-5 mostra il progetto del logo che si va a costruire.

Figura 9-5. Lo schizzo del logo.

Prima si importa lo schizzo originale in modo da usarlo come sagoma. Blender supporta sia immagini in formato TGA sia JPG. Per caricare l'immagine, si seleziona la voce di menù View>>Background Image... della Finestra 3D in uso. Apparirà 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 (Figura 9-6). Si può impostare la "gradazione" del disegno dello sfondo con lo slider Blend.

Figura 9-6. Le impostazioni della finestra 3D.

Ci si sbarazzi del Pannello con ESC o premendo il pulsante X nella testata del pannello (Figura 9-7). Una volta finito di usarla, si potrà nascondere l'immagine di sfondo tornando nel Pannello e deselezionando il pulsante BackGroundPic.

Figura 9-7. La bozza del logo caricata come sfondo.

Si aggiunga una nuova curva premendo SPAZIO>>Curve>>Bezier Curve. Apparirà un segmento curvilineo, e Blender si porrà in modalità 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à connesso al punto precedentemente selezionato. Una volta aggiunto, il punto può essere spostato selezionandone il vertice di controllo e premendo GKEY. Si può cambiare l'angolo della curva afferrando e spostando le maniglie associate a ciascun vertice (Figura 9-8).

Figura 9-8. Le maniglie della Bézier.

Si può aggiungere un nuovo punto tra due esistenti selezionando i due punti e premendo WKEY>>Subdivide (Figura 9-9).

Figura 9-9. L'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.

Per creare degli angoli netti, si seleziona un vertice di controllo e si preme VKEY. Si noterà che il colore delle maniglie cambia da viola a verde (Figura 9-10). A questo punto, si possono spostare le maniglie per regolare il modo in cui la curva entra ed esce dal vertice di controllo (Figura 9-11).

Figura 9-10. Maniglie Vettore (in verde).

Figura 9-11. Maniglie Libere (nere).

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à l'ultimo punto nella curva col primo (Figura 9-12). Si potrebbe aver bisogno di posizionare ulteriori maniglie per ottenere la forma voluta.

Figura 9-12. Il contorno finito.

Lasciando modalità Edit con TAB ed entrando in quella ombreggiata [shaded] con ZKEY si scoprirà che la curva apparirà in realtà come una sagoma piena (Figura 9-13). Si vogliono tagliare dei fori in questa sagoma per rappresentare i dettagli degli occhi e dell'ala del dragone.

Superfici e Fori: Quando si lavora con le curve, Blender automaticamente rileva i fori nella superficie e li gestisce secondo le seguenti regole. Una curva chiusa è sempre considerata come il perimetro di una superficie e quindi una superficie piatta nel rendering. Se una curva chiusa è completamente racchiusa dentro un'altra, quella interna viene sottratta dalla esterna, definendo di fatto un foro.

Figura 9-13. Il logo ombreggiato.

Si torni in modalità fil-di-ferro [wireframe] con ZKEY e si entri ancora in modalità edit con TAB. Stando in Modo Edit, si aggiunga una curva circolare con SPAZIO>>Curve>>Bezier Circle (Figura 9-14). Si riduca il cerchio ad una giusta misura con SKEY e lo si sposti con GKEY.

Figura 9-14. L'aggiunta di un cerchio.

Si modelli il cerchio con le tecniche apprese (Figura 9-15). Si ricordi di aggiungere altri vertici al cerchio usando WKEY>>Subdivide.

Figura 9-15. Definizione dell'occhio.

Si crei il ritaglio di un'ala aggiungendo un cerchio di Bézier, convertendo tutti i punti in angoli netti, e quindi posizionandoli opportunamente. Si può duplicare tale contorno per risparmiare tempo quando si dovrà creare il contorno della seconda ala. Per farlo, ci si 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 (Figura 9-16). Si duplichi la selezione con SHIFT-D e si posizionino, spostandoli, i nuovi punti.

Figura 9-16. Definizione delle ali.

Per aggiungere altre strutture geometriche non connesse al corpo principale (ponendo ad esempio un cerchio nella coda curva del dragone), si usa il menù SHIFT-A per aggiungere altre curve come mostrato in Figura 9-17.

Figura 9-17. 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 Edit (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.

La Figura 9-18 mostra le impostazioni usate per estrudere questa curva.

Figura 9-18. Impostazioni della smussatura [Bevel].

Dalle Curve alle Mesh: Per fare operazioni di modellazione più complesse, si converte la curva in una mesh con ALT-C>>Mesh. Si noti che questa operazione è irreversibile: non si può convertire una mesh di nuovo in una curva.

Una volta completato il logo, si possono aggiungere i materiali e le luci ed effettuarne un bel rendering (Figura 9-19).

Figura 9-19. Il rendering finale.