CmMeshData.cpp 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #include "CmMeshData.h"
  2. #include "CmVector2.h"
  3. #include "CmVector3.h"
  4. #include "CmMeshDataST.h"
  5. namespace CamelotEngine
  6. {
  7. MeshData::MeshData()
  8. :vertex(nullptr),
  9. normal(nullptr),
  10. tangent(nullptr),
  11. bitangent(nullptr),
  12. uv0(nullptr),
  13. uv1(nullptr),
  14. index(nullptr),
  15. indexCount(0),
  16. vertexCount(0)
  17. { }
  18. MeshData::~MeshData()
  19. {
  20. if(vertex != nullptr)
  21. delete [] vertex;
  22. if(normal != nullptr)
  23. delete [] normal;
  24. if(tangent != nullptr)
  25. delete [] tangent;
  26. if(bitangent != nullptr)
  27. delete [] bitangent;
  28. if(uv0 != nullptr)
  29. delete [] uv0;
  30. if(uv1 != nullptr)
  31. delete [] uv1;
  32. if(index != nullptr)
  33. delete [] index;
  34. }
  35. /************************************************************************/
  36. /* SERIALIZATION */
  37. /************************************************************************/
  38. RTTITypeBase* MeshData::getRTTIStatic()
  39. {
  40. return MeshDataST::instance();
  41. }
  42. RTTITypeBase* MeshData::getRTTI() const
  43. {
  44. return MeshData::getRTTIStatic();
  45. }
  46. }