Conceptos fundamentales de la modelado 3d

conceptos fundamentales de el modelado 3d
Ejercicios de [URL=http://abc, mitreum.net/?p=295&lang=eÁlvaro blanco[/url].

Conceptos matemáticos
Para poder expresarnos y comunicarnos de un modo correcto en el ámbito 3d, necesitamos tener claros y dominar los fundamentos geométricos, es decir, asimilar conceptos como sistema de coordenadas, Vector, normal etc, de un modo intuitivo, y no sólo como definiciones aprendidas de memoria.

Un sistema de coordenadas es un conjunto de valores que permiten definir unívocamente la posición de cualquier punto de un espacio geométrico respecto de un punto denominado origen. En el modelado 3d toma sentido el sistema de coordenadas universal frente al local, explicado más adelante.

Un Vector es todo segmento de recta dirigido en el espacio. Cada Vector postura unas características que son: origen (punto exacto sobre el que actúa el Vector), módulo (longitud del Vector), dirección (orientación en el espacio de la recta que lo contiene), sentido (se indica mediante una punta de flecha situada en el extremo del Vector).

  • segmento: es aquella parte de una línea recta que queda entre dos puntos señalados sobre ella.
  • un polígono es una figura plana y cerrada formada por tres o más segmentos de línea unidos en sus extremos. Por lo tanto, un polígono regular será aquel cuya longitud de los lados y ángulos sean todos iguales. Estos dos conceptos, polígono y Vector, los explicaremos mejor en el contexto de modelación 3d.
  • Vector normal a una superficie en un punto dado:

en términos no técnicos, la normal de una superficie en un punto dado es el Vector perpendicular a la superficie en ese punto. Más adelante se profundiza sobre este concepto en el contexto de modelación 3d. Más adelante se explica el concepto que se entiende por normal de un polígono en modelado 3d.

Conceptos iniciales sobre el modelado en 3d

La escena
La escena en 3d es el archivo que contiene toda la información necesaria para identificar y posicionar todos los modelos, luces y cámaras para su renderización.

Sistema de coordenadas
Una escena puede identificarse con las coordenadas en 3 dimensiones del espacio en las cuales tiene lugar la renderización. Este espacio a menudo se llama sistema de coordenadas universal, o world (mundo). Pero al operar con los objetos de la escena, podremos utilizar diferentes sistemas de coordenadas, como, por ejemplo, el sistema de coordenadas local del mismo objeto.

Cuando realicemos una transformación a un objeto (entre otras operación), la realizaremos respecto a un sistema de coordenadas que nosotros seleccionaremos (por defecto se hará respecto al sistema de coordenadas de la vista -view.

Ejemplo del sistema de coordenadas view (el establecido por defecto), donde los ejes de coordenadas se intercambian en función del visor que empleemos. Entonces: eje x: siempre hacia la derecha de la vista.

Eje y: siempre apunta hacia arriba.

Eje z: siempre apunta hacia el usuario.

En la imagen nos hacemos una idea de cómo cambia el sistema de coordenadas en función de la vista, sabiendo que:1) sistema de coordenadas de la vista top.
2) sistema de coordenadas de la vista front.
3) sistema de coordenadas de la vista left.
4) sistema de coordenadas de la vista perspectiva.

Sistema de coordenadas local a un objeto
Viene determinado por el pivote del objeto. Ejemplo de sistemas de coordenadas locales. Cada objeto tiene su sistema de coordenadas, evidenciado en la imagen por sus pivotes.

En 3d max, para seleccionar el sistema de coordenadas respecto al cual queremos realizar las transformaciones, se hace desde el toolbar, en el panel reference cordenate system.

Iluminación de una escena
La iluminación correcta de la escena es fundamental para imprimirle realismo. La iluminación corresponde a todo un apartado dentro de la asignatura y en el aprenderemos a colocar las luces adecuadas y modificar sus parámetros para obtener el resultado deseado.

Materiales y texturas
Cuando modelamos un objeto, su superficie queda por defecto de un color uniforme y liso. Con los materiales y texturas haremos que adquiera el realismo necesario. Se estudiara en un tema aparte.

Render
El render es el proceso de producir imágenes desde una vista de modelos tridimensionales, en una escena 3d. En palabras sencillas, es tomar una fotografía de la escena. Una animación es una serie de renders secuenciados.

Conceptos de geometría en modelado 3d.

Polígonos
En modelado, consideramos un polígono a cualquier forma plana y cerrada (con su primer y último vértice perfectamente coincidentes). Un polígono también puede ser una figura 2d, una forma cerrada cuyos primer y último vértice coinciden.

Creación de polígonos regulares
En un programa 3d, tendremos la opción de crear shapes 2d como polígonos regulares. En 3dsMax se llama Ngon, y modificando los parámetros desde el panel de comandos podremos decidir de cuantos lados deseamos crear el polígono, entre otras opciones.

Segmentos de un polígono.

Las formas planas (shapes) creadas en un programa de modelado 3d están constuídas por trozos de líneas (no necesariamente rectas), denominados segmentos.

ejemplo de un segmento de un polígono (en este caso un círculo).

Cuando hablemos de un lado de un polígono de un objeto tridimensional se denomina lado (edge) o arista.

Vértice de un polígono
Es el punto que define el inicio o final de un segmento. Dentro de la figura viene representado por un pequeño trazo que corta perpendicularmente a su línea de contorno. Volviendo a la definición de segmento: todo segmento tiene un vértice final y otro final situados en los extremos del mismo.

En un objeto sólido, los vértices de los polígonos forman parte de la malla y suponen puntos en común entre los diferentes polígonos del objeto 3d.

Trabajando en modelación 2d: shapes
Las formas (también llamadas shapes) en el modelado en 3d son línead y grupos de líneas en 2d que se emplean fundamentalmente para generar objetos tridimensionales, mediante diferentes técnicas que posteriormente veremos, y que enuméramos a continuación:mediante extrusión de las líneas.

Mediante solevados.

Mediante superficies de revolución.

Cuando trabajamos en un programa de modelado 3d, y nos encontremos creando una shape, deberemos dominar todas las operación fundamentales de su modelado, para alcanzar el objetivo deseado.

Cada vez que creemos una nueva línea desde la opción crear, estaremos generando un nuevo objeto, por lo cual, si queremos crear una shape continua, pero la hemos elaborado a partir de dos formas independientes, tenemos que saber unir ambas formas, y conectar sus vértices. En 3d max, hemos visto como unir las formas con attach, y como unir los vértices con connect. También podemos unir los vértices soldando (weld) para la edición de la silueta de una forma, necesitamos tener un dominio absoluto sobre la edición de los vértices. Saber cuando es necesario que un vértice sea un corner, smooth, Bézier o Bézier corner, trabajar con los puntos de control (tangentes) de los vértices Bézier, mover, escalar y rotar, eliminar o añadir vértices.
1) mediante dibujo de líneas (en 3dsmax, botón line del panel de crear).

2) mediante polígonos predefinidos: círculos, rectagulos, elipses, arcos, Ngon.

3) mediante la conjugacción de ambos.

Transformación vs. Modificacción
Cuando hablemos de transformación debemos tener muy claro a que nos referimos. Su concepto es muy sencillo: transformar es: mover, rotar, escalar. Como extensión de estas operación también consideramos la función espejo como una transformación.

Hacer espejo del objeto:
En max, usar el botón en el toolbar y reconocer lo que hace. Sera una operación muy común en nuestros modelados.

En los programas de modelado 3d se pueden modificar los objetos, aplicando funciones que curvan el modelo, lo achatan, lo afilan.

En 3dsMax se hace por medio de los modificadores. Algunos de estos modificadores son, por.

Ejemplo, hacer un lathe (revolución de una shape), o bend (modificador para curvar un modelo).

Pivote de un objeto.

Diferentes tipos de gizmos en función de la transformación: mover, girar, escalar respectivamente.

Todo objeto, ya sea una forma o un modelo 3d, postura un pivote único que representa el sistema de coordenadas de propio modelo. Se puede pensar en el pivote como punto único de referencia del objeto. En el modelado 3d, tiene diferentes funciones. La más importantes, entre otras son: uso del pivote como centro de rotación y escala (cuando se selecciona el punto de pivote como centro de la transformación) representa la relación entre el objeto y sus hijos asociados (en esta asignatura veremos más adelante las relaciones hijo-padre entre objetos).

En 3d max, un conjunto de 3 ejes de coordenadas representan el pivote. Es llamado gizmo, y nos puede servir como herramienta para restringir una transformación a uno de los ejes de coordenadas o a un plano.

Normal de un polígono en modelado 3d
Un polígono situado en un sistema de coordenadas tiene una única orientación necesariamente. Esto quiere decir que está mirando en un único sentido, y no hacia dos. Un Vector imaginario que parte desde la superficie del polígono, y perpendicular a la misma, es llamado normal del polígono. Dado que cada polígono podría tener asociadas dos normales (una para cada lado de la superficie), apuntando en direcciones opuestas, la elección del lado hacia la cual la normal se proyecta define la cara frontal del polígono, y será la parte visible.

Por eso, cuando trabajemos con un programa de modelación en 3d no encontraremos con referencias a las normales permanentemente. Expresiones como Flip Normals lo que harán será invertir la componente normal asociada al polígono por su inversa, y esto en la práctica se traducirá en que la parte visible del polígono se invertira.

Los visores.

4 visores de una escena 3d. El visor activo es el de perspectiva.

Los visores son herramientas imprescindibles para trabajar en cualquier programa de modelación 3d, ya que muestran el entorno en apariencia tridimensional, desde diferentes puntos de vista. Por defecto, en un programa de modelado 3d tendremos cuatro visores: un que muestra la escena desde la parte izquierda (sección lateral), otro desde arriba (planta), otro desde la parte fronal (sección frontal) y un último que muestra desde una perspectiva cualquiera la escena.

En el modelado 3d, deberemos ser agiles en la selección del tipo de visor que más nos conviene, sus disposiciones en la pantalla y el formato del mismo, de modo que nos permita captar la información del modo más claro e intuitivo en cada momento.

Visor activo
En todo momento será un solo visor el activo en nuestro entorno de trabajo, incluso cuando tengamos más de un visor en la pantalla. En ese visor será donde crearemos nuestros objetos e interactuaremos con la escena. Simultáneamente a los cambios que realicemos en el visor activo, estos serán representados en los otros visores, por lo cual nos podremos apoyar en ellos para comprobar los cambios efectivos de nuestras acciones desde otros puntos de vista.

Tipos de vistas.

Vistas axonométricas- estas vistas se refieren a la proyección paralela de un objeto 3d con la pantalla. Los lados del objeto tienen la misma inclinación respecto a la pantalla, con lo que se produce un escorzo uniforme en los bordes del objeto. En la vista axonométrica (u ortogonal) se elimina el efecto de distancia del visor.

vista ortográfica- son aquellas que nos ofrecen una superficie plana definida por los ejes de coordenadas universales. Por tanto, las únicas posibilidades que nos brindan los x,y, z son: superior (top), inferior (bottom), anterior (front), posterior (back), izquierda (left) y derecha (right).

Vistas ortográficas: front, left y top.

vista usuario- es aquella que queda definida por la persona que trabaja con la escena, partiendo de una vista ortográfica y haciéndola rotar. Son vistas axonométricas, por lo cual las líneas permanecen siempre paralelas, al contrario que la vista perspectiva.

Vista perspectiva-la vista en perspectiva es la que más se asemeja a la vista humana. En ella, los objetos dan la sensación de profundidad y espacio. Podemos definir tres tipos de vista en perspectiva: la vista en perspectiva propiamente dicha, (que aparece por default en el programa generalmente), la vista de cámara (cuando creamos previamente una cámara) y la vista Focal, parecida a la anterior, en la que tenemos primero que crear un foco (una luz dirigida, y entonces veremos desde la misma luz como si fuese una cámara).

Usuario (axonométrica) – Perspectiva (no axonométrica).

vista de usuario vs. Vista perspectiva. Aquí se aprecia la diferencia entre la vista axonométrica y la no axonométrica, en la que los no se mantienen paralelos sino que se rigen por un punto de fuga.

Formato del visor (modo de render del visor)

Objeto renderizado en modo box, wireframe y suavizado.

En función de la operación de modelado que estemos realizando, nos convendrá visualizar de un modo u otro la escena. Los formatos del visor principales son: modo box-muy esquemático, representa los objetos como cajas que los contienen. Modo wireframe- En el vemos las aristas de los objetos modo suavizado-es una aproximación al render final, donde vemos la superficie del elemento. También se puede conjugar con la wireframe viendo las dos a la vez.

En 3d Studio Max. Podremos cambiar de una vista a otra empleando f3 y f4.

Navegación por el visor.

Es fundamental conocer los comandos para cambiar los puntos de vista de los visores. Girar la escena, moverse por ella (hacer panning) y hacer zoom son las tres operación fundamentales.

antes de empezar a modelar.

Antes de ponernos manos a la obra e iniciar el proceso de modelado de un objeto debemos tener claro algunos conceptos, entre los cuales podríamos destacar:

  • 1) saber bien que es lo que queremos modelar. Cómo lo queremos, sus medidas relativas, su forma. Para ello nos ayudaremos también de la documentación que esté a nuestro alcance sobre el modelo: imágenes, descripciones.
  • 2) decidir en cuantos modelos se puede dividir el objeto. Por ejemplo, una lámpara puede estar formada por el pie de lámpara, la bombilla y la mampara, como tres objetos diferentes. Del mismo modo en que decidimos los modelos que forman nuestro objeto, tenemos que tener en cuenta donde no puede ser interrumpido el mismo. Es decir, modelar con cuidado las zonas que tengan que mantener una cierta continuidad. Por ejemplo, una mano no podremos dividirla en diferentes objetos, haciendo que los dedos sean objetos diferentes, pues la discontinuidad de los dedos con el resto de la mano será evidente.
  • 3) para cada modelo que queremos crear, tendremos que decidir una estrategia de acción. En función de su geometría usaremos la que nos parezca más apropiada. Por ejemplo, un jarrón lo podemos modela mediante revolución, una cara humana con Nurbs, una mano mediante subdivisión de superficies, una columna por primitivas. También tendremos en cuenta otros factores, como la simetría del objeto. Si el objeto es simétrico podremos modelar la mitad del mismoy luego hacer un espejo y soldar la otra mitado, como en el caso del armario que hicimos el primer día, dividirlo en tres módulos idénticos y después unirlos.
  • 4) el nivel de detalle del objeto: si creemos que el objeto apenas será visto, o será visto desde muy lejos podremos ahorrar esfuerzo y polígonos en su creación. Si, por el contrario, será visto con mucho detalle nos esforzaremos en relalizarlo más depuradamente.
  • 5) los apoyos que podremos usar para crear el modelo. En particular, es muy usado es de crear una imagen de fondo sobre uno de los visores para darnos la siuleta del modelo. Por ejemplo, en la creación de un edificio, será muy útil tener una imagen de su planta, de este modo podremos dibujar con líneas la planta del edificio, y extruírlas para crear sus paredes.

El modelo en 3d.

En el lenguaje de los gráficos en 3d, un modelo es un archivo que contiene la información necesaria para ver o renderizar un objeto en 3 dimensiones. Este archivo contiene dos tipos de información:

  1. la geometría -forma- Del objeto.
  2. los atributos de la superficie del objeto, o sea, la información que permite que el objeto esté correctamente coloreado de modo que aparente estar hecho de un determinado material (ejemplo, vidrio, plástico, madera etc.)

en este primer capítulo de la asignatura nos centraremos sólo en el primer apartado, y daremos sólo un pasada superficial al aspecto del material.

Para el ordenador, la información de la geometría del modelo define las superficies del objeto como una lista de polígonos planos que comparten lados y vértices. El modelo por tanto describe una malla, o Mesh (en inglés, este concepto lo leeremos a menudo en la referencias al modelado 3d).

Cuando modelemos, deberemos recordar que si el modelo no comparte lados y vértices comunes, habrá roturas en el mismo, y se perderá la sensación de continuidad en su superficie.

En el ejemplo, comprobaremos esta afirmación de un modo practico. Deberemos recordar este aspecto, pues es en el modelado 3d es fundamental. Cuando modelemos un objeto, debemos tener una idea clara de lo que queremos crear, y para ello debemos mantener la continuidad en la superficie allí donde el objeto real (el que tenemos en la cabeza, que queremos conseguir) sea continuo.

Aunque en la imagen no se vea muy bien, en los resultados finales de nuestras modelados se notara cuando un objeto no es continuo (esta formado por varios objetos diferentes) y cuando lo es. En la figura, la flecha indica la marca visible en la separación de los dos objetos del embudo, mientras que el de la izquierda esta creado de un modo continuo.

Tipos de modelos 3d:.

Modelos representados por polígonos
Uno de los sistemas utilizado por el ordenador para representar cualquier estructura son los polígonos. Un cubo tiene 6 caras, cada una de ellas es un polígono –un cuadrado–, una pirámide se compone de 4 triángulos y una base cuadrada. Pero incluso una forma redondeada también se representa mediante polígonos, el ejemplo más claro de la vida real lo podemos ver en un balón de fútbol, que se compone de 12 pentágonos y 20 hexágonos.

Modelos definidos por sus curvas matemáticas: Nurbs y patch
Hoy en día existen otros sistemas de modelado en donde el usuario no trabaja con polígonos, sino con superficies curvas definidas matemáticamente (lo veremos en los Nurbs y patch, para que os vayáis haciendo una idea). Imaginemos una circunferencia: podría representarse como un polígono de muchos lados, pero también podría representarse como una función matemática entre dos variables x e y (el conjunto de los puntos de un plano que equidistan de otro). Evidentemente el usuario no tiene que vérselas con engorrosas fórmulas, sino que de la misma forma que en un programa vectorial (como Illustrator o FreeHand) resulta sencillo trazar curvas perfectas (no sólo círculos o elipses) en un modelador no poligonal se disponen de diferentes tipos de herramientas (Splines, Nurbs, patches Bézier, etc) para crear superficies curvas complejas.

Trabajando con un modelo en 3d
Imaginemos que ya tenemos un modelo en 3d. El modo en el que hemos llegado a el ahora no interesa (podemos haberlo creado con una primitiva, o a partir de una forma 2d etc). A continuación daremos los conceptos básicos para poder manipular un modelo 3d en un programa de modelado. Para empezar, debemos tener claro qué tipo de elemento tenemos, es decir, el objeto es un Nurbs, un patch, o un modelo poligonal. De momento estamos viendo sólo el tipo poligonal(en 3dsmax, llamado poly), así que, nos aseguramos de que sea así. Si no fuese un modelo poly (por ejemplo, si fuese una primitiva) tendremos que convertirlo a tal.

En 3d max, se pulsa botón derecho->convert to->converto todo poly ahora tenemos un poly. Eso quiere decir que el modo de transformar su geometría más directo es transformando sus vértices, extruyéndo sus polígonos, es decir, manipulando sus subobjetos: en 3dsmax, vemos que los subobjetos de un poly son:
Vértices – Aristas – Bordes – Polígonos – Elementos.

Subobjetos de un poly en 3dsmax, subobjeto polígono seleccionado.

Ver más sobre el tema y los comentarios en el foro