Define ModelLoader instance in ModelCache

This commit is contained in:
sabrina-shanman 2018-11-14 17:21:47 -08:00
parent f900a81e7a
commit fc0a31fa0d
2 changed files with 18 additions and 0 deletions

View file

@ -316,6 +316,22 @@ ModelCache::ModelCache() {
const qint64 GEOMETRY_DEFAULT_UNUSED_MAX_SIZE = DEFAULT_UNUSED_MAX_SIZE;
setUnusedResourceCacheSize(GEOMETRY_DEFAULT_UNUSED_MAX_SIZE);
setObjectName("ModelCache");
// Add supported model formats
ModelLoader::MIMEType fbxMIMEType("fbx");
fbxMIMEType.extensions.push_back("fbx");
fbxMIMEType.fileSignatures.emplace_back("Kaydara FBX Binary \x00", 0);
_modelLoader.addSupportedFormat<FBXSerializer>(fbxMIMEType);
ModelLoader::MIMEType objMIMEType("obj");
objMIMEType.extensions.push_back("obj");
_modelLoader.addSupportedFormat<OBJSerializer>(objMIMEType);
ModelLoader::MIMEType gltfMIMEType("gltf");
gltfMIMEType.extensions.push_back("gltf");
gltfMIMEType.webMediaTypes.push_back("model/gltf+json");
_modelLoader.addSupportedFormat<GLTFSerializer>(gltfMIMEType);
}
QSharedPointer<Resource> ModelCache::createResource(const QUrl& url, const QSharedPointer<Resource>& fallback,

View file

@ -20,6 +20,7 @@
#include "FBXSerializer.h"
#include "TextureCache.h"
#include "ModelLoader.h"
// Alias instead of derive to avoid copying
@ -158,6 +159,7 @@ protected:
private:
ModelCache();
virtual ~ModelCache() = default;
ModelLoader _modelLoader;
};
class NetworkMaterial : public graphics::Material {