Tutorial de modelado con Art-of-Illusion
el reloj de arena


Versión 1.1
Para Art of Illusion versión 0.9
Copyright 2001, Rick van der Meiden
Copyright de la traducción al español 2002, Yokiyoki

Introducción

En este tutorial se mostrará el proceso de modelado de un objeto sencillo con Art-of-Illusion (AoI), tomando como ejemplo el reloj de arena que se muestra en la figura anterior. Este tutorial no contempla todas las características de la herramienta de modelado de AoI, ya que hay demasiadas, pero muestra lo suficiente como para empezar a utilizarla. Probablemente te será simple imaginar el resto a base de intentos, experimentación y creación de gráficos guais.

Si ya estás familiarizado con el modelado en tres dimensiones, probablemente no tendrás que seguir este tutorial paso a paso. Puedes hojearlo para hacerte una idea de las posibilidades del programa, pero por favor, anímate e inténtalo por tí mismo. Para los novatos: os voy a enseñar a hacer gráficos en tres dimensiones en sólo unos minutos.

En aras de la completitud, se distribuye con este tutorial un archivo que contiene una escena de AoI. El archivo se llama "hourglass.aoi", y puedes limitarte a abrirlo con el programa, pero si quieres aprender algo de este tutorial, lo mejor es que intentes construir la escena tú mismo.

Mira a tu alrededor

Supongamos que ya has descargado el paquete de AoI, tienes la versión adecuada del JDK, has leído los archivos léame, y el programa te funciona. Si no es así, busca información en la página de inicio de Art-of-Illusion. Cuando arrancas AoI, te aparece la pantalla principal. En la parte de arriba de la ventana se encuentra la barra de menú que es un estándar en estos casos: échale un vistazo para ver qué es lo que hay en los desplegables. Si no entiendes casi nada de lo que pone no te preocupes, lo entenderás con el tiempo.

A la izquierda deberías ver varios iconos. Al pulsarlos, seleccionas una herramienta y en la parte de abajo de la ventana aparece una línea de ayuda. Los iconos son:

mover objeto girar objeto
cambiar tamaño de objeto crear caja
crear esfera crear cilindro
crear malla de aproximación crear polígono
crear cámara crear fuente de luz
crear curva interpolada crear curva aproximada
mover el punto de vista girar el punto de vista

La mayor parte de la pantalla muestra cuatro vistas del modelo tridimensional: Frente (Front), Izquierda (Left), Arriba (Top) y Cámara1 (Camera1). A cada vista se le puede asignar una cámara o un punto de vista estándar (frente, izquierda, arriba, etc), un modo de vista en perspectiva o en paralelo, y un factor de escala (que por defecto es 100). Se pueden cambiar los puntos de vista utilizando las herramientas apropiadas de movimiento y giro. A menudo cambiarás la escala y la posición de estas vistas, pero no el punto de vista. Las vistas estándar son suficientes para la mayoría de las sesiones de modelado. Sólo cambiarás a menudo la vista inferior derecha, Camera1, porque es muy útil para comprobar cómo va el modelo.

A la derecha hay un espacio (que ahora está casi vacío) que sirve para mostrar una lista de los objetos que hay en tu modelo. En esta lista puedes seleccionar o deseleccionar objetos pulsando su nombre. Además, si haces una pulsación doble en el nombre de un objeto aparecerá la ventana de edición de los parámetros del objeto.

Antes de empezar, tienes que conocer un concepto más: coordenadas. La posición y las dimensiones de los objetos se determinan por un sistema de tres ejes de coordenadas que se llaman X, Y y Z. Se considera que el eje X apunta hacia la derecha, es decir, cuanto mayor sea la coordenada X de un punto, más a la derecha está en el modelo. Igualmente, el eje Y apunta hacia arriba y el eje Z hacia fuera de la pantalla, hacia ti. En jerga matemática, se dice que es un sistema de coordenadas de mano derecha.

El comienzo

Normalmente se considera una buena práctica comenzar las sesiones de modelado tridimensional haciendo un croquis del modelo en papel cuadriculado, para hacerse una idea de sus dimensiones y de su forma. Si no vas a hacerlo, por lo menos haz que aparezca una cuadrícula en la herramienta de modelado: Esto nos da la facilidad de dibujar objetos con posición y tamaño exactos y de alinear objetos ortogonalmente. Se pueden cambiar los parámetros de la cuadrícula en cualquier momento, para acomodarse a las necesidades que se tengan de cuadrículas más finas o más dispersas. Ya podemos empezar a dibujar. Dibujemos una caja para las partes superior e inferior del marco de madera del reloj de arena: Date cuenta de que se pueden dibujar los objetos en cualquiera de las vistas, Frente, Arriba o Izquierda, pero como sólo se pueden controlar dos dimensiones a la vez, se tiene que ajustar la tercera dimensión después. Se pueden utilizar las herramientas mover y cambiar tamaño para esto, pero si se tiene una idea clara de qué dimensiones debe tener el objeto, la opción Disposición del Objeto es mucho más rápida. La primera caja es el fondo del modelo. La tapa tiene exactamente el mismo aspecto, así que la crearemos copiando el fondo.

Ahora tenemos dos cajas, simétricas respecto al origen. Date cuenta de que las dos cajas se siguen llamando Cube 1 (Cubo 1). Se puede cambiar de nombre a los objetos seleccionando la opción del menú Object→Rename Object (Objeto→Rebautizar Objeto). En este caso los nombres adecuados podrían ser "Superior" e "Inferior". Así es más fácil distinguirlos cuando estemos seleccionando objetos en la lista.

Utilizando las técnicas recién descritas se pueden crear también los cuatro palos que hay entre las tapas superior e inferior. Utiliza la herramienta "crear cilindro" para crear un cilidro con las siguientes dimensiones: Y crea tres cilindros más en las otras esquinas del marco del reloj de arena.
Consejos:

Ya tenemos el marco del reloj de arena. Ahora utiliza la herramienta "mover punto de vista" y la herramienta "girar punto de vista" para cambiar la vista de abajo a la derecha (Camera1 - Cámara 1). Ahora puedes ver el modelo desde el ángulo que quieras. El resultado debería tener este aspecto:

Un objeto complejo

La forma más compleja de esta escena es el frasco de cristal. Lo crearemos utilizando la herramienta Torno. Un objeto torneado es el que se crea girando un curva de aproximación, que determina el contorno del objeto, alrededor de un eje. Para crear la curva del contorno utilizaremos la herramienta crear curva aproximada . Para evitarnos el fatigoso trabajo de ser precisos con el ratón, crearemos primero una cuadrícula más fina: espaciado de 0.2 con dos subdivisiones. Después seleccionaremos Scene→One View (Escena→Una Vista) en el menú. A continuación puedes ajustar el factor de aumento de la vista a un 200 por ciento. Y ya puedes crear la curva de aproximación añadiendo los puntos del 1 al 9 que se muestran en la siguiente imagen (en ese mismo orden). Haz una doble pulsación en el punto 9 para dar por terminada la curva de aproximación. Asegúrate de que el primer y el último puntos están sobre el eje Y y tangentes a las tapas superior e inferior que hicimos antes.

Las curvas aproximadas no son muy intuitivas, pero permiten determinar la dirección de la curva con más exactitud que las curvas interpoladas. La dirección de la curva al principio y al final la determina el único punto adyacente. La curva es vertical en el punto 5 porque los puntos 4 y 6 sólo están desplazados verticalmente respecto a él. En general, la curva en cualquier punto se determina por el punto que lo precede inmediatamente y los dos que le siguen (la curva es una aproximación cuadrática, o aproximación de tercer orden).

Utilizaremos como eje central del frasco de cristal la línea que va entre los extremos finales de la curva. En nuestro dibujo es el eje Y, pero utilizar la primera línea da como resultado un objeto sólido. Para crear el objeto torneado, primero selecciona la curva y a continuación selecciona en el menú Tool→Lathe (Herramienta→Tornear). En la ventana de ajuste de los parámetros del torneado, selecciona como eje del torno (Lathe Axis) la línea que atraviesa los puntos extremos (Line through endpoints). Obsérvalo en la siguiente figura.

El objeto torneado se centra automáticamente en 0,0,0. Ahí es exactamente donde lo queremos en este caso, así que dejémoslo (por supuesto que no ha sido coincidencia, ¡lo he planeado así!). La curva de aproximación que creamos hace un rato ahora sobra. La puedes eliminar, pero no es necesario porque no aparece en la representación final. Para eliminar un objeto se selecciona (en las vistas o en la lista de objetos) y se pulsa la tecla Supr del teclado. También se puede hacer con la opción del menú Edit→Clear (Edición→Eliminar).

Disposición de la escena

Ya hemos terminado de modelar todas las figuras. Podríamos intentar representar la escena con sombras e iluminación. Sin embargo, antes de la representación tenemos que determinar la disposición de los elementos clave de la escena, la cámara y la luz.

Primero determinemos la posición y la orientación de la cámara. Se puede hacer fácilmente utilizando la vista Cámara de la esquina inferior derecha. Desplaza y gira la vista utilizando la herramienta "mover el punto de vista" y la herramienta "girar el punto de vista" . Mantén pulsada la tecla Control mientras mueves el punto de vista para agrandarla y empequeñecerla. Y también puedes girar la cámara manteniendo pulsada la tecla Control mientras giras el punto de vista. Otras formas de colocar la cámara son las herramientas "mover objeto" y "girar objeto" , o la opción del menú Layout Object (Disposición del Objeto). La cámara es un objeto como cualquier otro. Una buena posición puede ser una en la que se vean la tapa de arriba y otros dos lados del objeto.

Después hay que iluminar la escena. Como puedes ver, ya había una fuente de luz en la escena desde el principio de la sesión, Light 1 (Luz 1). La fuente de luz habría que colocarla de modo que ilumine la parte del objeto a la que estamos mirando. Según la orientación de la cámara, probablemente Light 1 (Luz 1) no esté bien colocada. Como además esta fuente de luz está lejos, la vamos a eliminar y a crear una nueva. AoI contempla tres tipos de fuentes de luz: luces puntuales, luces direccionales y focos de luz. Vamos a usar la más simple de las tres, la luz puntual. Sigue los siguientes pasos para iluminar correctamente la escena: Representemos la escena. Selecciona en el menú la opción Scene→Render Scene (Escena→Representar Escena). No te preocupes ahora de los ajustes y pulsa aceptar en la ventana de ajuste de los parámetros de la representación. El resultado debe parecerse a esto:

Bastante aburrido ¿no? Todo de ese blanco tan soso. Queremos madera y cristal, así que tendremos que añadir texturas.

Texturas y materiales

Madera

Creemos una textura que parezca madera. Selecciona Scene→Textures (Escena→Texturas) y pulsa New (Nueva) en la ventana de texturas. En la ventana que se presenta, ponle a la textura el nombre (name) Madera y selecciona el tipo procedural 3D (observa la figura siguiente).

Las texturas procedurales 3D determinan el color, la dureza, la reflexión y otras propiedades de las superficies como función de las coordenadas tridimensionales. Para una posición dada en el espacio, la textura define el aspecto de la superficie de una figura, como si hubiéramos recortado la figura de un bloque sólido de este "material". Sin embargo, para aquellos objetos de los que realmente vemos su interior -objetos transparentes-, habría que usar un material para definir su interior, no una textura. Las texturas sólo determinan el aspecto de la superficie de los objetos.

Las funciones que transforman las coordenadas tridimensionales en valores de propiedades de texturas se crean conectando gráficamente componentes funcionales. Hay seis categorías de componentes:

Al crear una textura nueva, se te presenta una ventana en la que puedes especificar la textura. Hay una gran área blanca vacía, en la que añadiremos componentes funcionales. Y a su derecha hay bloques con nombres del estilo de diffuse (difundido), specular (especular), transparent (transparente), etc. Estas son las propiedades de la textura a las que conectaremos los componentes que añadamos en el área vacía de la izquierda.

Para hacer una textura de madera añadimos los siguientes componentes al proceso: Ahora la vista previa tiene este aspecto:

La textura no es del todo realista pero tendrá que valer por ahora. Para crear texturas más complejas, lee la sección sobre texturas del Manual de Art-of-Illusion.

Asignaremos esta textura a los tableros superior e inferior y a los palos que los unen que creamos antes. Selecciona todas las figuras a las que hay que asignarles la textura de madera. Después selecciona la opción del menú Object→Set Texture (Objeto→Poner Textura). A continuación selecciona la textura Madera y pulsa Aceptar.

Ahora selecciona sólo los tableros superior e inferior. Vuelve a invocar la ventana de poner textura, y pulsa en el botón etiquetado Edit Mapping (Editar Mapeado). En esta ventana puedes cambiar de tamaño, desplazar y girar la textura para adaptarse al objeto. Sólo vamos a girar la textura, para alcanzar el siguiente resultado:

Ahora los palos. Selecciónalos todos y vuelve a editar el mapeado. Crea un mapeado como este:

Vamos a ver cómo ha quedado. La imagen representada tiene esta pinta:

Cristal

El objeto pantalla de cristal tiene que tener las propiedades materiales del cristal. Es decir, tiene que ser transparente a la luz y reflejarla en su superficie. La luz que pasa por un objeto de cristal se refracta y se atenúa (disminuye, cambia de color). La reflexión y la transparencia son propiedades de las texturas. La refracción y la atenuación son propiedades de los materiales de los objetos. Sólo se pueden asignar materiales a objetos sólidos. Esto tiene sentido, dado que la cantidad de atenuación y el cambio de dirección de la luz después de la refracción depende de por dónde entran y por dónde salen del objeto los rayos de luz. Afortunadamente, nuestro objeto pantalla es un sólido. Todas las figuras torneadas con el eje de rotación entre los puntos extremos de la curva perfil son sólidos.

Primero crearemos la textura de cristal, y después el material de cristal.

En la ventana de texturas, crea una textura uniforme (uniform) llamada Cristal. Esta textura hace que la superficie sea transparente, de modo que el material interior será visible, y determina la cantidad de reflexión especular. La imagen de debajo muestra los valores a utilizar para la nueva textura. La transparencia se controla tanto con el Transparent Color (Color Transparente) como con el valor de la Transparency (Transparencia). Las fracciones roja, verde y azul del color transparente determinan cuánto de cada componente de color permanece cuando la luz pasa por la superficie. Es un color filtrante. El blanco, el color predeterminado, significa que por esa superficie pasa la luz de cualquier color. El negro significa que no la traspasa la luz de ningún color. El valor de la transparencia determina la fracción total de luz que atraviesa la superficie. Un valor de 0.7 significa que se deja pasar el 70 por ciento de la luz que llega. Esto también significa que el componente de transparencia determina sólo el 70 por ciento del color de la superficie. El 30 por ciento restante de color lo determinará hasta el 100 por cien la reflexión, así que el valor de Specular (Especular) se pondrá en 1.0. Con estos ajustes, el componente diffuse (difundido) no afecta al color de la textura. Utilizaremos el material del objeto para colorear el cristal.

Para crear un material nuevo, selecciona Scene→Materials (Escena→Materiales) y pulsa en el botón New (Nuevo). Este nuevo material también se puede llamar Cristal. Tiene que ser un uniform material (material uniforme). Copia los parámetros del material de la imagen que sigue. Al color de un material lo afectan dos parámetros: Material Color (Color del Material) y Transparent Color (Color Transparente). Ambos colores atenúan el color de la luz al atravesar el material. El color del material sólo afecta a la luz que llega diréctamente a la cámara, es el color que el objeto parece tener. El color transparente afecta a toda la luz que atraviesa el objeto, y también colorea las sombras que el objeto pueda proyectar. Sin embargo, el primer color es más fácil de usar porque especifica de qué color se verá el objeto. El color transparente, en cambio, especifica la fracción de rojo, verde y azul que se deja pasar. El resto de la luz se refleja y determina el color del objeto. El valor de Density (Densidad) determina cuánto se atenúa la luz. El valor cero hace que no se atenúe en absoluto. Para nuestro material de cristal definiremos un sencillo color de material verdoso que sólo se dejará ver en objetos muy masivos.

La representación final

El representador rastreador que hemos utilizado hasta este momento no puede representar el cristal que hemos creado. Abre la ventana de representación (Scene→Render Scene (Escena→Representar Escena)) y selecciona el representador (renderer) de trazado de rayos (Raytracer). El trazador de rayos proyecta "rayos de luz" desde la cámara hasta donde corten a los objetos. En esos puntos de los objetos, se proyectan rayos de luz hacia las fuentes de iluminación para calcular la iluminación y las sombras. En los objetos que tienen reflexión o transparencia se proyectan más rayos para ver los objetos reflejados o los que se transparentan.

El fondo negro predeterminado hace que el cristal se vea raro. Para mejorar la apariencia del cristal, vamos a poner un fondo claro. Debido a un error de la versión 0.8, si el fondo tiene un color sólido se obtiene una representación errónea, así que vamos a utilizar una textura para el fondo. Selecciona la opción del menú Scene→Environment (Escena→Entorno). En esta ventana, selecciona texture-diffuse (textura-difundida) como fondo. Se pueden crear texturas nuevas de un color distinto o quizá una imagen procedural (las nubes son un buen ejercicio) pero por ahora vamos a utilizar la textura predeterminada.

Finalmente, para mejorar la calidad de la imagen, marca la opción antialiasing (antidentado) de la ventana de representación. Y si la fuente de luz (no direccional) está cerca del objeto, si marcas soft shadows (sombras suavizadas) obtendrás una imagen más realista. Ambas opciones hacen que el trazador de rayos proyecte múltiples rayos por píxel. El resultado de esos múltiples rayos se promedia para crear una imagen más suave. Aumentar el número mínimo y máximo de rayos por pixel (min. rays/pixel, max. rays/pixel) hace que la imagen tenga más calidad y tarde más en representarse. Para imágenes rápidas no los aumentes. Se obtiene una buena calidad poniendo como mínimo y máximo número de rayos por píxel a 4 y 16 respectivamente. Puede que hagan falta más rayos para grandes áreas de sombras suavizadas.

Debajo se muestran los ajustes del trazador de rayos y la imagen que sale:

Imagínatelo

Aquí acaba el tutorial, pero Art of Illusion es capaz de mucho más de lo que se ha mostrado aquí. En otros tutoriales y manuales (que en el momento de escribir este todavía no se han escrito) conocerás otras características. Sin embargo la mayoría de las características guais son bastante intuitivas, y puedes simplemente probarlas y ver qué hacen.

Usando las herramientas básicas que se han mostrado en este tutorial puedes empezar a modelar los mundos de tu imaginación. Gradualmente, según vayas aprendiendo a dominar todas las características del programa, lo harás cada vez mejor... y te engancharás.

Buena suerte.