BsDrawOps.cpp 607 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #include "BsDrawOps.h"
  2. namespace BansheeEngine
  3. {
  4. UINT32 vertexCountToPrimCount(DrawOperationType type, UINT32 elementCount)
  5. {
  6. UINT32 primCount = 0;
  7. switch (type)
  8. {
  9. case DOT_POINT_LIST:
  10. primCount = elementCount;
  11. break;
  12. case DOT_LINE_LIST:
  13. primCount = elementCount / 2;
  14. break;
  15. case DOT_LINE_STRIP:
  16. primCount = elementCount - 1;
  17. break;
  18. case DOT_TRIANGLE_LIST:
  19. primCount = elementCount / 3;
  20. break;
  21. case DOT_TRIANGLE_STRIP:
  22. primCount = elementCount - 2;
  23. break;
  24. case DOT_TRIANGLE_FAN:
  25. primCount = elementCount - 2;
  26. break;
  27. }
  28. return primCount;
  29. }
  30. }