2020-06-02 11:46:18 +02:00
|
|
|
#pragma once
|
|
|
|
|
#include "Asset.h"
|
|
|
|
|
|
|
|
|
|
namespace Seele
|
|
|
|
|
{
|
2021-04-01 16:40:14 +02:00
|
|
|
DECLARE_REF(Mesh)
|
|
|
|
|
DECLARE_REF(MaterialAsset)
|
2020-06-02 11:46:18 +02:00
|
|
|
class MeshAsset : public Asset
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
MeshAsset();
|
|
|
|
|
MeshAsset(const std::string& directory, const std::string& name);
|
2020-06-08 01:44:47 +02:00
|
|
|
MeshAsset(const std::filesystem::path& fullPath);
|
|
|
|
|
virtual ~MeshAsset();
|
|
|
|
|
virtual void save() override;
|
|
|
|
|
virtual void load() override;
|
2020-08-06 00:54:43 +02:00
|
|
|
void addMesh(PMesh mesh);
|
2021-04-13 23:09:16 +02:00
|
|
|
const Array<PMesh> getMeshes();
|
2020-06-02 11:46:18 +02:00
|
|
|
private:
|
2020-06-08 01:44:47 +02:00
|
|
|
Array<PMesh> meshes;
|
|
|
|
|
Array<PMaterialAsset> referencedMaterials;
|
2020-06-02 11:46:18 +02:00
|
|
|
};
|
2021-04-01 16:40:14 +02:00
|
|
|
DEFINE_REF(MeshAsset)
|
2020-06-02 11:46:18 +02:00
|
|
|
} // namespace Seele
|