ROBOTICA

video
immagini
papers
progettati
costruiti
toolbox
vrml
simulatori

links

 

Papers
meccanica
sistemi
documents

Capitolo 16° Il nodo NavigationInfo Capitolo 18°

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.

# 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). 

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.