Progettazione, modellazione e resa con XCMODEL
Pertanto mira alla creazione di oggetti tridimensionali utilizzando i pacchetti xccurv, xcsurf, xcrayt messi a disposizione dal sistema Xcmodel.
Obiettivo particolare del progetto in questione e' la progettazione e la generazione di un VIOLINO definito mediante superfici nurbs.
I file da me prodotti sono stati raggruppati nell'archivio Violino.tar.gz:
Le corde in genere sono fatte di nylon o di metallo o di budella di ovini che vengono strofinate e sono più o meno tese a seconda di produrre più o meno acuti.
Esse sono fatte vibrare da un archetto formato da circa 150 sottilissimi crini.
Il violino è composto da:
Il materiale è stato reperito facendo uso di testi didattici, di recensioni musicali e anche di risorse disponibili da Internet.
Invece la manualistica dei pacchetti di modellazione e resa è stato trovato assieme al sistema stesso.
Non è stato possibile trovare l'oggetto materialmente.
Prima di tutto era necessario acquisire conoscenze riguardo all'uso delle spline e delle nurbs, in particolare riguardo all'attuazione di certe proprietà geometriche, al fine di posizionare correttamente le coordinate dei control point e lavorare successivamente sui pesi.
Sono stati visti più volte gli esempi di modellazione già disponibili, sia usuali come i solidi geometrici "classici" e sia sofisticati per poter capire meglio l'effettivo risvolto sulla modellazione. Quindi ho preso diversi file con estensione .db ed ho confrontato con la superficie relativa.
Sono stati molto utili in particolare durante le prime prove di installazione e le prime sperimentazioni pratiche, quando non comprendevo certi comportamenti mentre realizzavo qualche curva o superficie.
I capitoli più interessanti sono stati i formati dei file, i significati di alcuni bottoni, gli esempi dei file e le funzioni della libreria Descriptor per la scrittura del codice C.
Significativo è anche l'applicazione pratica degli argomenti studiati, così da acquisire confidenza e familiarità con il software al fine di fissare la materia trattata.
Dopo una prima fase di tentativi con il mouse ho preferito fissare mediante tastiera i punti di controllo modificandoli adeguatamente e ponendoli in file .cp cosi da avere subito a disposizione la griglia di controllo facendo poi lavorare il sistema per la realizzazione della curva o superficie inserendo opportuni parametri sui nodi e sul grado dei polinomi.
Per ottenere certe forme complesse come la cassa armonica del violino sono stati necessari l'inserimento di diversi punti control point che poi venivano modificati dal programma durante il refinement o manualmente nel caso che la forma era ben lontana da quella aspettata.
In un primo momento ho voluto utilizzare il pacchetto xccurv per rendermi conto di come potesse essere valido tracciare la curva e dopo vari tentativi ho scoperto che vi sono delle tecniche avanzate per la costruzione di superfici. Tra questi ho sviluppato molto superfici ruled perché si prestava molto bene per le forme da creare.
Ho iniziato con la componente più in risalto, la cassa armonica.
Per mezzo della progettazione svolta su carta ho ricavato i control point, poi mediante xcsurf ho impostato i gradi dei polinomi e i pesi così da ottenere quello voluto ed infine ho copiato la curva 3D traslandola verticalmente. Mediante il bottone skinning ho reso la rigata che interpola le due curve e per le basi ho fissato lo stesso punto tante volte quante erano i control point della curva, ho unito il tutto sempre mediante skinning e ho generato una superficie chiusa.
Stesso procedimento applicato un po' per tutte le componenti che ho dovuto realizzare, magari velocizzando il lavoro dove era possibile (es. corde) tramite copia, traslazione e rotazione.
In questa fase ho tratto ispirazione dall'esempio del manuale e da oggetti esistenti, sempre adattando alle mie esigenze.
Infatti ho definito gli attributi specifici ai materiali del violino come il legno (di diverse colorazioni) e il nylon, ho reso sistematico le componenti mettendoli in opportuni ITEM, ho scelto i settaggi per le luci, il background, le posizioni della camera e alla fine ho compilato il tutto attraverso il makefile.
Con il bottone hrayt ho visualizzato la scena e riprovando più volte sono arrivato vicino l'effetto desiderato.
Alla fine ho salvato ben 10 immagini realistiche come Violino{[}0-9{]}.hr e le ho raccolte nel file Violino.hra per poterle vederle in sequenza con xmovie.