SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
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.
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.
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
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,
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.
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.
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.
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.
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-
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-
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.
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-
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.
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-
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
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
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.
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.
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.
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.
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.
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).
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.
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.

Más contenido relacionado

La actualidad más candente

La actualidad más candente (16)

Graficacion por Computadora
Graficacion por ComputadoraGraficacion por Computadora
Graficacion por Computadora
 
Presentación videojuegos
Presentación videojuegosPresentación videojuegos
Presentación videojuegos
 
Tipos de graficación computacional
Tipos de graficación computacionalTipos de graficación computacional
Tipos de graficación computacional
 
Pr clasificacion supervisada guzman mera
Pr clasificacion supervisada guzman meraPr clasificacion supervisada guzman mera
Pr clasificacion supervisada guzman mera
 
Computación gráfica
Computación gráficaComputación gráfica
Computación gráfica
 
Introduccion al dibujo 2011 20 dic
Introduccion al dibujo 2011 20 dicIntroduccion al dibujo 2011 20 dic
Introduccion al dibujo 2011 20 dic
 
Estructura General De Una AplicacióN Grafica
Estructura General De Una AplicacióN GraficaEstructura General De Una AplicacióN Grafica
Estructura General De Una AplicacióN Grafica
 
Unidad 1 . breve historia de la graficacion
Unidad 1 .  breve historia de la graficacionUnidad 1 .  breve historia de la graficacion
Unidad 1 . breve historia de la graficacion
 
Presentación de la asignatura de Dibujo Técnico
Presentación de la asignatura de Dibujo TécnicoPresentación de la asignatura de Dibujo Técnico
Presentación de la asignatura de Dibujo Técnico
 
Graficos por Computadora (2)
Graficos por Computadora (2)Graficos por Computadora (2)
Graficos por Computadora (2)
 
Graficacion
GraficacionGraficacion
Graficacion
 
Modelos3 d-generalidades-textoeimagen
Modelos3 d-generalidades-textoeimagenModelos3 d-generalidades-textoeimagen
Modelos3 d-generalidades-textoeimagen
 
Animacion 3 d
Animacion 3 dAnimacion 3 d
Animacion 3 d
 
Clase 5
Clase 5Clase 5
Clase 5
 
Historia de la graficacion
Historia de la graficacionHistoria de la graficacion
Historia de la graficacion
 
Graficos En Visual Basic 6
Graficos En Visual Basic 6Graficos En Visual Basic 6
Graficos En Visual Basic 6
 

Similar a Fundamentos de los programas de Realidad Virtual

Similar a Fundamentos de los programas de Realidad Virtual (20)

Informática gráfica
Informática gráficaInformática gráfica
Informática gráfica
 
Glosario de términos de diseño 3d
Glosario de términos de diseño 3dGlosario de términos de diseño 3d
Glosario de términos de diseño 3d
 
Articulo científico
Articulo científicoArticulo científico
Articulo científico
 
3
33
3
 
Jun art48
Jun art48Jun art48
Jun art48
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentada
 
REALIDAD AUMENTADA
REALIDAD AUMENTADAREALIDAD AUMENTADA
REALIDAD AUMENTADA
 
Jun art48
Jun art48Jun art48
Jun art48
 
Realidad Aumentada
Realidad Aumentada Realidad Aumentada
Realidad Aumentada
 
VIM
VIMVIM
VIM
 
Capitulo vi procesamiento digital de una imagen
Capitulo vi procesamiento digital de una imagenCapitulo vi procesamiento digital de una imagen
Capitulo vi procesamiento digital de una imagen
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentada
 
Cap3
Cap3Cap3
Cap3
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentada
 
Institucion educativa ciudad modelo
Institucion educativa ciudad modeloInstitucion educativa ciudad modelo
Institucion educativa ciudad modelo
 
Realidad aumentada
Realidad aumentadaRealidad aumentada
Realidad aumentada
 
Cap3
Cap3Cap3
Cap3
 
UNIDAD I.pptx
UNIDAD I.pptxUNIDAD I.pptx
UNIDAD I.pptx
 
Comp graf(1) marzo11
Comp graf(1) marzo11Comp graf(1) marzo11
Comp graf(1) marzo11
 
Aplicaciones de la fotogrametría en la arqueología
Aplicaciones de la fotogrametría en la arqueologíaAplicaciones de la fotogrametría en la arqueología
Aplicaciones de la fotogrametría en la arqueología
 

Último

PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASAPLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASAAlexandraSalgado28
 
Teleconferencia Accionistas Q1 2024 . Primer Trimestre-
Teleconferencia Accionistas Q1 2024 . Primer Trimestre-Teleconferencia Accionistas Q1 2024 . Primer Trimestre-
Teleconferencia Accionistas Q1 2024 . Primer Trimestre-ComunicacionesIMSA
 
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdfRamon Costa i Pujol
 
PRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdf
PRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdfPRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdf
PRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdfCarolinaMaguio
 
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfT.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfLizCarolAmasifuenIba
 
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...antonellamujica
 
JOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptx
JOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptxJOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptx
JOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptxJosVidal41
 
PROCESO PRESUPUESTARIO - .administracion
PROCESO PRESUPUESTARIO - .administracionPROCESO PRESUPUESTARIO - .administracion
PROCESO PRESUPUESTARIO - .administracionDayraCastaedababilon
 
Continex para educación, Portafolio de servicios
Continex para educación, Portafolio de serviciosContinex para educación, Portafolio de servicios
Continex para educación, Portafolio de serviciosFundación YOD YOD
 
Presentación La mujer en la Esperanza AC.pptx
Presentación La mujer en la Esperanza AC.pptxPresentación La mujer en la Esperanza AC.pptx
Presentación La mujer en la Esperanza AC.pptxDanielFerreiraDuran1
 
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdfAFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdfOdallizLucanaJalja1
 
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionalesProyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionalesjimmyrocha6
 
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?Michael Rada
 
diapositivas 26-12-16_seguridad ciudadana.pptx
diapositivas 26-12-16_seguridad ciudadana.pptxdiapositivas 26-12-16_seguridad ciudadana.pptx
diapositivas 26-12-16_seguridad ciudadana.pptxDiegoQuispeHuaman
 
Rendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosRendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosCondor Tuyuyo
 
PPT Empresas IANSA Sobre Recursos Humanos.pdf
PPT Empresas IANSA Sobre Recursos Humanos.pdfPPT Empresas IANSA Sobre Recursos Humanos.pdf
PPT Empresas IANSA Sobre Recursos Humanos.pdfihmorales
 
15. NORMATIVA DE SST - LA LEY 29783.pptx
15. NORMATIVA DE SST - LA LEY 29783.pptx15. NORMATIVA DE SST - LA LEY 29783.pptx
15. NORMATIVA DE SST - LA LEY 29783.pptxAndreaAlessandraBoli
 
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptxT.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptxLizCarolAmasifuenIba
 
estadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.pptestadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.pptMiguelAngel653470
 
MANUAL SKIDDER manual manual manual manua
MANUAL SKIDDER manual manual manual manuaMANUAL SKIDDER manual manual manual manua
MANUAL SKIDDER manual manual manual manuaasesoriam4m
 

Último (20)

PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASAPLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
PLANILLA DE CONTROL LIMPIEZA TRAMPA DE GRASA
 
Teleconferencia Accionistas Q1 2024 . Primer Trimestre-
Teleconferencia Accionistas Q1 2024 . Primer Trimestre-Teleconferencia Accionistas Q1 2024 . Primer Trimestre-
Teleconferencia Accionistas Q1 2024 . Primer Trimestre-
 
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
 
PRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdf
PRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdfPRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdf
PRINCIPIOS DE CONDUCCION Y LIDERAZGO SGTO 1.pdf
 
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfT.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
 
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
Mapa Conceptual relacionado con la Gerencia Industrial, su ámbito de aplicaci...
 
JOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptx
JOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptxJOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptx
JOSSELYN SALINfffffffAS- CAPITULO 4 Y 5.pptx
 
PROCESO PRESUPUESTARIO - .administracion
PROCESO PRESUPUESTARIO - .administracionPROCESO PRESUPUESTARIO - .administracion
PROCESO PRESUPUESTARIO - .administracion
 
Continex para educación, Portafolio de servicios
Continex para educación, Portafolio de serviciosContinex para educación, Portafolio de servicios
Continex para educación, Portafolio de servicios
 
Presentación La mujer en la Esperanza AC.pptx
Presentación La mujer en la Esperanza AC.pptxPresentación La mujer en la Esperanza AC.pptx
Presentación La mujer en la Esperanza AC.pptx
 
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdfAFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
AFILIACION CAJA NACIONAL DE SALUD WOM 1 .pdf
 
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionalesProyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
Proyecto TRIBUTACION APLICADA-1.pdf impuestos nacionales
 
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
¿ESTÁ PREPARADA LA LOGÍSTICA PARA EL DECRECIMIENTO?
 
diapositivas 26-12-16_seguridad ciudadana.pptx
diapositivas 26-12-16_seguridad ciudadana.pptxdiapositivas 26-12-16_seguridad ciudadana.pptx
diapositivas 26-12-16_seguridad ciudadana.pptx
 
Rendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosRendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de Condominios
 
PPT Empresas IANSA Sobre Recursos Humanos.pdf
PPT Empresas IANSA Sobre Recursos Humanos.pdfPPT Empresas IANSA Sobre Recursos Humanos.pdf
PPT Empresas IANSA Sobre Recursos Humanos.pdf
 
15. NORMATIVA DE SST - LA LEY 29783.pptx
15. NORMATIVA DE SST - LA LEY 29783.pptx15. NORMATIVA DE SST - LA LEY 29783.pptx
15. NORMATIVA DE SST - LA LEY 29783.pptx
 
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptxT.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
 
estadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.pptestadistica funcion distribucion normal.ppt
estadistica funcion distribucion normal.ppt
 
MANUAL SKIDDER manual manual manual manua
MANUAL SKIDDER manual manual manual manuaMANUAL SKIDDER manual manual manual manua
MANUAL SKIDDER manual manual manual manua
 

Fundamentos de los programas de Realidad Virtual

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