Vrml
Enviado por DaiiTz • 4 de Febrero de 2013 • Apuntes • 3.742 Palabras (15 Páginas) • 629 Visitas
En el ejemplo anterior, aparece el nodo Shape (es uno de los nodos básicos) que describe un objeto para el que se especifican tres atributos, que a su vez son nodos: el aspecto (atributo appearance, al que se asigna un nodo Appearance), dentro de éste se describe el material (atributo material, al que se asigna un nodo Material); y, por último, la forma o estructura (atributo geometry, al que se asigna un nodo Cylinder).
Cada nodo consta de un nombre que identifica el tipo de nodo de que se trata y, encerrados entre llaves, otros nodos, o atributos acompañados por sus correspondientes valores. En nuestro ejemplo, el nodo Cylinder tiene dos campos, height y radius, a los que en este caso asignamos los valores 2 y 1, respectivamente. El resultado se aprecia en la figura 1.
Otro nodo básico es el WorldInfo: este nodo contiene la información general sobre el mundo, es como un título. Este se despliega en la barra del título de la ventana del navegador, igual que la etiqueta <TITLE> en HTML. WorldInfo también puede contener más información sobre el archivo.
Puedes poner lo que desees aquí, como las palabras claves para los motores de búsqueda, o cualquier cosa. Una ejemplo del nodo WorldInfo se muestra debajo:
WorldInfo {
title "Mundo de Ernesto y Andrés (VRML 2.0)"
info ["(C) Copyright 2001 Informatica Gráfica"
"al024494@alumail.uji.es" "al023848@alumail.uji.es" ]
}
Se pueden tener múltiples cadenas de texto en el campo info, siempre colocándolas entre corchetes. Un archivo de VRML puede tener tantos WorldInfo como gustes, pero sólo se analizará el primero. El resto se ignorará.
En las tablas siguientes se muestran los tipos de nodos que soporta VRML 2.0:
NODOS COMUNES APARIENCIA NODOS DE AGRUPAMIENTO SENSORES
AudioClip Appearance Anchor CylinderSensor
DirectionalLight FonStyle Billboard PlaneSensor
Pointlight ImageTexture Collision ProximitySensor
Script Material Group SphereSensor
Shape MovieTexture Transform TimeSensor
Sound PixelTexture TouchSensor
Spotlight TextureTransform VisibilitySensor
Worldinfo
GEOMETRÍA
INTERPOLADORES AGRUPAMIENTOS ESPECIALES NODOS DE ACTIVACIÓN EXCLUYENTE
Box ColorInterpolator Inline Background
Cone CoordinateInterpolator LOD Fog
Cylinder NormalInterpolator Switch NavigationInfo
ElevationGrid OrientationInterpolator Viewpoint
Extrusion PositionInterpolator PROPIEDADES GEOMÉTRICAS
IndexedFaceSet ScalarInterpolator Color
IndexedLineSet Coordinate
PointSet Normal
Sphere TextureCoordinate
Text
2. Construcción de objetos tridimensionales.
VRML proporciona diversas técnicas para construir objetos sólidos tridimensionales:
o Primitivas: son objetos estándares predefinidos, que pueden construirse sin más que seleccionar el deseado y especificar sus parámetros. Estos objetos son: cubo, cilindro, cono, esfera y texto. En la figura 2 se muestra los cinco tipos de primitivas mencionados.
Figura 10: primitivas de VRML
o Superficies aproximadas por polígonos: una superficie compleja puede aproximarse por un número suficientemente grande de polígonos; para representar esta aproximación basta con enumerar los vértices de los polígonos y determinar de alguna manera el orden en que han de conectarse. Las técnicas de simulación de la iluminación permitirán paliar el aspecto de superficie facetada que produce este esquema de representación. En la figura 3 se muestra un ejemplo.
Figura 11: superficies complejas aproximadas por polígonos
o Mapas de alturas: se puede definir una malla de puntos en el plano horizontal y después especificar una altura para cada uno de ellos. Construyendo polígonos que unan los puntos así creados se obtiene una superficie tipo "terreno montañoso" (ver figura 4).
Figura 12: superficies complejas mediante mapa de alturas.
3. Posicionamiento en el espacio.
Todos los objetos son creados en el centro de un sistema de referencia común a todo el entorno virtual. Para situar un objeto en una posición distinta o con una orientación diferente en el espacio se recurre al nodoTransform, que permite definir para un objeto o grupo de objetos traslaciones, rotaciones y cambios de escala. En el ejemplo siguiente se muestra un caso de transformación y su resultado en la figura 5.
Transform {
translation 2.0 0.0 0.0
rotation 0.0 0.0 1.0 0.52
scale 0.5 0.5 0.5
children [ . . . ]
}
Figura 13: ejemplo de transformación
4. Apariencia.
El nodo Appearance permite determinar, para un objeto o una parte de un objeto, algunas características de su apariencia. Éstas pueden ser:
o El tipo de material a partir del nodo Material; soporta hasta seis campos, los cuales indicarán:
El color del objeto.
El color resaltado en los objetos brillantes.
La cantidad de ‘luz propia’ que el objeto irradiará con el color indicado, pero no iluminará ningún otro objeto con esa luz.
La cantidad de luz del ambiente que el objeto refleja.
Cuan reflexivo es el objeto.
Lo transparente que puede llegar a ser el objeto.
o Utilización de texturas mediante el nodo ImageTexture. La textura se pega a la superficie del objeto, y puede ser una imagen, un mapa de bits o incluso un vídeo clip, en este último caso se necesita el nodoMovieTexture tomando una película en formato MPEG.
En la Figura 6 mostramos dos ejemplos de texturas, un jarrón y un cubo.
ImageTexture{
url "direccion_URL"
repeatS valor_lógico
repeatT valor_lógico
}
Figura 14: ejemplos de texturas.
Tipos de texturas soportados en VRML 2.0
Bytes por pixel Tipo de textura Formato gráfico
1 Escala de grises PNG
2 Escala de grises más transparencia PNG
3 Color RGB PNG, JPEG, GIF
...