stringtranslate.com

Modelado poligonal

Una malla poligonal de un delfín.

En gráficos por computadora en 3D , el modelado poligonal es un enfoque para modelar objetos representando o aproximando sus superficies mediante mallas poligonales . El modelado poligonal se adapta bien a la representación de líneas de escaneo y, por lo tanto, es el método elegido para gráficos por computadora en tiempo real . Los métodos alternativos para representar objetos 3D incluyen superficies NURBS , superficies de subdivisión y representaciones basadas en ecuaciones (superficies implícitas) utilizadas en trazadores de rayos .

Teoría geométrica y polígonos.

El objeto básico utilizado en el modelado de mallas es un vértice , un punto en el espacio tridimensional. Dos vértices conectados por una línea recta se convierten en una arista . Tres vértices, conectados entre sí por tres aristas, definen un triángulo , que es el polígono más simple del espacio euclidiano . Se pueden crear polígonos más complejos a partir de varios triángulos o como un solo objeto con más de 3 vértices. Los polígonos de cuatro lados (generalmente denominados cuadrángulos) [1] [2] y los triángulos son las formas más comunes utilizadas en el modelado poligonal. Generalmente se hace referencia como elemento a un grupo de polígonos, conectados entre sí por vértices compartidos . A cada uno de los polígonos que componen un elemento se le llama cara .

En la geometría euclidiana , tres puntos cualesquiera no colineales determinan un plano . Por esta razón, los triángulos siempre habitan en un solo plano. Sin embargo, esto no es necesariamente cierto en el caso de polígonos más complejos. La naturaleza plana de los triángulos hace que sea sencillo determinar su superficie normal , un vector tridimensional perpendicular a la superficie del triángulo. Las normales de superficie son útiles para determinar el transporte de luz en el trazado de rayos y son un componente clave del popular modelo de sombreado Phong . Algunos sistemas de renderizado utilizan normales de vértice en lugar de normales de cara para crear un sistema de iluminación más atractivo a costa de más procesamiento. Tenga en cuenta que cada triángulo tiene dos caras normales, que apuntan en direcciones opuestas entre sí. En muchos sistemas, sólo una de estas normales se considera válida: el otro lado del polígono se denomina cara posterior y puede hacerse visible o invisible según los deseos del programador.

Many modeling programs do not strictly enforce geometric theory; for example, it is possible for two vertices to have two distinct edges connecting them, occupying exactly the same spatial location. It is also possible for two vertices to exist at the same spatial coordinates, or two faces to exist at the same location. Situations such as these are usually not desired and many packages support an auto-cleanup function. If auto-cleanup is not present, however, they must be deleted manually.

A group of polygons which are connected by shared vertices is referred to as a mesh. In order for a mesh to appear attractive when rendered, it is desirable that it be non-self-intersecting, meaning that no edge passes through a polygon. Another way of looking at this is that the mesh cannot pierce itself. It is also desirable that the mesh not contain any errors such as doubled vertices, edges, or faces. For some purposes it is important that the mesh be a manifold – that is, that it does not contain holes or singularities (locations where two distinct sections of the mesh are connected by a single vertex).

Construction of polygonal meshes

Although it is possible to construct a mesh by manually specifying vertices and faces, it is much more common to build meshes using a variety of tools. A wide variety of 3D graphics software packages are available for use in constructing polygon meshes.

One of the more popular methods of constructing meshes is box modeling, which uses two simple tools:

A second common modeling method is sometimes referred to as inflation modeling or extrusion modeling. In this method, the user creates a 2D shape which traces the outline of an object from a photograph or a drawing.[3] The user then uses a second image of the subject from a different angle and extrudes the 2D shape into 3D, again following the shape’s outline. This method is especially common for creating faces and heads. In general, the artist will model half of the head and then duplicate the vertices, invert their location relative to some plane, and connect the two pieces together. This ensures that the model will be symmetrical.

Otro método común para crear una malla poligonal es conectar varias primitivas , que son mallas poligonales predefinidas creadas por el entorno de modelado. Las primitivas comunes incluyen:

Finalmente, existen algunos métodos especializados para construir mallas con alto o bajo nivel de detalle. El modelado basado en bocetos es una interfaz fácil de usar para construir rápidamente modelos con poco detalle, mientras que los escáneres 3D se pueden usar para crear mallas con alto detalle basadas en objetos existentes del mundo real de una manera casi automática. Estos dispositivos son muy caros y generalmente sólo los utilizan investigadores y profesionales de la industria, pero pueden generar representaciones digitales submilimétricas de alta precisión.

Operaciones

Hay una gran cantidad de operaciones que se pueden realizar en mallas poligonales. Algunos de ellos corresponden aproximadamente a manipulaciones de objetos 3D en el mundo real, mientras que otros no. Las operaciones de malla poligonal incluyen:

Extensiones

Una vez que se ha construido una malla poligonal, se deben tomar más pasos antes de que sea útil para juegos, animación, etc. Se debe asignar textura al modelo para agregar colores y textura a la superficie y se le debe proporcionar un esqueleto para la animación. A las mallas también se les pueden asignar pesos y centros de gravedad para su uso en simulación física .

Para mostrar un modelo en la pantalla de una computadora fuera del entorno de modelado, es necesario almacenar ese modelo en uno de los formatos de archivo que se enumeran a continuación y luego usar o escribir un programa capaz de cargar desde ese formato. Los dos métodos principales para mostrar modelos poligonales 3D son OpenGL y Direct3D . Ambos métodos se pueden utilizar con o sin una tarjeta gráfica acelerada 3D .

Ventajas y desventajas

Existen muchas desventajas al representar un objeto utilizando polígonos. Los polígonos son incapaces de representar con precisión superficies curvas, por lo que se debe utilizar una gran cantidad de ellos para aproximar las curvas de una manera visualmente atractiva. El uso de modelos complejos tiene un coste en menor velocidad. En la conversión de líneas de exploración , cada polígono debe convertirse y mostrarse, independientemente de su tamaño, y con frecuencia hay una gran cantidad de modelos en la pantalla en un momento dado. A menudo, los programadores deben usar múltiples modelos con diferentes niveles de detalle para representar el mismo objeto con el fin de reducir la cantidad de polígonos que se representan.

La principal ventaja de los polígonos es que son más rápidos que otras representaciones. Mientras que una tarjeta gráfica moderna puede mostrar una escena muy detallada a una velocidad de fotogramas de 60 fotogramas por segundo o más, los modeladores de superficies , la forma principal de mostrar modelos no poligonales, son incapaces de lograr una velocidad de fotogramas interactiva (10 fotogramas por segundo o más). superior) con una cantidad similar de detalles. Con los sprites , otra alternativa a los polígonos, cada pose requerida debe crearse individualmente, mientras que un único modelo poligonal puede realizar cualquier movimiento si se aplican los datos de movimiento adecuados y se puede ver desde cualquier ángulo. [4]

Formatos de archivo

Hay una variedad de formatos disponibles para almacenar datos de polígonos 3D. Los más populares son:

Ver también

Referencias

  1. ^ "Primitivo - Wiki OpenGL". www.opengl.org .
  2. ^ "Usar un efecto básico con textura". msdn.microsoft.com .
  3. ^ "Método de modelado poligonal" . Consultado el 19 de abril de 2022 .
  4. ^ Rybicki, Joe (diciembre de 1996). "La realización de NBA Live 97". Juegos electrónicos mensuales . Núm. 89. Ziff Davis . pag. 301.

Bibliografía

  1. OpenGL SuperBible (3.ª ed.), de Richard S Wright y Benjamin Lipchak ISBN 0-672-32601-9 
  2. Guía de programación OpenGL: la guía oficial para aprender OpenGL, versión 1.4, cuarta edición de la Junta de Revisión de Arquitectura OpenGL ISBN 0-321-17348-1 
  3. Manual de referencia de OpenGL(R): el documento de referencia oficial de OpenGL, versión 1.4 (cuarta edición) por la Junta de Revisión de Arquitectura de OpenGL ISBN 0-321-17383-X 
  4. Documentación de Blender: https://web.archive.org/web/20051212074804/http://blender.org/cms/Documentation.628.0.html
  5. Documentación Maya: empaquetada con Alias ​​Maya, http://www.alias.com/eng/index.shtml