12 struct FileContentsData;
23 enum class LoadResult { Success, Corrupted, OutOfMemory, FileNotFound };
35 Mesh& operator=(
const Mesh& other );
38 const std::string& GetPath()
const;
45 const Vec3& GetAABBMin()
const;
48 const Vec3& GetAABBMax()
const;
52 const Vec3& GetSubMeshAABBMin(
unsigned subMeshIndex )
const;
56 const Vec3& GetSubMeshAABBMax(
unsigned subMeshIndex )
const;
59 unsigned GetSubMeshCount()
const;
63 const std::string& GetSubMeshName(
unsigned index )
const;
69 Impl& m() {
return reinterpret_cast<Impl&
>(_storage); }
70 Impl
const& m()
const {
return reinterpret_cast<Impl const&
>(_storage); }
72 static const std::size_t StorageSize = 1384;
73 static const std::size_t StorageAlign = 16;
75 std::aligned_storage<StorageSize, StorageAlign>::type _storage = {};
77 std::vector< SubMesh >& GetSubMeshes();
Definition: AudioClip.hpp:4
Contains a Mesh.
Definition: MeshRendererComponent.hpp:10
Contains a mesh. Can contain submeshes.
Definition: Mesh.hpp:19
LoadResult
Result of loading the mesh.
Definition: Mesh.hpp:23
3-component vector.
Definition: Vec3.hpp:12
Definition: FileSystem.hpp:12