Cap2
- 1. 12 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
SOFTWARE:
Fundamentos de los programas para
Realidad Virtual
Juan Carlos Parra Márquez
2.1. COMPUTACION
GRAFICA
El aporte que ha realizado la computación Por su parte, los archivos geométricos
gráfica a las diversas actividades ha sido de guardan la información precisa de las formas
una magnitud insospechada, es así que actual- gráficas, a través de un sistema de coordena-
mente un trabajo de ingeniería o arquitectura das cartesianas (X,Y). De este modo, cada fi-
no se concibe sin el aporte de la informática. gura se identifica por sus puntos extremos, y
A su vez, grandes avances de la computación pueden ser representadas a cualquier escala
se deben a los requerimientos que las tareas o calidad de imagen (son independientes de
gráficas le han exigido. la resolución). Naturalmente, la definición y
La información gráfica se maneja en el manejo de las figuras geométricas son más
computador básicamente de dos maneras: complejas, pero permiten trabajar con dimen-
como un mapa de puntos (bit-maps) o como siones exactas e incluso con formas
una geometría vectorial. Las imágenes de tridimensionales, porque basta con agregar un
puntos se utilizan en el procesamiento de fo- tercer eje de coordenadas (Z). Estos progra-
tografías digitalizadas (por scanner o cámara mas son denominados CAD (computer-aided
digital) o en dibujos sencillos (paint), y con- design o diseño asistido por computador). Por
sisten en una trama de puntos de color (pixels) ello ahora no es difícil encontrar diseños de
que representan la imagen. Se caracterizan por construcciones, automóviles, computadores y
su facilidad de manipulación cambiando la otros, realizados con programas CAD.
tonalidad de los puntos, pero están limitadas La información gráfica consiste en una
en resolución y precisión, además que son base de datos numérica almacenada en el
planas (bi-dimensionales). El archivo digital computador, que define cualquier tipo de for-
se puede conservar en una diversidad de ma o volumen. Para poder visualizarlos, es
formatos, entre los que podemos mencionar: necesario interpretarlos y generar una imagen
BMP, PCX, TIF o JPG. en la pantalla. Aunque la geometría sea
tridimensional, se genera una vista plana de
X la información (planta o elevación). Ocasio-
nalmente esta vista reúne varias caras de las
formas (en una isométrica o perspectiva) otor-
gando una representación de la volumetría.
Esta información es coherente, en el sentido
que la alteración de una parte de la geometría
Y
tridimensional, altera el conjunto, por tanto
Representación de Pixel Representación Geométrica cada vista presentará la geometría modifica-
da, asegurando la sensación de manejar un
Fig. 2.1 - Imágenes de Puntos vs. Geometría Vectorial. modelo completo.
- 2. SOFTWARE: fundamentos de los programas para Realidad Virtual 13
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
cies de los objetos o escenarios completos. En
los entornos de Realidad Virtual las anima-
ciones se utilizan también para representar
movimientos de los objetos, como los contro-
les de un vehículo, y mediante dispositivos
montados sobre la cabeza, obtener vistas
estereoscópicas y recorridos.
Otro aspecto importante dentro de la com-
putación gráfica son los tipos de software,
éstos pueden ser clasificados en dos grandes
grupos: paquetes generales de programación
y aplicaciones para propósitos especiales. En
los primeros podemos reconocer las librerías
de funciones gráficas que se utilizan con un
Fig. 2.2 - Diseño Tridimensional en CAD. lenguaje de programación de alto nivel, como
el leguaje C. En el segundo grupo se pueden
Cuando los diseños están prácticamente clasificar los productos diseñados para per-
completos, se aplican fórmulas de iluminación sonas que no son programadores, este es el
y presentación de superficies para producir caso de los CAD.
imágenes más realistas. Estas propiedades son De este modo, la computación gráfica se
aplicadas con mayor o menor detalle de exac- encuentra en diversos campos, que ya son
titud dependiendo de las exigencias requeri- parte de nuestra vida cotidiana, como el cine,
das. Otra potencialidad que se le ha adiciona- diseño de edificios, prendas de vestir, avisos
do a estos productos es la animación, utiliza- publicitarios, edición de periódicos, revistas,
da para diversos diseños. Las animaciones se textos de estudios, muebles, vehículos y jue-
utilizan, por ejemplo, para desplegar superfi- gos por computadoras en general.
- 3. 14 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.2. CONSTRUCCION
TRIDIMENSIONAL
Los modelos tridimensionales correspon- planteado descripciones sobre la base de sóli-
den a escenarios con muchas clases diferen- dos, como la mencionada subdivisión de es-
tes de objetos, tales como árboles, edificios, pacios, pero poseen mayor demanda de pro-
muebles, etc. Por esto, es necesario utilizar cesamiento computacional y representa una
geometrías que representen con precisión las mayor sofisticación del producto.
características de una gran variedad de ob- De este modo la descripción de una geo-
jetos. Los volúmenes rectangulares y cúbicos metría tridimensional en el computador se
proporcionan una descripción adecuada para realiza, generalmente, según los polígonos ex-
objetos sencillos, sin embargo, alas de avio- ternos de las formas, localizados en un espa-
nes, engranajes y otras estructuras cio determinado por tres ejes cartesianos, que
ingenieriles con superficies curvas deben representan el espacio, con cierta magnitud
definirse con técnicas complejas como las general (tamaño del universo) y precisión
spline. Los métodos como los fractales y los (medidas). Puede ser representado en distin-
sistemas de partículas permiten, a su vez, tas escalas (proporcionando las dimensiones
representar elementos naturales como nubes, computacionales con las medidas de salida en
montañas y vegetales, entre otras formas. Las pantalla o impresora), pero en las aplicacio-
técnicas de modelado, según interacción de nes de Realidad Virtual se utilizan básicamen-
fuerzas físicas, permiten reproducir elemen- te vistas interiores, sin escala definida, traba-
tos no rígidos como telas o gelatinas. Difícil- jando de manera absoluta (1:1).
mente habrá un solo método para describir En estas descripciones gráficas las posicio-
cabalmente todos los objetos que existen en nes de cada punto (que constituyen vértices
la naturaleza y que incluya todas sus carac- de una forma geométrica) se identifican por
terísticas. sus coordenadas (X, Y, Z).
Básicamente se tienen dos modalidades de
Y
representación de geometrías tridimensio-
nales en el computador:
Z
a) Representaciones de frontera (B-rep:
Boundary - representation), la cual descri-
be los objetos 3D, como el conjunto de sus
superficies externas. (x, y, z)
b) Representaciones de divisiones de espacio,
en que se sub-divide el ambiente en pe-
queñas unidades volumétricas (voxels: X
volume element), determinando la región
espacial que ocupa cada objeto.
Fig. 2.3 - Punto 3D.
En los inicios de la computación gráfica las
descripciones geométricas se estructuraban Con dos puntos extremos se puede indi-
sólo en puntos o líneas con dirección (vecto- car una línea tridimensional (definiendo una
res), pero actualmente la mayoría de los pro- arista), y a su vez tres puntos definen un pla-
gramas de CAD y Realidad Virtual se basan no triangular básico. Aunque frecuentemen-
en la representación por fronteras. Se han te los programas utilizan cuadriláteros como
- 4. SOFTWARE: fundamentos de los programas para Realidad Virtual 15
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
polígonos básicos, con el fin de ahorrar infor- una tabla de vértices, una de aristas y una de
mación, ya que la mayoría de los volúmenes polígonos. Definiendo el objeto de la manera
son rectangulares (sin embargo, como los cua- siguiente:
tro puntos extremos no necesariamente son Polígono arista
co-planares, se producen algunos polígonos (triángulo)
quebrados). V2
De este modo, un objeto tridimensional se vértice
define como un conjunto de superficies e1
poligonales (denominadas facetas o caras), en
el cual se identifican sus aristas y vértices. V1
e2
También se reconoce en cada polígono bási- V3
co, una “normal” o perpendicular del punto
medio, que indica la orientación de la cara, e3
estableciendo un lado visible y otro invisible.
V4
V1: x1, y1, z1 (vértice 1)
e1: V2, V3 (arista 1)
S1: e1, e2, e3 (superficie o polígono 1)
Fig. 2.5 - Información geométrica de un Objeto 3D.
Otra posibilidad es utilizar sólo una tabla
de polígonos, pero esto intensifica la informa-
Fig. 2.4 - Objeto Tridimensional. ción sobre las coordenadas, ya que los valo-
res explícitos de las coordenadas se listan para
Los programas gráficos especifican una cada vértice en cada polígono. Puesto que las
superficie poligonal mediante la serie de co- tablas geométricas de datos pueden contener
ordenadas de sus vértices y los parámetros de extensas listas de vértices y aristas para obje-
atributos asociados. Estos datos se colocan en tos complejos, es importante que se verifique
tablas que se utilizan en el procesamiento y la consistencia de la totalidad de los datos. Es
generación de imágenes, y en la manipulación importante mencionar que, sobre todo en las
de objetos. Estas tablas de datos de polígonos aplicaciones interactivas, como es el caso de
pueden ser organizadas en dos grupos, tablas la Realidad Virtual, es frecuente que se come-
geométricas y tablas de atributos. Las prime- tan ciertos errores en la manipulación de las
ras contienen las coordenadas de vértices y tablas de datos, que luego distorsionan la pre-
los parámetros para identificar la orientación sentación de algún objeto.
espacial de las superficies. La segunda tabla Los objetos tridimensionales son usual-
contiene los parámetros que especifican el mente poliedros de base rectangular
grado de transparencia del objeto, las carac- (paralelepípedos regulares, como los cubos),
terísticas de reflexión y textura de las superfi- también denominados “cajas”. Agrupando
cies, entre otros datos. estas formas básicas se puede conformar una
Una organización muy utilizada para la gran variedad de objetos. También se utilizan
tabla geométrica es crear 3 sub-tablas (listas), mucho volúmenes básicos como pirámides,
- 5. 16 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
cilindros o esferas, aunque las superficie cur- Para las formas curvas de simetría radial
vas son aproximadas a través de secuencias (como las esferas, cilindros, conos, vasos o ja-
de planos rectos. Una mayor cantidad de rrones), se pueden generar las superficies
polígonos permite una descripción más exac- poligonales basadas en el concepto de sólido
ta de la curvatura, pero a la vez exige mayor de revolución. Consiste en generar la forma
procesamiento computacional. Formas más curva mediante la rotación de una cierta can-
complejas pueden ser realizadas determinan- tidad de puntos, o un perfil determinado, al-
do un polígono o perfil base y una distancia, rededor de un eje en el sistema de coordena-
en la cual se reproduce el polígono, generan- das. Estableciendo también la cantidad de seg-
do superficies en cada una de sus aristas, en mentos o tramos en los cuales se subdividirá
un proceso conocido como “extrusión” o la superficie curva en polígonos rectos.
“lofter”, también vinculado con darle espesor Una forma tridimensional es “atómica” si
a figuras planas (generando paralelepí-pedos es indivisible o no descompuesta en formas
de base irregular). Algunos programas per- menores y puede constituir un “objeto vir-
miten establecer un trazado de proyección tual”. En ese caso es un objeto simple, pero
(sweep) produciendo una forma estirada en también un objeto puede estar constituido por
torno a una trayectoria, útil para modelar tu- varias formas, debido a:
berías, helicoides, etc.
a) El objeto virtual es demasiado complejo,
esto es, no es posible representarlo con una
sola forma.
b) El objeto virtual está conformado por com-
Eje de giro
ponentes o partes que poseen un “compor-
tamiento” independiente entre ellos.
Para el caso a) podemos dar como ejem-
plo la carrocería de un vehículo, y para el caso
b) el ejemplo de una puerta de automóvil con
su manilla y su ventana (en el cual el vidrio
sube y baja, independientemente de la puer-
ta en sí). A los objetos compuestos se les de-
nomina objetos agrupados o simplemente
grupos. También un objeto más complejo pue-
de estar conformado a su vez, por varios gru-
pos. Por ejemplo, una habitación puede estar
Sentido del giro
conformada por el grupo ventana, grupo pa-
redes, grupo puerta, etc. De este modo un
ambiente virtual está conformado por formas
poligonales, que constituyen objetos simples
Fig. 2.6 - Generación de un objeto 3D por revolución. o agrupados.
- 6. SOFTWARE: fundamentos de los programas para Realidad Virtual 17
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.3. TRANSFORMACIONES
GEOMETRICAS.
Las transformaciones geométricas son uti- cies de polígonos, trasladamos cada vértice de
lizadas para manipular los objetos dentro de cada superficie y volvemos a trazar las facetas
un modelo 3D. Un objeto se puede trasladar del polígono en la nueva posición.
y/o rotar en los tres ejes coordenados (x, y, z).
Para el caso de las rotaciones se puede consi- b) Rotación: para girar un objeto se debe de-
derar como una composición de tres rotacio- signar un eje de rotación (en el cual se gi-
nes, una para cada eje cartesiano, es así que rará el objeto) y el valor de la rotación.
cualquier secuencia de transformaciones se re-
presenta como una secuencia de transforma- Por norma, los ángulos de rotación positi-
ciones en cada eje. va producen giros en sentido opuesto a las
Las transformaciones más utilizadas son: manecillas del reloj con respecto al eje de una
de las coordenadas.
a) Traslación: es la traslación de un punto Si se gira con respecto al eje z la matriz será:
desde la posición P1= ( x1, y1, z1) a la po-
sición P2= ( x2, y2, z2). La operación se re-
x2 cos A - sen A 0 0 x1
presenta mediante la matriz: y2 = sen A cos A 0 0 y1
z3 0 0 1 0 z1
1 0 0 0 1 1
donde la rotación, con respecto al eje z, es en
A grados. La matriz se puede adaptar para
los giros en los otros ejes.
c) Escalamiento: escalar un objeto se refiere
Donde tx, ty, tz corresponden a la distan- a cambiar el tamaño y volverlo a
cia de traslación para los ejes x, y, z respecti- posicionar con respecto al origen de las co-
vamente. Dicha traslación se traduce en: ordenadas. Si todos los parámetros de
transformación son iguales se cambian las
dimensiones relativas del objeto. La ma-
triz que representa el escalamiento es la
siguiente:
x2 Sx 0 0 0 x1
y2 = 0 Sy 0 0 y1
z3 0 0 Sz 0 z1
1 0 0 0 1 1
Esta forma de traslación es válida para to-
dos los puntos del objeto en cuestión. Por lo
tanto, un objeto se traslada en tres dimensio- donde Sx, Sy, Sz son los parámetros de escala-
nes al trasladar cada uno de los puntos de de- miento con respecto al origen. Existen otras
finición inicial del objeto. Para un objeto que transformaciones tridimensionales como la re-
se representa como un conjunto de superfi- flexión y el recorte.
- 7. 18 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
Otras operaciones volumétricas bastante La sustracción (A - B) genera un volumen
utilizadas en los programas tridimensionales, en el que se ha eliminado la parte del otro en
son las operaciones “booleanas”. Se refieren que se intersecta, el volumen sustraído sim-
cuando se utiliza una geometría de construc- plemente desaparece (si no se intersectan, que-
ción sólida (CSG: constructive solid geometry) da íntegro el original). En este caso es muy
para operaciones similares al álgebra de Boole, relevante cuál volumen es el original, gene-
esto es: adición, sustracción o intersección. ralmente reconocido como el primer operan-
U
Aplicadas en volúmenes, la adición o unión do. En la intersección (A B), se genera el
(A + B) genera la fusión de los dos volúmenes volumen común en el cual participan los dos
en uno solo, descartando cualquier parte que originales, en los cuales se eliminan en sus
se intersecte entre ambos. Si no se intersectan, partes restantes. En algunos programas tam-
simplemente se crea un volumen compuesto bién se agrega una operación de intersección
de dos partes separadas. que conserva los volúmenes restantes (gene-
rando tres formas). Estas modalidades son
muy efectivas para construir fácilmente cier-
tas formas complejas, como por ejemplo, mu-
ros con ventanas o piezas mecánicas aunque
la información computacional es estricta-
mente de superficies y no sólida, ocasional-
mente se producen errores en la presentación
Fig. 2.7 - Operación booleana. gráfica.
- 8. SOFTWARE: fundamentos de los programas para Realidad Virtual 19
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.4. REPRESENTACION
TRIDIMENSIONAL
Existen varios métodos de representación
tridimensional, pero inicialmente diremos que
para obtener la imagen de una escena 3D, pri-
mero debemos establecer una posición (usual-
mente en coordenadas cartesianas) para el
observador o cámara, que son los conceptos
utilizados para denominar al punto de vista
desde el cual se ve el modelo computacional. Fig. 2.9 - Proyecciones Paralelas.
Frente a éste se establece un plano de visión,
en el cual se proyecta la información b) Proyección polar (perspectivas): Esta téc-
geométrica de las formas 3D. nica se basa en proyectar puntos del obje-
Plano de visualización to al plano de visualización a lo largo de
trayectorias convergentes al punto de vis-
ta. Esto implica que los objetos que están
más lejos de este plano se desplieguen más
pequeños y representen cabalmente la pro-
fundidad del entorno, pero sin medidas
precisas. En este tipo de proyección las
imágenes de escenarios 3D obtienen ma-
yor realismo visual. Además, las aristas de
Forma 3D los objetos tienden a converger en una lí-
Observador
nea de fondo (horizonte).
Fig. 2.8 - Proyección en el Plano de Visión.
En principio, los objetos son presentados
como formas transparentes (wireframe) y lue-
go se aplican técnicas de iluminación y pre-
sentación de superficie para colorear y som-
brear las áreas visibles. Así la computadora
genera las imágenes a partir de la posición
de la cámara con respecto a los objetos que
ésta debiera estar visualizando.
Dentro de las técnicas para generar la vis-
ta de un objeto tridimensional, tenemos:
a) Proyección paralela: este método consiste
en proyectar puntos del objeto a través de Fig. 2.10 - Proyección Polar.
líneas paralelas al eje de visión. Es así,
como en diferentes posiciones de la cáma- c) Eliminación de líneas ocultas: se utiliza
ra, se proyectan las superficies visibles del como técnica para poder distinguir el fren-
objeto sobre el plano de visualización para te y la parte de atrás de los objetos desple-
obtener diversas vistas (superiores, latera- gados. Sin ocultamiento un objeto no po-
les, isométricas) que posean medidas pro- dría ser comprendido en su posición con
porcionales del objeto. respecto a otros.
- 9. 20 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.5. TEXTURAS E
ILUMINACION
Para lograr que el modelo tridimensional
alcance una apariencia realista, es necesario
incorporar a la geometría dos capacidades
relevantes, superficies texturadas y fórmulas
de iluminación. Estas dos propiedades com-
plementan la geometría y generan una mejor
reproducción de la situación real que repre-
senta el modelo computacional.
Inicialmente, los objetos geométricos pue-
Fig. 2.11 - Eliminación de líneas ocultas. den ser representados con colores básicos. Los
colores se asignan de acuerdo con patrones
Otra manera de indicar el volumen es va- RGB (red-green-blue: rojo-verde-azul) o HSV
riar la intensidad de los objetos con respecto (hue-saturation-lightness: tono-intensidad-bri-
a su distancia de la posición de visualización, llo), en combinaciones proporcionales de cual-
es decir, las líneas que están más cerca del quiera de estos tres valores, por ejemplo, el
punto de vista se despliegan con mayor in- morado intenso en RGB es 100%, 0%, 100%.
tensidad, seleccionando los valores en un ran- Como los colores están representados por in-
go de distancia en que deben variar. Otra for- tensidad luminosa, los valores mayores son
ma de indicar la profundidad es otorgar un más claros. Los tres indicadores al máximo
efecto de atmósfera entre los objetos, es decir, producen el blanco, al mínimo generan, el ne-
los objetos más lejanos tienen una apariencia gro como ausencia de color. Al contrario de la
más tenue que los más cercanos, en algunos pintura convencional, en que la adición de co-
casos se agregan distorsiones de color para lores genera el negro y la ausencia, el blanco.
fortalecer la visión borrosa a la distancia. La variedad de los rangos depende de la
paleta de colores que permita el programa y/
o el monitor del computador. Adicionalmente
se incorpora un valor para la transparencia
(alpha-channel). Los colores son asignados por
superficie o al objeto completo, aunque en este
último caso no se distinguen las distintas ca-
ras a menos que se marquen las aristas con
líneas de otro color.
Sin embargo, se ha reconocido que la va-
riedad de colores, por muy amplia que sea,
no alcanza a otorgar un gran realismo visual
(los modelos se ven acartonados), debido a
que en los ambientes reales, los colores varían
de tono en las superficies. Una de las técnicas
más eficaces para mejorar la apariencia rea-
lista de las superficies, ha sido la incorpora-
ción de texturas digitalizadas. La utilización
de texturas consiste en ‘escanear’ fotografías
de materiales reales (muros de ladrillos, ma-
- 10. SOFTWARE: fundamentos de los programas para Realidad Virtual 21
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
deras o mármoles), que se aplican como imá- to geométrico en objetos que tienen un rol se-
genes planas en algunas superficies. La técni- cundario en la escena. También algunas for-
ca de aplicación es similar a la proyección de mas naturales difíciles de modelar apropia-
mapas, por lo que se denomina “mapeo”, y damente (como los árboles), es preferible re-
consiste en calzar la imagen en las distintas presentarlas con una fotografia, en que se asig-
superficies del objeto tridimensional. Si la for- na un valor de transparencia al color de fon-
ma es distinta a la imagen, ésta simplemente do, para generar un perfil recortado. Otra apli-
se recorta. Si el tamaño de la imagen es muy cación usual de las texturas es de paisaje ge-
pequeño se puede repetir en la superficie, o neral (background), para tener un entorno más
se puede agrandar, aunque esto último mues- realista, a veces ajustado a una forma cilín-
tra notoriamente los puntos de la imagen drica o semi-esférica (especialmente cuando
(pixelado). En algunas superficies laterales la se utilizan cielos con nubes), para represen-
textura se aplica en ángulos tan inclinados que tarlo apropiadamente al desplazarse por el
los puntos se extienden por las caras, aunque escenario virtual.
esto sirve para algunos materiales (como la El otro aspecto relevante en la apariencia
madera), usualmente se utiliza una proyec- visual del modelo, es la incorporación de mé-
ción por superficies o fórmulas de mapeo ci- todos de iluminación. Cuando la luz enfrenta
líndrico o esférico. una superficie opaca, en parte se refleja y en
parte se absorbe, esta última es llamada re-
flexión difusa. La mayoría de los programas
otorgan una iluminación pareja en todo el am-
biente (environmental light), reproduciendo
esta difusión indirecta. A veces esta ilumina-
ción posee un sentido determinado como el
sol, tal que las superficies enfrentadas y per-
pendiculares a la fuente de luz están más ilu-
minadas y las más inclinadas o posteriores,
se oscurecen. De este modo se reconocen
“sombras propias” en los objetos, y se distin-
guen las distintas superficies, por tonalidades
más o menos luminosas del mismo color, otor-
Fig. 2.12 - Mapeo de texturas en un modelo gando un sentido de volumen. El sentido de
arquitectónico. la luz se puede determinar a partir de un en-
torno esférico alrededor del modelo, o por án-
Las texturas pueden tener un valor de ru- gulo de altitud y azimut (algunos programas
gosidad (bumpy), en que las sombras adquie- arquitectónicos permiten indicar la fecha,
ren profundidad, lo que es muy adecuado hora, latitud y paralelo de la localización para
para reproducir, por ejemplo, ladrillos o pie- colocar la posición real del sol).
dras. De hecho, es más eficaz en algunas for- Otro tipo de iluminación consiste en colo-
mas pequeñas, no modelarlas tridimensio- car algunos focos de luz, posicionados den-
nalmente sino simplemente texturizarlas con tro del modelo geométrico, especialmente
una imagen real (como las fachadas de los para iluminar zonas posteriores o interiores,
edificios), con el fin de ahorrar procesamien- que la iluminación ambiental deja oscureci-
- 11. 22 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
das. Indicando la posición tridimensional se
establece una luz “omni-direccional”, que al
igual que una ampolleta, ilumina con similar
intensidad en todas las direcciones. Algunas
fuentes de luz pueden poseer un sentido o eje
determinado basado en un punto particular
(spot light). Estas luces focalizadas se aplican
en un “cono”, reproduciendo la iluminación
de una lámpara con pantalla, destacando al-
gunas partes de la escena. Es importante men-
cionar que estos focos no tienen una geome-
tría determinada, al aparecer en la imagen son
sólo puntos de luz, por lo cual a veces se de-
ben definir formas de lámparas para represen-
tarlas en el modelo.
Cualquiera de estas luces puede ser apli- Fig. 2.13 - Iluminación.
cada con distintas intensidades y con tintes
de color, bañando los objetos en alguna tona-
lidad que altere sus colores propios. También El cálculo del valor de la tonalidad del co-
se pueden considerar “sombras arrojadas”, en lor (o textura) de cada superficie se realiza
que cada objeto proyecte oscurecimiento en con ciertos algoritmos gráficos. Básicamente
sus objetos vecinos. Esta capacidad exige un se relaciona la dirección e intensidad de la luz
procesamiento adicional en el modelo, por- (y distancia si es un foco), con la “normal” de
que se debe calcular el trazado de la sombra la superficie (perpendicular en el punto me-
de cada objeto en los demás, de acuerdo con dio). Algunos algoritmos más avanzados
la posición de la fuente de luz, de manera si- (Gouraud, Phong), lo calculan según la normal
milar al “mapeo” de texturas. Algunos obje- de los vértices, interpolando los valores me-
tos pueden considerar transparencia, en que dios de la superficie, para otorgar una degra-
parte de la luz atraviese la forma, o pueden dación suave de los colores y “suavizar” las
considerar reflejo, en que rebote la ilumina- formas complejas, generando un gran realis-
ción (y también se reflejen los objetos vecinos, mo en objetos curvos y marcando ciertos bri-
proyectando la imagen en su superficie). llos o puntos de luz. La mayoría de estas fór-
mulas calcula finalmente el tono de color apli-
cado en cada punto de la imagen del modelo,
de acuerdo con la vista vigente, por lo que se
denominan “algoritmos del pintor”. Otros
métodos efectúan un cálculo general de la ilu-
minación del entorno, basados en la reflexión
de luz entre los objetos (Radiosity) o por el tra-
zado de los rayos luminosos (Ray-tracing). Los
que son más fidedignos en ambientes más
difusos o con objetos más especulares respec-
tivamente.
- 12. SOFTWARE: fundamentos de los programas para Realidad Virtual 23
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.6. CARACTERISTICAS DE
LOS SOFTWARE
PARA REALIDAD VIRTUAL
Los productos de software para el desa- mas, secuencias de vértices incompatibles,
rrollo de aplicaciones de RV se fundamentan estrategias de texturización distintas (aun-
en los conceptos de computación gráfica pre- que frecuentemente la importación se re-
sentados previamente, es por ello que muchas fiere sólo a geometría).
de las características mencionadas aquí son 2. Librerías: La mayoría de los programas de
coincidentes con las anteriores. Pero se esta- RV están provistos de librerías 3D, con for-
blece un conjunto de distinciones específicas mas básicas o primitivas tales como cajas,
y exigencias mayores que diferencian los pro- esferas, conos, pirámides, etc. que sirven
gramas de Realidad Virtual con los otros soft- para generar formas compuestas. También
ware gráficos e incluso con programas de cuentan con librerías de objetos comple-
modelación tridimensional o animación rea- jos, texturas, etc. Es útil mencionar que
lista. estas librerías permiten que el diseñador
Para comenzar diremos que el software re-utilice muchas formas que simplemen-
de desarrollo debe ser coherente con la ar- te decoran el ambiente virtual.
quitectura del computador en que se usará 3. Operaciones Geométricas: Consiste en las
el producto. Aunque pueda sonar obvio, en capacidades de manipular los objetos crea-
este caso es muy relevante puesto que el dos en una posición definida, típicamente
equipo deberá responder a los requerimien- referida a las coordenadas cartesianas, y a
tos de procesamiento del producto. En el partir de éstos se puede trasladar, rotar o
diseño tridimensional, los software de Rea- re-escalar a otra posición. Eliminando la
lidad Virtual son muy similares a los pro- forma original o duplicándola. Esto impli-
gramas CAD, pero agregan capacidades de ca internamente un cambio en las tablas
navegación en tiempo real, interacción con de vértices de los objetos. Se incluyen oca-
el usuario, detección de colisiones, audio, sionalmente operaciones booleanas y agru-
programación de comportamientos, etc. De pamiento de formas, de modo que se pue-
este modo en los programas de RV encon- dan crear objetos compuestos operando o
traremos comúnmente: asociando distintas formas simples.
4. Nivel de Detalle: Esta característica co-
1. Importación de modelos: Capacidad de nocida en los textos como LOD (level-of-
importar formas 3D para incorporarlas en detail) permite la optimización de la vi-
una determinada aplicación. Generalmen- sualización de una escena virtual, al cam-
te son provenientes de un programa CAD biar una forma con un alto nivel de deta-
y se utiliza mayormente el formato DXF lle, por otra más simple, dependiendo de
(drawing exchage format). También en algu- la distancia del punto de vista. De este
nos casos los programas RV permiten ex- modo, el objeto es reemplazado o se hace
portar objetos en este mismo formato. Las invisible si el observador está en movi-
importaciones de formas no están ajenas a miento o muy distante, y cuando está
problemas, para lo cual se han desarrolla- quieto y cercano, se despliega la forma
do filtros especiales que manipulan el ar- más compleja.
chivo para resolver las dificultades que se 5. Animación: Corresponde a la asignación de
presentan como diferencia de forma una traslación o rotación a un objeto en un
poligonal básica (cuadriláteros contra periodo de tiempo, sincronizado con la na-
triángulos), exceso de polígonos por for- vegación por el ambiente virtual. Estos mo-
- 13. 24 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
vimientos generalmente equivalen a com- caso de un motor que al ser encendido,
portamientos del mundo virtual (abrir una emite el ruido correspondiente. Una carac-
puerta, desplazar un vehículo) y pueden terística importante es controlar el volumen
ser automáticos u originados por algún en relación a la distancia existente entre el
evento (interacción con el usuario o con objeto y el navegador. También se puede
otro objeto). incorporar información táctil, que establez-
6. Articulado: Se refiere a que los objetos pue- ca una retro-alimentación física con el usua-
dan ser organizados en jerarquías; es de- rio (feed-back), a través de dispositivos es-
cir, que partes componentes de un objeto peciales. Así como otros sentidos en explo-
posean propiedades de movimiento dis- ración (sináptica, temperatura, etc.)
tintas a otras partes, pero supeditadas al 12. Lenguajes de programación: Esta propie-
total. Un ejemplo de esto son las ruedas dad corresponde a que el software dispon-
de un automóvil, que pueden girar en un ga de comandos de control que dicten com-
sentido, pero a su vez; debe desplazarse portamientos de los objetos y manejen da-
en la dirección del vehículo completo. tos de entradas y salidas.
7. Detección de colisiones: Es una caracte- 13. Manipulación de eventos: Refleja la capa-
rística que permite identificar cuando un cidad de activar un comportamiento al
objeto intersecta a otros, de modo que pue- interactuar con un determinado objeto. Esto
da ser obstaculizado el movimiento del ob- implica reconocer la posición y acción del
jeto, de manera similar a si éstos fueran só- usuario, interpretar una programación y
lidos, como en el mundo real. modificar la geometría consecuentemente.
8. Propiedades físicas: Adicionalmente se 14. Configuración de dispositivos múltiples:
presenta una serie de atributos relaciona- Consiste en permitir la incorporación de
dos con características físicas, como masa distintos dispositivos de entrada y salida
o roce, reconocimiento de gravedad (mo- de datos, como elementos de visualización
vimiento vertical acelerado en proporción o interacción del usuario (por ejemplo, cas-
al tamaño o peso) e incluso de ascensión cos y guantes).
(salto sobre el objeto). 15. Mundos paralelos: Se refiere a la genera-
9. Color y texturización: Asignación de co- ción de ambientes virtuales constituidos
lores a las superficies y utilización de tex- por sub-mundos, en los cuales el navegan-
turas digitalizadas. Incluyendo propieda- te puede interactuar al momento que in-
des de transparencia (para generar obje- gresa a cada uno de ellos. Esto con el fin
tos de textura, como árboles o nubes) y se- de disminuir la complejidad que se tendría
cuencias (como videos). si fuera un solo mundo completo y por
10. Fuentes de luz: Definición de iluminación ende optimizar el procesamiento.
ambiental y focos de luz con cierta posi- 16. Conectividad en red: Permite que el mun-
ción, orientación, intensidad e incluso co- do virtual pueda ser utilizado en una red
lores propios. Ocasionalmente con movi- computacional, a través de diversos dis-
mientos propios. positivos o señales de entrada y salida, y
11. Incorporación de audio: Es la propiedad además que permita la interacción de di-
de asociarle a los objetos, de la aplicación versos usuarios en una misma aplicación.
virtual, un sonido que les corresponda en Un ejemplo de esto son los juegos multi-
el mundo real. Un ejemplo de esto es el usuarios.
- 14. SOFTWARE: fundamentos de los programas para Realidad Virtual 25
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.7. ESTRUCTURA DE
UN SOFTWARE DE RV
17. Exportación en VRML: Consiste en expor- Un programa de Realidad Virtual presen-
tar las aplicaciones virtuales en lenguaje ta una estructura de mayor complejidad que
VRML (Virtual Reality Modeling Language), lo normal de un software computacional, de-
que pueden ser utilizadas ampliamente en bido a que, por un lado, constituye un am-
Internet, por constituir una descripción de biente tridimensional que se extiende hasta
bajo nivel. capacidades multimediales, a la vez que dis-
pone de una programación específica y el
control de múltiples dispositivos externos,
todo funcionando y modificándose en tiem-
po-real. Esto establece una amplitud
sofisticada de características, que se han des-
crito previamente en dos procesos principa-
les: el desarrollo de la aplicación, en el cual se
utiliza el programa para diseñar el escenario
3D, incorporar el audio, programar los com-
portamientos y configurar dispositivos, y otra
actividad es la navegación interactiva, en que
se puede visualizar, recorrer y manipular el
ambiente virtual de acuerdo con lo prepara-
do en el desarrollo. En ese momento actúan
los siguientes aspectos del software RV:
1. ENTRADAS Y SALIDAS: Consiste en
la definición de los diferentes dispositivos de
entrada y salida de datos que utilizará la apli-
cación virtual. Además del mouse y del mo-
nitor, usualmente los sistemas de RV utilizan
joystick, rastreadores, visualizadores
estereoscópicos, trajes de datos, etc. Los cua-
les deben ser adecuadamente reconocidos y
controlados por el software, evitando los con-
flictos y asegurando la transmisión de datos
en tiempo real. Muchos de estos dispositivos
alteran antecedentes de la aplicación virtual
durante su utilización, como el punto de vis-
ta del usuario, la orientación, activación de
eventos, etc. Debemos agregar que al trabajar
en red se suman nuevas entradas que deben
ser gestionadas apropiadamente.
2. BASE DE DATOS: El almacenamiento
de la información de los objetos y del mundo
virtual es realizado en la base de datos del mis-
mo. Lo que se almacena en este archivo de
descripción son los objetos, los pro-
- 15. 26 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
gramas que describen las acciones de estos ob- mente contenido en un volumen denomi-
jetos o del usuario, métodos de iluminación, nado “Bounding Volume”. Esto es un
mecanismos de control y soporte del paralelepípedo rectangular o esférico. Esto
hardware. favorece el uso rápido del objeto durante
La descripción de los ítemes almacenados su renderización. Cuando el volumen de
es la siguiente: contorno está completamente fuera del
área de vista (cámara) no necesita ser trans-
a) Objetos: Los objetos en un mundo virtual formado o considerado durante la
pueden tener geometría, jerarquía, com- renderización. El volumen de contorno es-
portamiento y otros atributos. Las carac- férico es más rápido en la detección de co-
terísticas de los objetos tienen un impacto lisiones.
considerable en la estructura y diseño de e) Geometría de objetos: El modelamiento de
una aplicación. De acuerdo con esto, una formas (shapes) y su geometría se basa en
lista de pares atributo-valor es usada para los conceptos mencionados de la compu-
describir los objetos. Mediante estos atri- tación gráfica. Algunos modelos buscan
butos se pueden sumar cambios a los ob- muy profusamente la exactitud geométrica
jetos sin requerir cambios en la estructura con respecto a los objetos del mundo real.
de datos de los mismos. Otros métodos buscan la simplicidad de
b) Posición y orientación: Un objeto es representación. La mayoría de los sistemas
posicionable y orientable. Esto es, tiene lo- de RV sacrifican el detalle y la exactitud
calización y organización espacial. La ma- orientándose hacia la simplificación por
yor parte de los objetos puede tener estos ganar velocidad de renderizado. Los obje-
atributos modificables a los cuales se les tos son simplemente un conjunto de pun-
puede aplicar operaciones de escalamien- tos y estos a su vez constituyen aristas y
to, traslación y rotación. Estas operaciones superficies.
son a menudo implementadas usando
operaciones algebraicas en la manipula- 3. PROGRAMACIÓN: Un mundo virtual
ción de vectores y matrices, como se des- consistente en objetos estáticos es sólo un di-
cribió en los artículos anteriores. seño apacible. Muchos investigadores y en-
c) Jerarquía: Un objeto es parte de la jerar- tusiastas de la RV han confirmado que la
quía de otro mediante la relación de pa- interacción es la clave del éxito e interés de la
rentesco de padre, hermano o hijo. Cada realidad virtual. Esto requiere definir las ac-
objeto sufre las transformaciones que se le ciones que los objetos realizarán por ellos mis-
aplican a su padre y desde éste es trans- mos y cuando interactúe el usuario con éstos.
mitido a sus propios hijos. Por lo anterior, Lo que se denomina generalmente, “guión del
un objeto en particular puede tener padre mundo virtual”. Algunos autores dividen es-
e hijos a la vez. Las jerarquías son usadas tos guiones de comportamiento en 3 tipos
para crear articulación de figuras (grupos) básicos: Guiones de movimiento, guiones de
los cuales constituyen una forma más com- reacción ante un evento y guiones de co-
pleja: por ejemplo, un robot (padre) cons- nexión.
tituido por sus partes (hijos) tales como Los guiones pueden ser textuales o estar
cabeza, miembros, etc. compilados en un programa estructurado. En
d) Volumen de contorno: Un objeto es usual- el uso de lenguajes de programación para RV
- 16. SOFTWARE: fundamentos de los programas para Realidad Virtual 27
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
ha sido considerado como pionero VPL Research guión que puede conectar un guante a un
con su Body Electric System. Este lenguaje fue di- objeto que representa una mano virtual.
señado para Macintosh. En general, los produc- El usuario debe dar alguna indicación de
tos de RV no poseen lenguajes de guiones co- retroalimentación de la interacción cuando el
munes entre ellos. Lo que sí se puede afirmar es cursor virtual seleccione o toque un objeto. Un
que gran parte de ellos tiene como base de su sistema ordinario tiene sólo una retroalimen-
estructura el lenguaje de programación C. tación (feedback) visual para reconocer que el
Los tipos básicos de guiones son los si- cursor (que actúa de mano virtual) penetra un
guientes: objeto. Alternativamente, una señal de audio
a) Guiones de movimiento: Este modifica la puede ser generada para indicar una colisión.
posición, orientación u otros atributos de Algunos sistemas sólo utilizan un simple tac-
un objeto, luz o cámara a partir de la ocu- to como feedback, otros producen una vibra-
rrencia de un “tick” sobre el sistema. Un ción en el joystick para indicar la colisión, etc.
tick es una acción de simulación en un
tiempo de reloj. Generalmente esto es equi- 4. PROCESAMIENTOS: Durante la utili-
valente a un frame de la animación visual. zación de la aplicación virtual se realiza un
Debemos destacar que la RV generalmen- intenso procesamiento de datos en tiempo-
te utiliza métodos de simulación discretos real, esto es, a la misma velocidad que
(no continuos). Por simplificación y velo- visualiza el usuario. Básicamente es un pro-
cidad, sólo un guión de movimiento será cesamiento de la imagen visual, pero a su vez
activado para un objeto en algún instante. interviene un complejo cálculo geométrico, un
Por otra parte, un guión puede ser asocia- procesamiento del audio, una interpretación
do a un objeto desde una jerarquía. Por de la programación y un control de los dispo-
ejemplo, un guión puede ser asociado al sitivos de entrada y salida.
usuario de un vehículo cuando desea con- Primero se debe identificar la posición del
ducir alrededor del mundo virtual. Alter- punto de vista y de su orientación (sentido de
nativamente, el usuario puede contener un la visión), que puede estar dictada por el
objeto con su propia programación y que mouse en alguna configuración 3D o por un
esté jerarquizado con respecto a él (ejem- rastreador, o por una combinación de ambos.
plo, su reloj de pulsera). Además, identificar la activación de algún
b) Guiones de reacción ante un evento: Son evento, por colisión de un objeto con apunta-
invocados cuando algún evento ocurre, dor 3D o un guante de datos (debidamente
como por ejemplo en una colisión, una localizado). Si esto se produce, interpretar el
aproximación o simplemente una selec- código de programación activado, para mo-
ción. En RV los sistemas necesitan evaluar dificar la geometría correspondiente (trasla-
los parámetros de evento en cada tick dar un objeto o detener un movimiento). A la
(frame). Esto puede ser, por ejemplo, el de- vez que se revisan todas las rutinas de ani-
tector de proximidad entre un objeto 3D o mación actualmente activas que establecen un
la detección de colisión, etc. desplazamiento en cada secuencia de tiempo.
c) Guiones de conexión: Corresponden a los Luego de determinar la situación del mode-
guiones que controlan la conexión de dis- lo geométrico, se debe calcular la proyección
positivos de entrada y salida de varios ob- en el plano de visión correspondiente (doble
jetos. Un ejemplo de esto lo constituye el si es estereoscópico), descartando las formas
- 17. 28 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
no cubiertas por el ángulo de visión, omitien-
do las líneas ocultas, calculando las aplica-
PROGRA-
MACION ciones de texturas y los tonos de color de las
superficies, de acuerdo con las fuentes de ilu-
minación definidas, sombreamientos y
algoritmos de render. Posteriormente gene-
rar la imagen visual y activar las reacciones
ENTRADA
PROCESA- SALIDA en dispositivos especiales (estímulos de fuer-
MIENTOS
za en joystick) según la situación de los obje-
tos con el usuario. También se deben proce-
sar las frecuencias de audio que estén acti-
BASE vadas, en función de las distancias actuales
DE del punto de vista a las posiciones definidas.
DATOS Esta es la secuencia de procesos o “pipeline”,
que se debe realizar en una mínima fracción
de tiempo, mientras se navega libremente
Fig. 2.14 - Estructura de un Software RV. por el escenario 3D.
- 18. SOFTWARE: fundamentos de los programas para Realidad Virtual 29
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.8. REALIDAD VIRTUAL
EN INTERNET
Una de las más excitantes áreas de la Rea- de múltiples usuarios distribuidos en el mun-
lidad Virtual es su incorporación en la do, mediante la infraestructura de la red. Con
Internet. Módem rápidos y conexiones punto este proyecto ha sido realizado un prototipo de
a punto son ahora más frecuentes en la red y sistema distribuido de Realidad Virtual, me-
esto permite mover grandes cantidades de da- diante el protocolo DWTP (Distributed Worlds
tos sin muchas demoras de proceso. Por esta Transfer and Comunication Protocol). El prototipo
razón, actualmente se integran cada vez más se ha realizado con el estándar VRML y consis-
mundos 3D y archivos multimedia en la red. te en el browser multiusuario SmallView. Este
El estándar para modelos 3D en la red es ac- último provee soporte para VRML 1.0 y 2.0, y
tualmente VRML (Virtual Reality Modeling extensiones para la representación de usuarios
Language). Este cumple el mismo rol que mediante “avatares”. El soporte para comuni-
HTML para las páginas Web, pero en este caso cación entre usuarios permite audio y conver-
para escenarios tridimensionales. Consiste en saciones (chat) mediante texto escrito.
un lenguaje fácil de transmitir y posible de Sofisticados mecanismos de interacción proveen
utilizar en múltiple equipos con navegadores al estándar VRML para habilitar una colabora-
(browser) gratuitos. ción real entre los usuarios. DWTP es un proto-
Uno de los primeros programas para colo de aplicación similar a HTTP (Hypertext
visualizar un archivo VRML fue el llamado Transfer Protocol). Está provisto de un soporte
WebSpace. WebSpace es un browser para para mundos virtuales distribuidos, indepen-
VRML y fue habilitado inicialmente para com- diente del protocolo de la red. Utiliza una
putadores SGI (Silicon Graphics), pero luego conectividad entre varios protocolos estándar
hubo un constante crecimiento en la cantidad para red y así provee mayores facilidades de
de mundos VRML habilitados para ser vistos. transmisión para varios tipos de datos usados
Esto llevó a que la compañía TGS comenzará en un entorno virtual. El protocolo es indepen-
el desarrollo de una versión para PC de diente de los sistemas de realidad virtual.
WebSpace. Los tipos de datos soportados para la co-
En sus comienzos los mundos virtuales municación permiten la transmisión fiable de
VRML eran ambientes monousuarios, es de- grandes archivos para la descripción de mun-
cir, para ser vistos por todos los usuarios co- dos virtuales, la transferencia de mensajes
nectados a la red, pero navegando en forma cortos o eventos entre un gran número de
solitaria. En otras palabras, cada cibernauta participantes, y la transferencia de datos de
recibe una copia del mundo virtual, en su audio. El protocolo usado para Internet, UDP/
computador (con browser residente en su IP (Internet User Datagram Protocol/Internet
equipo), y navega en forma independiente de Protocol) y TCP/IP (Transmission Control
los demás. A partir de esto, el nuevo reto fue- Protocol/Internet Protocol) depende de los tipos
ron los mundos multiusuarios. de datos a transmitir y disponibles en la red
La “Computer Support Cooporative Work” local. El potencial del protocolo es una direc-
(CSCW) y el proyecto de mundos virtuales 3D ta conexión entre los usuarios, es decir, no re-
del “Institute for Applied Information Technology” quiere de ningún servidor. Sin embargo, al-
ha enfocado el desarrollo de VRML hacia me- gunas propiedades son requeridas para pro-
canismos y tecnologías colaborativas para veer ciertos servicios en la conexión entre par-
entornos virtuales para Internet. Los principa- ticipantes. Esto incluye la carga de servicios
les objetivos son la representación e interacción para nuevos participantes.
- 19. 30 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
2.9. SOFTWARE PARA
DESARROLLO DE
APLICACIONES EN RV
WorldsChat y Active Worlds son algunos de En el mercado existe una gran variedad de
los ambientes de realidad virtual interactivos software para desarrollo de aplicaciones en
para Internet. En estos, el usuario navega a tra- RV. Todos los productos se caracterizan por
vés de la aplicación 3D interactuando y co- diversas opciones para color, luz, sonido, cá-
municándose con otros usuarios mediante maras, texturas y otras cualidades. Debemos
“avatares” que representan a las personas co- señalar que actualmente todos dirigen sus
nectadas al mundo virtual. Es una razonable aplicaciones hacia Internet mediante la obten-
experiencia realista de un evento social, es de- ción de mundos virtuales, objetos y aplicacio-
cir, hay una comunicación entre personas que nes 3D, en general, bajo el estándar VRML.
físicamente no se conocen pero que se En el presente capítulo se realiza una descrip-
visualizan a través de sus presencias virtuales. ción general de algunos de los productos dis-
Es de esperar que en el mediano plazo aparez- ponibles en el mercado y sus potencialidades
can productos en los cuales las personas ha- varían en las características señaladas ante-
blaran directamente y se verán “físicamente”. riormente, no siendo la intensión realizar una
comparación ni un estudio exhaustivo de los
mismos.
Los programas, en su mayoría, permiten
exportar e importar archivos desde diferentes
formatos, así se tienen productos que generan
ambientes virtuales en diversos formatos. Si un
determinado producto genera mundos
virtuales en un formato propio debe poseer su
propio navegador, es así como todos aquellos
que diseñan aplicaciones en VRML utilizan
browser para Internet, cuyo formato de inter-
Fig. 2.15 - Mundos virtuales en Internet. pretación es similar para todos estos últimos.
- 20. SOFTWARE: fundamentos de los programas para Realidad Virtual 31
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
1. RayDream Studio 2. 3D Open System
Este es un conjunto integrado de aplica- Es una herramienta para desarrollar apli-
ciones de la empresa Metacreations. No es un caciones y mundos virtuales dinámicos de alta
software sofisticado de modelamiento pero efectividad en 3D. Se puede operar en varias
vale la pena considerarlo. Primeramente, es plataformas, incluyendo DOS, OS/2,
accesible en precio. Es bueno para laborato- Windows 9x/NT y Unix. 3D Open System
rios educacionales puesto que existen versio- permite crear mundos 3D con visualización
nes para Mac y para Windows. El programa en tiempo real e incluye interiores y exterio-
es fácil de usar. Las interfaces de usuario han res 3D, objetos estáticos y móviles, imágenes
sido diseñadas según un formato gráfico. Un JPG, luces, color dinámico 3D, efectos, videos
elemento clave es la multifuncionalidad, pues- AVI, sonidos (MID, MP3 y WAV), fondos y
to que se ha incorporado un navegador a tra- soporte para documentos HTML. Se pueden
vés del cual se puede elegir, diseñar e incor- crear mundos ilimitados en tamaño y puede
porar objetos a partir de una librería y efec- anidar unos mundos en otros.
tuar modificaciones tales como iluminación,
deformaciones, efectos de renderizado, ani-
mación, etc. Existen objetos, cámaras, luces,
árboles y objetos animados, que pueden ser
controlados a través de gráficas de Windows.
Un monitor de gran resolución puede ser de
mucha ayuda para trabajar con este software.
Mallas y complejas modelaciones se realizan
en ventanas separadas y de fácil retorno a la
escena principal, esto puede ser poco mane-
jable en un monitor pequeño.
- 21. 32 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
3. V-Realm 4. Internet Space Builder
Este es un paquete que permite crear obje- Es un editor 3D para diseñadores Web,
tos 3D y mundos para ser vistos mediante el permite la creación de mundos virtuales y
Browser V-Realm u otros compatibles con el publicarlos en Internet. Puede diseñar y edi-
estándar VRML 1.0. Sus características inclu- tar escenas y objetos 3D usando operaciones
yen múltiples editores fáciles de manipular, booleanas (suma y resta) sobre un rango de
texturas, luz y funciones para cámaras, como formas primitivas como esferas, pirámides,
un buen editor individual y uno para la agru- conos y cilindros. Puede también importar y
pación de objetos. Todo basado en comandos exportar escenas y objetos en formato VRML
VRML. Además, soporta formatos GIF, JPEG 2.0. Pueden ser vistas las creaciones en la ma-
y RGB para archivos de textura. Posee habili- yoría de los browser de VRML. Internet Space
dades prácticas para cortar, copiar y pegar Builder posee una gran galería de formas, tex-
entre archivos VRML. Posee herramientas turas, pinturas, objetos y videos. Permite crear
para manipular formas 3D tales como trans- puntos de vistas adicionales (cámaras) y po-
formaciones, re-modelado, despliegues simul- see características avanzadas de mapeo de
táneos de escenas y otros. Incluye un progra- texturas, color y transparencia. Puede también
ma de traducción que importa archivos des- importar y exportar mundos en formato
de 3D Studio, Autocad, True Type Font y otros. VRML 2.0 comprimido (GZIP), además,
En el cap. 5 se aborda una explicación más renombrar y convertir formatos de archivos
completa de sus funciones. de otro destino. Soporta VRML 1.0, puede pro-
cesar archivos BMP, GIF, JPG y PNG de imá-
genes e importar archivos 3DS, DXF y otros,
puede importar objetos MUS y exportarlos
en formato DXF.
- 22. SOFTWARE: fundamentos de los programas para Realidad Virtual 33
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
5. SitePad Pro 6. 3 DEM
Es un ambiente de desarrollo integrado Permite principalmente crear escenas te-
simultáneamente para browser de HTML y rrestres en tres dimensiones de baja resolu-
VRML. Incluye un editor que posee una sin- ción, animación de vuelo en tiempo real y
taxis de manipulación de colores. Posee he- mundos VRML de variados tamaños y diver-
rramientas de chequeo de sintaxis para sas fuentes de datos. 3 DEM utiliza librerías
HTML, VBScript y JavaScript y puede cons- de SGI/Microsoft OpenGL para producir
truir sus propias aplicaciones usando modelos 3D de alta velocidad. Puede
Javascript y Vbscript. Todas las funciones de renderizar imágenes en 16 o 24 bits de color.
JpadPro son también incluidas en SitePad Pro. La renderización de imágenes puede ser azul-
La edición de texto limita la descripción rojo (requeridos para visualización
geométrica pero le otorga gran precisión y estereoscópica con anaglifos) o proyecciones
coherencia a los archivos. Usualmente se uti- de color 3D requeridos para gafas de
liza como revisor de archivos VRML. obturación (LCD).
- 23. 34 SOFTWARE: fundamentos de los programas para Realidad Virtual
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
7. Virtus Walkthrough 8. Virtus VR
Este es el software inicial de la serie Virtus. Es la versión de bajo costo de Virtus y es
Posee excelentes controles sobre luces, fácil bueno para aquellas aplicaciones que no ne-
acceso a texturas y edición de formas (Shapes). cesitan alto nivel de detalle. En vez de herra-
Puede crear modelos VRML para publicar mientas de dibujo usa formas predefinidas
modelos en Internet. Trabaja con varias ven- que pueden ser arrastradas hacia un plano o
tanas con vistas planas, elevaciones y pers- una elevación. Posee extensas librerías de for-
pectivas realistas para chequear el ambiente mas que lo convierten en un sistema de dise-
creado. Paletas de herramientas y controles ño rápido. Esta rapidez de diseño tiene un
gráficos facilitan su uso, pero la ejecución y costo en la fineza del mismo. También es li-
complejidad dependen mucho del mitado en el manejo de luces. Pero posee gran
equipamiento. versatilidad en la navegación con distintos
equipos.
- 24. SOFTWARE: fundamentos de los programas para Realidad Virtual 35
Parra Marquez, Juan Carlos; García Alvarado, Rodrigo; Santelices Malfanti, Iván quot;Introducción Práctica a la Realidad Virtualquot; © Ediciones U. Bío-Bío, Concepción, 2001
9. Multigen 10. Superscape VRT
Aunque se ha dicho que existen muchos Es un sistema profesional para el diseño
productos para RV y que muchos de los mo- de mundos 3D interactivo sobre plataforma
delos son importados desde sistemas CAD PC. Estos mundos pueden ser publicados en
(por ejemplo DXF), hay un número conside- VRLM en Internet y usar su navegador
rable de sistemas de modelamiento usados Viscape, como también navegar con el
para crear sus propias formas 3D. Entre ellos browser propio Visualizer. También se pue-
podemos destacar a Multigen, que proviene den crear mundos mediante su versión gra-
de una de las compañías de mayor reconoci- tuita 3D-WebMaster. Superscape está com-
miento y que produce software de puesto de 7 editores que permiten la creación
modelamiento desde 1986. Estos productos de sus aplicaciones. En éstos se pueden desa-
son usados ampliamente en diversas aplica- rrollar mundos a partir de objetos 3D, textu-
ciones de simulación en tiempo real para en- ras y sonido utilizando editores de formas,
trenamiento industrial u otros fines. En diver- imágenes y sonidos, entre otros. A los objetos
sas plataformas tales como SGI, Sony, se les puede asociar propiedades tales como:
Nintendo, Sega, Macintosh, PC y otros equi- dinámica, velocidad angular, gravedad y
pos especiales para 3D en tiempo real. Los otros, además de incorporar comportamien-
productos de software incluyen Multigen II tos mediante el uso del lenguaje interno de
Pro, Multigen Creator, Multigen GO y Superscape llamado SCL (Superscape Control
Smartscene, abarcando editores muy comple- Language). Posee librerías que contienen tex-
tos y sofisticados, con navegadores de gran turas, objetos y sonidos, los cuales pueden ser
actividad gráfica. utilizados libremente por el diseñador. VRT
soporta un gran número de tarjetas gráficas,
dispositivos de entrada y tarjetas de sonido.
En el cap. 5 se explica la programación con la
versión 3D-WebMaster.