EPrimitiveTypes.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. // Copyright (C) 2002-2012 Nikolaus Gebhardt
  2. // This file is part of the "Irrlicht Engine".
  3. // For conditions of distribution and use, see copyright notice in irrlicht.h
  4. #ifndef IRR_E_PRIMITIVE_TYPES_H_INCLUDED
  5. #define IRR_E_PRIMITIVE_TYPES_H_INCLUDED
  6. namespace irr
  7. {
  8. namespace scene
  9. {
  10. //! Enumeration for all primitive types there are.
  11. enum E_PRIMITIVE_TYPE
  12. {
  13. //! All vertices are non-connected points.
  14. EPT_POINTS=0,
  15. //! All vertices form a single connected line.
  16. EPT_LINE_STRIP,
  17. //! Just as LINE_STRIP, but the last and the first vertex is also connected.
  18. EPT_LINE_LOOP,
  19. //! Every two vertices are connected creating n/2 lines.
  20. EPT_LINES,
  21. //! After the first two vertices each vertex defines a new triangle.
  22. //! Always the two last and the new one form a new triangle.
  23. EPT_TRIANGLE_STRIP,
  24. //! After the first two vertices each vertex defines a new triangle.
  25. //! All around the common first vertex.
  26. EPT_TRIANGLE_FAN,
  27. //! Explicitly set all vertices for each triangle.
  28. EPT_TRIANGLES,
  29. //! After the first two vertices each further two vertices create a quad with the preceding two.
  30. //! Not supported by Direct3D
  31. EPT_QUAD_STRIP,
  32. //! Every four vertices create a quad.
  33. //! Not supported by Direct3D
  34. //! Deprecated with newer OpenGL drivers
  35. EPT_QUADS,
  36. //! Just as LINE_LOOP, but filled.
  37. //! Not supported by Direct3D
  38. //! Deprecated with newer OpenGL drivers
  39. EPT_POLYGON,
  40. //! The single vertices are expanded to quad billboards on the GPU.
  41. EPT_POINT_SPRITES
  42. };
  43. } // end namespace scene
  44. } // end namespace irr
  45. #endif