summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJanne Kangas <janne.kangas@qt.io>2020-02-14 10:43:48 +0200
committerJanne Kangas <janne.kangas@qt.io>2020-02-17 09:49:54 +0200
commit6b69e1e46197fd4113e7001042765386c3b7356d (patch)
treeffdf3a3b6a619c1a08b129123aa542c383a6d02d
parent6a09adfb05cfc309edc321d4a1d4f66b8a83b579 (diff)
Handle ordered attribute in runtime
Add missing handler for "ordered" attribute also on runtime side. Also, uncomment assert for unknown attribute, as silently ignored attributes can be tricky to debug. This does not fix the issue of non-ordered groups having wrong depth/alpha in Editor, but makes Editor and Runtime behave identically. Task-id: QT3DS-4058 Change-Id: Ic68d245143664d8ac4e74a6b3434f6ff476608a6 Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
-rw-r--r--src/dm/systems/Qt3DSDMComposerTypeDefinitions.h3
-rw-r--r--src/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp2
-rw-r--r--src/runtimerender/Qt3DSRenderUIPSharedTranslation.h3
3 files changed, 5 insertions, 3 deletions
diff --git a/src/dm/systems/Qt3DSDMComposerTypeDefinitions.h b/src/dm/systems/Qt3DSDMComposerTypeDefinitions.h
index e8deeb8..0770d19 100644
--- a/src/dm/systems/Qt3DSDMComposerTypeDefinitions.h
+++ b/src/dm/systems/Qt3DSDMComposerTypeDefinitions.h
@@ -122,6 +122,7 @@ class IPropertySystem;
HANDLE_COMPOSER_PROPERTY(orientation, m_Orientation, TDataStrPtr, L"Left Handed") \
HANDLE_COMPOSER_PROPERTY(boneid, m_BoneId, qt3ds::QT3DSI32, 0) \
HANDLE_COMPOSER_PROPERTY(ignoresparent, m_IgnoresParent, bool, false) \
+ HANDLE_COMPOSER_PROPERTY(ordered, m_ordered, bool, false) \
HANDLE_COMPOSER_PROPERTY_DUPLICATE(controlledproperty, m_ControlledProperty, TDataStrPtr, L"")
#define ITERATE_COMPOSER_MODEL_PROPERTIES \
@@ -245,7 +246,7 @@ class IPropertySystem;
HANDLE_COMPOSER_PROPERTY_DUPLICATE(controlledproperty, m_ControlledProperty, TDataStrPtr, L"")
#define ITERATE_COMPOSER_GROUP_PROPERTIES \
- HANDLE_COMPOSER_PROPERTY(ordered, m_ordered, bool, false) \
+ HANDLE_COMPOSER_PROPERTY_DUPLICATE(ordered, m_ordered, bool, false) \
HANDLE_COMPOSER_PROPERTY_DUPLICATE(variants, m_variants, TDataStrPtr, L"") \
#define ITERATE_COMPOSER_LIGHT_PROPERTIES \
diff --git a/src/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp b/src/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp
index c8a148b..f416d66 100644
--- a/src/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp
+++ b/src/engine/Qt3DSRenderRuntimeBindingImplTranslation.cpp
@@ -879,7 +879,7 @@ struct SNodeTranslator : public Qt3DSTranslator
break;
default:
// Unknown attribute
- // QT3DS_ASSERT( false );
+ QT3DS_ASSERT(false);
break;
}
}
diff --git a/src/runtimerender/Qt3DSRenderUIPSharedTranslation.h b/src/runtimerender/Qt3DSRenderUIPSharedTranslation.h
index 053b267..ca0e5e8 100644
--- a/src/runtimerender/Qt3DSRenderUIPSharedTranslation.h
+++ b/src/runtimerender/Qt3DSRenderUIPSharedTranslation.h
@@ -313,7 +313,8 @@ namespace render {
HANDLE_QT3DS_RENDER_VEC3_PROPERTY(Node, Pivot, TransformDirty) \
HANDLE_QT3DS_RENDER_OPACITY_PROPERTY(Node, LocalOpacity, TransformDirty) \
HANDLE_QT3DS_ROTATION_ORDER_PROPERTY(Node, RotationOrder, TransformDirty) \
- HANDLE_QT3DS_NODE_ORIENTATION_PROPERTY(Node, LeftHanded, TransformDirty)
+ HANDLE_QT3DS_NODE_ORIENTATION_PROPERTY(Node, LeftHanded, TransformDirty) \
+ HANDLE_QT3DS_RENDER_PROPERTY(Group, ordered, Dirty)
#define ITERATE_QT3DS_RENDER_LAYER_PROPERTIES \
HANDLE_QT3DS_NODE_FLAGS_INVERSE_PROPERTY(Layer, LayerEnableDepthTest, Dirty) \