VRML

Page 1

Virtual Reality Modeling Languaje

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

Desarrollo y edición. Ing. Gerardo Nava Hernández gerexo@hotmail.com Versión 2015

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje ÍNDICE 1 ALGO DE HISTORIA 2 VRML INSTALACIÓN PAQUETES WHITEDUNE 3 INTRODUCCIÓN BÁSICA VRML FORMATO Y CODIGO FUENTE CUERPO DE PROGRAMA 4 DESCRIPCION PRIMITIVAS GEOMÉTRICAS SHAPE SIZE 5 MATERIALES MATERIAL APPEARANCE DIFFUSECOLOR EMISSIVECOLOR SPECULARCOLOR AMBIENTINTENSITY SHININESS TRANSPARENCY IMAGETEXTURE 5 TRANFORMACIONES - TRANSFORM TRANSLATION ROTATION SCALE 7 ILUMINACIÓN POINTLINGHT DIRECTIONALLIGHT SPOTLIGHT 8 GEOMETRIAS ALBITRARIAS INDEXEDFACESET INDEXEDLINESET POINTSET 9 PUNTOS DE VISTA VIEWPOINTS COLISIONES 10 ENLACES ANCHOR INLINE 11TEXTO FONTSTYLE 12 DEF-USE PROTO 13 ANIMACIÓN BÁSICA 14 PROYECTOS EN WHITEDUNE 15 IMPORTANDO EN VRML

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje En la búsqueda de software libre para diseñar modelos 3D a través de Internet, he probado con varias herramientas, y entre ellas encontré una distribución libre algo vieja basada en dos componentes (visor – plugin y editor) el cual, a través de código basado en campos y nodos podías construir un modelo 3D de gran nivel , lo use por algún tiempo en plataforma Windows – Explorer, al final decidí probar con software libre; GNU/Linux 9.04 – Fire fox pero lamentablemente no encontré un plugin para este navegador, asi que use el visor lookat y me apoye en un editor llamado Whitedune, te invito a probarlo. ALGO DE HISTORIA

1965 Surge el concepto de Realidad Virtual, cuando Ivan Sutherland (hoy miembro de Sun Microsystems Laboratories ) publicó un artículo titulado "The Ultimate Display", en el cual describía el concepto básico de la Realidad Virtual. El trabajo inicial del doctor Sutherland fue básico para investigaciones subsecuentes en este terreno. 1966 Sutherland creó el primer casco visor de Realidad Virtual al montar tubos de rayos catódicos en un armazón de alambre. Este instrumento fue llamado "Espada de Damocles", debido a que el estorboso aparato requería de un sistema de apoyo que pendía del techo. Sutherland también inventó casi toda la tecnología. 1968 Ivan Sutherland y David Evans crean el primer generador de escenarios con imágenes tridimensionales, datos almacenados y aceleradores. En este año se funda también la sociedad Evans & Sutherland. 1971 Redifon Ldt en el Reino Unido comienza a fabricar simuladores de vuelo con displays gráficos. Henri Gouraud presenta su tesis de doctorado "Despliegue por computadora de Superficies Curvas". 1972 General Electric, bajo comisión de la Armada norteamericana, desarrolla el primer simulador computarizado de vuelo. Los simuladores de vuelo serán un importante renglón de desarrollo para la Realidad Virtual. 1973 Bui-Tuong Phong presenta su tesis de doctorado "Iluminación de imágenes generadas por computadora". 1976 P. J. Kilpatrick publica su tesis de doctorado "El uso de la Cinemática en un Sistema Interactivo Gráfico". 1977 Dan Sandin y Richard Sayre inventan un guante sensitivo a la flexión. 1979 Eric Howlett (LEEP Systems, Inc.) diseñan la Perspectiva Óptica Mejorada de Extensión Larga (Large Expanse Enhanced Perspective Optics, LEEP). . A principios de los 80´s la Realidad Virtual es reconocida como una tecnología viable. Jaron Lanier es uno de los primeros generadores de aparatos de interfaz sensorial, acuñó la expresión "Realidad Artificial", también colabora en el desarrollo de aparatos de interface VR, como guantes y visores. 1980 Andy Lippman desarrolla un videodisco interactivo para conducir en las afueras de Aspen. ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje 1981 Tom Furness desarrolló la "Cabina Virtual". G. J. Grimes, asignado a Bell Telephone Laboratories, patentó un guante para introducir datos. 1982 Ocurre uno de los acontecimientos históricos en el desarrollo de los simuladores de vuelo, cuando Thomas Furness presentó el simulador más avanzado que existe, contenido en su totalidad en un casco parecido al del personaje Darth Vader y creado para la U.S. Army AirForce. Thomas Zimmerman patentó un guante para introducir datos basado en sensores ópticos, de modo que la refracción interna puede ser correlacionada con la flexión y extensión de un dedo. 1983 Mark Callahan construyo un HMD en el Instituto Tecnológico de Massachusetts (MIT). 1984 William Gibson publica su novela de ciencia ficción, Neuromancer en el que se utiliza por primera vez el término "Ciberespacio" refiriéndose a un mundo alternativo al de las computadoras; con lo que algunos aficionados empiezan a utilizarlo para referirse a la Realidad Virtual. Mike Mc Greevy y Jim Humphries desarrollaron el sistema VIVED (Representación de un Ambiente Virtual, Virtual Visual Environment Display) para los futuros astronautas en la NASA. 1985 Jaron Lanier funda la institución VPL Research. Los investigadores del laboratorio Ames de la NASA construyen el primer sistema práctico de visores estereoscopios. Mike Mc Greevy y Jim Humphries construyen un HMD con un LCD monocromo del tamaño de una televisión de bolsillo. 1986 En el centro de investigaciones de Schlumberger, en Palo Alto, California, Michael Deering (científico en computación) y Howard Davidson (físico) trabajaron en estrecha relación con Sun Microsystems para desarrollar el primer visor de color basado en una estación de trabajo, utilizando la tecnología de Sun. Existen ya laboratorios como el de la NASA, Universidad de Tokio, Boeing, Sun Microsystems, Intel, IBM y Fujitsu dedicados al desarrollo de la tecnología VR. 1987 La NASA utilizando algunos productos comerciales, perfecciona la primera realidad sintetizada por computadora mediante la combinación de imágenes estéreo, sonido 3-D, guantes, etc. Jonathan Waldern forma las Industrias W (W Industries). Tom Zimmerman et al. desarrolla un guante interactivo. 1988 Michael Deering y Howard Davidson se incorporan a la planta de científicos de Sun. Una vez allí, el Dr. Deering diseñó características VR dentro del sistema de gráficos GT de la empresa, mientras que el Dr. Davidson trabajaba en la producción de visores de bajo costo. 1989 VPL, y después Autodesk, hacen demostraciones de sus completos sistemas VR. El de VPL es muy caro (225,000 dólares), mientras que el de Autodesk no lo es tanto (25,000 dólares). Jaron Lanier, CEO of VPL, creó el término "Realidad Virtual". Robert Stone forma el Grupo de Factores Humanos y Realidad Virtual. Eric Howlett construyo el Sistema I de HMD de vídeo LEEP. VPL Research, Inc. comenzó a vender los lentes con audífonos que usaban despliegues ópticos LCD y LEEP. Autodesk, Inc. Hizo una demostración de su PC basada en un sistema CAD de Realidad Virtual, Ciberespacio, en SIGGRAPH’89. Robert Stone y Jim Hennequin coinventaron el guante Teletact I. Las Tecnologías de Reflexión producen el visor personal. ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje 1990 Surge la primera compañía comercial de software VR, Sense8, fundada por Pat Gelband. Ofrece las primeras herramientas de software para VR, portables a los sistemas SUN. ARRL ordena el primer sistema de realidad virtual de División. J. R. Hennequin y R. Stone, asignados por ARRL, patentaron un guante de retroalimentación tangible. 1991 Industrias W venden su primer sistema virtual. Richard Holmes, asignado por Industrias W, patento un guante de retroalimentación tangible. 1992 SUN hace la primera demostración de su Portal Visual, el ambiente VR de mayor resolución hasta el momento. Al Gore, vicepresidente de Estados Unidos y promotor de la Realidad Virtual, dictó seminarios sobre la importancia de esta tecnología para la competitividad norteamericana. T.G. Zimmerman, asignado por VPL Research, patentó un guante usando sensores ópticos. Division hace una demostración de un sistema de Realidad Virtual multiusuario. Thomas De Fanti et al. Hizo una demostración del sistema CAVE en SIGGRAPH. 1993 SGI anunció un motor de Realidad Virtual. 1994 La Sociedad de Realidad Virtual fue fundada. IBM y Virtuality anunciaron el sistema V-Space. Virtuality anunció su sistema serie 2000. División hizo una demostración de un sistema integrado de Realidad Virtual multiplataformas en IITSEC, Orlando. http://www.dei.uc.edu.py

VRML (Virtual Reality Modeling Language). "Lenguaje para Modelado de Realidad Virtual" - formato de archivo normalizado que tiene como objetivo la representación de gráficos interactivos tridimensionales; diseñado particularmente para su empleo en la web. Consiste en un formato de fichero de texto en el que se especifican los vértices y las aristas de cada polígono tridimensional, además del color de su superficie. Es posible asociar direcciones web a los componentes gráficos así definidos, de manera que el usuario pueda acceder a una página web o a otro fichero VRML de Internet cada vez que pique en el componente gráfico en cuestión. El Consorcio Web3D ha sido creado para desarrollar este formato. Su primera especificación fue publicada en 1995; la versión actual funcionalmente completa es la VRML 97 (ISO/IEC DIS 14772-1). VRML, es la base en la que se ha desarrollado X3D - Extensible 3D. http://es.wikipedia.org

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje INSTALACIÓN LINUX Lo primero es descargar los paquetes necesarios para visualizar y editar, comencemos con el visualizador. Nombre de paquete: 1.-libopenvrml5c2a_0.15.10-5ubuntu2_i386.deb 2.-openvrml-lookat_0.15.10-9ubuntu1_i386.deb Ahora el editor. Nombre del paquete: Whitedune es desarrollado por: Copyrigth (c)2001 Stephen F. GNU (GPL) 3.-whitedune_0.28.131_i386.deb El orden de instalación obedece a la numeración anterior, estos son para un equipo de 32 bit, 386 y Ubuntu 9.04. - Jaunty Jackalope - distribuido en Abril de 2009. Si tienes otro equipo visitar los repositorios: http://mx.archive.ubuntu.com/ubuntu/pool/universe/ O a través del gestor de paquetes Synaptic. INSTALACIÓN WINDOWS Para su instalación se debe de descargar del sitio: --- (cortona), el cual es un plugin para nuestro navegador de internet, además te recomiendo una serie de visores para su uso en Windows. http://www.parallelgraphics.com/products/cortona3d/

INSTALACION ANDROID En Playstore ya senos proporciona el visor FreeX3d para poder visualizar modelos realizados con la extensión X3D, mas adelante explicaré mas a detalle que deberás de realizar par ver ahí tus mundos virtuales. https://play.google.com/store/apps/details?id=org.freex3d&hl=es_419

INSTALACION MAC Para este sistema operativo usaremos el visor Freewrl , el cual descargaras del siguiente sitio: http://www.macupdate.com/app/mac/21332/freewrl/download

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje WHITEDUNE Es un editor VRML, nativo de linux pero también existe un portable para Windows los puedes descargar de este sitio:----,el cual genera el código a través de la construcción directa de primitivas básicas, prácticamente está compuesto por iconos rápidos y un pequeño menú que se pueden ver en la siguiente imagen.

Del lado izquierdo tenemos estructurados los nodos, al centro se irán construyendo los modelos y a la izquierda de igual manera que los nodos los campos, en la parte de abajo la línea de tiempo para el diseño de animaciones y sensores. Lo podras descargar del siguiente sitio: https://directory.fsf.org/wiki/White_dune

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje INTRODUCCIÓN BÁSICA VRML CUERPO SIMPLE DE VRML Un mundo esta compuesto por las siguientes partes: #VRML V2.0 utf8 Campo

Nodo{ #Comentarios

}

DESCRIPCION ENCABEZADO #VRML V2.0 utf8 - #VRML Describe el tipo, la primera versión V1.0 se desarrollo en 1994-95, V2.0 se desarrolla en 1997 bajo la norma ISO/IEC 14772-1:1997 , Utf8 (8-bit Unicode Transformation Format) nos indica el tipo de codificación UTF-8 en donde se describen todos los tipos de caracteres especiales, el cual está basado en estándar ISO 10646. NODO (node) Nodo{...},un

mundo esta definido por uno o muchos nodos, los cuales pueden ser comparados con objetos, estos puede contener diferentes Formas, colores, imágenes, sonidos etc... CAMPOS (fields) El campo funciona como parámetro de los objetos, ya que el nodo construye el objeto completo y el campo lo detallará como por ejemplo en tamaño. COMENTARIOS Un comentario tiene la funcionalidad de // que utilizamos en el lenguaje C, solo bastará con agregar el símbolo de # para definirlo. PRIMITIVAS GEOMÉTRICAS Un mundo contiene una serie de objetos denominados primitivas geométricas. CAJA ESFERA CONO CILINDRO

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje FORMATO Y CÓDIGO FUENTE Los programas se escriben en archivos de texto (ASCII), por lo tanto cualquier editor de texto puede ser utilizado, al escribirlo solo bastará con guardarlo con exención *.wrl “Nombredelarchivo.wrl”, world es el significado de la extención wrl, en mi caso usaré el editor de textos de GNU/Linux gedit. Nota: en el caso del MAC hay que guardarlo de la siguiente forma:---Entremos en materia. Ejm1. Escriba el código fuente haciendo uso del editor de texto gedit o block de notas que nos proporciona Ubuntu, o Windows respectivamente “Puedes usar cualquier editor de texto”.

Guardamos el archivo como “caja.wrl”. Verifiquemos en nuestro visor Lookat lo que hemos construido, bastará con posicionarse encima del archivo oprimir botón derecho y elegir la opción Abrir con -> lookat. Para poder manipular nuestro cubo debemos de mantener oprimido con botón izquierdo, pero si deseo alejarme o acercarme lo realizaremos mediante las flechas del teclado.

En caso de Windows damos doble clic sobre el archivo fuente e inmediatamente nos lo muestra en el navegador, de no ser así aparecerá un mensaje de seguridad, damos clic derecho encima del mensaje permitir contenido bloqueado y listo.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

En Windows se vería algo así, debajo existen botones rápidos para poder movernos dentro de nuestro mundo caminar, volar examinar, subir, bajar, girar, puntos de vista, reiniciar y ajustar. Para Mac es muy similar a linux, asíque no entraremos a detalle. Del código anterior podemos apreciar que carece de color, mas adelante enseñare como agregar colores y texturas.

En el código existen dos nodos llamado shape y otro size, expliquemoslo: SHAPE Es un nodo principal que contiene 2 campos llamados geometry y appearance; geometry el cual usamos es necesario para poder construir cualquier tipo de geometría en nuestro mundo virtual. SIZE Es el campo de la primitiva box y es el encargado de construir el tamaño del objeto en sus tres ejes: 4 (Ancho -X- ) 4 (Alto -Y- ) 4 (Fondo -Z- ) Los números usados no están definidos por algún sistema métrico solo establece una unidad que puede ser considerada en metros, milímetros, pulgadas, etc.. Ahora generemos las demás figuras geométricas

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Ejm 1. ESFERA #VRML V2.0 utf8 Shape { geometry Sphere { radius 4

} # Define el tamaño de radio.

} CONO #VRML V2.0 utf8 Shape { geometry Cone { bottomRadius 4 # Base del radio height 3 # Altura } } CILINDRO #VRML V2.0 utf8 Shape { geometry Cylinder { radius 4 # Radio height 5 # Base } } MEZCLANDO FIGURAS #VRML V2.0 utf8 Shape { geometry Sphere { radius 4 } } #Respetando las coordenadas xyz puedes acomodar de manera #muy sencilla ambas formas geométricas. Shape { radius 5 geometry Cylinder { # Radio height 2 # Base } }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje WHITEDUNE Ahora hagamos en whitedune uno de los 3 ejemplos:

Para la construcción de una primitiva básica únicamente necesitamos oprimir el botón de sphere y automáticamente se creará una nueva esfera de color grisáceo pues carece de color. Podemos apreciar de lado izquierdo la ramificación de escenas con la construcción de nodos correspondientes a la nueva esfera., además del lado derecho podemos apreciar los campos correspondientes al nodo seleccionado del lado izquierdo. El código que genera es el siguiente: #VRML V2.0 utf8 Transform { children [ Shape { appearance Appearance { Material { material } } Sphere { } geometry } ] } No te preocupes por la complejidad de este código, capítulos posteriores te explicarán mas acerca de estos nodos y campos. ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

Ahora vamos a ver en el visor lookat lo que hemos construido!, pero para eso hay que configurarlo como predeterminado: Options -> Preview Settings (Shift + F12) Ahora si puedes usar para poder visualizar por medio del visor la nueva esfera.

MATERIALES APPEARANCE En los ejemplos anteriores nuestras figuras carecían de color, ahora mediante el campo apparence que forma parte del nodo Shape, podremos agregar colores y texturas. Como podemos apreciar en la figura anterior el campo appearece posee un nuevo nodo llamado Appearance, esta es la filosofía principal de VRML nodos y campos anidados, por lo tanto un campo puede contener varios nodos y así sucesivamente. El campo que utilizaremos para poder agregar color a nuestra figura se llama diffusecolor que forma parte (junto con otros que veremos mas adelante) del nodo Materia, algo que podemos apreciar es que todos los campos comienzan con letras minúsculas mientras que los nodos con mayúsculas. Otros campos de el nodo Material son: emissiveColor Fijar el color del brillo, es un campo importante cuando deseamos ver algún objeto en la oscuridad, esta parece generar desde dentro la luz , por defecto es negro ya que los objetos no brillan. specularColor Proporciona luz de color reflejada en el objeto. ambientIntensity Proporciona luz ambiental a través de focos. shininess Controla el brillo que puede tener un objeto, su máximo valor es 1.0. transparency Agrega la tranparencia a un objeto, siendo la máxima transparencia 1.0 ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Realicemos 2 ejemplos, con distintos Campos del nodo Material: Ejm2. Shape (Nodo) appearence (Campo)

Appearence (Nodo) material (Campo) Material (Nodo)

diffusecolor (Campo) ambientIntensity(Campo)

DIFFUSECOLOR

Agregemos color al ejemplo anterior. #VRML V2.0 utf8 Shape { geometry Box { size 4 4 4 } appearance Appearance { material Material { diffuseColor 1 0 0 # Color } } }

ING. GERARDO NAVA HERNĂ NDEZ

specularColor(Campo)

emissiveColor(Campo)

shininess(Campo)

transparency(Campo)


Virtual Reality Modeling Languaje EMISSIVECOLOR #VRML V2.0 utf8 Shape { appearance Appearance { # Genera su propia luz de color azul. material Material { emissiveColor 0 0 1 # Color. } } geometry Box { size 4 4 4 } }

WHITEDUNE Creamos nuestra figura y damos clic en Appereance del lado derecho aparecerán los campos de ese nodo , escojamos material.

Podemos cambiar los valores con solo dar 1 clic encima de cada número, escojamos color rojo, es la secuencia 1 0 0.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

La figura nos queda así.

Los colores proporcionados son RGB (RED,GREEN end BLUE), están asignados por valores flotantes, representando cada uno los colores primarios. El valor 1.0 es la mayor intensidad de color mientras el 0.0 ausencia de color. Podemos apreciar en esta ventana los demás campos a utilizar para la fabricación de nuestros mundos.

TRANFORMACIONES TRANSFORM Este nodo nos ayudara a situar nuestro objeto en nuestro mundo a través de traslación, rotación y escalado. Translation Nos indicará la nueva posición de nuestro objeto gobernado por las coordenadas XYZ. Considerando que la parte central de nuestro mundo es 0.0.0. rotation Girar al rededor de uno de los ejes de nuestro mundo, la inclinación de dicho giro se da en Radianes. 360º -> 2π scale Aumenta o disminuye el tamaño de los ejes, básicamente reduce o incrementa una figura. ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Ejm 3. Transform (Nodo) translation (Campo)

rotation (Campo)

scale (Campo) Children (Campo)

#VRML V2.0 utf8 Shape { # Esfera en el centro del mundo, color azul geometry Sphere { radius 3 } appearance Appearance { material Material { diffuseColor 0 0 1 } } } Transform { translation 0 5 0 # Objeto trasladado children [ Shape { geometry Sphere { radius 3 } appearance Appearance { material Material { diffuseColor 0 1 0 } } } #Podemos apreciar una esfera que se ha movido 5 posiciones sobre el eje Y. ] }

ING. GERARDO NAVA HERNĂ NDEZ


Virtual Reality Modeling Languaje

Ahora hagamos los tres movimientos: #VRML V2.0 utf8 Shape { # Referencia de origen geometry Sphere { radius 3 } appearance Appearance { material Material { diffuseColor 0 0 1 } } } Transform { translation 0 5 0 rotation 1 0 0 1.39626 # 90 grados en el eje X (90ยบ*PI)/180ยบ scale 0.5 0.5 0.5 # Reducido a la mitad en todos sus ejes children [ Shape { geometry Sphere { radius 3 } appearance Appearance { material Material { diffuseColor 0 1 0 } } } ] }

ING. GERARDO NAVA HERNร NDEZ


Virtual Reality Modeling Languaje USEMOS VARIOS CAMPOS #VRML V2.0 utf8 Transform { translation 0 0 -2 scale 5 0.5 1 children[ Shape { geometry Box { size 1 1 1 } appearance Appearance { material Material { diffuseColor 0.5 0 1 #Caja de color de fondo } } }] } Transform { translation -2 0 0 children [ Shape { geometry Box { size 1 1 1 } appearance Appearance { material Material { diffuseColor 0.5 0.5 1 #Caja de color emissiveColor 0 0 0 transparency 0 } } } ] } Transform { translation 0 0 0 children [ Shape { geometry Box { size 1 1 1 } appearance Appearance { material Material { diffuseColor 0.5 0.5 1 emissiveColor 1 1 0 #Objeto auto iluminado } } }]

ING. GERARDO NAVA HERNĂ NDEZ


Virtual Reality Modeling Languaje } Transform { translation 2 0 0 children [ Shape { geometry Box { size 1 1 1 } appearance Appearance { material Material { diffuseColor 0.5 0.5 1 transparency 0.8 #Objeto transparente } } }] }

APLIQUEMOS TODO LO QUE HEMOS VISTO. Hagamos 3 cubos de diferentes colores que tengan cierta rotación, translación y escalado. #VRML V2.0 utf8 Transform { translation -1 0 0 # Es movimiento en una unidad de lado izquierdo rotation 1 0 0 1 scale 0.5 1 1# Reducido a la mitad en todos sus ejes children [

Shape { geometry Box { size 1 1.12 1 } appearance Appearance { material Material { diffuseColor 1 0.6 0 } } }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje ]} Transform { translation 0 0 0 rotation 1 0 0 1 scale 0.5 1 1# Reducido a la mitad en todos sus ejes children [ Shape { geometry Box { size 1 0.7 1 } appearance Appearance { material Material { diffuseColor 0 0.6 1 } } }

]

}

Transform { translation 1 0 0 rotation 1 0 0 1 scale 0.5 1 1# Reducido a la mitad en todos sus ejes children [

Shape { geometry Box { size 1 0.2 1 } appearance Appearance { material Material { diffuseColor 0 0.6 0 } }

ING. GERARDO NAVA HERNĂ NDEZ

}

]

}


Virtual Reality Modeling Languaje WHITEDUNE Creamos un cilindro de color rosa damos clic en el icono nuestra figura.

,para poder modificar la posición

Bastará con arrastrar desde la flecha de la coordenada (usando el mouse) cualquiera de los ejes XYZ (Rojo,Verde y Azul), para generar una translación,rotación o escalado de la nueva figura. ILUMINACIÓN Solo tres nodos definen el tipo de iluminación de un mundo. PointLinght Luz puntual DirectionalLight Luz direccional SpotLight Espot de luz La iluminación se define por cada objeto al que se va a iluminar, controlando la intensidad de cada uno de ellos, no es solo un foco que ilumina a todo el mundo con reflexiones entre los objetos, sino que podemos cambiar las características de la luz que incide en un objeto,además la vista que tenemos frontal ya es iluminada para poder ver las figuras que carecen de luz, esto puede confundirnos al iluminar nuestros mundos. Pointligth Es el tipo mas real de luz ya que como la conocemos se distribuye en todos lados y se va atenuando, perdiendo así energía conforme nos alejamos del objeto. Por lo anterior habrá que aumentar el valor de su atenuación si no quiero un Pointligth muy elevado a través del campo attenuation, además cuenta con ses parámetros que explicaremos a través de un ejemplo.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Ejm 4.

material (Campo) Material (Nodo) ambientIntensity (Campo) Intensidad del en el ambiente.

PointLigth (Node) location (Campo)

radius (Campo)

color (Campo)

intensity(Campo)

ambientIntensity (Campo)

attenuation(Campo)

Características de la luz por objeto.

#VRML V2.0 utf8 PointLight { # Luz azul sin atenuación location -5 5 0 #Ubicación del foco , la imagen se ve mas abajo radius 0.2 #Radio de la luz ambientIntensity 1 #Intensidad de la luz se ignora con intensidad de materia color 1 0 0 #Color rojo arriba intensity 1 #Potencia con la que la luz ilumina attenuation 1 0 0 # Sin presenta atenuación } Transform { translation -3 0 0 children Shape { appearance Appearance { material Material { ambientIntensity 0.2 #Control de la intensidad, mas pequeño mas luz diffuseColor 1 1 1 } }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje geometry Box { size 2 1 2 } } } PointLight { location 5 -5 0 radius 0.2 ambientIntensity 1 color 0 1 0 #Color verde abajo intensity 1 attenuation 1 0 0 } Transform { translation 3 0 0 children Shape { appearance Appearance { material Material { ambientIntensity 0.2 diffuseColor 1 1 1 } } geometry Box { size 2 1 2 } } }

ING. GERARDO NAVA HERNĂ NDEZ


Virtual Reality Modeling Languaje DirectionalLight Luz paralela - son líneas de luz que carecen de ángulos incidiendo de manera directa sobre la superficie de un objeto, no es solamente un foco sino rayos de luz que pasan sobre la dirección que nosotros le configuremos. Ejm 5. PointLigth (Node) ambientIntensity (Campo) intensity(Campo)

color (Campo)

direction (Campo)

#VRML V2.0 utf8 DirectionalLight { ambientIntensity 1 color 1 0 0 intensity 1 direction -3 3 0 # Dirección de la luz } Transform { translation -3 0 0 children Shape { appearance Appearance { material Material { ambientIntensity 0.2 # Intensifica la luz que inside en este cubo diffuseColor 1 1 1 }} geometry Box { size 2 1 2 } } } Transform { translation 3 0 0 children Shape { appearance Appearance { material Material { ambientIntensity 0.2 diffuseColor 1 1 1 }} geometry Box { size 2 1 2 } } } ] }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje PointLight Este tipo de luz debemos de indicar su origen y destino, es comparada con la luz de una lámpara que iluminan una obra de arte o una escultura, es a forma de iluminación mas elaborada. Ejm 6. PointLigth (Node) location (Campo)

radius (Campo)

color (Campo)

intensity(Campo)

direction (Campo)

ambientIntensity (Campo)

attenuation(Campo)

cutOffAngle (Campo)

beamWidth (Campo)

#VRML V2.0 utf8 SpotLight { location -3 3 0 #Origen de la lámpara radius 3 ambientIntensity 0.6 color 0 0.5 1 intensity 1 attenuation 1 0 0 # No presenta atenuación direction 3 -3 0 # Destino de la lámpara cutOffAngle 0.1745 # 10 grados de apertura de la luz beamWidth 0.785398 # 45 grados donde la intensidad de la luz es máxima } Transform { translation -3 0 0 children Shape { appearance Appearance { material Material { ambientIntensity 0.2 # Intensifica la luz que inside en este cubo diffuseColor 1 1 1 } } geometry Box { size 2 1 2 } } } Transform { translation 3 0 0 children Shape { appearance Appearance { material Material { ambientIntensity 0.2

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje diffuseColor 1 1 1 } } geometry Box { size 2 1 2 } } } ] }

En esta figura podemos apreciar que aunque la luz estรก sobre el rectรกngulo de la izquierda esta solo altera al de la derecha.

WHITEDUNE Seleccionamos Scene, vamos a menu create -> ligth y seleccionamos el tipo de luz que deseo agregar , en nuestro caso usemos DirectionalLight.

Vemos que ya esta iluminada nuestra esfera pero de color blanco, cambiemos sus campos para iluminar atrรกs y adelante. Para la luz trasera vamos de nueva cuanta a Scene, create -> ligth y seleccionamos el tipo de luz que deseo agregar , en nuestro caso usemos DirectionalLight.

ING. GERARDO NAVA HERNร NDEZ


Virtual Reality Modeling Languaje

Whitedune agrega un botón para habilitar la luz cuando lo deseemos ver.

GEOMETRIAS ALBITRARIAS No solamente contamos con primitivas para la construcción de nuestros mundos, sería muy complicado y limitado la elaboración de los mismos si solamente contáramos con ellas, podemos crear diferentes formas basadas en la definición de caras y vértices controlando la cantidad que necesitemos realmente. Node IndexedFaceSet

Para poder tener un mejor control de los vértices y caras se recomienda las siguientes normas para acomodarlas: 1.Los vértices son consecutivos. 2.Se listan en orden anti horario. 3.El último vértice de cada cara enlaza con el primero, cerrando el nuevo objeto.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Ejm 7. geometry(Campo) IndexedFaceSet (Nodo) IndexedLineSet (Nodo) PointSet (Nodo) coord (Campo) Coordinate (Nodo) point (Campo) colorIndex (Campo) #VRML V2.0 utf8 Shape { appearance Appearance { material Material { diffuseColor 0 0.5 1 transparency 0.6 # Transparencia del 60% }} geometry IndexedFaceSet { coord Coordinate { point [ # Vértices 1 1 1, 1 1 -1, -1 1 -1, -1 1 1, 1 -1 1, 1 -1 -1, -1 -1 -1, -1 -1 1 ] } coordIndex [ # Caras 0, 1, 2, 3, -1,# -1 es usado para separar cada cara 0, 4, 5, 1, -1, 1, 5, 6, 2, -1, 2, 6, 7, 3, -1, 3, 7, 4, 0, -1, 4, 7, 6, 5, -1 ] } } ING. GERARDO NAVA HERNÁNDEZ

colorPerVertex(Campo)

coordIndex (Campo)


Virtual Reality Modeling Languaje

#VRML V2.0 utf8 Shape { #Vamos a retirarle una cara e introducimos un cubo pequeño dentro de la misma appearance Appearance { material Material { diffuseColor 0 0 1 } } geometry IndexedFaceSet { coord Coordinate { point [ 1 1 1, 1 1 -1, -1 1 -1, -1 1 1, 1 -1 1, 1 -1 -1, -1 -1 -1, -1 -1 1 ] } coordIndex [ 0, 4, 5, 1, -1, 1, 5, 6, 2, -1, 2, 6, 7, 3, -1, 3, 7, 4, 0, -1, 4, 7, 6, 5, -1 ] } }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Shape { appearance Appearance { material Material { diffuseColor 0.5 0.5 1 } } geometry Box{size 0.5 0.5 0.5} }

Ahora vamos agregar color a cada cara que hemos creado. Campo ColorPerVertex #VRML V2.0 utf8 Shape { appearance Appearance { material Material { diffuseColor 0 0.5 1 transparency 0.9 }} geometry IndexedFaceSet { coord Coordinate { point [ # Vértices 1 1 1, 1 1 -1, -1 1 -1, -1 1 1, 1 -1 1, 1 -1 -1, -1 -1 -1, -1 -1 1 ] } coordIndex [ # 2 Caras 0, 1, 2, 4, -1,# -1 es usado para separar cada cara 0, 1, 2, -3, -1 ] ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje colorPerVertex FALSE#Agrega colores por cara color Color { #Previamente definida color [ 1 0.5 0.5, 0.5 1 0.5 ] }}}

Se diseñan 2 caras, en donde se les agrega un color distinto a cada una, del lado contrario ellas carecen de color por ese motivo se ven en negro.

Si cambiamos colorPerVertex FALSE a vértices.

colorPerVertex TRUE, ahora los colores se mostrarán por

Siendo por vértices vemos que el color no es uniforme si no que se mezclan mientras nos aproximamos y alejamos a cada uno. En los ejemplos anteriores los colores de las caras son coloreadas una a una pero podemos iluminar cierta cantidad de caras des mismo color y otras de otro haciendo uso de colorIndex.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Nodo IndexLineSet Este nos dibujará las líneas que unen los vértices en una especie de malla, dibujemos el ejemplo del cubo pero ahora con este nodo. #VRML V2.0 utf8 Shape { appearance Appearance { material Material { emissiveColor 0 0.8 1 } } geometry IndexedLineSet { coord Coordinate { point [ # Vértices 1 1 1, 1 1 -1, -1 1 -1, -1 1 1, 1 -1 1, 1 -1 -1, -1 -1 -1, -1 -1 1 ] } coordIndex [ 0, 1, 2, 3, 0,-1,# Cerramos el circuito para que la linea regrese 0, 4, 5, 1, -1, #a su origen 1, 5, 6, 2, -1, 2, 6, 7, 3, -1, 3, 7, 4, 0, -1, 4, 7, 6, 5, -1, ] } }

Se pueden agregar colores diferentes a cada linea de la misma manera como lo hicimos con las caras y vértices.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Nodo PointSet Es el responsable de dibujar únicamente los vértices de la figura. #VRML V2.0 utf8 Shape { appearance Appearance { material Material { emissiveColor 1 1 0 } } geometry PointSet { # coord Coordinate { point [ 1 1 1, 1 1 -1, -1 1 -1, -1 1 1, 1 -1 1, 1 -1 -1, -1 -1 -1, -1 -1 1 ] } } } WHITEDUNE Construyamos una cara de color.

Damos clic al nodo IndexedFaceSet para construir una figura basada en nodos y vértices. Ya que hemos agregado nuestro nuevo nodo, necesitamos llegar hasta coord-Coordinate-point así que incluimos Coordinate.

Ya tenemos nuestros nodos, ahora hay que definir la cantidad de caras y vértices, así mismo la ubicación de los vértices en el nuevo mundo que hemos construido.

Definimos la ubicación de los vértices a través del campo point.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

Haciendo uso del campo coordIndex el acomodemoslas caras.

Este es el resultado, una forma de una sola cara plana . PUNTOS DE VISTA Position: Aquí proporcionaremos la posición de nuestra cámara en nuestro mundo, recordemos que nos referimos a los ejes XYZ. Orientation: Orientación de la cámara, es muy fácil confundirse ya que no es ordenado mediante los ejes XYZ sino por: (+ Arriba – Abajo) (+Izquierda – Derecha) (+Jiro Izquierda – Jiro derecha) Grados en radianes. Description: Aunque en lookat no aparece la descripción a través del navegador en otros visualizadores si aparece el nombre del punto de vista. Son posiciones preconfiguradas, para dirigirnos a un lugar de nuestro mundo de manera rápida. Ejm 8. Viewpoint(Nodo) position (Campo) orientation (Campo) description (Campo)

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

#VRML V2.0 utf8 Viewpoint { position 0 0 5#Posición original orientation 0 0 0 0#Orientación de la cámara description "centro" } Viewpoint { position 0 0 5 orientation 1 0 0 0.1745 # 10 grados radianes sube description "sube" } Viewpoint { position 0 0 5#Posición original orientation -1 0 0 0.1745#Orientación de la cámara baja description "baja" } Viewpoint { position 0 0 5 orientation 0 1 0 0.1745 # 10 grados en radianes izquierda description "izquierda" } Viewpoint { position 0 0 5#Posición original orientation 0 -1 0 0.1745#Orientación de la cámara derecha description "derecha" } Viewpoint { position 0 0 5#Posición original orientation 0 0 0 0#Orientación de la cámara description "centro" } Viewpoint { position 0 0 5 orientation 0 0 1 0.1745 # 10 grados en radianes giro izquierda description "izquierda" } Viewpoint { position 0 0 5#Posición original orientation 0 0 -1 0.1745#Orientación de la cámara giro derecha description "derecha" } Shape { appearance Appearance { material Material { diffuseColor 1 0.4 0 } } geometry Sphere { radius 2 } } Para poder activar a través de lookat los Viewpoint, lo hacemos mediante el teclado usando el botón avpág para navegar en los puntos de vista. Para Windows usar el menú ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

La ubicación de la figura origen cambia al manipular los puntos de vista ya que debe de partir de una posición, cero grados la gira como se muestra en la figura, y así sucesivamente cada grado.

WHITEDUNE Para realizar puntos de vista usamos el icono ubicación de la cámara y su posición.

,

y

escribimos

la

COLISIONES Este nodo es de suma importancia, debido a que nos proporcionará realismos a las edificaciones que construyamos, ya que al levantar una pared lo real es no poder atravesar la, esto es producido mediante las colisiones. Ejm 8. Collision(Nodo) collide (Campo) #VRML V2.0 utf8 Collision { #Nodo que genera las colisiones collide TRUE # Activamos las colisiones false o desactiva children [ Transform { translation 0 0 10 children Shape { geometry Box { size 5 5 5 } appearance Appearance { material Material { diffuseColor 0.133884 0.866115 1 transparency 0.500000} }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje } } Shape { geometry Box { size 5 5 5 } appearance Appearance { material Material { diffuseColor 0.133884 0.866115 1 } } } ] } En el ejemplo anterior la colisión afecta ambas figuras ya que el children ocasiona este efecto, no agregamos imágenes ya que no podemos demostrar la opción de colisión, pero al ejecutar este código podrás notar lo antes escrito. ANCHORS La utilización de hiper vínculos es muy común en el ambiente de internet, VRML no podía dejar fuera la implementación de estos enlaces aunque también en la realidad virtual los enlaces pueden ser utilizados mediante sitios web, en VRML para Linux es utilizado para mostrar otros mundos virtuales. Ejm 9. Anchor(Nodo) url (Campo) #VRML V2.0 utf8 Anchor { children Transform { translation 0 0 -5 children [ Shape { geometry Sphere { radius 3 } appearance Appearance { material Material { #ambientIntensity 1 emissiveColor 0 0 0.2 } } } ] } url "nuevo.wrl" #Como el enlace está en la misma carpeta solo escribimos el nombre}

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje ANTES

DESPUÉS

INLINE Es una instrucción importante ya que normalmente creamos diferentes imágenes los cuales las tenemos almacenadas incluso en lugares diferentes, INLINE ofrece la opción de integrarlas en un solo archivo con solo mandarlas a llamar las figuras, y tratarlas como si fueran un solo objeto. Ejm 10. #VRML V2.0 utf8 Transform{ # Al ser objetos los podemos mover a través de translación para ubicarlos en #posiciones diferentes dentro del mismo programa. translation 1 0 0 # Nueva ubicación. children [ Inline{url"cuborojodune.wrl"} ]} Transform{ translation -1 0 0 # Ubicación del otro objeto. children [ Inline{url"mallas.wrl"} ]}

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje WHITEDUNE Bastarรก con dar clic en este icono, y aparecerรก una ventana en donde escogeremos las figuras que compartirรกn el mismo espacio pero de diferente mudos.

Comparten el mismo mundo

ING. GERARDO NAVA HERNร NDEZ


Virtual Reality Modeling Languaje TEXT Es común de un mundo virtual la presentación de textos ya sea para referencial algo o simplemente para construir un cartel, al crearlo se le tratará como una primitiva por lo tanto se le podrá agregar texturas, translación, rotación y escalado. Ejm 11. geometry (Campo)

Text (Nodo) string (Campo) fontStyle (Campo) FontStyle (Nodo) #VRML V2.0 utf8 Shape{ appearance Appearance{ material Material {} } geometry Text { string ["Bienvenido", "al mundo VRML"] # Cadena de texto a mostrar fontStyle FontStyle { #Estilo del texto family "SERIF", # Nombre de fuente style "ITALIC", # Estilo de fuente spacing 1.5 #Espaciado de caracteres size 0.5 # Tamaño de la fuente justify "BEGIN" # Justificación del texto } } }

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje WHITEDUNE Para incorporar texto en nuestro mundo virtual debemos de dar clic en el icono, en este podremos agregar el texto que deseemos. Para nuestro ejemplo agregaremos un cubo escalado en X para incorporar encima el texto.

En la figura anterior podemos apreciar como ya se ha agregado el nodo Text ahora habrá que configurarlo.

Así se ve en el visor. ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje PROTO Es un mecanismos para definir nuevos nodos, los cuales pueden ser utilizados en diferentes sitios del mundo virtual, veamos un ejemplo: Ejm 12. PROTO (nodo) fielmSFcolor (Campo)

fielmSFvec3f (Campo)

#VRML V2.0 utf8 PROTO figura [ # Creamos nuestro nuevo nodo field SFColor color 1 0 0 # Definición de su campo ] { Group { #Creación de la figura children [ Shape { geometry Cylinder { height 3 radius 2 appearance Appearance { material Material { diffuseColor IS color } } } ]}} Transform { #Creamos una nueva figura con valores en campos diferentes y el lugar donde lo translation 5 0 0 # queremos ubicar children figura { color 0.5 0.5 0} } Transform { translation 0 0 -5 children figura { color 0.5 0.5 0} } Transform { translation -5 0 0 children figura { color 0.5 0.5 0} } Transform { translation 0 0 5 children figura { color 0.5 0.5 0} } figura { } #Creamos con los valores originales SFColor (single-valued field color, campo de color univaluado)

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje DEF – USE Si por algún motivo queremos repetir figuras dentro de nuestro mundo virtual, implicará que nuestro archivo se llene de mucho código, para evitar esto usamos DEF y USE, ya que a los nodos les podemos dar nombre y después referenciarlos. Veamos como: Ejm 13. DEF (nodo nombre)

USE (nodo) #VRML V2.0 utf8 Shape { appearance Appearance { # Cono central material Material { diffuseColor 0.5 1 1 } } geometry DEF nuevocono Cone { height 3 bottomRadius 2 }# Definimos la altura del cono y su radio } Transform {

translation 1 0 0 children Shape { appearance Appearance { material Material { diffuseColor 1 0.5 1 } } geometry USE nuevocono #Creamos un nuevo cono } } Transform { translation -1 0 0 children Shape { appearance Appearance { material Material { diffuseColor 1 0.5 1 } } geometry USE nuevocono #Creamos un nuevo cono }} En el ejemplo anterior podemos observar el uso de DEF-USE, en donde creamos un nodo principal y hereda a través de USE la elaboración de otros dos mas.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje ANIMACIÓN BÁSICA Para realizar animación de manera simple lo explicaré con Whitedune por la simplicidad con que este lo genera, básicamente haremos uso de la línea de tiempo que se encuentra ubicada en la parte baja del programa.

Demos animación a un pequeño disco azul.

1.- Seleccionamos Transform-AnimationAnimate (select animateable object).

2.- Le proporcionamos el tiempo en segundos, el eje en donde me voy a mover y creamos un new Time Sensor.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje ANIMACIÓN BÁSICA Se crea la línea de tiempo, con las características que le dimos anteriormente, en mi caso 10 segundos y trasladándose sobre el eje x

2.- Le proporcionamos el tiempo en segundos, el eje en donde me voy a mover y creamos un new Time Sensor.

4.- Ahora bastará jalar con el mouse sobre la línea de tiempo en donde el color es eje por donde se va a mover y oprimimos play.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje FreeX3D Para Android es un lenguaje informático para gráficos vectoriales definido por una norma ISO, que puede emplear tanto una sintaxis similar a la de XML como una del tipo de VRML (Virtual Reality Modelling Language). Wikipedia

Para poder trabajar con Android debemos de instalar previamente FreeX3D y convertir nuestros mundos *.wrl a *.x3d, en las opciones de Whitedune podemos migrar un proyecto a X3D siguiendo la siguiente ruta:

Nos vamos File-Export As-Export as X3D/XML Luego que ya hemos generado nuestro modelo con la extención X3D lo copiamos a nuestra SDCARD de nuestro celular y ejecutamos FreeX3d.

Ahora en el menú de FreeX3D en New buscamos y abrimos nuestro paseo virtual.

Les recomiendo mundos no muy pesados, una medida recomendada seria 16 Kbyte.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Proyectos creados mediante Whitedune. Edificio del Deportivo San Sebastián Tecoloxtitlán.

La construcción de edificios es realizada de manera muy sencilla a través de esta herramienta de software, lo que vemos es un edificio diseñado para una comunidad la cual a este nivel de desarrollo carece de texturas y colores, que mas adelante fueron integrados, además no podía faltar su área de juegos en la siguiente figura podemos ver estos juegos, todo esta es creados solamente con figuras básicas y herramientas simples que hemos aprendido en este libro.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje Importando en VRML Wings 3D Software libre con derecho de autor 2001 – 2009 Bjönrn Gustavsson & others, utilizado para modelado virtual, creamos una figura de 105 polígonos, 228 caras y 125 nodos, simulando un terreno sinuoso.

Ahora vamos a exportarlo a VRML, nos vamos a Exportar -> VRML 2.0

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

Ya que lo hemos importado veamos como se ve nuestro nuevo mundo virtual.

ING. GERARDO NAVA HERNĂ NDEZ


Virtual Reality Modeling Languaje Blender

Como no aparece en el menú tenemos que habilitar la opción en en User Preferences - Addons – ImportExport y habilitamos VRML2 y save.

Ahora ya aparece en nuestro menú, le damos en Exportar WRL y lo guardamos y ya podemos verlo en el navegador.

ING. GERARDO NAVA HERNÁNDEZ


Virtual Reality Modeling Languaje

Buscamos el sitio en donde guardaremos nuestro VRML, le damos nombre e importamos. Ahora veamos nuestra figura en Look at!

Como podemos ver carece de color y texturas, ya que no se lo agregamos previamente en Blender.

ING. GERARDO NAVA HERNĂ NDEZ


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.