Está en la página 1de 16

Manual de uso de NAVIO Visualizador/ Navegador

Manual de uso de NAVIO

NAVIO

1 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

Manual de uso de NAVIO


Jóse Larios Delgado.
Daniel A. Cervantes Cabrera.
Dept. de Realidad Virtual, DGSCA UNAM
jlarios@unam.mx
danielcc@unam.mx

Resumen

El Navegador de Ambientes Virtuales Interactivo Optimizado (NAVIO), es un programa


que se desarrolló en el departamento de Realidad Virtual de la Dirección General de
Servicios de Cómputo Académico (DGSCA) en colaboración con el “Academic
Technology Services of the University of California, Los Angeles”. Este programa permite
realizar una navegación virtual a través de modelos tridimensionales e incorpora distintos
elementos que contribuyen a incrementar la sensación de realismo, está implementado
usando las bibliotecas OpenSceneGraph[1] y Vrjuggler[2], OpenAL[3] y Cal3d[4], todos,
desarrollos de código abierto, lo que permite que NAVIO también tenga esta
característica. Por su diseño podemos decir que este programa tiene como usuarios
finales a personas dedicadas a la modelación tridimensional que deseen visualizar sus
modelos dentro de un ambiente de realidad virtual y desarrolladores en esta área
interesados en adaptarlo a sus propias necesidades.

Áreas de aplicación
Realidad Virtual, Visualización Científica.

Palabras clave
NAVIO, OpenSceneGraph, VrJuggler, OpenAL, Cal3d.

1. Introducción
NAVIO es un desarrollo del departamento de Realidad Virtual de la DGSCA, que tiene como
objetivo permitir una navegación virtual sobre modelos tridimensionales incorporando elementos
que incrementan su realismo. Su desarrollo utiliza un conjunto de bibliotecas de “software” libre
que permite que su implementación sea de libre acceso. Además de los dispositivos comunes
(teclado y ratón) para la navegación, es posible usar el ratón tridimensional (“Tracking System”),
que se tiene en el Observatorio de Visualización IXTLI1.

El usuario de NAVIO tiene la libertad de crear sus propios archivos de configuración con los que
puede definir el tamaño de la ventana de despliegue, visión estéreográfica, velocidad de
navegación, “switch2”, tamaño del rayo de colisión y posición del modelo. Además permite realizar

1
http://www.ixtli.unam.mx
2
El switcheo es un término que se usa en este contexto para referirse a la posibilidad de aparecer o desaparecer objetos
en el modelo tridimensional.

2 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

navegaciones colaborativas de tal manera que dos máquinas compartan el mismo punto de vista y
el control de la navegación.

NAVIO está pensado principalmente para usuarios del área del Diseño Gráfico y Arquitectura los
cuales deseen visualizar sus modelos realizando una navegación virtual, lo que puede ayudarles a
estudiarlos desde distintos puntos de vista así como tener la posibilidad de incorporar elementos
que les ayuden a tener más realismo en su navegación.

Por su filosofía de código libre los desarrolladores en el área de ambientes virtuales, pueden
modificarlo para adaptarlo a sus necesidades así como distribuirlo libremente3.

2. Ejecución.
En esta sección se describen los elementos básicos para poder ejecutar NAVIO en las siguientes
tres plataformas:

GNU/Linux, y Windows. Esto incluye la definición de las variables de ambiente, así como los
comandos necesarios y sus posibles opciones.

2.1. Variables de ambiente.

La definición de las variables de ambiente es una de las partes más importantes para la ejecución
de NAVIO en el sistema que se esté usando, éstas, permiten que el sistema operativo localice las
bibliotecas y los archivos ejecutables para el funcionamiento de cualquier programa. La variables
de ambiente que se requieren para la ejecución de NAVIO para cada sistema son las siguientes:

● GNU/Linux (con bash):


○ export VJ_BASE_DIR=/home/usuario_login/NAVIO/vrjuggler
○ export JCC_DEFINITION_PATH=${VJ_BASE_DIR}/share/vrjuggler/data/definitions:
/home/usuario_login/NAVIO/definitions
○ export LD_LIBRARY_PATH=${VJ_BASE_DIR}/lib:/usr/local/lib/osgPlugins:/usr/local/lib

● GNU/Linux (con csh):


setenv VJ_BASE_DIR /home/usuario_login/NAVIO/vrjuggler
○ setenv JCC_DEFINITION_PATH ${VJ_BASE_DIR}/share/vrjuggler/data/definitions:
/home/usuario_login/NAVIO/definitions
○ setenv LD_LIBRARY_PATH ${VJ_BASE_DIR}/lib:/usr/local/lib/osgPlugins:/usr/local/lib

● Windows
○ PATH C:\Documents and Settings\usuario\ruta\NAVIO\VrNav;
C:\Documents and Settings\usuario\ruta\NAVIO\vrjuggler\lib;
C:\Documents and Settings\usuario\ruta\NAVIO\vrjugglerdeps\lib;
C:\Documents and Settings\usuario\ruta\NAVIO\vrjugglerdeps\bin;
○ VJ_BASE_DIR C:\Documents and Settings\usuario\ruta\NAVIO\vrjuggler
○ VJ_DEPS_DIR C:\Documents and Settings\usuario\ruta\NAVIO\vrjugglerdeps

En Windows, estas variables se establecen en el menú que se obtiene con los siguientes pasos;
presionar con el botón derecho del ratón sobre el icono “Mi PC”, a continuación seleccionar
propiedades, después seleccionar a pestaña de Opciones Avanzadas y finalmente presionar el
botón Variables de ambiente (ver figura 1). Nuestras variables se definen en la sección del usuario
(parte de arriba) presionando el botón nueva, con lo que se abrirá una ventana en donde se
especifica el nombre de la variable así como su valor (la ruta).

3
Bajo la licencia de GNU.

3 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manua
al de uso de NAVIO Visualizado
or/ Navegador

Fig
gura 1.

Meenú para
establecer
variables de
am
mbiente.

2.2. Línea
L de co
omandos.

Una veez que las varriables de am


mbiente en nue
estro sistemaa operativo ha
an sido establlecidas, es ho
ora
de ejeccutar el programa, para po
oder hacer esto es necesario abrir una terminal
t del sistema
s
operatiivo que estemmos usando y ubicarnos enn la carpeta que
q contiene ele ejecutable de NAVIO:

● En G
GNU/LINUX
○ NAVIO/bin/Linux32
● En WINDOWS
W
○ NAVIO/V
VrNav

Tanto en
e Windows como
c en GNU U/Linux, esto se puede hacer usando el
e comando cdd, así después
de este
e paso, para probar
p que to
odo está funciionando corre
ectamente po
odemos teclea
ar lo siguiente
e:

● ./VrN
Nav para GNU/Linux.
● VrNAAv.exe para Windows.
W

e momento el programa de
En ese eberá imprimir:

VPR_DEBUG
G_NFY_LEVEL
L: Set to 0

--------------------------------------------------

For more or less debug output change VP


PR_DEBUG_NFY_LEVEL

--------------------------------------------------

VPR_DEBUG G_ENABLE: No ot found.


VPR_DEBUG G_ENABLE: De efaults to 1
[ TID: N/A ] DBG:========
D ============ ============ ===========================
[ TID: N/A
N ] DBG:VR Juggler:
J v2.0.21 'Kenji' (POSIX) branches/2..0 Feb 7, 2007 10:47:13
[ TID: N/A
N ] DBG:VPR R: v1.0.21 'Alpin
ne Powder' (PO
OSIX) branchess/2.0 Feb 7, 20
00 7 10:22:12

4 Daniel A. Cervantes Cabrera,


C José Larios Delga
ado / DGSCA
A UNAM
Manua
al de uso de NAVIO Visualizado
or/ Navegador

[ TID: N/A
N ] DBG:JCCL: v1.0.21 'Cra
azed Kitty' (POS
SIX) branches//2.0 Feb 7, 200
0 7 10:27:55
[ TID: N/A
N ] DBG:Gadg
geteer: v1.0.21
1 'Dr Claw' (PO
OSIX) branchess/2.0 Feb 7, 200 7 10:31:39
[ TID: N/A
N ] DBG:====
============ ================================= ====

Usage: ./VrNavApp ke
eyboard –config
gfiles configfile
e[0] configfile[1]] ... configf ile[n
n]

For path naveegation use -pa ath namefilepa


ath.txt option
For occluder activation use -withoccluder option
For server appplication use -servermode
- op
ption
For client app
plication use -sserver option
Use port option to define the communicatiion port

Si logra
as ver este mensaje
m ¡¡Felicidades!!, NA
AVIO está funcionando en tu computado ora, en caso de
d
que noo puedas ver este
e mensajee te recomend damos volver a revisar con n mucho cuidaado las
variables de ambien nte estableciddas en la seccción 2.1. A pa
artir de ahora lo único que falta por hace
er
es simplemente pas sarle los archivos necesariios para que funcione
f corrrectamente, de hecho estoo
se indica en la línea
a que imprimió ó NAVIO.

Usage: ./VrNavApp –keyboard –configfiless configfile[0] configfile[1]


c ... configf
c ile[n]

es deccir, necesitamos poner las opciones keyyboard4,-configfiles, y a passarle los arch


hivos de
configu
uración corresspondientes para
p el despliegue y el mo
odelo que desseamos ver.

emplo visualic
Por eje cemos el arch hivo “tenochtittlan.osg”, una
a recreación simple
s de la ciudad
c Azteca
a
de Tennochtitlan que e se puede obbtener libremeente en Intern net y se encue
entra en la caarpeta
modelos, para esto o debemos modificar la ruta en el archivvo de configuración tenoch htitlan.xml en la
carpetaa example, de d tal manera que esta coin ncida con la ruta
r en dondee se encuentrre el modelo ded
“tenochhtitlan.osg”, esto
e se indica en <FilePathh>ruta de la carpeta donde e está el modeelo</FilePath>,
por eje
emplo para Windows
W una ruta
r podría se
er algo como:
<FilePath>C::\Documents and Settings\Ussuario\Desktop\\NAVIO\Vrnav\\example\mode
elos</FilePath>
>

as que para GNU/LINUX


mientra G s
sería:
<FilePath>.:/home/usuarrio/NAVIO/exa
ample/</FileP
Path>

ez hecho lo an
Una ve nterior escribamos lo siguiiente
● Para
a Windows.
>VrNav.exe –keyboard
– –co
onfigfiles configfiles\miarchivodeconfig.jconf example\tenocchtitla.xml
● Para
a GNU/LINUX X.
$./vrNav key
yboard –conffigfiles ../../con
nfig/simple.jco
onf ../../example/tenochtitla
an.xml

Si la ejjecución tuvo éxito veras un


u desplieguee como el que e la figura 2. Puedes
e se muestra en
realizar una navega ación moviend do la cámara con el ratón, acelerardo, parando
p y dessacelerando
con loss botones izquuierdo, de en medio y dere
echo respectivamente.

Figura 2.

Modelo de
“tenochtitlan.osg” vissta
con NAVVIO.

4
Tamb
bién es posible usar -device, pero
p esto se exxplicará más ad
delante.

5 Daniel A. Cervantes Cabrera,


C José Larios Delga
ado / DGSCA
A UNAM
Manual de uso de NAVIO Visualizador/ Navegador

En la ejecución de prueba que hicimos de NAVIO se imprimió en la última parte el siguiente


mensaje

For path navegation use -path namefilepath.txt option


For occluder activation use -withoccluder option
For server application use -servermode option
For client application use -server option
Use -port option to define the communication port

Esto nos indica que es posible pasar otras opciones a la línea de comandos las cuales tendrán
distintos efectos en la ejecución de NAVIO. A continuación explicamos cada uno de estos
mensajes.

La opción de -path namefilepath.txt, permite pasar el archivo de texto que define una camino
anteriormente grabado en el modo de navegación “PATH”, así una vez que se le ha dado esta
opción el camino se verá presionando dos veces la tecla o (ver sección 4.1.1).

La opción -withoccluder, sirve para activar el rayo de oclusión haciendo que no se dibujen los
objetos ubicados atrás de otros objetos que estén dentro de nuestro campo de visión, esto es muy
útil cuando las geometrías son pesadas (tiene muchos polígonos o texturas con muy alta
resolución) ya que la computadora no necesita gastar recursos para dibujarlos. El parámetro
(OccLenght) que configura este rayo se establecen en el archivo de configuración del modelo como
se explica en la sección 3.

Las opciones -servermode, -server y –port se utilizan cuando se desea hacer una navegación
colaborativa, es decir cuando NAVIO correrá de forma remota en dos máquinas al mismo tiempo
compartiendo el punto de vista de la navegación así como su control. Para correr con esta
modalidad es necesario tener dos máquinas que tengan instaladas el navegador y que estén
conectados por una red, una vez hecho es necesario habilitar algún puerto de comunicación y
saber la dirección IP de alguna de las computadoras.

Por ejemplo supongamos que vamos a realizar la navegación colaborativa y una de las máquinas
que tendrá la función de servidor tiene como IP 132.248.324.65 y usaremos como puerto el 9999,
así en cada terminal tendrá como línea de comandos algo como lo siguiente:

Maquina que funciona como servidor Máquina que funciona como cliente.

VrnavApp keyboard –servermode –port 9999 VrNavApp keyboard –server 132.248.324.65 -port
–configfiles simple.cfg tenochtitla.xml 9999 –configfiles simple.cfg tenochtitla.xml

Es necesario que se ejecute primero el servidor y así, la aplicación mandará el siguiente mensaje:
----VrNavApp:Server()---------
Server Initialized
Socket Open
Awaiting connection

Una vez hecho esto, se podrá correr el cliente y se establecerá la conexión, de tal manera que
cada máquina tendrá su propia ventada de despliegue del modelo5, el control inicialmente lo tendrá
el servidor pero éste pueden tomarse en cualquier momento presionando la tecla b, sobre la
ventana de despliegue.

5
Es importante mencionar que el modelo completo que se va a visualizar debe de estar almacenado en el disco duro de
cada máquina.

6 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

3. Archivos de configuración de NAVIO.

Como vimos en la sección anterior, una ejecución correcta de NAVIO requiere que le sean
pasados ciertos archivos de configuración que sirven para indicar las características del despliegue
(tamaño de la ventana, apertura de la cámara), tipo de dispositivo que se va a usar (teclado y ratón
o ratón tridimensional) y para definir algunas propiedades (orientación, posición, switcheo, etc) del
modelo que será visualizado. En las siguientes subsecciones discutiremos con detalle la definición
de estos archivos así como las implicaciones que tienen sobre nuestra visualización ciertos valores
de las variables.

3.1. Creación de archivos de configuración para el Navegador.

Los archivos de configuración de NAVIO, están escritos en xml, (eXtensible Markup Language), el
cual es un lenguaje extensible de etiquetas. Permite definir la gramática de lenguajes específicos
(cómo HTML). Por lo tanto XML no es un realmente un lenguaje en particular, sino una manera de
definir lenguajes para diferentes necesidades.

Para crear un archivo de configuración se necesitan usar las siguientes etiquetas <configuration>,
<elements> y <vrNavAppOsg>, las cuales crean el cuerpo del archivo de la siguiente manera,
Nota. Estas etiquetas son obligatorias en el archivo de configuración .

<configuration>
<elements>
<vrNavAppOsg name="vrNavAppOsg">
<!Todo el texto dentro de una etiqueta de este tipo es un commentario>
<!Configuracion de la Navegacion>
...
<!Carga de la escena>
...
</vrNavAppOsg>
</elements>
</configuration>

La etiqueta <configuration> le dice al navegador que se trata de un archivo de configuración, la


etiqueta <elements> indica cuales son los elementos que se van a configurar, en este caso es un
navegador del tipo <vrNavAppOsg>. Dentro de estas etiquetas se pueden definir dos grandes
grupos de etiquetas, aquellas que configuran la navegación, velocidad, aceleración, velocidad
máxima, colisiones, etc , y aquellas que cargan elementos a la escena, modelos, switches,
posición, orientación, etc.

3.2. Etiquetas de configuración de la navegación.

<FilePath> Con esta etiqueta se le indica al navegador la ruta del sistema donde va a buscar los
archivos que contienen los modelos que se quieren cargar, la ruta puede ser relativa o
absoluta.Valor por omisión, Filepath = ””.

Un ejemplo en GNU/Linux sería:


<FilePath>/home/usuario/dgscavrnavosg/example</FilePath>

Mientras que en Windows:


<FilePath>C:\Documents and Settings\Usuario\Desktop\NAVIO\Vrnav\example\modelos</FilePath>

7 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

<DriveHeight> Configura la altura máxima del observador al momento de navegar en modo DRIVE,
mientras más grande es el valor en esta etiqueta, el observador podrá pasar sobre obstáculos de
mayor altura. Valor por omisión, DriveHeight = 1.0

Ejemplo: <DriveHeight>1.0</DriveHeight>

<CollSize> Define el tamaño de la malla de colisión en los modos DRIVE y FLY con la que el
usuario interactúa en la escena cargada, para establecer el valor más adecuado de esta etiqueta y
de DriveHeight se depende completamente de las dimensiones de los modelos que se van a
cargar. Valor por omisión, CollSize = 4.0

Ejemplo: <CollSize>2.0</CollSize>

<OccLenght> Es la distancia máxima que tiene el occluder de profundidad cuando este se activa
en las opciones del navegador, es decir si la vista del observador no está obstruida por ningún
objeto de la escena el plano de oclusión estará colocado a esa distancia del observador impidiendo
que este pueda ver más allá. Valor por omisión, OccLenght = 1000.0

Ejemplo: <OccLenght>2000</OccLenght>

<AccelerateRate> establece la aceleración que se tiene al avanzar o retroceder. Nota, las unidades
de estos parámetros siempre están en referencia a las unidades del espacio de la escena, el
tiempo siempre está en segundos. Valor por omisión, AccelerateRate = 0.2

Ejemplo: <AccelerateRate>0.5</AccelerateRate>

<MaxVelocity> Velocidad máxima que se puede alcanzar al momento de avanzar o retroceder.


Valor por omisión, MaxVelocity = 5.0

Ejemplo: <MaxVelocity>3</MaxVelocity>

<DeltaL> Es la velocidad de recorrido del path cuando la interpolación es lineal entre los puntos
que conforman el camino que sigue el navegador. Valor por omisión, DeltaL = 0.001

Ejemplo: <DeltaL>0.001</DeltaL>

<DeltaS> Es la velocidad de recorrido del path cuando la interpolación entre los puntos que
conforman el camino que sigue el navegador es por medio de curvas spline. Valor por omisión,
DeltaS = 0.0001

Ejemplo: <DeltaS>0.0002</DeltaS>

<Ambient> Con la etiqueta ambient se define el color de la luz ambiental que se tiene en la escena,
dicho color esta en forma de RGBA (red, green, blue, alpha), por lo que esta misma etiqueta se
tiene que repetir 4 veces. Valor por omisión, Ambient = 0.0, 0.0, 0.0, 0.0

Ejemplo:

<Ambient>0.0</Ambient>
<Ambient>1.0</Ambient>
<Ambient>1.0</Ambient>
<Ambient>1.0</Ambient>

<Diffuse> Con la etiqueta diffuse se define el color de la luz difusa que se tiene en la escena, dicho
color esta en forma de RGBA (red, green, blue, alpha), por lo que esta misma etiqueta se tiene que
repetir 4 veces. Valor por omisión, Diffuse = 0.0, 0.0, 0.0, 0.0

8 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

Ejemplo:

<Diffuse>1.0</Diffuse>
<Diffuse>0.7</Diffuse>
<Diffuse>0.7</Diffuse>
<Diffuse>1.0</Diffuse>

<Model> La etiqueta Model le indica al navegador que el siguiente elemento a configurar es un


modelo, dentro de esta etiqueta se debe de especificar otra serie de etiquetas las cuales definen
varias propiedades del modelo a cargar.

Ejemplo:

<Model>
<Model name="Model 0">
<!Configuracion del modelo que se quiere cargar>
...
</Model>
</Model>

Las etiquetas que definen propiedades que pueden tener los modelos son: <filename>, <scale>,
<x>, <y>, <z>, <rotx>, <roty>, <rotz> , <collidable> y <Switch> <filename> Es el nombre del archivo
que se desea cargar, con extensión, estos archivos van a ser buscados en la ruta que se indico en
la etiqueta FilePath. Valor por omisión, filename = “”

Ejemplo: <filename>terrain.osg</filename>

<scale> Modifica la escala del modelo, un valor unitario deja al modelo con la misma escala. Valor
por omisión, scale = 1.0

Ejemplo: <scale>5.0</scale>

<x> modifica la posición original del modelo a lo largo del eje X. Valor por omisión, x = 0.0

Ejemplo: <x>10.5</x>

<y> modifica la posición original del modelo a lo largo del eje Y. Valor por omisión, y = 0.0

Ejemplo: <y>4.0</y>

<z> modifica la posición original del modelo a lo largo del eje Z. Valor por omisión, z = 0.0

Ejemplo: <z>11.0</z>

<rotx> Esta etiqueta modifica la orientación del modelo rotándolo sobre el eje X, la rotación que se
especifica está dada grados. Valor por omisión, rotx = 0.0

Ejemplo: <rotx>45.0</rotx>

<roty> Esta etiqueta modifica la orientación del modelo rotándolo sobre el eje Y, la rotación que se
especifica está dada en grados. Valor por omisión, roty = 0.0

Ejemplo: <roty>180.0</roty>

<rotz> Esta etiqueta modifica la orientación del modelo rotándolo sobre el eje Z, la rotación que se
especifica está dada en grados. Valor por omisión, rotz = 0.0

9 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

Ejemplo: <rotz>90.0</rotz>

<collidable> collidable le indica al navegador si el modelo que se va a cargar es un objeto con el


cual el observador puede colisionar o no, esta etiqueta solo puede tomar el valor de 0 ó 1. Valor
por omisión, collidable = 0

Ejemplo: <collidable>1</collidable>

<Switch> Con Switch se le dice al navegador que el modelo que se está cargando tiene un switch y
queremos poder activarlo al momento de correr la aplicación, de manera similar a la etiqueta Model
dentro de esta se deben definir otra serie de etiquetas las cuales configuran el switch.

Ejemplo:

<Switch>
<Switch name="Switch A">
<!Configuracion del switch>
.
.
.
</Switch>
</Switch>

<SwitchName> SwitchName es el nombre que tiene el switch dentro del archivo que se quiere
cargar, si este no corresponde con el indicado en esta etiqueta el navegador no reconocerá el
switch. Valor por omisión, SwitchName = “”

Ejemplo: <SwitchName>sw15</SwitchName>

<NumMasks> Número de máscara que tiene el switch, este número puede o no coincidir con el
verdadero número de máscaras en el archivo del modelo. Valor por omisión, NumMasks = 0

Ejemplo: <NumMasks>5</NumMasks>

<InitialState> Define el estado inicial del switch. Valor por omisión, InitialState = 0

Ejemplo: <InitialState>0</InitialState>

<InitialState> Define la máscara inicial del switch. Valor por omisión, InitialState = 0

Ejemplo: <InitialMask>3</InitialMask>

<Cal3dModel> La etiqueta Cal3dModel le indica al navegador que el siguiente elemento a


configurar es un modelo animado definido utilizando la librería Cal3d[4], dentro de esta etiqueta se
debe de especificar otra serie de etiquetas las cuales definen varias propiedades del modelo
animado a cargar.

Ejemplo.

<Cal3dModel>
<Cal3dModel name="Model 0">
<!Configuracion del modelo animado que se quiere cargar>
...
</Cal3dModel>
</Cal3dModel>

10 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manual de uso de NAVIO Visualizador/ Navegador

Las etiquetas que definen propiedades que pueden tener los modelos animados son: <configfile>,
<caldata>, <scale>, <x>, <y>, <z>, <rotx>, <roty>, <rotz> , <collidable> y <Switch>. Las etiquetas
que se repiten en Model y Cal3dModel tienen exactamente la misma función.

<configfile> Es el nombre del archivo de configuración del modelo de Cal3d que se desea cargar,
estos archivos van a ser buscados en la ruta que se indico en la etiqueta FilePath. Valor por
omisión, configfile = “”

Ejemplo: <configfile>paladin.cfg</configfile>

<caldata> Es la ruta del sistema en donde el navegador va a buscar los datos del modelo de Cal3d
indicados por el archivo de configuración, (mallas, animaciones, texturas), la ruta del sistema
puede ser relativa o absoluta. Valor por omisión, caldata =“”

Ejemplo en GNU/Linux: <caldata>/home/usuario/dgscavrnavosg/example/Paladin</caldata>

En Windows: <caldata>/home/usuario/dgscavrnavosg/example/Paladin</caldata>

<Sound> La etiqueta Sound se usa para que el navegador configure un sonido en la escena que
se está cargando, dentro de esta etiqueta se debe de especificar otra serie de etiquetas las cuales
definen varias propiedades del sonido.

Ejemplo:

<Sound>
<Sound name="Sound 1">
<! Configuracion del sonido>
...
</Sound>
</Sound>

Las etiquetas que definen propiedades que pueden tener los sonidos son: <soundAlias>,
<positional>, <x>, <y>, <z> y <volume>. Las etiquetas <x>, <y>, <z> tienen exactamente la misma
función que en Model.

<soundAlias> Es el nombre del archivo de sonido que se va a reproducir, al igual que los modelos
este archivo va a ser buscado por el navegador en relación a la dirección indicado en la etiqueta
<FilePath>. Valor por omisión, soundAlias = “”

Ejemplo: <soundAlias>bee.wav</soundAlias>

<positional> Es la etiqueta con la que se indica si el sonido va a tener una posición determinada en
el espacio o si va a ser un sonido ambiental, si la etiqueta tiene el valor de false la aplicación no
hará caso del valor de las etiquetas <x>, <y>, <z> en caso de que estas estén definidas con un
valor diferente de cero. Valor por omisión, positional = false

Ejemplo: <positional>true</positional>

<volume> Indica el valor del máximo volumen con el que se escuchara el sonido, el valor del
volumen esta normalizado a 1, es decir 1 es el volumen al que está grabado el sonido y 0 es sin
volumen. Valor por omisión, volume = 1

Ejemplo: <volume>0.5</volume>
<referencedist> Indica la distancia que se toma como referencia al sonido. Valor por omisión
referencedist = 0.0

11 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manua
al de uso de NAVIO Visualizado
or/ Navegador

Ejempllo: <reference
edist>3.0</refferencedist>

3.3. Archivos
A de
e configuración de dispositivo
d os

Dentroo de la carpeta
a config que se
s encuentra en la distribu
ución del nave egador se inccluyen algunos
archivo
os de configuración ya predefinidos los cuales se reccomienda usa ar para correrr la aplicación
n,
estos archivos
a son simple.jconf,
s nf, simplepcsttr.jconf y TracckdSimple.jco
simplepc.jcon onf.

mer archivo, siimple.jconf, debe


El prim d ser usad
do cuando la interfaz
i definiida en las opcciones del
navega ador es keybooard, es decirr se desea co
omo dispositivvo de entrada a al ratón y tecclado, el
desplie
egue que se presenta
p con esta configurración simula las proporcio ones que se tienen en la
sala IX
XTLI a una ressolución de 1200*370 pixe eles, en la figu
ura 3 se ilustrra dicha propo
orción.

Figura 3

Desplieguue usando el
archivo simple.jconf.

El arch
hivo de config
guración simplepc.jconf se usa de mane era similar al archivo
a de co
onfiguración
simple.cfg, entrada a través del ratón
r y tecladdo, solo que esta
e configuraación presentaa una ventana
a
en propporción 4:3, la
a cual es la proporción
p quee se tiene en la mayoría de los monitorres, a una
resolucción de 800*6600, en la figu
ura 4 se ilustra
a dicha propoorción.

Figura
a4

Despliiegue usando
o
el arch
hivo
simplepc.jconf.

Con el archivo de co
onfiguración simplepcstr.jc
s conf se obtien
ne un desplieg
gue casi idén
ntico al que
nta simplepc.jconf la diferencia radica en
presen n que las imáágenes que presenta estánn en estéreo si
s
es que
e el hardware en el cual se corre el naveegador permite desplegar este tipo de imágenes.

12
2 Daniel A. Cervantes Cabrera,
C José Larios Delga
ado / DGSCA
A UNAM
Manua
al de uso de NAVIO Visualizado
or/ Navegador

Por último el archivo


o de configura
ación TrackdS
Simple.jconf es
e el archivo de configuracción con el cu ual
se pueede hacer usoo del tracking system que se
s tiene en la sala Ixtli, opcción -device, por este motivo
el desppliegue que presenta esta configuración
n es similar al del archivo simple.jconf,
s t
tratar de usarr
esta coonfiguración en
e una máquiina en la que no se cuente e con un sisteema de trackin ng producirá
erroress al momento de correr el navegador.
n

Estos archivos
a ya tienen la configguración que el navegador espera para a obtener la innformación dee
estos dispositivos
d por lo que el cambio
c en alguno de estoss archivos pue ede provocar que la
aplicacción no funcio
one correctam mente, en esto os archivos se e puede configura la resolución, las
proporciones de de la ventana, la as teclas quee simulan el dispositivo de tracking con el e que se
cuentaa en el observvatorio de visu ualización Ixtli, entre otras cosas, para modificar
m estoos archivos see
puede usar VrjVonfiig, herramienta de configuración propia a de vrjuggler pero fuera de el propósito de
d
este doocumento, so olo se recomie enda la modifficación de esstos archivos a los usuarios que ya
tengann más experie encia en los archivos de co onfiguración queq usa vrjugg gler de otra fo
orma los
archivoos que se dan n en la distribución son sufficiente para correr
c la apliccación en cua alquier
compu utadora personal ya sea en n Windows o GNU/Linux.
G

ma más simplle de cambiarr la resolución


La form n que se pressenta con los archivos de configuración
c
del navvegador es mediante
m el usso de la herramienta vrjcon nfig que vienee dentro de la distribución de
d
vrjuggler, por ejempplo para camb biar la resolucción del archivvo simplepc.jcconf una vez abierto el
o hay que abrrir los menús Display –FrontScreen-size
archivo e, dentro de size
s se puede
e modificar loss
paráme etro width y height
h que corrresponden a la resolución n que se va a usar, en el caaso de
simplepc.jconf estos s valores son 800 y 600 re espectivamente.

Figura 5.

Archivo
o simple.jconf
abierto
o con vrjconfig
g.

Es muyy importante mantener la proporción


p dee la resolución
n que presentta cada archivvo de
configu
uración, en el caso de simp
plepc.jconf essta proporción
n es de 4:3, de
d no ser así se pueden
produccir deformacio
ones en la ima
agen que se presenta
p en pantalla.
p

4. Op
pciones dell teclado y ratón

Existen n dos manera


as de realizar una navegacción en NAVIOO, la más commún es utiliza ando el teclado
y ratón
n que usamos s diariamente en nuestra computadora, (que se activva con la opción -keyboard d
en la líínea de coma
andos), sin em
mbargo tambiéén es posible
e usar el ratón
n tridimension nal (que se
activa con -device) que funciona en el Observvatorio de Rea
alidad Virtual Ixtli. A contin
nuación
discutirremos estas dos
d posibilidaades así comoo sus múltiple
es opciones.
13
3 Daniel A. Cervantes Cabrera,
C José Larios Delga
ado / DGSCA
A UNAM
Manual de uso de NAVIO Visualizador/ Navegador

4.1. Control de navegación usando el teclado y ratón común.

Si en este momento se ha logrado correr NAVIO, se habrán dado cuenta que los movimientos del
ratón simulan los respectivos de los giros de la cabeza, adicionalmente como se mencionó en la
sección 2, el movimiento hacia adelante y atrás se consigue presionando respectivamente los
botones izquierdo y derecho, y el de parada el botón de en medio. Es posible también hacer
movimientos de paneo que se consigue presionando las siguientes teclas:

Ctrl + BIR = arriba


Ctrl + BDR = abajo
Alt + BIR = izquierda
Atl + BDR = derecha

en donde BIR se refiere al botón izquierdo del ratón y BDR al botón derecho.

Además tenemos las siguientes opciones:

● La tecla r (por “reset”), reubica la cámara en la posición inicial definida en el archivo de


configuración.
● La tecla s (por “stop”), hace un alto total a la navegación.
● La tecla f, permite ver la escena en el modo llamado “fire wire”, en el que se muestran sólo los
polígonos que definen la geometría de modelo, si se vuelve a presionar esta tecla el modo se
desactiva.
● La tecla c (por “clip plane”), activa el plano de corte, si se vuelve a presionar esta tecla plano
desaparece.
● La tecla o, permite realizar cambios en los modos de navegación. Por defecto al momento de
correrse la aplicación está en un modo de navegación llamado “FLY”, así al presionarse
sucesivamente la misma tecla se cambia a los diferentes modos hasta regresar de nuevo a “FLY”,
esta secuencia es la siguiente:
○ “FLY”, simula un recorrido volando.
○ “DRIVE”, simula una recorrido abordo de un vehículo o caminando.
○ “TRACK BALL”, es posible mover el objeto como si se estuviera agarrándolo con la
mano, para hacer esto es necesario tener presionada el botón izquierdo del ratón y
arrastrarlo.
○ “PATH”, este modo permite que visualizar un recorrido previamente grabado, si no es el
caso la navegación quedará parada (ver subsección 4.1.1).
● La tecla q, permite salirnos de la aplicación.

4.2. Navegación con camino predefinido

Una navegación con camino predefinido permite que NAVIO realice un recorrido grabado con
anterioridad. Para grabarlo es necesario que se esté en un modo “FLY” o “DRIVE” y se presione la
tecla x en ese momento se imprimirá en la ventana del sistema starting to save path y se
empezará a grabar un vector de posiciones con todos los movimientos que realice el usuario, para
finalizar la grabación se debe volver a presionar la tecla x, en ese momento en la ventana del
sistema imprimirá el siguiente mensaje end to save path.

Una vez hecho esto, es posible ver el camino grabado pasando al modo de navegación “PATH”
(ver sección 4.1), si por alguna razón hubiera algo que no nos gustó y quisiéramos repetirlo
debemos regresar de nuevo a modo “FLY” o “DRIVE” y volver hacer el mismo procedimiento. En el
momento que estemos convencidos del recorrido podemos grabarlo presionando la tecla i con lo
que NAVIO imprimirá ----path.txt save---.

Si deseamos que NAVIO tenga por defecto el camino que se guardó en la sesión previa, debemos
indicarlo en el momento de ejecución del programa tecleando la siguiente instrucción: VrNav path

14 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM


Manua
al de uso de NAVIO Visualizado
or/ Navegador

path.txxt configfiles simple.cfg


s mo
odel.xml y de nuevo para poder
p ver el re
ecorrido debe
emos pasar all
modo de d navegació ón “PATH”.

4.3. “Switches”

Un “Swwitch” es un elemento
e en un
u modelo 3d, que permite “aparecer” o “desaparece er” algún objeto
dentro de éste. NAVVIO tiene la posibilidad
p de manejar este e tipo de elem
mentos en una a escena
ensional, para
tridime a esto es neceesario que see indiquen en el archivo de configuración como se
explicó no en el orden
ó en la sección 2 y una vezz hecho esto, la tecla n permitirá selecccionar cada un
en el que
q se definieron en el arch hivo de config
guración, en el
e momento queq se hayan presentado
todos los “switches”” se vuelve co
on el primero..

4.4. Control
C de navegació
ón usando ratón tridimensionall de la sala
a IXTLI

El conttrol de la nave
egación con NAVIO
N utiliza
ando el ratón tridimensiona
t al es muy simple, lo único
que haay que recordar son las sig guientes equivvalencias entrre los botones del ratón no ormal y las de
el
tridime
ensional: la acceleración, paarada y desacceleración que e se realizan con el ratón común,
c son
implemmentados usando respectivvamente los botones
b rojo, amarillo y verrde. El paneoo se hace conn el
botón negro
n de en medio
m y finalm
mente los movvimientos de la cabeza, se e realizan gira
ando la muñe eca
en el sentido deseado (ver figura a 6).

Figura
a 6.

Ratónn tridimensional
de la sala
s IXTLI.

Para poder correr NAVIO


N utilizan
ndo este dispo ositivo es neccesario utiliza
ar el archivo de
d configuración
especial llamado TrrackdSimple.jconf y utilizarr la opción de
evice, esto se explica con mayor
m detalle
en la sección 3.3.

Refe
erencias

[1] Bibllioteca gráfica


a de código libre, disponible en http://wwww.openscen negraph.org
[2] Bibllioteca multiplataforma parra aplicacionees de Realida ad Virtual, disponible en
http://w
www.vrjugglerr.org/.
[3] Bibllioteca de códdigo libre para
a manejo de sonido
s ambie ental, disponibble en
http://w
www.openal.o org.

15
5 Daniel A. Cervantes Cabrera,
C José Larios Delga
ado / DGSCA
A UNAM
Manual de uso de NAVIO Visualizador/ Navegador

[4] Biblioteca de código libre para manejo de personajes, disponible en


https://gna.org/projects/cal3d.

Índice

Manual de uso de NAVIO .....................................................................................................1 


NAVIO...................................................................................................................................1 
Manual de uso de NAVIO .....................................................................................................2 
Resumen ..............................................................................................................................2 
Áreas de aplicación ..............................................................................................................2 
Palabras clave ......................................................................................................................2 
1. Introducción ......................................................................................................................2 
NAVIO ........................................................................................................................2 
NAVIO ........................................................................................................................3 
2. Ejecución. .........................................................................................................................3 
2.1. Variables de ambiente. ..............................................................................................3 
Figura 1. .....................................................................................................................4 
2.2. Línea de comandos....................................................................................................4 
Figura 2. .....................................................................................................................5 
3. Archivos de configuración de NAVIO. ..............................................................................7 
3.1. Creación de archivos de configuración para el Navegador. ......................................7 
3.2. Etiquetas de configuración de la navegación.............................................................7 
3.3. Archivos de configuración de dispositivos ...............................................................12 
Figura 3 ....................................................................................................................12 
Figura 4 ....................................................................................................................12 
4. Opciones del teclado y ratón.......................................................................................13 
4.1. Control de navegación usando el teclado y ratón común. .......................................14 
4.2. Navegación con camino predefinido ........................................................................14 
4.3. “Switches” ................................................................................................................15 
4.4. Control de navegación usando ratón tridimensional de la sala IXTLI ......................15 
Figura 6. ...................................................................................................................15 
Referencias.........................................................................................................................15 
Índice ..................................................................................................................................16 

16 Daniel A. Cervantes Cabrera, José Larios Delgado / DGSCA UNAM

También podría gustarte