summaryrefslogtreecommitdiffstats
path: root/src/runtime/q3dsuippresentation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/runtime/q3dsuippresentation.cpp')
-rw-r--r--src/runtime/q3dsuippresentation.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/runtime/q3dsuippresentation.cpp b/src/runtime/q3dsuippresentation.cpp
index bafb313..260f4c4 100644
--- a/src/runtime/q3dsuippresentation.cpp
+++ b/src/runtime/q3dsuippresentation.cpp
@@ -4279,6 +4279,19 @@ Q3DSCustomMaterial Q3DSUipPresentation::customMaterial(const QString &idOrFilena
return d->customMaterials.value(key);
}
+Q3DSCustomMaterial Q3DSUipPresentation::customMaterial(const QByteArray &id, const QByteArray &data)
+{
+ Q3DSCustomMaterialParser p;
+ bool ok = false;
+ Q3DSCustomMaterial mat = p.parse(data, &ok);
+ if (!ok) {
+ qWarning("Failed to parse metadata %s", id.constData());
+ return Q3DSCustomMaterial();
+ }
+ d->customMaterials.insert(id, mat);
+ return mat;
+}
+
bool Q3DSUipPresentation::loadEffect(const QByteArray &id, const QString &assetFilename)
{
return loadMeta<Q3DSEffect, Q3DSEffectParser>(id, assetFilename, &d->effects);