summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Fix for bounding volume handling and calculationVolker Enderlein2019-10-012-18/+192
| | | | | | | | | | | | | | - Fixed Ritter algorithm implementation - Added notation of invalid bounding sphere (radius == -1.0) - Handle merging of invalid bounding sphere with valid ones - Added test cases and adjusted tests boundingsphere and proximityfilter - This is necessary to ensure the correct working for viewAll and viewEntity Task-number: QTBUG-78313 Change-Id: I1dc6d227cf9009f6fbd3230093c7a7a94fb05ae3 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-08-242-0/+98
|\ | | | | | | Change-Id: I7d7274866129a3c8a3ed3788680a46368120d20d
| * Matrix_SSE/Matrix_AVX2: fix mapVectorPaul Lemire2019-08-202-0/+98
| | | | | | | | | | | | Change-Id: I4584d2c879a72eccbaf273d0e84b3b6f6bb55295 Task-number: QTBUG-77675 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-08-131-1/+1
|\| | | | | | | Change-Id: I359b15d87622515ee4f05db1f01d4b476027378e
| * Fix download test after removal of assetsMike Krus2019-08-071-1/+1
| | | | | | | | | | Change-Id: Id7f37b014dec7f395bbf3d2c6c22ea59283257ec Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-07-2315-5/+861
|\| | | | | | | Change-Id: I2a66e9344b72524431885bdf5f59fcaedb94c718
| * RenderStates: fix override of nested RenderStatesPaul Lemire2019-07-1815-5/+861
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When merging states, make sure we don't add several states of the same types with possibly different values. We should only add states with type we don't already have. Since the FG traversal is done from leaf to root, we know that the states we already contain should override any state that may have been specified higher up in the FG branch. Change-Id: I9bd1eadd37e8addf740a4b85b2318f9be269fedb Task-number: QTBUG-76766 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-07-161-18/+18
|\| | | | | | | Change-Id: I0f68ab1277617c32b1c31f29d8793d23d9909208
| * QRay3D: normalize the direction vector internallyPaul Lemire2019-07-151-18/+18
| | | | | | | | | | | | | | | | | | It can be created with a non normalized dir vector but we should always perform the computations with a normalized dir vector for correct results. Change-Id: Ie9108de7ed2092f6b979a70ad9391267fe6c4696 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-06-152-1/+331
|\| | | | | | | Change-Id: I903f92a7b910eee165a2dd708a2d5fb25192ab14
| * Fix removal of components when they are destroyedMike Krus2019-05-281-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Automatic removal of components when they are destroyed is based on connecting to the destroyed() signal. This however means that by the time removeComponent() is called, the pointer is no longer a valid QComponent (just a QNode). While accessing member data of derived classes such as nodeId is fine, emitting signals from derived class does nothing, and in some cases asserts. Fix this by: - doing the QComponent clean up from it's destructor - implementing a separate method on QEntity to simply clear the now partly invalid pointer from the list. Change-Id: Id7632ee2ceaff6548c44c7a43ae40a0372febde9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Fix Parameter priority sortingPaul Lemire2019-05-241-0/+321
| | | | | | | | | | | | | | Parameters defined on an effect have priority over those defined in a Technique. Change-Id: I49558a065b613d7ea9d1cbf0a64f6d5aad941cd3 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-05-292-3/+4
|\| | | | | | | Change-Id: I9e9214906c5cda56d0bcc98678c77be69189699d
| * Clean up warningsMike Krus2019-05-282-3/+4
| | | | | | | | | | Change-Id: I1ddad305359586481021e85f6e4a470d3a6521b0 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Introduce EntityAccumulatorMike Krus2019-05-251-1/+56
| | | | | | | | | | | | | | | | | | | | Used to traverse scene graph (using EntityVisitor) and collect list of entity matching a predicate. By default, collects all entities, but can also collect those that have a certain type of component, or use a custom predicate Change-Id: I9da877d629fe146c1307f5afead7502c440aca9f Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Introduce EntityVisitorMike Krus2019-05-251-0/+79
| | | | | | | | | | | | | | | | | | Used to traverse the scene graph without having to create numerous (and mostly empty) QVector<Entity *> for children, which leads to a lot of memory allocation. Change-Id: I023b2314d75249d0e3009010fd36dcbe2088c7db Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Iterate on child handlesMike Krus2019-05-258-0/+64
| | | | | | | | | | | | | | | | | | | | | | | | Resolving list of handles as list of node pointers introduces extra heap memory allocation (via QVector) which can cause locking with high number of threads. Added Entity::traverse() methods to apply a functor to all entitied in a sub-tree. Change-Id: I239ab30ac8ac53ba83666a147015d58465d76eb2 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-05-137-69/+8
|\| | | | | | | | | | | | | Conflicts: tests/auto/render/shaderbuilder/tst_shaderbuilder.cpp Change-Id: I27de9b83fa6ef6bb319e4b11c932f91f9ff92dc3
| * QChannelMapping: only send const char *propertyName to backendPaul Lemire2019-05-104-50/+6
| | | | | | | | | | | | | | | | | | | | It was otherwise sending a QString property as well as the const char *propertyName. Given only propertyName is actually used, remove QString property from the backend to avoid useless confusion and stop sending the notification change. Change-Id: Ie26771e320e26d44d7fce3e0a864bad1d4df558f Reviewed-by: Mike Krus <mike.krus@kdab.com>
| * Restore ShaderBuilder unit testsPaul Lemire2019-05-101-1/+0
| | | | | | | | | | Change-Id: I2a3a013078a71610cd5c61cf988f6bfa8d6159ac Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Update ShaderBuilder tests following changes in QShaderGeneratorPaul Lemire2019-05-093-19/+3
| | | | | | | | | | Change-Id: Ia047e79bcb2ecb7da3438c4cb4980377dc20744e Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Merge remote-tracking branch 5.12 into 5.13Paul Lemire2019-04-2621-159/+1195
|\| | | | | | | Change-Id: I42affdd02bddb5205b9f2455f0c5e5efbd414dd8
| * Fix FrameGraph node parentingJim Albamont2019-04-161-34/+18
| | | | | | | | | | | | | | | | | | | | | | Framegraph suffers from the same problem as Entities. When they are created they pass their parent FrameGraph node, and not their parent QNode. When reparenting them we need to make sure the same thing happens otherwise you get backend FrameGraph nodes parented to non-framegraph nodes and they are just dropped from backend. Change-Id: I1b9cab2c9e869c690c4c43208e62a1044b3359a4 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Cache light/renderable/computable vectorsJames Turner2019-04-102-22/+97
| | | | | | | | | | | | | | | | This avoids running these jobs when lights / renderables have not changed in a frame Change-Id: I604180fe3442ab67648c4ba5d9effb8639c68ef7 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Disable ShaderBuilder unit testsPaul Lemire2019-04-101-0/+1
| | | | | | | | | | | | | | To allow Qt base QShaderGenerator changes to be merged Change-Id: I0036215bc5f841246cc109f21c87a07563ec0f11 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
| * Fix the build with -no-guiLiang Qi2019-04-091-0/+3
| | | | | | | | | | | | Task-number: QTBUG-74602 Change-Id: If9cf0795e887a0b3cdfed0a6f5e7798116ef137d Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * Fix backend node creation order using an initialization queueJim Albamont2019-04-081-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backend nodes should always be created from the top-most parent down ensuring that every parent is created before its children. The original way of creating backend nodes by calling _q_postConstructorInit in a deferred manner from the QNode constructor breaks this because backend node creation happens in the order that the nodes on the front-end were created. This was often incorrect when reparenting newly created nodes. Fix by creating a queue of nodes needing a _q_postConstructorInit call and only adding nodes to the queue if one of their ancestors is not already in the queue. This ensures that _q_postConstructorInit is only called for the top-most node in any subtree. This behavior exactly matches the creation behavior when building a subtree and reparenting it to a node with a backend. Doing silly things like creating a node with a parent that has a backend then immediately reparenting is now safe. After this patch, it should be safe to assume that backend nodes can always find their backend parent. Adding only the top-most nodes to the queue and processing the entire queue at one time also ensures that all creation events get sent in the same batch. This fixes the problem of having backend nodes referring to other backend nodes that haven't been created yet. Task-number: QTBUG-74106 Task-number: QTBUG-73905 Change-Id: Idcf38d6c3164f6be4394a3b25554547414061059 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Fix Entity parenting hierarchyJim Albamont2019-04-0413-1/+503
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the initial Entity backend node hierarchy is created it skips over any non-entity nodes to ensure that Entities are only parented to other Entities. Calling QNode::setParent breaks this when reparenting Entities to non-entity nodes. Fix by sending a new "parentEntityUpdated" property update that backend Entity nodes listen for. They keep the id of their new parent and flag the need to rebuild the entity hierarchy. This triggers a new job to clear the children and parents of every backend Entity, then rebuilds the hierarchy using the stored parent ID in each Entity. This is much more forgiving of creation/parenting ordering issues and shouldn't be less performant because any Entity reparent was previously marking everything dirty anyway. Add a new test from QTBUG-73905 that creates 4 cylinders and manipulates the parents in different ways. Add a new test to tst_nodes to reparent a QEntity to a QNode and ensure the entity finds it's correct QEntity parent. Add a new test to tst_entity to ensure backend nodes correctly handle the new parenting events. Task-number: QTBUG-73905 Change-Id: Iab0203947d89bbed2868b3629fbde879675fe568 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Animations: handle variable length propertiesPaul Lemire2019-04-035-102/+499
| | | | | | | | | | | | | | | | | | For that we know determine the expected number of channel components for a given property in the frontend where we have access to both the type and the value rather than in the backend using the type only. Change-Id: I75aca20d43dd1b3db316c303af041acd557c07e4 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Disable ShaderBuilder unit testsPaul Lemire2019-04-251-0/+3
| | | | | | | | | | | | | | | | To allow Qt base QShaderGenerator changes to be merged Change-Id: I26088ccf55b510b5eb845c583c0551ccfd817eb7 Task-number: QTBUG-75384 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | Remove unused codev5.13.0-beta3v5.13.0-beta2Mike Krus2019-04-041-30/+0
| | | | | | | | | | | | Change-Id: I292b8b373e0f34dfc51f2a77f082fda920893e64 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: James Turner <james.turner@kdab.com>
* | Merge branch '5.12' into 5.13Paul Lemire2019-04-0218-41/+570
|\| | | | | | | Change-Id: If17511da64dd666a536408aa3cb3178ef6db0403
| * Update the backend's buffer data when updating part of QBufferGiulio Camuffo2019-04-021-1/+1
| | | | | | | | | | | | | | Cherry-picked from da7e453d001715f9b0fc9eaf29dd245058e23dab Change-Id: I9cf18df56d501c7ea49727bc2d1da20371308d4a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Unify shader include handlingMichael Brasser2019-04-016-0/+31
| | | | | | | | | | | | | | | | Share the code for this between QShaderBuilder and QShaderProgram. As a side effect QShaderProgram gains support for absolute paths. Change-Id: I71dbe0bff702806f0655992008c54bbaa9c4f2c9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Dont play animations that are disabledJuan Jose Casafranca2019-03-281-9/+47
| | | | | | | | | | | | Change-Id: I5293ff8d16c511de79c4583783b238154af32f61 Task-number: QTBUG-69373 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Merge remote-tracking branch 'origin/5.12.2' into 5.12Qt Forward Merge Bot2019-03-154-3/+376
| |\ | | | | | | | | | Change-Id: Idc824e1b8191e5fa624966e619075b1ec8c850c6
| | * Make sure backend node is created when component is added to Entityv5.12.2Svenn-Arne Dragly2019-02-221-0/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In addition, the parent of the component and all further ancestors need to be registered on the backend. We do this by calling QNodePrivate::_q_postConstructorInit on all these nodes. Also add autotest that triggers the case referenced in QTBUG-72236 to avoid regressions. Change-Id: Ibf8f43654d145ea8b8082b2f30123ea65e42ff55 Fixes: QTBUG-72236 Reviewed-by: Paul Lemire <paul.lemire@kdab.com> Reviewed-by: James Turner <james.turner@kdab.com>
| | * Add test for component added to parent with pending backend creationSvenn-Arne Dragly2019-02-221-2/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test makes sure that the order of events is correct when a parentless component is added to an entity that does not yet have a backend node because it was created with a parent and thus has not yet called _q_postConstructorInit. Change-Id: I6d15003549cc9d327c5c2de84723e5f8897e4dcf Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| | * Fix broken creation order for nodes used as propertiesSvenn-Arne Dragly2019-02-221-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, child nodes may be constructed before their parents and their node creation changes will arrive at the backend out-of-order. This could result in a child node referencing a parent that we have not yet received a creation change for. Also add a unit test to take this case into account. Change-Id: I26b29e63863d1686e7b9239c63297c7e6c341f4e Task-number: QTBUG-73986 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| | * Add manual test for backend node creation for componentsSvenn-Arne Dragly2019-02-223-1/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | This test triggers the case referenced in QTBUG-72236 and is added to avoid regressions. Task-number: QTBUG-72236 Change-Id: I797015dfe25a084e75183c02e07dddb224fbc738 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | tests/auto/render/render.pro: Remove duplicate entry "scene2d"Friedemann Kleint2019-03-071-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The entry is added unconditionally and in a scope qtConfig(qt3d-input). Remove the first entry, fixing: Makefile:3343: warning: overriding recipe for target 'sub-scene2d-qmake_all' Makefile:2918: warning: ignoring old recipe for target 'sub-scene2d-qmake_all' Makefile:3347: warning: overriding recipe for target 'sub-scene2d' Makefile:2922: warning: ignoring old recipe for target 'sub-scene2d' Makefile:3350: warning: overriding recipe for target 'sub-scene2d-make_first' Change-Id: I6e702cdea2e31eb0de64c7efb7d39b56265fa6ef Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * | Use slerp for animating rotation channelsJuan Jose Casafranca2019-02-224-2/+96
| |/ | | | | | | | | Change-Id: Ic6aa6fd1c1a1e7757dba9466b59d20834b56e246 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
| * Fix: rebuild material and layer caches when FrameGraph tree is dirtyPaul Lemire2019-02-192-33/+84
| | | | | | | | | | | | | | | | | | | | This could otherwise result in black screens when the FrameGraph tree is updated and no other change is sent. Screen would remain black until some other element with dirty changes triggers a cache rebuild. Change-Id: Iac43965f06d1d644de14e6a6c8768e035bed69a6 Reviewed-by: Mike Krus <mike.krus@kdab.com>
* | Fix deprecation warnings about Qt3DRender::QBuffer::BufferTypeFriedemann Kleint2019-03-125-28/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the calls as 6158b4ae7cc88848b03d5d592a671de7113c4faf states that it no longer has any effect, fixing: gltfgeometryloader.cpp:333:18: warning: 'void Qt3DRender::QBuffer::setType(Qt3DRender::QBuffer::BufferType)' is deprecated [-Wdeprecated-declarations] gltfgeometryloader.cpp:371:54: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] basegeometryloader.cpp:155:39: warning: 'void Qt3DRender::QBuffer::setType(Qt3DRender::QBuffer::BufferType)' is deprecated [-Wdeprecated-declarations] basegeometryloader.cpp:202:46: warning: 'void Qt3DRender::QBuffer::setType(Qt3DRender::QBuffer::BufferType)' is deprecated [-Wdeprecated-declarations] instancebuffer.cpp:61:39: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is dep tst_qbuffer.cpp:79:96: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_qbuffer.cpp:85:100: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_qbuffer.cpp:128:109: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_qbuffer.cpp:132:57: warning: ‘void Qt3DRender::QBuffer::setType(Qt3DRender::QBuffer::BufferType)’ is deprecated [-Wdeprecated-declarations] tst_attribute.cpp:56:68: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_attribute.cpp:108:68: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_buffer.cpp:74:68: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_buffer.cpp:271:68: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_buffer.cpp:297:68: warning: ‘Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)’ is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:519:95: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:574:95: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:967:83: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:969:82: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] tst_trianglesextractor.cpp:56:118: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] tst_trianglesextractor.cpp:57:116: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] tst_trianglesextractor.cpp:199:118: warning: 'Qt3DRender::QBuffer::QBuffer(Qt3DRender::QBuffer::BufferType, Qt3DCore::QNode*)' is deprecated [-Wdeprecated-declarations] Change-Id: I6835598a1771a0ec3a0b080911fa4cada210a01a Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Fix deprecation warnings about setDataType()/setDataSize()Friedemann Kleint2019-03-071-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace by new API, fixing: tst_gltfplugins.cpp:590:67: warning: 'void Qt3DRender::QAttribute::setDataType(Qt3DRender::QAttribute::VertexBaseType)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:591:39: warning: 'void Qt3DRender::QAttribute::setDataSize(uint)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:623:60: warning: 'void Qt3DRender::QAttribute::setDataType(Qt3DRender::QAttribute::VertexBaseType)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:624:32: warning: 'void Qt3DRender::QAttribute::setDataSize(uint)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:639:70: warning: 'void Qt3DRender::QAttribute::setDataType(Qt3DRender::QAttribute::VertexBaseType)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:640:34: warning: 'void Qt3DRender::QAttribute::setDataSize(uint)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:654:62: warning: 'void Qt3DRender::QAttribute::setDataType(Qt3DRender::QAttribute::VertexBaseType)' is deprecated [-Wdeprecated-declarations] tst_gltfplugins.cpp:655:34: warning: 'void Qt3DRender::QAttribute::setDataSize(uint)' is deprecated [-Wdeprecated-declarations] Change-Id: Ie5e379db148edf1853d1a7a2661e328612b35bae Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | Merge remote-tracking branch 'origin/5.12' into devQt Forward Merge Bot2019-01-103-2/+45
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ie8a4bf768bffba61dca9e315151c035be7b48723
| * Recompute bounding volumes when buffer changesPaul Lemire2019-01-071-0/+2
| | | | | | | | | | | | | | | | | | | | Right now the bounding volumes would be computed only when a geometry is marked dirty, which essentially means only when the geometry is first loaded. However, if a geometry buffer were to change, we need to recompute the bounding volume. Change-Id: Ie3fb83d1cc11a3bbfbe2b9828e9f8d7c302d175b Reviewed-by: Mike Krus <mike.krus@kdab.com>
| * Picking: viewport contains check needs to use pos in GL coordinatePaul Lemire2019-01-071-2/+24
| | | | | | | | | | | | | | | | | | | | The viewport rect is computed in GL coordinates. Therefore we need to check if the mouse is contained with the position in GL coordinates. The error is not noticeable unless you are using non full height viewport. Change-Id: I1c39ff91da4a3649288826b939071a298c83c723 Task-number: QTBUG-72856 Reviewed-by: Mike Krus <mike.krus@kdab.com>
| * QRenderCapture: Prevent crash on shutdown when replies are pendingChristian Andersen2019-01-061-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | When a QRenderCapture is deleted its destructor runs, then the QFrameGraphNode destructor, then the QNode destructor and finally the QObject destructor. The QObject destructor deletes its QObjectPrivate member, which destructs QRenderCapturePrivate. At that point the QRenderCapturePrivate tries to disconnect on an invalid pointer to the QRenderCapture (which was already deleted). Change-Id: Ib5835e3f86a282b963220b0dab656258111a61ab Reviewed-by: Antti Määttä <antti.maatta@qt.io> Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
* | QGeometry: add minExtent/maxExtent propertiesPaul Lemire2019-01-072-0/+83
| | | | | | | | | | | | | | | | To allow computing a bounding box for a given QGeometry while waiting for a proper bounding volume aspect. Change-Id: If1ecf2f9236beaf569c650e5f8b05a6151ca6381 Reviewed-by: Mike Krus <mike.krus@kdab.com>