Cap2

1,909 views
1,856 views

Published on

Published in: Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,909
On SlideShare
0
From Embeds
0
Number of Embeds
17
Actions
Shares
0
Downloads
29
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Cap2

  1. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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.

×