Sunteți pe pagina 1din 24

12

SOFTWARE: fundamentos de los programas para Realidad Virtual

SOFTWARE: Fundamentos de los programas para Realidad Virtual


Juan Carlos Parra Mrquez

2.1. COMPUTACION GRAFICA


El aporte que ha realizado la computacin grfica a las diversas actividades ha sido de una magnitud insospechada, es as que actualmente un trabajo de ingeniera o arquitectura no se concibe sin el aporte de la informtica. A su vez, grandes avances de la computacin se deben a los requerimientos que las tareas grficas le han exigido. La informacin grfica se maneja en el computador bsicamente de dos maneras: como un mapa de puntos (bit-maps) o como una geometra vectorial. Las imgenes de puntos se utilizan en el procesamiento de fotografas digitalizadas (por scanner o cmara digital) o en dibujos sencillos (paint), y consisten en una trama de puntos de color (pixels) que representan la imagen. Se caracterizan por su facilidad de manipulacin cambiando la tonalidad de los puntos, pero estn limitadas en resolucin y precisin, adems que son planas (bi-dimensionales). El archivo digital se puede conservar en una diversidad de formatos, entre los que podemos mencionar: BMP, PCX, TIF o JPG.
X

Y
Representacin de Pixel
Representacin Geomtrica

Fig. 2.1 - Imgenes de Puntos vs. Geometra Vectorial.

Por su parte, los archivos geomtricos guardan la informacin precisa de las formas grficas, a travs de un sistema de coordenadas cartesianas (X,Y). De este modo, cada figura se identifica por sus puntos extremos, y pueden ser representadas a cualquier escala o calidad de imagen (son independientes de la resolucin). Naturalmente, la definicin y manejo de las figuras geomtricas son ms complejas, pero permiten trabajar con dimensiones exactas e incluso con formas tridimensionales, porque basta con agregar un tercer eje de coordenadas (Z). Estos programas son denominados CAD (computer-aided design o diseo asistido por computador). Por ello ahora no es difcil encontrar diseos de construcciones, automviles, computadores y otros, realizados con programas CAD. La informacin grfica consiste en una base de datos numrica almacenada en el computador, que define cualquier tipo de forma o volumen. Para poder visualizarlos, es necesario interpretarlos y generar una imagen en la pantalla. Aunque la geometra sea tridimensional, se genera una vista plana de la informacin (planta o elevacin). Ocasionalmente esta vista rene varias caras de las formas (en una isomtrica o perspectiva) otorgando una representacin de la volumetra. Esta informacin es coherente, en el sentido que la alteracin de una parte de la geometra tridimensional, altera el conjunto, por tanto cada vista presentar la geometra modificada, asegurando la sensacin de manejar un modelo completo.

Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

SOFTWARE: fundamentos de los programas para Realidad Virtual

13
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

Fig. 2.2 - Diseo Tridimensional en CAD.

Cuando los diseos estn prcticamente completos, se aplican frmulas de iluminacin y presentacin de superficies para producir imgenes ms realistas. Estas propiedades son aplicadas con mayor o menor detalle de exactitud dependiendo de las exigencias requeridas. Otra potencialidad que se le ha adicionado a estos productos es la animacin, utilizada para diversos diseos. Las animaciones se utilizan, por ejemplo, para desplegar superfi-

cies de los objetos o escenarios completos. En los entornos de Realidad Virtual las animaciones se utilizan tambin para representar movimientos de los objetos, como los controles de un vehculo, y mediante dispositivos montados sobre la cabeza, obtener vistas estereoscpicas y recorridos. Otro aspecto importante dentro de la computacin grfica son los tipos de software, stos pueden ser clasificados en dos grandes grupos: paquetes generales de programacin y aplicaciones para propsitos especiales. En los primeros podemos reconocer las libreras de funciones grficas que se utilizan con un lenguaje de programacin de alto nivel, como el leguaje C. En el segundo grupo se pueden clasificar los productos diseados para personas que no son programadores, este es el caso de los CAD. De este modo, la computacin grfica se encuentra en diversos campos, que ya son parte de nuestra vida cotidiana, como el cine, diseo de edificios, prendas de vestir, avisos publicitarios, edicin de peridicos, revistas, textos de estudios, muebles, vehculos y juegos por computadoras en general.

14

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.2. CONSTRUCCION TRIDIMENSIONAL


Los modelos tridimensionales corresponden a escenarios con muchas clases diferentes de objetos, tales como rboles, edificios, muebles, etc. Por esto, es necesario utilizar geometras que representen con precisin las caractersticas de una gran variedad de objetos. Los volmenes rectangulares y cbicos proporcionan una descripcin adecuada para objetos sencillos, sin embargo, alas de aviones, engranajes y otras estructuras ingenieriles con superficies curvas deben definirse con tcnicas complejas como las spline. Los mtodos como los fractales y los sistemas de partculas permiten, a su vez, representar elementos naturales como nubes, montaas y vegetales, entre otras formas. Las tcnicas de modelado, segn interaccin de fuerzas fsicas, permiten reproducir elementos no rgidos como telas o gelatinas. Difcilmente habr un solo mtodo para describir cabalmente todos los objetos que existen en la naturaleza y que incluya todas sus caractersticas. Bsicamente se tienen dos modalidades de representacin de geometras tridimensionales en el computador: a) Representaciones de frontera (B-rep: Boundary - representation), la cual describe los objetos 3D, como el conjunto de sus superficies externas. b) Representaciones de divisiones de espacio, en que se sub-divide el ambiente en pequeas unidades volumtricas (voxels: volume element), determinando la regin espacial que ocupa cada objeto.
Fig. 2.3 - Punto 3D.

planteado descripciones sobre la base de slidos, como la mencionada subdivisin de espacios, pero poseen mayor demanda de procesamiento computacional y representa una mayor sofisticacin del producto. De este modo la descripcin de una geometra tridimensional en el computador se realiza, generalmente, segn los polgonos externos de las formas, localizados en un espacio determinado por tres ejes cartesianos, que representan el espacio, con cierta magnitud general (tamao del universo) y precisin (medidas). Puede ser representado en distintas escalas (proporcionando las dimensiones computacionales con las medidas de salida en pantalla o impresora), pero en las aplicaciones de Realidad Virtual se utilizan bsicamente vistas interiores, sin escala definida, trabajando de manera absoluta (1:1). En estas descripciones grficas las posiciones de cada punto (que constituyen vrtices de una forma geomtrica) se identifican por sus coordenadas (X, Y, Z).
Y

(x, y, z)

En los inicios de la computacin grfica las descripciones geomtricas se estructuraban slo en puntos o lneas con direccin (vectores), pero actualmente la mayora de los programas de CAD y Realidad Virtual se basan en la representacin por fronteras. Se han

Con dos puntos extremos se puede indicar una lnea tridimensional (definiendo una arista), y a su vez tres puntos definen un plano triangular bsico. Aunque frecuentemente los programas utilizan cuadrilteros como

SOFTWARE: fundamentos de los programas para Realidad Virtual

15
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

polgonos bsicos, con el fin de ahorrar informacin, ya que la mayora de los volmenes son rectangulares (sin embargo, como los cuatro puntos extremos no necesariamente son co-planares, se producen algunos polgonos quebrados). De este modo, un objeto tridimensional se define como un conjunto de superficies poligonales (denominadas facetas o caras), en el cual se identifican sus aristas y vrtices. Tambin se reconoce en cada polgono bsico, una normal o perpendicular del punto medio, que indica la orientacin de la cara, estableciendo un lado visible y otro invisible.

una tabla de vrtices, una de aristas y una de polgonos. Definiendo el objeto de la manera siguiente:
Polgono (tringulo) V2 vrtice e1 V1 arista

V3

e2

e3 V4

V1: x1, y1, z1 e1: V2, V3 S1: e1, e2, e3

(vrtice 1) (arista 1) (superficie o polgono 1)

Fig. 2.5 - Informacin geomtrica de un Objeto 3D.

Fig. 2.4 - Objeto Tridimensional.

Los programas grficos especifican una superficie poligonal mediante la serie de coordenadas de sus vrtices y los parmetros de atributos asociados. Estos datos se colocan en tablas que se utilizan en el procesamiento y generacin de imgenes, y en la manipulacin de objetos. Estas tablas de datos de polgonos pueden ser organizadas en dos grupos, tablas geomtricas y tablas de atributos. Las primeras contienen las coordenadas de vrtices y los parmetros para identificar la orientacin espacial de las superficies. La segunda tabla contiene los parmetros que especifican el grado de transparencia del objeto, las caractersticas de reflexin y textura de las superficies, entre otros datos. Una organizacin muy utilizada para la tabla geomtrica es crear 3 sub-tablas (listas),

Otra posibilidad es utilizar slo una tabla de polgonos, pero esto intensifica la informacin sobre las coordenadas, ya que los valores explcitos de las coordenadas se listan para cada vrtice en cada polgono. Puesto que las tablas geomtricas de datos pueden contener extensas listas de vrtices y aristas para objetos complejos, es importante que se verifique la consistencia de la totalidad de los datos. Es importante mencionar que, sobre todo en las aplicaciones interactivas, como es el caso de la Realidad Virtual, es frecuente que se cometan ciertos errores en la manipulacin de las tablas de datos, que luego distorsionan la presentacin de algn objeto. Los objetos tridimensionales son usualmente poliedros de base rectangular (paraleleppedos regulares, como los cubos), tambin denominados cajas. Agrupando estas formas bsicas se puede conformar una gran variedad de objetos. Tambin se utilizan mucho volmenes bsicos como pirmides,

16

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

cilindros o esferas, aunque las superficie curvas son aproximadas a travs de secuencias de planos rectos. Una mayor cantidad de polgonos permite una descripcin ms exacta de la curvatura, pero a la vez exige mayor procesamiento computacional. Formas ms complejas pueden ser realizadas determinando un polgono o perfil base y una distancia, en la cual se reproduce el polgono, generando superficies en cada una de sus aristas, en un proceso conocido como extrusin o lofter, tambin vinculado con darle espesor a figuras planas (generando paralelep-pedos de base irregular). Algunos programas permiten establecer un trazado de proyeccin (sweep) produciendo una forma estirada en torno a una trayectoria, til para modelar tuberas, helicoides, etc.

Para las formas curvas de simetra radial (como las esferas, cilindros, conos, vasos o jarrones), se pueden generar las superficies poligonales basadas en el concepto de slido de revolucin. Consiste en generar la forma curva mediante la rotacin de una cierta cantidad de puntos, o un perfil determinado, alrededor de un eje en el sistema de coordenadas. Estableciendo tambin la cantidad de segmentos o tramos en los cuales se subdividir la superficie curva en polgonos rectos. Una forma tridimensional es atmica si es indivisible o no descompuesta en formas menores y puede constituir un objeto virtual. En ese caso es un objeto simple, pero tambin un objeto puede estar constituido por varias formas, debido a: a) El objeto virtual es demasiado complejo, esto es, no es posible representarlo con una sola forma. b) El objeto virtual est conformado por componentes o partes que poseen un comportamiento independiente entre ellos. Para el caso a) podemos dar como ejemplo la carrocera de un vehculo, y para el caso b) el ejemplo de una puerta de automvil con su manilla y su ventana (en el cual el vidrio sube y baja, independientemente de la puerta en s). A los objetos compuestos se les denomina objetos agrupados o simplemente grupos. Tambin un objeto ms complejo puede estar conformado a su vez, por varios grupos. Por ejemplo, una habitacin puede estar conformada por el grupo ventana, grupo paredes, grupo puerta, etc. De este modo un ambiente virtual est conformado por formas poligonales, que constituyen objetos simples o agrupados.

Eje de giro

Sentido del giro

Fig. 2.6 - Generacin de un objeto 3D por revolucin.

SOFTWARE: fundamentos de los programas para Realidad Virtual

17
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.3. TRANSFORMACIONES GEOMETRICAS.


Las transformaciones geomtricas son utilizadas para manipular los objetos dentro de un modelo 3D. Un objeto se puede trasladar y/o rotar en los tres ejes coordenados (x, y, z). Para el caso de las rotaciones se puede considerar como una composicin de tres rotaciones, una para cada eje cartesiano, es as que cualquier secuencia de transformaciones se representa como una secuencia de transformaciones en cada eje. Las transformaciones ms utilizadas son: a) Traslacin: es la traslacin de un punto desde la posicin P1= ( x1, y1, z1) a la posicin P2= ( x2, y2, z2). La operacin se representa mediante la matriz: cies de polgonos, trasladamos cada vrtice de cada superficie y volvemos a trazar las facetas del polgono en la nueva posicin. b) Rotacin: para girar un objeto se debe designar un eje de rotacin (en el cual se girar el objeto) y el valor de la rotacin. Por norma, los ngulos de rotacin positiva producen giros en sentido opuesto a las manecillas del reloj con respecto al eje de una de las coordenadas. Si se gira con respecto al eje z la matriz ser:
x2 y2 z3 1 cos A sen A 0 0 - sen A cos A 0 0 0 0 1 0 0 0 0 1 x1 y1 z1 1

donde la rotacin, 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 a cambiar el tamao y volverlo a posicionar con respecto al origen de las coordenadas. Si todos los parmetros de transformacin son iguales se cambian las dimensiones relativas del objeto. La matriz que representa el escalamiento es la siguiente:

Donde tx, ty, tz corresponden a la distancia de traslacin para los ejes x, y, z respectivamente. Dicha traslacin se traduce en:

Esta forma de traslacin es vlida para todos los puntos del objeto en cuestin. Por lo tanto, un objeto se traslada en tres dimensiones al trasladar cada uno de los puntos de definicin inicial del objeto. Para un objeto que se representa como un conjunto de superfi-

x2 y2 z3 1

Sx 0 0 0

0 Sy 0 0

0 0 Sz 0

0 0 0 1

x1 y1 z1 1

donde Sx, Sy, Sz son los parmetros de escalamiento con respecto al origen. Existen otras transformaciones tridimensionales como la reflexin y el recorte.

18

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

Fig. 2.7 - Operacin booleana.

Otras operaciones volumtricas bastante utilizadas en los programas tridimensionales, son las operaciones booleanas. Se refieren cuando se utiliza una geometra de construccin slida (CSG: constructive solid geometry) para operaciones similares al lgebra de Boole, esto es: adicin, sustraccin o interseccin. Aplicadas en volmenes, la adicin o unin (A + B) genera la fusin de los dos volmenes en uno solo, descartando cualquier parte que se intersecte entre ambos. Si no se intersectan, simplemente se crea un volumen compuesto de dos partes separadas.

La sustraccin (A - B) genera un volumen en el que se ha eliminado la parte del otro en que se intersecta, el volumen sustrado simplemente desaparece (si no se intersectan, queda ntegro el original). En este caso es muy relevante cul volumen es el original, generalmente reconocido como el primer operando. En la interseccin (A B), se genera el volumen comn en el cual participan los dos originales, en los cuales se eliminan en sus partes restantes. En algunos programas tambin se agrega una operacin de interseccin que conserva los volmenes restantes (generando tres formas). Estas modalidades son muy efectivas para construir fcilmente ciertas formas complejas, como por ejemplo, muros con ventanas o piezas mecnicas aunque la informacin computacional es estrictamente de superficies y no slida, ocasionalmente se producen errores en la presentacin grfica.

SOFTWARE: fundamentos de los programas para Realidad Virtual

19
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.4. REPRESENTACION TRIDIMENSIONAL


Existen varios mtodos de representacin tridimensional, pero inicialmente diremos que para obtener la imagen de una escena 3D, primero debemos establecer una posicin (usualmente en coordenadas cartesianas) para el observador o cmara, que son los conceptos utilizados para denominar al punto de vista desde el cual se ve el modelo computacional. Frente a ste se establece un plano de visin, en el cual se proyecta la informacin geomtrica de las formas 3D.
Plano de visualizacin

Fig. 2.9 - Proyecciones Paralelas.

Forma 3D
Observador

b) Proyeccin polar (perspectivas): Esta tcnica se basa en proyectar puntos del objeto al plano de visualizacin a lo largo de trayectorias convergentes al punto de vista. Esto implica que los objetos que estn ms lejos de este plano se desplieguen ms pequeos y representen cabalmente la profundidad del entorno, pero sin medidas precisas. En este tipo de proyeccin las imgenes de escenarios 3D obtienen mayor realismo visual. Adems, las aristas de los objetos tienden a converger en una lnea de fondo (horizonte).

Fig. 2.8 - Proyeccin en el Plano de Visin.

En principio, los objetos son presentados como formas transparentes (wireframe) y luego se aplican tcnicas de iluminacin y presentacin de superficie para colorear y sombrear las reas visibles. As la computadora genera las imgenes a partir de la posicin de la cmara con respecto a los objetos que sta debiera estar visualizando. Dentro de las tcnicas para generar la vista de un objeto tridimensional, tenemos: a) Proyeccin paralela: este mtodo consiste en proyectar puntos del objeto a travs de lneas paralelas al eje de visin. Es as, como en diferentes posiciones de la cmara, se proyectan las superficies visibles del objeto sobre el plano de visualizacin para obtener diversas vistas (superiores, laterales, isomtricas) que posean medidas proporcionales del objeto.

Fig. 2.10 - Proyeccin Polar.

c) Eliminacin de lneas ocultas: se utiliza como tcnica para poder distinguir el frente y la parte de atrs de los objetos desplegados. Sin ocultamiento un objeto no podra ser comprendido en su posicin con respecto a otros.

20

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.5. TEXTURAS E ILUMINACION


Para lograr que el modelo tridimensional alcance una apariencia realista, es necesario incorporar a la geometra dos capacidades relevantes, superficies texturadas y frmulas de iluminacin. Estas dos propiedades complementan la geometra y generan una mejor reproduccin de la situacin real que representa el modelo computacional. Inicialmente, los objetos geomtricos pueden ser representados con colores bsicos. Los colores se asignan de acuerdo con patrones RGB (red-green-blue: rojo-verde-azul) o HSV (hue-saturation-lightness: tono-intensidad-brillo), en combinaciones proporcionales de cualquiera de estos tres valores, por ejemplo, el morado intenso en RGB es 100%, 0%, 100%. Como los colores estn representados por intensidad luminosa, los valores mayores son ms claros. Los tres indicadores al mximo producen el blanco, al mnimo generan, el negro como ausencia de color. Al contrario de la pintura convencional, en que la adicin de colores genera el negro y la ausencia, el blanco. 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 caras a menos que se marquen las aristas con lneas de otro color. Sin embargo, se ha reconocido que la variedad 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 varan de tono en las superficies. Una de las tcnicas ms eficaces para mejorar la apariencia realista de las superficies, ha sido la incorporacin de texturas digitalizadas. La utilizacin de texturas consiste en escanear fotografas de materiales reales (muros de ladrillos, ma-

Fig. 2.11 - Eliminacin de lneas ocultas.

Otra manera de indicar el volumen es variar la intensidad de los objetos con respecto a su distancia de la posicin de visualizacin, es decir, las lneas que estn ms cerca del punto de vista se despliegan con mayor intensidad, seleccionando los valores en un rango de distancia en que deben variar. Otra forma de indicar la profundidad es otorgar un efecto de atmsfera entre los objetos, es decir, los objetos ms lejanos tienen una apariencia ms tenue que los ms cercanos, en algunos casos se agregan distorsiones de color para fortalecer la visin borrosa a la distancia.

SOFTWARE: fundamentos de los programas para Realidad Virtual

21
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

deras o mrmoles), que se aplican como imgenes planas en algunas superficies. La tcnica de aplicacin es similar a la proyeccin de mapas, por lo que se denomina mapeo, y consiste en calzar la imagen en las distintas superficies del objeto tridimensional. Si la forma es distinta a la imagen, sta simplemente se recorta. Si el tamao de la imagen es muy pequeo se puede repetir en la superficie, o se puede agrandar, aunque esto ltimo muestra notoriamente los puntos de la imagen (pixelado). En algunas superficies laterales la textura se aplica en ngulos tan inclinados que los puntos se extienden por las caras, aunque esto sirve para algunos materiales (como la madera), usualmente se utiliza una proyeccin por superficies o frmulas de mapeo cilndrico o esfrico.

Fig. 2.12 - Mapeo de texturas en un modelo arquitectnico.

Las texturas pueden tener un valor de rugosidad (bumpy), en que las sombras adquieren profundidad, lo que es muy adecuado para reproducir, por ejemplo, ladrillos o piedras. De hecho, es ms eficaz en algunas formas pequeas, no modelarlas tridimensionalmente sino simplemente texturizarlas con una imagen real (como las fachadas de los edificios), con el fin de ahorrar procesamien-

to geomtrico en objetos que tienen un rol secundario en la escena. Tambin algunas formas naturales difciles de modelar apropiadamente (como los rboles), es preferible representarlas con una fotografia, en que se asigna un valor de transparencia al color de fondo, para generar un perfil recortado. Otra aplicacin usual de las texturas es de paisaje general (background), para tener un entorno ms realista, a veces ajustado a una forma cilndrica o semi-esfrica (especialmente cuando se utilizan cielos con nubes), para representarlo apropiadamente al desplazarse por el escenario virtual. El otro aspecto relevante en la apariencia visual del modelo, es la incorporacin de mtodos de iluminacin. Cuando la luz enfrenta una superficie opaca, en parte se refleja y en parte se absorbe, esta ltima es llamada reflexin difusa. La mayora de los programas otorgan una iluminacin pareja en todo el ambiente (environmental light), reproduciendo esta difusin indirecta. A veces esta iluminacin posee un sentido determinado como el sol, tal que las superficies enfrentadas y perpendiculares a la fuente de luz estn ms iluminadas y las ms inclinadas o posteriores, se oscurecen. De este modo se reconocen sombras propias en los objetos, y se distinguen las distintas superficies, por tonalidades ms o menos luminosas del mismo color, otorgando un sentido de volumen. El sentido de la luz se puede determinar a partir de un entorno esfrico alrededor del modelo, o por ngulo de altitud y azimut (algunos programas arquitectnicos permiten indicar la fecha, hora, latitud y paralelo de la localizacin para colocar la posicin real del sol). Otro tipo de iluminacin consiste en colocar algunos focos de luz, posicionados dentro del modelo geomtrico, especialmente para iluminar zonas posteriores o interiores, que la iluminacin ambiental deja oscureci-

22

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

das. Indicando la posicin 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 iluminacin de una lmpara con pantalla, destacando algunas partes de la escena. Es importante mencionar que estos focos no tienen una geometra determinada, al aparecer en la imagen son slo puntos de luz, por lo cual a veces se deben definir formas de lmparas para representarlas en el modelo. Cualquiera de estas luces puede ser aplicada con distintas intensidades y con tintes de color, baando los objetos en alguna tonalidad que altere sus colores propios. Tambin se pueden considerar sombras arrojadas, en que cada objeto proyecte oscurecimiento en sus objetos vecinos. Esta capacidad exige un procesamiento adicional en el modelo, porque se debe calcular el trazado de la sombra de cada objeto en los dems, de acuerdo con la posicin de la fuente de luz, de manera similar al mapeo de texturas. Algunos objetos pueden considerar transparencia, en que parte de la luz atraviese la forma, o pueden considerar reflejo, en que rebote la iluminacin (y tambin se reflejen los objetos vecinos, proyectando la imagen en su superficie).

Fig. 2.13 - Iluminacin.

El clculo del valor de la tonalidad del color (o textura) de cada superficie se realiza con ciertos algoritmos grficos. Bsicamente se relaciona la direccin e intensidad de la luz (y distancia si es un foco), con la normal de la superficie (perpendicular en el punto medio). Algunos algoritmos ms avanzados (Gouraud, Phong), lo calculan segn la normal de los vrtices, interpolando los valores medios de la superficie, para otorgar una degradacin suave de los colores y suavizar las formas complejas, generando un gran realismo en objetos curvos y marcando ciertos brillos o puntos de luz. La mayora de estas frmulas calcula finalmente el tono de color aplicado en cada punto de la imagen del modelo, de acuerdo con la vista vigente, por lo que se denominan algoritmos del pintor. Otros mtodos efectan un clculo general de la iluminacin del entorno, basados en la reflexin de luz entre los objetos (Radiosity) o por el trazado de los rayos luminosos (Ray-tracing). Los que son ms fidedignos en ambientes ms difusos o con objetos ms especulares respectivamente.

SOFTWARE: fundamentos de los programas para Realidad Virtual

23
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.6. CARACTERISTICAS DE LOS SOFTWARE PARA REALIDAD VIRTUAL


Los productos de software para el desarrollo de aplicaciones de RV se fundamentan en los conceptos de computacin grfica presentados previamente, es por ello que muchas de las caractersticas mencionadas aqu son coincidentes con las anteriores. Pero se establece un conjunto de distinciones especficas y exigencias mayores que diferencian los programas de Realidad Virtual con los otros software grficos e incluso con programas de modelacin tridimensional o animacin realista. Para comenzar diremos que el software de desarrollo debe ser coherente con la arquitectura del computador en que se usar el producto. Aunque pueda sonar obvio, en este caso es muy relevante puesto que el equipo deber responder a los requerimientos de procesamiento del producto. En el diseo tridimensional, los software de Realidad Virtual son muy similares a los programas CAD, pero agregan capacidades de navegacin en tiempo real, interaccin con el usuario, deteccin de colisiones, audio, programacin de comportamientos, etc. De este modo en los programas de RV encontraremos comnmente: 1. Importacin de modelos: Capacidad de importar formas 3D para incorporarlas en una determinada aplicacin. Generalmente son provenientes de un programa CAD y se utiliza mayormente el formato DXF (drawing exchage format). Tambin en algunos casos los programas RV permiten exportar objetos en este mismo formato. Las importaciones de formas no estn ajenas a problemas, para lo cual se han desarrollado filtros especiales que manipulan el archivo para resolver las dificultades que se presentan como diferencia de forma poligonal bsica (cuadrilteros contra tringulos), exceso de polgonos por formas, secuencias de vrtices incompatibles, estrategias de texturizacin distintas (aunque frecuentemente la importacin se refiere slo a geometra). Libreras: La mayora de los programas de RV estn provistos de libreras 3D, con formas bsicas o primitivas tales como cajas, esferas, conos, pirmides, etc. que sirven para generar formas compuestas. Tambin cuentan con libreras de objetos complejos, texturas, etc. Es til mencionar que estas libreras permiten que el diseador re-utilice muchas formas que simplemente decoran el ambiente virtual. Operaciones Geomtricas: Consiste en las capacidades de manipular los objetos creados en una posicin definida, tpicamente referida a las coordenadas cartesianas, y a partir de stos se puede trasladar, rotar o re-escalar a otra posicin. Eliminando la forma original o duplicndola. Esto implica internamente un cambio en las tablas de vrtices de los objetos. Se incluyen ocasionalmente operaciones booleanas y agrupamiento de formas, de modo que se puedan crear objetos compuestos operando o asociando distintas formas simples. Nivel de Detalle: Esta caracterstica conocida en los textos como LOD (level-ofdetail) permite la optimizacin de la visualizacin de una escena virtual, al cambiar una forma con un alto nivel de detalle, por otra ms simple, dependiendo de la distancia del punto de vista. De este modo, el objeto es reemplazado o se hace invisible si el observador est en movimiento o muy distante, y cuando est quieto y cercano, se despliega la forma ms compleja. Animacin: Corresponde a la asignacin de una traslacin o rotacin a un objeto en un periodo de tiempo, sincronizado con la navegacin por el ambiente virtual. Estos mo-

2.

3.

4.

5.

24

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

vimientos generalmente equivalen a comportamientos del mundo virtual (abrir una puerta, desplazar un vehculo) y pueden ser automticos u originados por algn evento (interaccin con el usuario o con otro objeto). 6. Articulado: Se refiere a que los objetos puedan ser organizados en jerarquas; es decir, que partes componentes de un objeto posean propiedades de movimiento distintas a otras partes, pero supeditadas al total. Un ejemplo de esto son las ruedas de un automvil, que pueden girar en un sentido, pero a su vez; debe desplazarse en la direccin del vehculo completo. 7. Deteccin de colisiones: Es una caracterstica que permite identificar cuando un objeto intersecta a otros, de modo que pueda ser obstaculizado el movimiento del objeto, de manera similar a si stos fueran slidos, como en el mundo real. 8. Propiedades fsicas: Adicionalmente se presenta una serie de atributos relacionados con caractersticas fsicas, como masa o roce, reconocimiento de gravedad (movimiento vertical acelerado en proporcin al tamao o peso) e incluso de ascensin (salto sobre el objeto). 9. Color y texturizacin: Asignacin de colores a las superficies y utilizacin de texturas digitalizadas. Incluyendo propiedades de transparencia (para generar objetos de textura, como rboles o nubes) y secuencias (como videos). 10. Fuentes de luz: Definicin de iluminacin ambiental y focos de luz con cierta posicin, orientacin, intensidad e incluso colores propios. Ocasionalmente con movimientos propios. 11. Incorporacin de audio: Es la propiedad de asociarle a los objetos, de la aplicacin virtual, un sonido que les corresponda en el mundo real. Un ejemplo de esto es el

caso de un motor que al ser encendido, emite el ruido correspondiente. Una caracterstica importante es controlar el volumen en relacin a la distancia existente entre el objeto y el navegador. Tambin se puede incorporar informacin tctil, que establezca una retro-alimentacin fsica con el usuario (feed-back), a travs de dispositivos especiales. As como otros sentidos en exploracin (sinptica, temperatura, etc.) 12. Lenguajes de programacin: Esta propiedad corresponde a que el software disponga de comandos de control que dicten comportamientos de los objetos y manejen datos de entradas y salidas. 13. Manipulacin de eventos: Refleja la capacidad de activar un comportamiento al interactuar con un determinado objeto. Esto implica reconocer la posicin y accin del usuario, interpretar una programacin y modificar la geometra consecuentemente. 14. Configuracin de dispositivos mltiples: Consiste en permitir la incorporacin de distintos dispositivos de entrada y salida de datos, como elementos de visualizacin o interaccin del usuario (por ejemplo, cascos y guantes). 15. Mundos paralelos: Se refiere a la generacin de ambientes virtuales constituidos por sub-mundos, en los cuales el navegante puede interactuar al momento que ingresa a cada uno de ellos. Esto con el fin de disminuir la complejidad que se tendra si fuera un solo mundo completo y por ende optimizar el procesamiento. 16. Conectividad en red: Permite que el mundo virtual pueda ser utilizado en una red computacional, a travs de diversos dispositivos o seales de entrada y salida, y adems que permita la interaccin de diversos usuarios en una misma aplicacin. Un ejemplo de esto son los juegos multiusuarios.

SOFTWARE: fundamentos de los programas para Realidad Virtual

25
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.7. ESTRUCTURA DE UN SOFTWARE DE RV


17. Exportacin en VRML: Consiste en exportar las aplicaciones virtuales en lenguaje VRML (Virtual Reality Modeling Language), que pueden ser utilizadas ampliamente en Internet, por constituir una descripcin de bajo nivel. Un programa de Realidad Virtual presenta una estructura de mayor complejidad que lo normal de un software computacional, debido a que, por un lado, constituye un ambiente tridimensional que se extiende hasta capacidades multimediales, a la vez que dispone de una programacin especfica y el control de mltiples dispositivos externos, todo funcionando y modificndose en tiempo-real. Esto establece una amplitud sofisticada de caractersticas, que se han descrito previamente en dos procesos principales: el desarrollo de la aplicacin, en el cual se utiliza el programa para disear el escenario 3D, incorporar el audio, programar los comportamientos y configurar dispositivos, y otra actividad es la navegacin interactiva, en que se puede visualizar, recorrer y manipular el ambiente virtual de acuerdo con lo preparado en el desarrollo. En ese momento actan los siguientes aspectos del software RV: 1. ENTRADAS Y SALIDAS: Consiste en la definicin de los diferentes dispositivos de entrada y salida de datos que utilizar la aplicacin virtual. Adems del mouse y del monitor, usualmente los sistemas de RV utilizan joystick, rastreadores, visualizadores estereoscpicos, trajes de datos, etc. Los cuales deben ser adecuadamente reconocidos y controlados por el software, evitando los conflictos y asegurando la transmisin de datos en tiempo real. Muchos de estos dispositivos alteran antecedentes de la aplicacin virtual durante su utilizacin, como el punto de vista del usuario, la orientacin, activacin 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 informacin de los objetos y del mundo virtual es realizado en la base de datos del mismo. Lo que se almacena en este archivo de descripcin son los objetos, los pro-

26

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

gramas que describen las acciones de estos objetos o del usuario, mtodos de iluminacin, mecanismos de control y soporte del hardware. La descripcin de los temes almacenados es la siguiente: a) Objetos: Los objetos en un mundo virtual pueden tener geometra, jerarqua, comportamiento y otros atributos. Las caractersticas de los objetos tienen un impacto considerable en la estructura y diseo de una aplicacin. De acuerdo con esto, una lista de pares atributo-valor es usada para describir los objetos. Mediante estos atributos se pueden sumar cambios a los objetos sin requerir cambios en la estructura de datos de los mismos. b) Posicin y orientacin: Un objeto es posicionable y orientable. Esto es, tiene localizacin y organizacin espacial. La mayor parte de los objetos puede tener estos atributos modificables a los cuales se les puede aplicar operaciones de escalamiento, traslacin y rotacin. Estas operaciones son a menudo implementadas usando operaciones algebraicas en la manipulacin de vectores y matrices, como se describi en los artculos anteriores. c) Jerarqua: Un objeto es parte de la jerarqua de otro mediante la relacin de parentesco de padre, hermano o hijo. Cada objeto sufre las transformaciones que se le aplican a su padre y desde ste es transmitido a sus propios hijos. Por lo anterior, un objeto en particular puede tener padre e hijos a la vez. Las jerarquas son usadas para crear articulacin de figuras (grupos) los cuales constituyen una forma ms compleja: por ejemplo, un robot (padre) constituido por sus partes (hijos) tales como cabeza, miembros, etc. d) Volumen de contorno: Un objeto es usual-

mente contenido en un volumen denominado Bounding Volume. Esto es un paraleleppedo rectangular o esfrico. Esto favorece el uso rpido del objeto durante su renderizacin. Cuando el volumen de contorno est completamente fuera del rea de vista (cmara) no necesita ser transformado o considerado durante la renderizacin. El volumen de contorno esfrico es ms rpido en la deteccin de colisiones. e) Geometra de objetos: El modelamiento de formas (shapes) y su geometra se basa en los conceptos mencionados de la computacin grfica. Algunos modelos buscan muy profusamente la exactitud geomtrica con respecto a los objetos del mundo real. Otros mtodos buscan la simplicidad de representacin. La mayora de los sistemas de RV sacrifican el detalle y la exactitud orientndose hacia la simplificacin por ganar velocidad de renderizado. Los objetos son simplemente un conjunto de puntos y estos a su vez constituyen aristas y superficies. 3. PROGRAMACIN: Un mundo virtual consistente en objetos estticos es slo un diseo apacible. Muchos investigadores y entusiastas de la RV han confirmado que la interaccin es la clave del xito e inters de la realidad virtual. Esto requiere definir las acciones que los objetos realizarn por ellos mismos y cuando interacte el usuario con stos. Lo que se denomina generalmente, guin del mundo virtual. Algunos autores dividen estos guiones de comportamiento en 3 tipos bsicos: Guiones de movimiento, guiones de reaccin ante un evento y guiones de conexin. Los guiones pueden ser textuales o estar compilados en un programa estructurado. En el uso de lenguajes de programacin para RV

SOFTWARE: fundamentos de los programas para Realidad Virtual

27
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

ha sido considerado como pionero VPL Research con su Body Electric System. Este lenguaje fue diseado para Macintosh. En general, los productos de RV no poseen lenguajes de guiones comunes entre ellos. Lo que s se puede afirmar es que gran parte de ellos tiene como base de su estructura el lenguaje de programacin C. Los tipos bsicos de guiones son los siguientes: a) Guiones de movimiento: Este modifica la posicin, orientacin u otros atributos de un objeto, luz o cmara a partir de la ocurrencia de un tick sobre el sistema. Un tick es una accin de simulacin en un tiempo de reloj. Generalmente esto es equivalente a un frame de la animacin visual. Debemos destacar que la RV generalmente utiliza mtodos de simulacin discretos (no continuos). Por simplificacin y velocidad, slo un guin de movimiento ser activado para un objeto en algn instante. Por otra parte, un guin puede ser asociado a un objeto desde una jerarqua. Por ejemplo, un guin puede ser asociado al usuario de un vehculo cuando desea conducir alrededor del mundo virtual. Alternativamente, el usuario puede contener un objeto con su propia programacin y que est jerarquizado con respecto a l (ejemplo, su reloj de pulsera). b) Guiones de reaccin ante un evento: Son invocados cuando algn evento ocurre, como por ejemplo en una colisin, una aproximacin o simplemente una seleccin. En RV los sistemas necesitan evaluar los parmetros de evento en cada tick (frame). Esto puede ser, por ejemplo, el detector de proximidad entre un objeto 3D o la deteccin de colisin, etc. c) Guiones de conexin: Corresponden a los guiones que controlan la conexin de dispositivos de entrada y salida de varios objetos. Un ejemplo de esto lo constituye el

guin que puede conectar un guante a un objeto que representa una mano virtual. El usuario debe dar alguna indicacin de retroalimentacin de la interaccin cuando el cursor virtual seleccione o toque un objeto. Un sistema ordinario tiene slo una retroalimentacin (feedback) visual para reconocer que el cursor (que acta de mano virtual) penetra un objeto. Alternativamente, una seal de audio puede ser generada para indicar una colisin. Algunos sistemas slo utilizan un simple tacto como feedback, otros producen una vibracin en el joystick para indicar la colisin, etc. 4. PROCESAMIENTOS: Durante la utilizacin de la aplicacin virtual se realiza un intenso procesamiento de datos en tiemporeal, esto es, a la misma velocidad que visualiza el usuario. Bsicamente es un procesamiento de la imagen visual, pero a su vez interviene un complejo clculo geomtrico, un procesamiento del audio, una interpretacin de la programacin y un control de los dispositivos de entrada y salida. Primero se debe identificar la posicin del punto de vista y de su orientacin (sentido de la visin), que puede estar dictada por el mouse en alguna configuracin 3D o por un rastreador, o por una combinacin de ambos. Adems, identificar la activacin de algn evento, por colisin de un objeto con apuntador 3D o un guante de datos (debidamente localizado). Si esto se produce, interpretar el cdigo de programacin activado, para modificar la geometra correspondiente (trasladar un objeto o detener un movimiento). A la vez que se revisan todas las rutinas de animacin actualmente activas que establecen un desplazamiento en cada secuencia de tiempo. Luego de determinar la situacin del modelo geomtrico, se debe calcular la proyeccin en el plano de visin correspondiente (doble si es estereoscpico), descartando las formas

28

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

PROGRAMACION

ENTRADA

PROCESAMIENTOS

SALIDA

BASE DE DATOS

Fig. 2.14 - Estructura de un Software RV.

no cubiertas por el ngulo de visin, omitiendo las lneas ocultas, calculando las aplicaciones de texturas y los tonos de color de las superficies, de acuerdo con las fuentes de iluminacin definidas, sombreamientos y algoritmos de render. Posteriormente generar la imagen visual y activar las reacciones en dispositivos especiales (estmulos de fuerza en joystick) segn la situacin de los objetos con el usuario. Tambin se deben procesar las frecuencias de audio que estn activadas, en funcin de las distancias actuales del punto de vista a las posiciones definidas. Esta es la secuencia de procesos o pipeline, que se debe realizar en una mnima fraccin de tiempo, mientras se navega libremente por el escenario 3D.

SOFTWARE: fundamentos de los programas para Realidad Virtual

29
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.8. REALIDAD VIRTUAL EN INTERNET


Una de las ms excitantes reas de la Realidad Virtual es su incorporacin en la Internet. Mdem rpidos y conexiones punto a punto son ahora ms frecuentes en la red y esto permite mover grandes cantidades de datos sin muchas demoras de proceso. Por esta razn, actualmente se integran cada vez ms mundos 3D y archivos multimedia en la red. El estndar para modelos 3D en la red es actualmente VRML ( Virtual Reality Modeling Language ). Este cumple el mismo rol que HTML para las pginas Web, pero en este caso para escenarios tridimensionales. Consiste en un lenguaje fcil de transmitir y posible de utilizar en mltiple equipos con navegadores (browser) gratuitos. Uno de los primeros programas para visualizar un archivo VRML fue el llamado WebSpace. WebSpace es un browser para VRML y fue habilitado inicialmente para computadores SGI (Silicon Graphics), pero luego hubo un constante crecimiento en la cantidad de mundos VRML habilitados para ser vistos. Esto llev a que la compaa TGS comenzar el desarrollo de una versin para PC de WebSpace. En sus comienzos los mundos virtuales VRML eran ambientes monousuarios, es decir, para ser vistos por todos los usuarios conectados a la red, pero navegando en forma solitaria. En otras palabras, cada cibernauta recibe una copia del mundo virtual, en su computador (con browser residente en su equipo), y navega en forma independiente de los dems. A partir de esto, el nuevo reto fueron los mundos multiusuarios. La Computer Support Cooporative Work (CSCW) y el proyecto de mundos virtuales 3D del Institute for Applied Information Technology ha enfocado el desarrollo de VRML hacia mecanismos y tecnologas colaborativas para entornos virtuales para Internet. Los principales objetivos son la representacin e interaccin de mltiples usuarios distribuidos en el mundo, mediante la infraestructura de la red. Con este proyecto ha sido realizado un prototipo de sistema distribuido de Realidad Virtual, mediante el protocolo DWTP (Distributed Worlds Transfer and Comunication Protocol). El prototipo se ha realizado con el estndar VRML y consiste en el browser multiusuario SmallView. Este ltimo provee soporte para VRML 1.0 y 2.0, y extensiones para la representacin de usuarios mediante avatares. El soporte para comunicacin entre usuarios permite audio y conversaciones ( chat ) mediante texto escrito. Sofisticados mecanismos de interaccin proveen al estndar VRML para habilitar una colaboracin real entre los usuarios. DWTP es un protocolo de aplicacin similar a HTTP (Hypertext Transfer Protocol). Est provisto de un soporte para mundos virtuales distribuidos, independiente del protocolo de la red. Utiliza una conectividad entre varios protocolos estndar para red y as provee mayores facilidades de transmisin para varios tipos de datos usados en un entorno virtual. El protocolo es independiente de los sistemas de realidad virtual. Los tipos de datos soportados para la comunicacin permiten la transmisin fiable de grandes archivos para la descripcin de mundos virtuales, la transferencia de mensajes cortos o eventos entre un gran nmero de participantes, y la transferencia de datos de audio. El protocolo usado para Internet, UDP/ IP (Internet User Datagram Protocol/Internet Protocol ) y TCP/IP ( Transmission Control Protocol/Internet Protocol) depende de los tipos de datos a transmitir y disponibles en la red local. El potencial del protocolo es una directa conexin entre los usuarios, es decir, no requiere de ningn servidor. Sin embargo, algunas propiedades son requeridas para proveer ciertos servicios en la conexin entre participantes. Esto incluye la carga de servicios para nuevos participantes.

30

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

2.9. SOFTWARE PARA DESARROLLO DE APLICACIONES EN RV


WorldsChat y Active Worlds son algunos de los ambientes de realidad virtual interactivos para Internet. En estos, el usuario navega a travs de la aplicacin 3D interactuando y comunicndose con otros usuarios mediante avatares que representan a las personas conectadas al mundo virtual. Es una razonable experiencia realista de un evento social, es decir, hay una comunicacin entre personas que fsicamente no se conocen pero que se visualizan a travs de sus presencias virtuales. Es de esperar que en el mediano plazo aparezcan productos en los cuales las personas hablaran directamente y se vern fsicamente. En el mercado existe una gran variedad de software para desarrollo de aplicaciones en RV. Todos los productos se caracterizan por diversas opciones para color, luz, sonido, cmaras, texturas y otras cualidades. Debemos sealar que actualmente todos dirigen sus aplicaciones hacia Internet mediante la obtencin de mundos virtuales, objetos y aplicaciones 3D, en general, bajo el estndar VRML. En el presente captulo se realiza una descripcin general de algunos de los productos disponibles en el mercado y sus potencialidades varan en las caractersticas sealadas anteriormente, no siendo la intensin realizar una comparacin ni un estudio exhaustivo de los mismos. Los programas, en su mayora, 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 disean aplicaciones en VRML utilizan browser para Internet, cuyo formato de interpretacin es similar para todos estos ltimos.

Fig. 2.15 - Mundos virtuales en Internet.

SOFTWARE: fundamentos de los programas para Realidad Virtual

31
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

1. RayDream Studio Este es un conjunto integrado de aplicaciones de la empresa Metacreations. No es un software sofisticado de modelamiento pero vale la pena considerarlo. Primeramente, es accesible en precio. Es bueno para laboratorios educacionales puesto que existen versiones para Mac y para Windows. El programa es fcil de usar. Las interfaces de usuario han sido diseadas segn un formato grfico. Un elemento clave es la multifuncionalidad, puesto que se ha incorporado un navegador a travs del cual se puede elegir, disear e incorporar objetos a partir de una librera y efectuar modificaciones tales como iluminacin, deformaciones, efectos de renderizado, animacin, etc. Existen objetos, cmaras, luces, rboles y objetos animados, que pueden ser controlados a travs de grficas de Windows. Un monitor de gran resolucin puede ser de mucha ayuda para trabajar con este software. Mallas y complejas modelaciones se realizan en ventanas separadas y de fcil retorno a la escena principal, esto puede ser poco manejable en un monitor pequeo.

2. 3D Open System Es una herramienta para desarrollar aplicaciones y mundos virtuales dinmicos de alta efectividad en 3D. Se puede operar en varias plataformas, incluyendo DOS, OS/2, Windows 9x/NT y Unix. 3D Open System permite crear mundos 3D con visualizacin en tiempo real e incluye interiores y exteriores 3D, objetos estticos y mviles, imgenes JPG, luces, color dinmico 3D, efectos, videos AVI, sonidos (MID, MP3 y WAV), fondos y soporte para documentos HTML. Se pueden crear mundos ilimitados en tamao y puede anidar unos mundos en otros.

32

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

3. V-Realm Este es un paquete que permite crear objetos 3D y mundos para ser vistos mediante el Browser V-Realm u otros compatibles con el estndar VRML 1.0. Sus caractersticas incluyen mltiples editores fciles de manipular, texturas, luz y funciones para cmaras, como un buen editor individual y uno para la agrupacin de objetos. Todo basado en comandos VRML. Adems, soporta formatos GIF, JPEG y RGB para archivos de textura. Posee habilidades prcticas para cortar, copiar y pegar entre archivos VRML. Posee herramientas para manipular formas 3D tales como transformaciones, re-modelado, despliegues simultneos de escenas y otros. Incluye un programa de traduccin que importa archivos desde 3D Studio, Autocad, True Type Font y otros. En el cap. 5 se aborda una explicacin ms completa de sus funciones.

4. Internet Space Builder Es un editor 3D para diseadores Web, permite la creacin de mundos virtuales y publicarlos en Internet. Puede disear y editar escenas y objetos 3D usando operaciones booleanas (suma y resta) sobre un rango de formas primitivas como esferas, pirmides, conos y cilindros. Puede tambin importar y exportar escenas y objetos en formato VRML 2.0. Pueden ser vistas las creaciones en la mayora de los browser de VRML. Internet Space Builder posee una gran galera de formas, texturas, pinturas, objetos y videos. Permite crear puntos de vistas adicionales (cmaras) y posee caractersticas avanzadas de mapeo de texturas, color y transparencia. Puede tambin importar y exportar mundos en formato VRML 2.0 comprimido (GZIP), adems, renombrar y convertir formatos de archivos de otro destino. Soporta VRML 1.0, puede procesar archivos BMP, GIF, JPG y PNG de imgenes e importar archivos 3DS, DXF y otros, puede importar objetos MUS y exportarlos en formato DXF.

SOFTWARE: fundamentos de los programas para Realidad Virtual

33
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

5. SitePad Pro Es un ambiente de desarrollo integrado simultneamente para browser de HTML y VRML. Incluye un editor que posee una sintaxis de manipulacin de colores. Posee herramientas de chequeo de sintaxis para HTML, VBScript y JavaScript y puede construir sus propias aplicaciones usando Javascript y Vbscript. Todas las funciones de JpadPro son tambin incluidas en SitePad Pro. La edicin de texto limita la descripcin geomtrica pero le otorga gran precisin y coherencia a los archivos. Usualmente se utiliza como revisor de archivos VRML.

6. 3 DEM Permite principalmente crear escenas terrestres en tres dimensiones de baja resolucin, animacin de vuelo en tiempo real y mundos VRML de variados tamaos y diversas fuentes de datos. 3 DEM utiliza libreras de SGI/Microsoft OpenGL para producir modelos 3D de alta velocidad. Puede renderizar imgenes en 16 o 24 bits de color. La renderizacin de imgenes puede ser azulrojo (requeridos para visualizacin estereoscpica con anaglifos) o proyecciones de color 3D requeridos para gafas de obturacin (LCD).

34

SOFTWARE: fundamentos de los programas para Realidad Virtual


Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

7. Virtus Walkthrough Este es el software inicial de la serie Virtus. Posee excelentes controles sobre luces, fcil acceso a texturas y edicin de formas (Shapes). Puede crear modelos VRML para publicar modelos en Internet. Trabaja con varias ventanas con vistas planas, elevaciones y perspectivas realistas para chequear el ambiente creado. Paletas de herramientas y controles grficos facilitan su uso, pero la ejecucin y complejidad dependen mucho del equipamiento.

8. Virtus VR Es la versin de bajo costo de Virtus y es bueno para aquellas aplicaciones que no necesitan alto nivel de detalle. En vez de herramientas de dibujo usa formas predefinidas que pueden ser arrastradas hacia un plano o una elevacin. Posee extensas libreras de formas que lo convierten en un sistema de diseo rpido. Esta rapidez de diseo tiene un costo en la fineza del mismo. Tambin es limitado en el manejo de luces. Pero posee gran versatilidad en la navegacin con distintos equipos.

SOFTWARE: fundamentos de los programas para Realidad Virtual

35
Parra Marquez, Juan Carlos; Garca Alvarado, Rodrigo; Santelices Malfanti, Ivn "Introduccin Prctica a la Realidad Virtual" Ediciones U. Bo-Bo, Concepcin, 2001

9. Multigen Aunque se ha dicho que existen muchos productos para RV y que muchos de los modelos son importados desde sistemas CAD (por ejemplo DXF), hay un nmero considerable de sistemas de modelamiento usados para crear sus propias formas 3D. Entre ellos podemos destacar a Multigen, que proviene de una de las compaas de mayor reconocimiento y que produce software de modelamiento desde 1986. Estos productos son usados ampliamente en diversas aplicaciones de simulacin en tiempo real para entrenamiento industrial u otros fines. En diversas plataformas tales como SGI, Sony, Nintendo, Sega, Macintosh, PC y otros equipos especiales para 3D en tiempo real. Los productos de software incluyen Multigen II Pro, Multigen Creator, Multigen GO y Smartscene, abarcando editores muy completos y sofisticados, con navegadores de gran actividad grfica.

10. Superscape VRT Es un sistema profesional para el diseo de mundos 3D interactivo sobre plataforma PC. Estos mundos pueden ser publicados en VRLM en Internet y usar su navegador Viscape, como tambin navegar con el browser propio Visualizer. Tambin se pueden crear mundos mediante su versin gratuita 3D-WebMaster. Superscape est compuesto de 7 editores que permiten la creacin de sus aplicaciones. En stos se pueden desarrollar mundos a partir de objetos 3D, texturas y sonido utilizando editores de formas, imgenes y sonidos, entre otros. A los objetos se les puede asociar propiedades tales como: dinmica, velocidad angular, gravedad y otros, adems de incorporar comportamientos mediante el uso del lenguaje interno de Superscape llamado SCL (Superscape Control Language). Posee libreras que contienen texturas, objetos y sonidos, los cuales pueden ser utilizados libremente por el diseador. VRT soporta un gran nmero de tarjetas grficas, dispositivos de entrada y tarjetas de sonido. En el cap. 5 se explica la programacin con la versin 3D-WebMaster.

S-ar putea să vă placă și