Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4...

24
Curso Práctico 3D Santiago González Tortosa ACM – Capítulo de Estudiantes Facultad de Informática – UPM Esta obra puede ser distribuida únicamente bajo los términos y condiciones expuestos en Creative Commons Reconocimiento- CompartirIgual 2.0 o superior (puede consultarla en http://creativecommons.org/licenses/by-sa/2.0/es/)

Transcript of Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4...

Page 1: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D

Santiago González Tortosa

ACM – Capítulo de EstudiantesFacultad de Informática – UPM

Esta obra puede ser distribuida únicamente bajo los términos y condiciones expuestos en Creative Commons Reconocimiento-CompartirIgual 2.0 o superior (puede consultarla en http://creativecommons.org/licenses/by-sa/2.0/es/)

Page 2: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Índice1INTERFAZ......................................................................................................................3

2PRIMITIVAS..................................................................................................................4

3MODIFICACIÓN DE PRIMITIVAS...........................................................................5

3.1OPERACIONES BOOLEANAS...............................................................................................53.2CONNECT......................................................................................................................63.3MODIFICADORES DE PRIMITIVAS.......................................................................................8

3.3.1Extrude...............................................................................................................83.3.2Bend....................................................................................................................83.3.3Twist...................................................................................................................83.3.4Lathe...................................................................................................................9

3.4CONTROLES DE PILA.......................................................................................................9

4NURBS.............................................................................................................................9

4.1CURVAS NURBS.............................................................................................................94.2SUPERFICIES NURBS.....................................................................................................104.3APLICACIÓN A NURBS...................................................................................................10

5ANIMACIÓN (LUCES Y CÁMARA)........................................................................11

5.1LUCES........................................................................................................................115.2CÁMARA.....................................................................................................................11

6EFECTOS, AMBIENTES, TEXTURAS Y LENS....................................................12

6.1TEXTURAS...................................................................................................................126.2AMBIENTES Y EFECTOS ATMOSFÉRICOS...........................................................................146.3EFECTOS.....................................................................................................................166.4PARTÍCULAS................................................................................................................166.5MODIFICADORES DE ESPACIO (SPACE WARPS).................................................................17

7ANIMACIÓN EXTENDIDA.......................................................................................18

8VRML............................................................................................................................19

8.1CREACIÓN DE UN MUNDO VIRTUAL................................................................................208.1.1Anchor..............................................................................................................218.1.2TouchSensor.....................................................................................................218.1.3ProxSensor.......................................................................................................218.1.4 TimeSensor......................................................................................................218.1.5NavInfo.............................................................................................................228.1.6Fondo (Background)........................................................................................228.1.7Fog...................................................................................................................238.1.8AudioClip.........................................................................................................238.1.9Sound................................................................................................................238.1.10Billboard........................................................................................................238.1.11Nivel de detalle...............................................................................................238.1.12Inline..............................................................................................................24

8.2CONSEJOS...................................................................................................................24

ACM Capítulo de Estudiantes – FI – UPM 2

Page 3: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

1 Interfaz

4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D)

Panel Superior y Lateral Derecha → Opciones 3D Studio

o Crear

o Modificar

o Herencias

o Movimientos y Animación

o Opciones de Visión

o Utilidades

Panel Inferior → Animación y opciones de Vistas

Mover, Rotar, Escalar en ejes

(Des)Agrupar objetos con objetos/modificadores

Clonar (Copia, Instancia), Copia en espejo, Copia en array, Alinear…

ACM Capítulo de Estudiantes – FI – UPM 3

Page 4: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

2 Primitivas

Panel Superior: Opción Objects

Panel Lateral Derecha: Opciones Create/Geometry/Standard Primitives &Extended Primitives

CuboEsferaCilindroToroTeteraConoGeo-esferaTuboPirámidePlanoHedraCubo SuavizadoTanqueCilindro SuavizadoHuso (Spindle)PoligonoAnillo onduladoToro enroscadoCápsulaExtremo-LExtremo-CPrisma

ACM Capítulo de Estudiantes – FI – UPM 4

Page 5: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

3 Modificación de Primitivas

3.1 Operaciones booleanas

A partir de varios objetos simples, podemos generar un objeto compuesto. En el caso deoperaciones booleanas, para crear el objeto compuesto, es necesario que los objetossimples tengan una propiedad, y es que tengan en común una región, o lo que es lomismo, que los objetos simples se estén tocando.

¿Y para que sirve esto? Pongamos un ejemplo: Hacer la casa de los SimS

Las operaciones booleanas (lógicas) principales son:

Unión: se unen ambos objetos formando un único nuevo objeto.

Substracción: Esta es una de las que más se usa

ACM Capítulo de Estudiantes – FI – UPM 5

Page 6: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Intersección: Se elimina toda la geometría excepto la del área común entre ambosobjetos.

NOTA: Cuando un objeto se modifica por medio de una operación Lógica el objeto que“parece” desaparecer, realmente sigue ahí! Se podría cambiar las propiedades de dichoobjeto y así se vería modificada la operación lógica. ¿Cómo se hace? panel Modify/Sub-object/Parameters, opción Show Hidden Ops para visualizar el objeto q desapareció trasdicha operación, sección Modifier Stack, seleccionamos y modificamos el objeto.

3.2 Connect

Con esta herramienta podemos conectar dos figuras que estén separadas nuncasuperpuestas. Esta herramienta crea una zona de contacto entre ambas figuras, sólo hayque indicar la zona de ambos objetos q se quieren unir.

Primeramente debemos modificar el mesh eliminando ciertas zonas (caras o vértices) decada objeto, que son justamente las que se van a unir. Seguidamente, con la opciónconnect, conectamos ambos objetos.

Para la forma de la unión Connect dispone de una serie de parámetros para establecer lasuavidad de la curva y otras cosas, estos son:

• Delete Operand: como se pueden hacer conexiones con mas de un objeto, de estaforma eliminamos algún elemento de los que se van a unir.

• Segments: para cambiar los segmentos que se emplean para crear el puente entre elobjeto y los operandos. Si se incrementa la maya será mas densa y un puente mássuave.

ACM Capítulo de Estudiantes – FI – UPM 6

Page 7: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

• Tension: parámetro para establecer la curvatura de la unión deseada, si esta a 0 seráuna unión lo mas recta posible. Los valores negativos abultan el puente, y lospositivos lo adelgazan.

• Smoothing Bridge: para ajustar el suavizado de la nueva geometría.

• Smoothing Ends: para suavizar la nueva geometría en la zona de contacto con losobjetos que une.

ACM Capítulo de Estudiantes – FI – UPM 7

Page 8: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

3.3 Modificadores de Primitivas

3.3.1 Extrude

3.3.2 Bend

3.3.3 Twist

ACM Capítulo de Estudiantes – FI – UPM 8

Page 9: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

3.3.4 Lathe

3.4 Controles de Pila

Todos los modificadores que se aplican a un objeto, se van guardando en una pila la cualva almacenando todas las operaciones producidas en él. En ella se puede hacer que seaplique solo una serie de modificaciones de los que han sido aplicados (Active/InactiveModifier) o mostrar hasta un cierto punto de la lista de modificadores aplicados (ShowEnd Result) también se pueden eliminar de la pila modificadores de manera permanente(Remove Modifier) o incluso se pueden cambiar el orden de aplicación ya que no es lomismo en todos los casos, aplicar en un objeto dos operaciones en distinto orden (EditStack). Esto es útil para modificar o deshacer ciertas modificaciones en un objeto sintener que repetir todo el costoso trabajo que nos había producido.

4 Nurbs

4.1 Curvas Nurbs

Existen curvas de dos tipos: de puntos (Point) y de vértices de control (VC). Lasprimeras se basan en puntos, formando segmentos, muy parecidas a Splines. Lassegundas controlamos la forma de la curva, es decir, los puntos de control son vérticesexternos a la curva, que la ajustan de una forma determinada.

ACM Capítulo de Estudiantes – FI – UPM 9

Page 10: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Point Curve Curve CV

La unión entre curvas de puntos genera superficies de puntos, y la unión de curvas VCgenera superficies de tipo VC. Mas adelante veremos un ejemplo práctico.

4.2 Superficies Nurbs

Al igual que las curvas, las superficies son de dos tipos, Puntos y CV. La diferencia entreambos es el uso de los puntos de control.

Point Surf. CV Surf.

4.3 Aplicación a Nurbs

Unión entre curvas genera superficies. De esta forma, generamos un objeto lleno decurvas y podemos unirlas para generar superficies.

ACM Capítulo de Estudiantes – FI – UPM 10

Page 11: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

5 Animación (Luces y Cámara)

5.1 Luces

Sin luz en esta vida no podríamos ver, del mismo modo que sin luz en el mundo virtualtampoco podríamos ver, por lo que necesitamos luces. Existen 5 tipos de luces, de loscuales normalmente se utilizan tres. Estos tipos son:

Direccional (Target Direct) Omnidireccional (Omni) Foco con Objetivo (Target Spot) Direccional Libre (Free Direct) Foco Libre (Free Spot)

Los mas usados son el Omni, el Target Spot y el Target Direct. Los otros dos se utilizancuando queremos simular luz Solar, un flexo, una linterna, etc. (movimientos, claro)

Las características de todas las luces son: Color Intensidad Contrastes Sombras Focalización Difuminación de la luz Efectos de luz (mas tarde lo vemos)

5.2 Cámara

Al igual que la luz, la cámara es un elemento fundamental, ya que podemos enfocar,visionar y detallar (o justo lo contrario) todos los detalles de nuestro diseño. Existen dostipos de cámaras: cámaras con objetivos (Target Camera) o libre (Free Camera).Normalmente usamos la primera, ya que nos da mayor facilidad de manejo. El segundotipo se suele utilizar para seguir movimientos fijos, como coches, andar, etc…

Las características de la cámara son: Abertura de la lente Focalización Tipo de Lente (incluye las otras dos) OJO: Con esto puedes hacer cosas

chulas Rangos de visión (de cerca y de lejos)

ACM Capítulo de Estudiantes – FI – UPM 11

Page 12: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Un ejemplo del manejo de la cámara es el siguiente:

Lente de 135 mm Lente de 20 mm

6 Efectos, Ambientes, Texturas y Lens

6.1 Texturas

¿Cómo aplicar texturas?

Para aplicar una textura primero pulsamos la tecla “M” con lo que nos aparecerá eleditor de materiales, luego sólo tendremos que seleccionar una de las texturasdisponibles (en las esferas) y arrastrarla hacia el objeto al que queramos aplicársela encualquiera de las vistas.

ACM Capítulo de Estudiantes – FI – UPM 12

Page 13: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

¿Cómo ajustar una textura a un objeto?

Una vez que hemos aplicado la textura, para ajustar la misma a un objeto debemosseleccionar éste, ir a la pestaña Modify de la barra principal y marcar la casilla UVWMap, al hacer esto nos aparecerán las opciones del nuevo modificador entre las cualestenemos:

o Mapping: Aquí podemos seleccionar como se ajustará nuestra textura al objeto,si a partir de una esfera, un plano, un cubo ... En muchos de ellos aparecerásobreimpresionado en las vistas del objeto una figura de color naranja (suele sernaranja) que indica exáctamente la geometría que tomará el mapa de la textura,así podremos variar esta geometría con las casillas Lenght, Width y Height. Estobásicamente afectará a la cantidad de detalles dentro de una textura, si ponemosvalores muy altos la textura perderá resolución mientras que si los valores sonmuy pequeños se notará claramente la repetición de las texturas en “mosaico”para cubrir todo el objeto.

o U Tile, V Tile, W Tile: Estos parámetros indican la posición donde se empezará aaplicar la textura, cambiándolos conseguimos el efecto de texturas distintascuando en realidad son la misma.

o Alignement: Sirve para alinear la geometría a la que se adaptará la textura en losdiferentes ejes.

¿Cómo crear texturas nuevas?

Parámetros básicos de las texturas:

o Ambient: Define el color o el mapa aplicable a la luz ambiente que ilumina alobjeto.

o Diffuse: El color o el mapa del propio objeto, junto con Ambient definen el colorque tendrá la textura (o el mapa que se le aplicará).

o Specular: Con esto elegimos el color de la luz reflejada en el objeto, la cantidadde luz que éste reflejará y cómo lo hará lo seleccionaremos con los parámetrosSpecular Level, Glossiness y Soften.

o Self-Illumination: Define el color y la intensidad que tomará la luz que emita elobjeto (si no se selecciona el objeto no generará luz por sí mismo).

o Opacity: Opacidad del material que se aplicará, valores bajos simularán objetostransparentes.

o Maps: Cada textura puede estar formada por un conjunto de texturas solapadas,que corresponderán a un tipo de efecto determinado, estas texturas se podránincluir en esta sección pudiendo ajustar la cantidad de textura aplicable (similar ala opacidad) así como el efecto que queremos que realice la textura.

¿Cómo cargar texturas predefinidas?

ACM Capítulo de Estudiantes – FI – UPM 13

Page 14: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Para cargar una textura, normalmente lo haremos como Diffuse Color en la secciónMaps (o bien Diffuse en el propio menú principal del material). Además para la mayoríade las texturas existen mapas de relieve o similar, estos se añadirán en sucorrespondiente apartado de la sección Maps.

6.2 Ambientes y Efectos Atmosféricos

Para el ambiente de entorno de trabajo, vamos al menú principal, opción Rendering ysubopción Enviroment. Aparecerá un cuadro como este:

ACM Capítulo de Estudiantes – FI – UPM 14

Page 15: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Podemos modificar el color del ambiente, poner un mapa como ambiente o incluirefectos atmosféricos. Los efectos que podemos crear son los siguientes:

o Combustión: Este efecto requiere un Gizmo, para situar el efecto. Los Gizmos sepueden generar en la barra lateral, opcion create, boton Helpers, opciónAtmospheric Apparatus. Existen tres tipos de Gizmos: cubo, cilindro y esfera.

Una vez creado el Gizmo, procedemos a aplicar el efecto atmosférico querido, eneste caso, la combustión. La combustión se puede generar con explosión(animada) o no, y se permite elegir el color de la combustión.

o Niebla: Podemos realizar nieblas, dependiendo del tipo de niebla, color, conmapa que le da forma a la niebla, e incluso podemos seleccionar cual es ladensidad de la niebla, y cuanto podemos ver en ella

o Niebla Voluminosa: Requiere un Gizmo. Es una niebla densa aplicada sobre ungizmo. Es una buena manera de conseguir nubes, humos, etc.

o Luz Voluminosa: Requiere una luz. Se trata de generar densidad de humo sobreuna luz, de tal forma que genere el siguiente efecto:

ACM Capítulo de Estudiantes – FI – UPM 15

Page 16: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

6.3 Efectos

Para modificar la imagen original del trabajo, vamos al menú principal, opciónRendering y subopción effects. El programa 3D Studio nos permite los siguientesefectos:

o Lens Effects: Efectos de lente para la Luz, que nos permite imitar rayos, luz solar,brillos de farolas, etc.

o Blur: Difuminacion de la imagen por movimientos. Da mayor realidad a losmovimientos de la animación.

o Brightness and Contrast: Brillo y Contraste

o Color Balance: Modificación de los colores primarios, para darle un colordiferente a la imagen.

o File Output: Grabación Digital

o Film Grain: Incluir un efecto de grano en la película (le da efecto de imagendañada o antigua)

Un ejemplo con bastantes de estos efectos puede ser el siguiente:

6.4 Partículas

Las partículas se encuentran en la barra lateral, opción create, botón geometry, y tipoParticle Systems. Los parámetros comunes a todas las partículas son:

Partículas:o Nº max. mostradas en visores.o Nº max. en representacióno Tamaño de la partículao Velocidado Variación de intensidad y amplitud o Forma de representación en visor

Cronometraje:

ACM Capítulo de Estudiantes – FI – UPM 16

Page 17: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

o Inicioo Duracióno Tasa de creación: constante o no

Emisión:o Anchura y Longitudo Ocultar

Los tipos de partículas que existen son:

Aerosol: Típico spray Superaerosol: Spray muy potente Nieve: Simula Ventisca: Simula ventisca, lluvia, granizada, humedad Matriz P: Simula cometas, explosiones, restos, desintegración, etc. Nube P: Simula bancos de niebla o nubes

6.5 Modificadores de Espacio (Space Warps)

Estos modificadores se encuentran en la barra lateral, opción create, botón Space Warps.Existen distintos tipos de modificadores:

o Modificación/Deformación de objetoso Ondas rectangulareso Ondas cilíndricaso Modificadores en forma de Cubo o Cilindroo Desplazamientoo Bombas

o Modificación en comportamientos de partículas.o Gravedado Vientoo Motor (aceleración)

o Modificadores sencillos de objetos (ya vistos)o Bases para partículas (Deflector)

Un ejemplo del uso de uno de estos modificadores de espacio es esta imagen:

ACM Capítulo de Estudiantes – FI – UPM 17

Page 18: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

7 Animación Extendida

¿Quieres hacer el mismo efecto que Matrix? Es muy fácil, utilizando técnicas deanimación que hacen que tu animación sea tal y como tu quieres, con movimientosexactos.

Utilizando movimientos por PATH llamados Spline Conversions y controles deanimación como Track View podremos realizar cualquier animación, por complicada quesea.

¿Cómo utilizar Spline Conversion?

Primero, generamos mediante Curvas Splines o Shape 2D, cual va a ser el movimientodel objeto. A continuación, en la barra lateral, opción Motion, seleccionamos el botónTrayectories. Por ultimo, seleccionamos el objeto a animar, seleccionamos el tiempo dela animación, pinchamos sobre el botón Convert From, y pinchamos sobre la curva 2Dque hemos generado antes. Y ya tenemos hecha la animación del objeto!

Este objeto puede ser, una luz, una cámara, cualquier objeto 3D, etc.

ACM Capítulo de Estudiantes – FI – UPM 18

Page 19: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

8 VRML

VRML Significa Virtual Reality Modeling Language, es decir, lenguaje de modelado deRealidad Virtual. Esto quiere decir, que es un lenguaje de programación (más bienpseudo-programación) que representa en 3D un mundo virtual. Antiguamente se utilizoa traves de la Web, pero se dejo de usar debido a la necesidad de un ancho de bandagrande, debido a la cantidad de información a transmitir a tiempo real por cadamovimiento en el mundo virtual.

Hoy en día, el VRML se esta utilizando para aplicaciones Web (con agentes distribuidos,es decir, la información esta distribuida) y otro tipo de aplicativos (medicina, geografía,etc.)

Existen varias versiones de VRML (con la extensión WRL): VRML 1.0 VRML 2.0 VRML 97 (el más moderno)

Para poder visual mundos virtuales, es necesario un plugin (que se puede descargar de laWeb del navegador correspondiente, sea IE o Netscape) o browser especial, como es elprograma COSMO 2.1, desarrollado por SGI. Este programa descarga el mundo virtualen el computador local y lo visualiza desde local, no remoto.

Como se ha dicho antes, el VRML es un pseudo-código, es decir, es código ASCIIinterpretado y compilado por el browser (como HTML). Un ejemplo de código VRMLes:

#VRML V2.0 utf8

# Produced by 3D Studio MAX VRML97 exporter, Version 3, Revision 1,31# Date: Tue Nov 09 19:29:46 2004

WorldInfo { title "Mundo de SGT" info "Ejemplo"}DEF Box01 Transform { translation 235.6 103.2 0 rotation -1 0 0 -1.571 children [ DEF Box01-TIMER TimeSensor { loop TRUE cycleInterval 3.333 }, DEF Box01-POS-INTERP PositionInterpolator { key [0, 0.03, 0.06, 0.09, 0.12, 0.15, 0.18, 0.21, 0.24, 0.27, 0.3, 0.33, 0.36, 0.39, 0.42, 0.45, 0.48, 0.51, 0.54, 0.57, 0.6, 0.63, 0.66, 0.69, 0.72, 0.75, 0.78, 0.81, 0.84, 0.87, 0.9, 0.93, 0.96, 0.99, 1, ] keyValue [235.6 103.2 0, 232.3 103.2 0, 229 103.2 0, 225.7 103.2 0, 222.5 103.2 0, 219.2 103.2 0, 215.9 103.2 0, 212.6 103.2 0, 209.3 103.2 0, 206 103.2 0, 202.7 103.2 0, 199.4 103.2 0, 196.1 103.2 0, 192.8 103.2 0, 189.5 103.2 0, 186.2 103.2 0, 182.9 103.2 0, 179.6 103.2 0, 176.3 103.2 0, 173 103.2 0, 169.8 103.2 0, 166.5 103.2 0, 163.2 103.2 0, 159.9 103.2 0, 156.6 103.2 0, 153.3 103.2 0, 150 103.2 0, 146.7 103.2 0, 143.4 103.2 0, 140.1 103.2 0, 136.8 103.2 0, 133.5 103.2 0, 130.2 103.2 0, 126.9 103.2 0, 125.8 103.2 0, ] }, Transform { translation 0 53.98 0 children [ Shape { appearance Appearance { material Material {

ACM Capítulo de Estudiantes – FI – UPM 19

Page 20: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

diffuseColor 0.7765 0.8784 0.3412 } } geometry Box { size 98.97 108 83.97 } } ] } ]ROUTE Box01-TIMER.fraction_changed TO Box01-POS-INTERP.set_fractionROUTE Box01-POS-INTERP.value_changed TO Box01.set_translation}

Lo bonito en este caso es que no tenemos que tirar ni una línea de código, sino que 3DStudio MAX nos lo genera automáticamente. Simplemente, tendremos que generar elmundo en el 3D Studio MAX y luego exportar el mundo a VRML.

8.1 Creación de un Mundo Virtual

Para generar un Mundo Virtual en 3D Studio MAX:

Crear la geometría querida Crear luces y cámaras Asignar materiales simples y estándares Animar Insertar VRML Helpers Exportar fichero de mundo virtual a VRML97 Utilizar browser para verlo

Los VRML Helpers son útiles para que el usuario pueda moverse por el mundo virtual.Los Helpers son útiles para hacer que tu mundo sea más interactivo. Dichos Helpers seencuentran en la barra lateral, opción Create, boton Helpers, subopción VRML97.

A continuación comentamos los Helpers mas importantes de VRML:

ACM Capítulo de Estudiantes – FI – UPM 20

Page 21: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

8.1.1 AnchorLa opción Anchor permite especificar rápidamente un activador de área de trabajo en laescena. Así puede añadir vínculos a otras páginas HTML, mundos VRML97 o cámarasalternativas del mundo VRML97.

La opción Anchor contiene estas opciones: Desig. objeto activador. Especifica la geometría que actuará como activador de

Anchor. Hacer clic en el botón y después seleccionar la única geometría queproducirá el hipervínculo al activarse.

Descripción. Permite introducir una descripción o mensaje textual que apareceráen la barra de estado del visor cuando el ratón esté sobre un objeto que tengadefinida una acción Anchor.

Salto de hipervínculo. Crea un Anchor que salta a una URL.

URL. Especifica la ubicación del salto de hipervínculo. Se puede utilizar una listade marcadores o introducir a mano la ubicación. Si el URL señala a otro mundoVRML97 (archivo .wrl ), se puede añadir "#NombreCámara" al final del URLpara que el visor use el visor llamado "NombreCámara" como vista inicial.

Marcadores. Permite seleccionar una ubicación en una lista de marcadores.Presionar “Importar lista” para importar la lista de marcadores ya definidos en elvisor o introducir manualmente URL nuevas en la lista. La mayoría de los visoresalmacenan los marcadores en un archivo llamado bookmarks.htm.

Parámetro. Permite especificar parámetros adicionales al visor para el salto dehipervínculo. Consultar en la especificación VRML97 los usos de este campo.

Establecer cámara. Seleccionar esta opción para crear un Anchor que salte a unacámara determinada en el mundo VRML97 actual.

Cámara. Especifica el nombre de la cámara para Establecer cámara.

Tam. Icono. Determina el tamaño del ayudante en la escena.

8.1.2 TouchSensorLa opción TouchSensor permite configurar un objeto para que al seleccionarlo en unvisor de VRML97 se inicie la animación de un conjunto de objetos.

8.1.3 ProxSensorLa opción ProximitySensor puede configurar una región rectangular del espacio de modoque, al acceder a ella en un visor de VRML97, se inicie la animación de un

8.1.4 TimeSensorLa opción TimeSensor permite añadir controles de animación basadas en tiempo, comolos cuadros inicial y final de la animación particular de un objeto, y realizar un bucle.Utilizar este ayudante para dividir las claves de animación de un objeto en variosactivadores, para iniciar automáticamente una animación al cargar el archivo .wrl o paraque la animación entre en un bucle sin fin.

ACM Capítulo de Estudiantes – FI – UPM 21

Page 22: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

8.1.5 NavInfo

La opción NavInfo permite indicar al visor cómo navegar por el mundo VRML97.Contiene estas opciones:

Tipo. Especifica el tipo de movimiento (Andar, Examinar, Volar y Ninguno) paranavegar por el mundo. La implementación de estos tipos de movimiento puedevariar según el visor.

Farol. Sitúa una luz direccional en el visor. La luz siempre apunta a la direcciónen que mira el usuario. No utilizar esta opción si hay luces en la escena.

Lím. Visibilidad. Establece el plano de recorte lejano. Toda geometría que seencuentre a una distancia respecto del observador superior a ese punto, esinvisible. Determina el radio máximo de la escena de visibilidad. Un valor 0significa que todos los elementos de la escena son visibles. Esta opción es útilpara mostrar sólo una parte de las escenas grandes.

Velocidad. Determina la velocidad de exploración en unidades por segundo de3DS MAX. Utilizar esta opción para que el usuario viaje más rápido, si se estáconstruyendo un mundo grande (como una gran ciudad), y más lento si va aconstruir un mundo pequeño (como una habitación).

Talla virtual. Especifica las dimensiones físicas del usuario en el mundo paradetectar la distancia de colisión y seguir el terreno.

Colisión. Especifica la distancia admitida entre la posición del usuario ycualquier geometría de colisión antes de que se detecte la colisión. Por ejemplo,se puede establecer esta opción para que las colisiones se detecten a una unidadde distancia de un muro.

Terreno. Especifica la altura que ha de mantenerse sobre la superficie al seguir elterreno.

Altura paso. Especifica el objeto más alto por encima del cual se puede "pasar".Si un objeto, como una escalera, tiene escalones más bajos que este valor, elusuario puede subir por ella.

Tam. Icono. Ajusta el tamaño del objeto ayudante en los visores de MAX.

8.1.6 Fondo (Background)

El botón Background presenta las opciones de color de cielo o de suelo y de imágenes.Estas opciones especifican los colores e imágenes que se utilizarán por defecto para elcielo y el suelo en un mundo VRML97.

Las herramientas de la opción de colores del cielo permiten crear un fondo coloreado enel cielo del mundo empleado un degradado (mediante interpolación lineal) de hasta trescolores. El cielo es una esfera infinita que circunda los objetos de la escena.

ACM Capítulo de Estudiantes – FI – UPM 22

Page 23: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

Las herramientas de la opción de colores del suelo permiten crear un fondo coloreado enel suelo del mundo empleado un degradado de hasta tres colores. El suelo aparece dentrode la esfera celeste y debajo de los objetos en la escena.

Las herramientas de la opción de Imágenes permiten especificar un conjunto deimágenes que definen el panorama de fondo, entre el telón de fondo suelo/cielo y losobjetos de la escena. El panorama está formado por seis imágenes, cada una de ellasasignada a la cara de un cubo de tamaño infinito centrado en el sistema de coordenadaslocal.

8.1.7 Fog

La opción Fog permite especificar el color y rango de la niebla en el mundo VRML97.Se pueden simular efectos atmosféricos mezclando objetos con un color basado en lasdistancias de los objetos al observador. Para obtener los mejores resultados visuales, elfondo (no afectado por la niebla) ha de ser del mismo color que la niebla.

8.1.8 AudioClip

La opción AudioClip permite especificar el nombre y características de un archivo deaudio que puede emplearse con el ayudante Sound.

8.1.9 Sound

La opción Sound permite ubicar sonidos 3D (espaciales) o ambientales en la escena. Elsonido puede situarse en un punto y emitirse con un patrón esférico o elipsoidal. Laelipsoide se dirige a una dirección específica y puede tener la forma adecuada para crearun foco más o menos direccional desde la ubicación del sonido. El nodo de sonidotambién puede emplearse para describir un sonido ambiental que se atenúa a partir deuna distancia determinada al nodo de sonido. La elipsoide roja del ayudante representa elrango exterior de audibilidad del sonido. El elipsoide azul representa el volumenmáximo del sonido. La flecha del ayudante señala en la dirección hacia la que se emite elsonido.

8.1.10Billboard

El ayudante Billboard permite crear geometría alineada con la cámara en un visor deVRML97. Los objetos siempre se alinean con el punto de vista en el visor de VRML97.Cualquier geometría vinculada al ayudante Billboard rota en torno al eje local Z delobjeto ayudante para mirar al observador. Como rota en torno a la ubicación deBillboard, es mejor centrar éste en el objeto al que se va a vincular.

La dirección del eje Y negativo del objeto será su frente, se alineará con el eje Ynegativo del ayudante y la superficie de Billboard siempre quedará frente al usuario.

8.1.11Nivel de detalle

La opción Nivel de detalle (LOD, Level Of Detail) permite especificar objetos connúmeros de cara variables apropiados para distancias de visualización distintas. Losvisores muestran los objetos menos detallados cuando el visor está lejos de ellos yemplean los objetos más detallados en rangos más cercanos.

ACM Capítulo de Estudiantes – FI – UPM 23

Page 24: Curso Práctico 3D · 2005. 7. 16. · Curso Práctico 3D Santiago González Tortosa 1 Interfaz 4 Vistas a elegir (Planta, Perfil, Alzado y en Perspectiva 3D) Panel Superior y Lateral

Curso Práctico 3D Santiago González Tortosa

La velocidad de representación puede aumentar mucho empleando objetos LOD enescenas en las que hay objetos con mucho detalle alejados del observador. Los objetosusados para LOD no tienen que ser del mismo tipo ni tamaño, así que puede lograrse unavariedad muy rudimentaria de metamorfosis con distintos objetos LOD. Por ejemplo, unárbol puede parecer crecer conforme se sustituyen árboles mayores y con más ramas alacercarse al observador.

8.1.12Inline

La opción Inline de VRML97 permite referenciar otro archivo de VRML97 que seincluye en su mundo cuando se carga en el visor de VRML97. Estos objetos de inserciónson similares a los Merge de 3DS MAX, pero funcionan en el nivel de visor.

8.2 Consejos

Reducir al máximo el numero de polígonos Movimientos sencillos de animación (mover, rotar, escalar) Utilizar materiales estándares No utilizar mapas de textura No utilizar la luz de defecto, es poco en VRML. Utilizar luz nuestra y cerciorarse

de que todo esta bien iluminado Tampoco pasarse con el multiplicador de la luz si se poseen varias luces. Incluir en el mundo al menos una cámara, pero si es posible, poner varias, para

cambiar de vistas en el mundo Ocultar las caras no vistas en el mundo, antes de exportar Utilizar únicamente las primitivas siempre que sea posible

ACM Capítulo de Estudiantes – FI – UPM 24