![]() |
|
![]() |
||||
![]() |
ROBOTICA
video
immagini
papers
progettati
costruiti
toolbox
vrml
simulatori
![]() |
Il nodo NavigationInfo | ![]() |
Il nodo NavigationInfo serve
per informare il browser circa alcune caratteristiche che il visitatore possiede,
come per esempio la sua altezza, la massima distanza a cui può vedere e così
via.
Questo nodo viene solitamente
posto all’inizio del file vrml.
Vediamone subito un semplice
utilizzo.
Il campo avatarSize specifica
delle caratteristiche dell’avatar dell’utente. Si incontrerà spesso la nozione
di avatar parlando di realtà virtuale. L’avatar è la rappresentazione fisica
dell’utente nel mondo che stà navigando. Ovviamente, finchè siamo gli unici
a navigare il mondo, non avremo possibilità di vedere noi stessi ; se però
utilizziamo mondi in multi-utenza, gli altri utenti che incontriamo mentre
esploriamo il mondo saranno visualizzati sotto le sembianze del loro avatar
(che può essere di qualsiasi forma geometrica, anche se le forme umanoidi
risultano essere le più diffuse). Parleremo più in là dei mondi in multi-utenza.
Quindi, il campo avatarSize
serve per settare alcune caratteristiche del nostro avatar. Questo campo prende
in ingresso più valori. Il primo di questi specifica il raggio di collisione
con altri oggetti ; quanto cioè posso avvicinarmi ad oggetti solidi prima
di urtare contro di essi. Il secondo campo specifica l’altezza a cui devono
restare gli occhi dell’osservatore in relazione al terreno su cui cammina
(vedremo negli approfondimenti come creare terreni di varia forma usando il
nodo ElevationGrid). Il terzo parametro che si può specificare è attivo solo
se si ha collision detection attivata. In tal caso si indica il massimo salto
che può essere effettuato per scavalcare un ostacolo ; si pensi per esempio
al caso di una scala : tale massimo salto dovrebbe essere superiore all’altezza
degli scalini per poter procedere.
Il secondo field indica
se attivare headlight o meno. Ponendo headlight a TRUE si attiva una luce
direzionale che punta sempre nella direzione in cui l’osservatore sta guardando.
Consiglio caldamente di porre il parametro a FALSE in quanto praticamente
annulla qualsiasi lavoro che il creatore del mondo ha impiegato nella creazione
delle luci, portando anche a mondi molto meno realistici (esperienza personale).
Mentre Live3d imposta a FALSE il parametro di default, CosmoPlayer lo pone
a TRUE. Per cui potrebbe essere buona norma disattivare questo campo. Il campo
speed indica la velocità in metri al secondo con la quale l’utente può procedere
nella scena.
Type indica invece la
modalità di navigazione. Ogni browser dovrebbe rendere disponibile un certo
numero di possibilità. Queste sono : WALK, EXAMINE, FLY, NONE. La differenza
tra WALK e FLY dovrebbe essere che quando si è in WALK si dovrebbe tenere
conto della gravità ; dipende però dal fatto che il browser supporti o meno
concetti di gravità. Con WALK e FLY ci possiamo dunque spostare all’interno
del mondo. Con EXAMINE si procede ad esaminare l’oggetto ruotandolo o avvicinandolo.
NONE indica invece di disattivare i controlli del browser e lasciare attivi
solo i controlli forniti dal creatore del mondo ; lasciando in pratica attivi
soltanto guided tours.
Infine, il campo visibilityLimit
specifica la massima distanza a cui si può vedere. Specificare un valore troppo
basso potrebbe portare a problemi di disorientamento per l’utente.
# VRML V2.0 utf8
NavigationInfo {
avatarSize 1.8
headlight FALSE
speed 1.0
type “WALK”
visibilityLimit 0.0
}
[qui continua la descrizione della scena]
Analizziamo brevemente i vari campi introdotti (che non sono i soli del nodo NavigationIfo).