32 lines
757 B
C++
32 lines
757 B
C++
#pragma once
|
|
#include "cereal/cereal.hpp"
|
|
|
|
#ifdef DEER_RENDER
|
|
#include "DeerRender/Mesh.h"
|
|
#include "DeerRender/Shader.h"
|
|
#include "DeerRender/Resource.h"
|
|
|
|
#include "DeerRender/Tools/Memory.h"
|
|
#include <functional>
|
|
#endif
|
|
|
|
namespace Deer {
|
|
struct WorldSerializationSettings {
|
|
#ifdef DEER_RENDER
|
|
bool includeServer = false;
|
|
bool includeClient = true;
|
|
|
|
std::function<Resource<GPUMesh>(StorageType)> meshLoadingFunction = nullptr;
|
|
std::function<Resource<Shader>(StorageType)> shaderLoadingFunction = nullptr;
|
|
#else
|
|
bool includeServer = true;
|
|
bool includeClient = false;
|
|
#endif
|
|
|
|
template <class Archive>
|
|
void serialize(Archive& archive) {
|
|
archive(CEREAL_NVP(includeServer));
|
|
archive(CEREAL_NVP(includeClient));
|
|
}
|
|
};
|
|
} // namespace Deer
|