24 lines
529 B
C++
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;
|
|
}
|
|
};
|
|
} |