BsMeshManager.h 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsCorePrerequisites.h"
  5. #include "BsModule.h"
  6. #include "BsMesh.h"
  7. namespace bs
  8. {
  9. /** @addtogroup RenderAPI-Internal
  10. * @{
  11. */
  12. /** Manager that handles creation of Mesh%es. */
  13. class BS_CORE_EXPORT MeshManager : public Module<MeshManager>
  14. {
  15. public:
  16. MeshManager();
  17. ~MeshManager();
  18. /** Returns some dummy mesh data with one triangle you may use for initializing a mesh. */
  19. SPtr<MeshData> getDummyMeshData() const { return mDummyMeshData; }
  20. /** Returns a dummy mesh containing one triangle. */
  21. HMesh getDummyMesh() const { return mDummyMesh; }
  22. protected:
  23. /** @copydoc Module::onStartUp */
  24. void onStartUp() override;
  25. private:
  26. SPtr<MeshData> mDummyMeshData;
  27. HMesh mDummyMesh;
  28. };
  29. /** @} */
  30. }