19 de Junio de 2007 UNIVERSIDAD DE VALLADOLID COMPOSICIÓN DE OBJETOS TRIDIMENSIONALES EN 3D STUDIO Informática Gráfica (doctorado) Emilio González Montaña
Contenido Introducción... 3 Geometría sólida constructiva... 4 Descripción... 4 Resultado... 5 Pasos... 6 Problemática del cálculo de intersecciones... 13 Ejemplo... 14 Resultado... 18 Generación matemática... 19 Descripción... 19 Resultado... 20 Pasos... 21 Edición de malla... 23 Descripción... 23 Resultado... 24 Pasos... 25 Bibliografía... 28 Emilio González Montaña Página 2
Introducción El presente trabajo explica algunos métodos de composición de objetos en tres dimensiones mediante el uso de la herramienta de modelado y animación 3D Studio. La forma de exposición será la siguiente: en cada capítulo se expondrá un método, para el cual se contará con: Explicación teórica del método. Presentación de la figura a conseguir. Guía paso a paso de la realización de la figura. Emilio González Montaña Página 3
Geometría sólida constructiva Descripción El método de composición de objetos consiste en la concatenación de una o más de las siguientes operaciones sencillas: Unión. Intersección. Substracción. Los diferentes métodos usan el cálculo de intersecciones de planos (aunque al final usen esta información para uniones, intersecciones o substracciones). El procedimiento será: PARA-CADA objeto EN listadeobjetos FIN-PARA PARA-CADA polígono EN objeto.poligonos FIN-PARA PARA-CADA otroobjeto EN listadeobjetos Y NO EN listadeobjetosusados SI objeto <> otroobjeto FIN-SI FIN-PARA PARA-CADA otropoligono EN otroobjeto.poligonos FIN-PARA IF SeCortan (polígono, otropoligono) AgregarObjeto (listadeobjetosusados, objeto) interseccion = CalcularInterseccion (polígono, otropoligono) AgregarInterseccion (intersecciones, intersección) Finalmente en la variable intersecciones, tendremos una lista con las intersecciones de todos los polígonos de todos los objetos; con estas intersecciones (agrupadas como se necesiten), podremos calcular los nuevos polígonos del nuevo objeto (en base al tipo de operación de composición que necesitemos). Emilio González Montaña Página 4
Resultado Emilio González Montaña Página 5
Pasos Partimos de un documento nuevo: Creamos una caja plana: Emilio González Montaña Página 6
Le añadimos un cilindro: Ahora añadimos un cilindro vertical sobre la base rectangular, apoyado en la misma y en el centro: Emilio González Montaña Página 7
Creamos un cilindro al lado de la base, y tomando como diámetro el ancho de la base rectangular: Creamos otra caja que complemente al cilindro para alcanzar la longitud de la base: Emilio González Montaña Página 8
Seleccionada la base, escogemos la operación booleana (unión, moviendo operando): Seleccionamos como operando B al cilindro horizontal, lo que hará que ambas figuras se unan formando una sola (dado que seleccionamos la opción mover operando): Emilio González Montaña Página 9
Ahora seleccionando la nueva figura, escogemos la operación booleana (substracción): Tras seleccionar el cilindro vertical pequeño como operando B, tendremos la substracción de las figuras: Emilio González Montaña Página 10
Ahora uniremos las figuras auxiliares de la derecha, con la operación booleana de unión, tal y como hemos realizado anteriormente: Posicionamos la figura auxiliar encima de la otra: Emilio González Montaña Página 11
Ahora calcularemos la intersección de ambas figuras con el operador booleano de intersección (partimos de cualquiera de las dos figuras): Tras escoger a la otra figura como operando B, obtendremos el resultado: Emilio González Montaña Página 12
Problemática del cálculo de intersecciones El cálculo de intersecciones (de caras de polígonos) viene condicionado por un primer análisis de lo que es en esencia una cara poligonal. Nosotros normalmente vemos una cara como la siguiente figura: Aunque en realidad el programa de modelado tendrá una versión triangulada de la cara: Esto se hace así para simplificar el cálculo de modelos (un polígono de 3 vértices es mucho más sencillo de manejar que uno más grande, además homogeneizamos todos los polígonos). Emilio González Montaña Página 13
Ejemplo Partimos de un documento nuevo: Crearemos una caja (o cualquier otra figura de lados visiblemente planos) como figura de partida para la demostración: Emilio González Montaña Página 14
Dibujamos otra caja que atraviese a la primera desde abajo y hacia arriba, de modo que propiciemos dos zonas de intersección en los volúmenes (de modo que podremos ver en detalle la resolución de intersecciones con la triangulación de caras): Usamos una operación booleana de substracción para restar la segunda caja (la morada) a la primera (la verde): Emilio González Montaña Página 15
El resultado puede verse a continuación (podemos jugar con el tipo de renderizado de la vista de perspectiva, para que lo dibuje, por ejemplo, con el modelo de alambre, que nos permite ver las aristas del modelo): Para ver la triangulación, añadiremos un modificador de objeto ( edit mesh ), de manera que podremos seleccionar cada uno de los triángulos de una cara: Emilio González Montaña Página 16
Ahora crearemos dos materiales sencillos cada uno de un color (para luego aplicarlos a los triángulos del sólido): Aplicaremos los dos materiales alternativamente a los distintos triángulos que conforman el sólido, de modo que distinguiremos claramente como 3D Studio ha ido haciendo las operaciones de intersección (tal y como vimos previamente a nivel teórico): Emilio González Montaña Página 17
Resultado Emilio González Montaña Página 18
Generación matemática Descripción Este paso se caracteriza la generación de un sólido a partir de una figura plana a la cual aplicaremos una fórmula matemática para generar el sólido. Algunas de las formas más comunes son: Revolución de una figura plana una cierta cantidad de ángulo (la veremos más adelante en detalle en el ejemplo). Proyección de una figura plana a lo largo de un camino (la forma anterior podría verse como una particularización de esta, tomando como camino a una circunferencia si rotamos 360 grados, o un trozo de esta si el ángulo es menor). Proyección con variación de las figuras planas a lo largo de la trayectoria. Emilio González Montaña Página 19
Resultado Emilio González Montaña Página 20
Pasos Partimos de un documento nuevo: Generamos un polígono con la siguiente figura (la mitad de la sección de la botella): Emilio González Montaña Página 21
Aplicamos a la figura el modificador de revolución (lathe): Tan sólo con modificar el alineamiento al mínimo, obtendremos el resultado final: Emilio González Montaña Página 22
Edición de malla Descripción Este método consiste en modificar la malla de un objeto tridimensional, pudiendo variar dicho método en base a que subelemento del objeto modifiquemos: Vértices. Aristas. Polígonos. La idea es partir de un objeto relativamente simple (como una caja), e ir estirando (extrude) o moldeando hasta formar la figura deseada. Emilio González Montaña Página 23
Resultado Emilio González Montaña Página 24
Pasos Partimos de un documento nuevo: Dibujamos un cubo que tenga 6 segmentos en todas las dimensiones, para luego poder manipular los polígonos del mismo: Emilio González Montaña Página 25
Aplicamos el modificador de editar objeto (edit mesh), usando como selección el polígono, y seleccionando uno de los polígonos de la cara superior, lo movemos hacia arriba con cuidado de no desplazarlo en otras dimensiones: Hacemos lo mismo con los otros 3 polígonos de la cara, y giramos la figura: Emilio González Montaña Página 26
Seleccionamos los segmentos externos de la cara superior, y los desplazamos hacia abajo como se ve en la figura: Ahora, seleccionando un polígono de una cara lateral, pulsamos el botón derecho, y escogemos la herramienta de extrude, para proyectar la cara y hacer dos salientes a la figura: Emilio González Montaña Página 27
Bibliografía Fundamentos de la Informática Gráfica David Escudero Universidad de Valladolid, 2003 Editorial Ceysa. 3D Computer Graphics (3th edition) Alan Watt Editorial Addison-Wesley. 3D Max Reference Documentation Autodesk 3D Studio Max 8. Emilio González Montaña Página 28