Help! Why it's good to use triangles to display 3D models?


Somebody told me that, it’s good to use triangles to display 3D models. Is it true?
Could someone told me why we should do so? (and any limitation for this method?)

Are there any other methods? What are their
advantages and disadvantages?

Thanks very much for your concern!

It’s true. And it’s even better to use triangle strips and triangle fans, but sometimes it is harder to do so. If you use triangle strips and triangle fans you have less vertices to send to the rendering pipeline.

The performance of the triangle comes from the fact that the three vertices of the triangles are in the same plane and they are always a concave polygon. if you have a convex polygons, you need more calculations to correctly fill the object. This is a very basic description.

if you want to know more read :

Computer Graphics : principles and pratices from Foley and other guys(sorry I don’t know their names). This book is absolutly very theoric and will answer a lot(if not most) of your questions

[This message has been edited by Gorg (edited 04-04-2000).]

Hi Affa!

The reason to use triangles is the following:
Triangles are always concave and planar. So the acctual drawing can be performed by linear interpolation (not really true for textures, but kind of). These interpolations can be easly done eigther in software or hardware.

BUT this is only true if we are talking about normal 3d accelerators or software implementations. If we talk about advanced OGL 3d hardware, that has “on board logic” and is able to display openGL dísplay list, it something completly different.

You didn’t told what you are planning to do:
So if you target the “highend” market (meaning OpenGl accelerators that cost more than 1000 bucks), there are capable of displaying basic objects (cubes, cones, disk, e.t.c in hardware) Which means there are cranking the objects done into triangles by themself.

But, if you are talking about mainstream 3d accelerators like the Matrix G400, Nvidia GeForce or TNT 2, or ATI Boards, I suggest that you push triangles to them.

Hope that helped you!

And may the vector be with you!


Hm, Georg was faster