summaryrefslogtreecommitdiffstats
path: root/src/Runtime/Source/datamodel
diff options
context:
space:
mode:
Diffstat (limited to 'src/Runtime/Source/datamodel')
-rw-r--r--src/Runtime/Source/datamodel/Qt3DSMetadata.cpp11
-rw-r--r--src/Runtime/Source/datamodel/Qt3DSMetadata.h4
2 files changed, 15 insertions, 0 deletions
diff --git a/src/Runtime/Source/datamodel/Qt3DSMetadata.cpp b/src/Runtime/Source/datamodel/Qt3DSMetadata.cpp
index 99d7cb8e..03c515e0 100644
--- a/src/Runtime/Source/datamodel/Qt3DSMetadata.cpp
+++ b/src/Runtime/Source/datamodel/Qt3DSMetadata.cpp
@@ -474,6 +474,17 @@ public:
return Empty();
}
+ Option<qt3ds::QT3DSVec4> GetPropertyValueVector4(TStrTableStr inType, TStrTableStr inProperty,
+ TStrTableStr inId) override
+ {
+ SRuntimeMetaDataPropertyInfo &theInfo(FindProperty(inType, inProperty, inId));
+ if (theInfo.m_Value.hasValue()) {
+ SFloat4 theFloat4 = qt3dsdm::get<SFloat4>(*theInfo.m_Value);
+ return qt3ds::QT3DSVec4(theFloat4[0], theFloat4[1], theFloat4[2], theFloat4[3]);
+ }
+ return Empty();
+ }
+
virtual Option<qt3ds::QT3DSI32> GetPropertyValueLong(TStrTableStr inType, TStrTableStr inProperty,
TStrTableStr inId) override
{
diff --git a/src/Runtime/Source/datamodel/Qt3DSMetadata.h b/src/Runtime/Source/datamodel/Qt3DSMetadata.h
index a90d4fd6..ea2d4452 100644
--- a/src/Runtime/Source/datamodel/Qt3DSMetadata.h
+++ b/src/Runtime/Source/datamodel/Qt3DSMetadata.h
@@ -33,6 +33,7 @@
#include "foundation/Qt3DSRefCounted.h"
#include "foundation/Qt3DSOption.h"
#include "foundation/Qt3DSVec3.h"
+#include "foundation/Qt3DSVec4.h"
#include <EASTL/string.h>
#include <EASTL/vector.h>
#include "foundation/StringTable.h"
@@ -226,6 +227,9 @@ public:
virtual Option<qt3ds::QT3DSVec3> GetPropertyValueVector3(TStrTableStr inType, TStrTableStr inProperty,
TStrTableStr inId = TStrTableStr()) = 0;
+ virtual Option<qt3ds::QT3DSVec4> GetPropertyValueVector4(TStrTableStr inType,
+ TStrTableStr inProperty, TStrTableStr inId = TStrTableStr()) = 0;
+
//==============================================================================
/**
* Get property value as long