2011-05-23 4 views
42

¿Por qué los triángulos siempre se usan para dibujar superficies en 3D? ¿Por qué no un cuadrado o alguna otra forma?¿Por qué los motores 3D utilizan principalmente triángulos para dibujar superficies?

+0

sólo para añadir rápidamente un poco, polígonos (y más precisamente triángulos) no es la única manera de hacer que las superficies 3D: Salida surfels ([http://www.filipvanbouwel.be/master_thesis.php ] (http://www.filipvanbouwel.be/master_thesis.php)), vóxeles, etc. –

Respuesta

62

Los triángulos nunca pueden ser no planos; cualquier elemento con más de 3 puntos puede ser no plano y, por lo tanto, no se puede renderizar, a menos que se convierta en triángulos.

Por ejemplo: un cuadrado son dos triángulos que están en el mismo plano, si todos los puntos que forman el cuadrado son coplanarios. Se requieren muchos cálculos para asegurarnos de que todos los puntos sean coplanarios, por lo tanto, todos los polígonos que son mayores a 3 puntos se calculan previamente mediante su decimación en triángulos y se prueban para asegurarse de que todos los puntos sean coplanarios una vez. de en cada fotograma que se procesa.

Aquí hay una buena referencia about polygon meshes.

planar Mesh

http://softimage.wiki.softimage.com/xsidocs/ca0c8514.jpg

no plana de malla

http://softimage.wiki.softimage.com/xsidocs/ca0c854b.jpg

y un ejemplo más que podría hacerlo más claro

http://download.autodesk.com/us/maya/2010help/images/MED/Stargate/English/Poly/comp_poly_customwarpeg.png

La malla no plana es degenerada y no se puede ordenar 0 prestados correctamente de ninguna manera. Los triángulos no tienen este problema.

Eficiencia

Los triángulos son también muy eficiente de la memoria y se pueden ordenar, y se hace extremadamente rápido cuando se utiliza Triangle Strips que sólo necesita 1 punto para ser almacenada para cada triángulo adicional después de la primera.

http://upload.wikimedia.org/wikipedia/en/0/03/Triangle_Strip.png

y Triangle Fans que es un caso especial de una tira de triángulos.

http://www.codesampler.com/d3dbook/chapter_05/chapter_05_files/image008.jpg

10

Básicamente, cualquier estructura compleja (superficie) se puede representar como un grupo de triángulos. El triángulo es la geometría más atómica y primitiva. Por lo tanto, se utiliza como base para casi cualquier cosa. Sin embargo, la mayoría de los motores 3D le proporcionan primitivas más complejas como esferas, conos, cilindros, donas, etc. Revise la documentación de su biblioteca.

12

Dado que 3 puntos son los mínimos necesarios para definir una superficie plana, cualquier forma se puede simular utilizando muchos triángulos, y existen algoritmos eficientes para pintar rápidamente triángulos en la pantalla.

Cuestiones relacionadas