Dawn/src/dawn/prefab/Prefab.hpp

24 lines
529 B
C++

// Copyright (c) 2022 Dominic Masters
//
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT
#pragma once
#include "asset/AssetManager.hpp"
#include "scene/Scene.hpp"
namespace Dawn {
template<class T>
class Prefab {
public:
static std::vector<Asset*> getRequiredAssets() {
return T::prefabAssets();
}
static T * create(Scene *scene) {
T *item = scene->createSceneItemOfType<T>();
item->prefabInit();
return item;
}
};
}