INTRODUZIONE
Lo scopo del progetto era quello di realizzare un'esperienza significativa
di modellazione e resa realistica tramite i pacchetti xccurv,
xcsurf e xcrayt di xcmodel 3.0.
Nella creazione degli oggetti ho cercato di utilizzare diverse
tecniche di modellazione, tra queste l'extruding, swinging,
tubolar, revolution e anche una modellazione
interattiva a partire da alcune superfici semplici come un cubo
o un cilindro.
Il soggetto principale della scena è una chitarra acustica;
sono presenti inoltre un piedistallo per sorreggere la chitarra,
tre fari uguali e la stanza composta da tre muri, il pavimento
e il soffitto.
Come modello ho usato la mia chitarra e il mio piedistallo cercando
di essere il più fedele possibile agli originali (pur cambiando
i colori a mio piacimento). Per quanto riguarda i fari invece,
ho cercato inizialmente di disegnarli su carta per poi riprodurli
tramite i pacchetti messi a disposizione.
Il risultato finale è la rappresentazione di un palco in
attesa che inizi un concerto di chitarra classica.
|
|
CHITARRA
La chitarra è il soggetto che presenta le maggiori complessità
ed è formato da 14 oggetti diversi. |
Cassa |
|
Tramite XCCURV è
stata creata la curva del disegno a sinistra; duplicando e ruotando
curva di 180 gradi si ottiene la forma della chitarra vista da davanti.
Usando XCSURF e traslando poi le due curve ottenute di una lunghezza
pari allo spessore della chitarra e utilizzando la tecnica dell'
extruding otteniamo l'oggetto come nella figura a destra.
OSS. Per fare il buco della chitarra è stato utilizzato anche
il pacchetto XCBOOL.
Un clindro è stato inserito nella cassa dove andava fatto
il buco, poi tramite l'operazione booleana difference ho
ottenuto l'oggetto desiderato.
Vedere il file cassa.dbe |
|
Manico |
|
Questa superficie è stata
piuttosto difficile da realizzare a causa della rotondità
e della spigolosità di alcune parti, infatti mentre la
parte frontale è piatta, quella posteriore è arrotondata,
ma solo in certi tratti.
Con XCCURV sono state create 5 curve (blu, gialla, rossa verde
e bianca in figura), sono state poi caricate con XCSURF e poste
ad una certa distanza per dare la profondità.
Sempre con la tecnica dell' extruding otteniamo così
il manico della chitarra. |
|
Tastiera |
La
tastiera è stata creata partendo da una superficie cubica.
Il cubo è stato assottigliato e allungato per ottenere le
giuste dimensioni.
Dopodichè ho selezionato i quattro punti di controllo della
faccia superiore e ho applicato l'operazione di scala, in quanto
il manico è più stretto in alto.
Nella parte inferiore, invece, ho inserito due punti di controllo
che sono stati spostati per ottenere una specie di 'v' come si può
vedere nella figura a lato. tastiera2.db
|
|
Pomelli
per le corde |
|
Ho creato una curva profilo di
un pomello con XCCURV, poi tramite una semplice operazione di rivoluzione
attorno all'asse si ottiene l'oggetto voluto.
Il pomello è stato successivamente duplicato 6 volte e ognuno
è stato disposto sul manico della chitarra. chiave1.db
chiave2.db
chiave3.db
chiave4.db
chiave5.db
chiave6.db |
|
Chiavi
per l'accordatura |
|
Questa superficie è composta da 3 parti.
La prima (figura a sinistra) è ottenuta con la tecnica dello
swinging da una curva profilo ed una curva traiettoria.
Per la seconda (figura sopra) sono partito da una curva ed un punto,
le ho duplicate e traslate secondo lo spessore e ho utilizzato l'extrunding.
(il punto serve per riempire la superficie di base, senza di esso
avremmo solo la superficie laterale). Infine un cilindro opportunamente
scalato serve per unire le due parti. |
|
Cerchio
della cassa |
|
Creando una curva
ad una certa distanza dall'origine rispetto l'asse x (figura a sinistra)
e applicando la tecnica di rivoluzione si ottiene il cerchio
della cassa.
Per ottenere poi una forma leggermente ovale, ho utilizzato la trasformazione
geometrica di scala rispetto ad un solo asse per schiacciare
l'oggetto.
cerchiocassa.db |
|
Fermacorde |
Sono 2 oggetti.
Il primo è la base, ottenuta per extrusion di due
curve come quella in figura. Il secondo oggetto non è altro
che un cilindro scalato alla base e duplicato 6 volte.
Sarebbero i pomelli che tengono fissate le corde. |
|
|
Battipenna |
|
Questa
superficie si ottiene per extrusion di due curve uguali
(ma posizionate diversamente per dare lo spessore) e di due punti.
Naturalmente i punti devono essere interni alle curve e giacenti
sullo stesso piano, inoltre devono essere visibili da tutti i punti
di controllo se non si vogliono ottenere superfici anomale.
battipenna.db |
Capotasti |
|
Per i capotasti ho
utilizzato la tecnica tubolar.
Dato un semicerchio e una linea traiettoria si ottiene una superficie
come quella rapresentata nella figura a destra.
I capotasti sono 18 ma non sono tutti uguali poichè la tastiera
della chitarra va restringendosi verso l'alto.
Quindi ogni capotasto è scalato secondo la sua posizione;
inoltre non sono tutti alla stessa distanza ma l'intervallo aumenta
mano mano che si sale. capo1.db
capo2.db
capo3.db
capo4.db
.........
......... |
|
Corde |
Le
corde sono dei cilindri molto lunghi e sottili.
Ci sono in tutto sei corde diverse tra loro per grandezza (le
corde più basse sono più spesse) e lunghezza.
Le corde sono rettilinee ma subiscono una leggera deviazione all'altezza
della fine del manico, questo per far si che si leghino correttamento
coi rispettivi pomelli. Ho ottenuto questo effetto inserendo un
nodo nel punto di deviazione in modo da poter cambiare la direzione
solo da li in poi.
|
Assemblaggio delle componenti |
|
|
PIEDISTALLO |
Porta
chitarra |
|
Per questa superficie
ho creato due curve.
Una è una semplice circonferenza (curva profilo in verde),
l'altra è la curva traiettoria (in rosso).
Tramite tubolar si ottiene la superficie, cioè un
tubo con il diametro uguale a quello del cerchio e l'andamento come
quello della curva traiettoria.
Il tubo però è bucato all'interno, quindi ho chiuso
uno dei due buchi con una superficie avente le dimensioni del cerchio.
L'altro buco viene coperto dall'asta del piedistallo |
|
Altre superfici del piedistallo |
Le
due aste sono due cubi opportunamente scalati e ruotati.
Le basi sono due cilindri.
In fine c'è un'altro cilindro sulla sommità del piedistallo
che tiene fissate le due aste inclinate. |
|
|
FARI |
Rivestimento, lampadina
e aste |
|
I fari sono stati
piuttosto semplici da creare; sono partito da due curve (la gialla
per il rivestimento, la bianca per la lampadina) e ho utilizzato
la tecnica di rivoluzione.
Per sorreggere il faro al soffitto ci sono due aste cilindriche.
faro.db
lampadina.db
faroasta1.db
faroasta2.db |
|
|
STANZA |
Muri, Pavimento e Soffitto |
Per
la stanza ho usato dei piani già esistenti tra le superfici
usual .
Sono stati traslati ruotati e scalati, alla fine ho ottenuta una
stanza come quella nella figura a fianco.
Un lato della stanza è aperto in modo da poter avere delle
inquadrature anche da lontano e per dare maggiormente l'idea di
un palco.
soffitto.db
pavimento.db
muri1.db
muri2.db
muri3.db |
|
|
RESA
Per creare la scena finale ho usato la libreria
descriptor e il pacchetto XCRAYT.
Tramite il file scena.c (che deve essere compilato per
ottenere il file scena.md) gli oggetti vengono caricati
e posizionati nella scena, inoltre vengono definite le luci, le
texture e i materiali degli oggetti. |
Luci |
La
scena è illuminata da tre luci di tipo warn_light,
cioè luce proveniente da un punto con cono limitato.
Ho utilizzato questo tipo di luce per dare maggiormente l'idea
di un palco in quanto spesso nei concerti di musica si fa uso
di questo tipo di illuminazione.
I 3 fari sono rivolti verso la chitarra, due sono laterali mentre
uno è posto dietro ed ha un'intensità minore.
Per far si che la lampadina sembri accesa ho usato un materiale
i cui coefficienti di luce ambiente e luce speculare sono massimi,
mentre il colore è un bianco tendente al giallo.
Per finire ho aggiustato l'intensità e la dimensione
del cono di luce, cercando di illuminare maggiormente la chitarra,
facendola risaltare nella scena.
|
Texture |
Ho utilizzato quattro tipi di texture:
wood.hr per il pavimento in legno
grey.hr per il rivestimento dei fari
black.hr per il piedistallo
red.hr per il battipenna
L'unico modo per caricare queste texture è tramite il
file scena.c, in quanto la funzionalità projection_texture
non è stata ancora implementata in XCRAYT.
|
Gallery - Cliccare sull'immagine
per ingrandirla |
|
|
DOWNLOAD E INSTALLAZIONE
DEL PROGETTO
Scompattare il file anghileri_chitarra.tgz (scompattare con il comando: tar zxvf anghileri_chitarra.tgz)
nella directory xcmodel_3.0/
Verrà creata la cartella progetto2 che contiene
tutti i file della distribuzione.
Entrare nella directory ed eseguire il comando make -f Makefile.ok
per creare il file scena.md
Aprire con XCRAYT il file scena.md
Nota: Se si vuole installare il progetto in una directory differente
da quella specificata occorre modificare i parametri INC e LIBSDIR
presenti nel file Makefile.ok
All'intermo della directory progetto2 è possibile
trovare tutte le superfici 3d utilizzate.
La sottodirectory curve contiene invece le curve 2d utilizzate
per la realizzazione delle superfici.
Infine la sottodirectory relazione contiene questa relazione. |