XML  »  Guide  »  Guida VRML 

Creare spazi realistici



Fino a questo punto, gli oggetti realizzati sono stati collocati in un ambiente “vuoto” con lo sfondo di default di colore nero. In questo capitolo, quindi si analizzerà la possibilità di modificare le caratteristiche del background in modo da aggiungere un ulteriore sensazione di realismo.

Questa possibilità può essere raggiunta in due modi in VRML 2.0.

Il primo modo consiste nel cambiare colore al background, specificando posizione e colori degli elementi cielo e terra. In pratica, VRML rende disponibile una sfera che avvolge completamente il mondo; il colore sui lati interni della sfera puo' essere specificato in modo tale da variare in modo lineare tra piu' valori.

Il secondo metodo prevede l’utilizzo, in luogo della sfera, di un box sulle cui pareti interne applicare oltre ai colori, textures di immagini.

Prima di verificare gli esempi, conviene analizzare il nodo Background. All’interno di esso è infatti possibile dichiarare diversi campi. Ecco un elenco dei principali (ve ne sono altri due che in questo capitolo non verranno presi in considerazione):

  • backUrl
  • bottomUrl
  • frontUrl
  • leftUrl
  • rightUrl
  • topUrl
  • skyAngle
  • skyColor
  • groundAngle
  • groundColor

I fields: backUrl, bottomUrl, frontUrl, leftUrl, rightUrl e topUrl richiedono come parametro l’url di una immagine da mappare su ognuno dei sei lati che costituiscono il box entro il quale può essere avvolta la scena del mondo. L’uso di questi attributi risulta decisamente semplice.

Gli ultimi quattro campi: skyAngle, skyColor, groundAngle e groundColor si riferiscono invece alle proprietà di cielo e terra descrivibili sulla parete interna della suddetta sfera.

Ecco l’esempio di un possibile impiego di texture per il background:

#VRML V2.0 utf8
# utilizzo di textures per il background: nodo BackGround

Background {

backUrl [ "cielo.jpg" ]
bottomUrl [ "terra.jpg" ]
frontUrl [ "cielo.jpg" ]
leftUrl [ "cielo.jpg" ]
rightUrl [ "cielo.jpg" ]
topUrl [ "terra.jpg" ]

}

Ecco ora l’esempio relativo alla seconda possibilità:

#VRML V2.0 utf8
# colori di sfondo: nodo Background

Background {
skyAngle [1.2 1.57 3.14]
skyColor [0 0 1, 0.25 0.25 1, 0.5 0.5 1]
groundAngle [1.3 1.57 ]
groundColor [0.05 0.25 0.05, 0.1 0.5 0.1, 0.25 0.75 0.25 ]

}

colori di sfondo.wrl

Per quanto riguarda il colore del cielo, si sono forniti i valori relativi agli attributi degli angoli e dei colori. Gli angoli specificano la posizione in cui si collocherà il corrispondente colore. Per tutti gli angoli intermedi, non espressamente dichiarati, il browser si occuperà di effettuare l’adeguata interpolazione tra i colori indicati agli estremi. Si tenga presente che l'angolo 0 per convenzione rappresenta lo zenit della sfera (il punto sopra la testa dell’osservatore). Per realizzare lo sfondo occorre fornire degli angoli positivi sino al valore di pi-greco (3,14). Nell’esempio, si sono dichiarati 4 colori per il cielo: il primo comincia al punto 0 (valore di default che non è necessario dichiarare) e termina al punto 1.2, qui comincia progressivamente a manifestarsi il secondo colore che raggiungerà l’esatto valore RGB dichiarato nel punto mediano della sfera descritto con 1.57 radianti, e così di seguito fino al completamento della “sfera celeste”. Per quanto riguarda la terra si è proceduto nello stesso modo: in questo caso il punto 0 rappresenta il nadir (il punto sotto i piedi dell’osservatore) mentre il valore di 1.57 radianti a rappresenta approssimativamente la linea dell'orizzonte).

Per una migliore comprensione delle caratteristiche dei campi sopra citati si veda l’immagine seguente.

Ultimi articoli XML

Open Graph Protocol, Facebook e il Web Semantico

Come sfruttare il Web Semantico "made in Facebook"

Introduzione a RDFa - 2

Arricchire un documento HTML con metadati semantici presi dal...

Introduzione a RDFa

Cos'è e a cosa serve il linguaggio che potrebbe aprire il campo alle...

Usare SVG per creare sfondi flessibili, scalabili e divertenti

Scopriamo cos'è il formato SVG e come possiamo usarlo in modo...

Visualizzare i metadati RDF Dublin core con le trasformazioni XSL

Mettere insieme XSL, XPATH e le definizioni Dublin core per...

Altri articoli

Guide XML

Guida Podcasting

Un percorso in 16 lezioni, per entrare nella filosofia del podcast...

Guida Smil 2.0

Un percorso pratico alla scoperta di SMIL: il linguaggio (XML) per...

Guida Web service

Cosa sono, a cosa servono e come si creano servizi Web, i sistemi...

Altre guide

Newsletter @XML

Ogni mese, direttamente nella tua e-mail: articoli, guide, FAQ e approfondimenti sui linguaggi della famiglia XML.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Nessun corso previsto

Nessun corso previsto