Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qt6-quick3dphysics for 
openSUSE:Factory checked in at 2023-05-28 19:22:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6-quick3dphysics (Old)
 and      /work/SRC/openSUSE:Factory/.qt6-quick3dphysics.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qt6-quick3dphysics"

Sun May 28 19:22:04 2023 rev:6 rq:1089098 version:6.5.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6-quick3dphysics/qt6-quick3dphysics.changes    
2023-04-05 21:36:54.466997463 +0200
+++ 
/work/SRC/openSUSE:Factory/.qt6-quick3dphysics.new.1533/qt6-quick3dphysics.changes
  2023-05-28 19:22:24.716808328 +0200
@@ -1,0 +2,6 @@
+Wed May 24 07:45:40 UTC 2023 - Christophe Marin <[email protected]>
+
+- Update to 6.5.1
+  * https://www.qt.io/blog/qt-6.5.1-released
+
+-------------------------------------------------------------------

Old:
----
  qtquick3dphysics-everywhere-src-6.5.0.tar.xz

New:
----
  qtquick3dphysics-everywhere-src-6.5.1.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ qt6-quick3dphysics.spec ++++++
--- /var/tmp/diff_new_pack.lO6m3J/_old  2023-05-28 19:22:25.256811542 +0200
+++ /var/tmp/diff_new_pack.lO6m3J/_new  2023-05-28 19:22:25.260811566 +0200
@@ -16,7 +16,7 @@
 #
 
 
-%define real_version 6.5.0
+%define real_version 6.5.1
 %define short_version 6.5
 %define tar_name qtquick3dphysics-everywhere-src
 %define tar_suffix %{nil}
@@ -27,7 +27,7 @@
 %endif
 #
 Name:           qt6-quick3dphysics%{?pkg_suffix}
-Version:        6.5.0
+Version:        6.5.1
 Release:        0
 Summary:        Qt 6 Quick3D Physics Extensions
 License:        GPL-3.0-only

++++++ qtquick3dphysics-everywhere-src-6.5.0.tar.xz -> 
qtquick3dphysics-everywhere-src-6.5.1.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/.QT-ENTERPRISE-LICENSE-AGREEMENT 
new/qtquick3dphysics-everywhere-src-6.5.1/.QT-ENTERPRISE-LICENSE-AGREEMENT
--- old/qtquick3dphysics-everywhere-src-6.5.0/.QT-ENTERPRISE-LICENSE-AGREEMENT  
2023-03-29 08:45:13.641535300 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/.QT-ENTERPRISE-LICENSE-AGREEMENT  
2023-05-22 09:06:00.504953400 +0200
@@ -1253,7 +1253,7 @@
 +----------------------------------------------------------+
 | Device Utilities                 |     |     | X,R | X,R |
 +----------------------------------------------------------+
-| Qt Debugging Bridge (QBD) Daemon |     |     | X,R | X,R |
+| Qt Debugging Bridge (QDB) Daemon |     |     | X,R | X,R |
 +----------------------------------------------------------+
 | Qt Quick Ultralite Controls      |     |     | X,R | X,R |
 +----------------------------------------------------------+
@@ -1669,116 +1669,152 @@
 APPENDIX 8: INTENTIONALLY LEFT BLANK
 
 APPENDIX 9: SUPPORT TERMS
+Version 2023-04
 
-These Qt support terms and conditions ("Support Terms") set forth the legal
-framework, where under The Qt Company ("The Qt Company") provides support
+These Qt support terms and conditions (“Support Terms”) set forth the legal
+framework, where under The Qt Company (“The Qt Company”) provides support
 services (as herein defined) to the Licensee.
 
 1 DEFINITIONS
 
-"Application Code" shall mean a computer software program written strictly
+“Application Code” shall mean a computer software program written strictly
 using the Qt programming language, by or for the Licensee, with a user
 interface, enabling the Licensee or their users to accomplish a specific task
 and display any results of the task on the display monitor or screen.
 
-"Dedicated Contact" shall mean the employee of The Qt Company who will be the
-first point of contact for all Designated Users' requests for Support.
+“Customer Portal” shall mean The Qt Company’s web-based service and 
support
+user interface located at https://account.qt.io/ or at another location
+designated by The Qt Company. Customer Portal is used by a Designated User with
+Qt Account, and it provides downloads, license management, license certificate
+and other services for Designated Users.
 
-"Errors" shall mean an error, flaw, mistake, failure, or fault in Licensed
+“Dedicated Contact” shall mean the employee of The Qt Company who will be 
the
+first point of contact for all Designated Users’ requests for Support.
+
+“Errors” shall mean an error, flaw, mistake, failure, or fault in Licensed
 Software that prevents it from behaving as described in the relevant
-documentation or as agreed between the Parties.
+documentation or as agreed between the Parties. Designated User can follow the
+state and progress of Errors in Customer Portal.
 
-"Extended Support" shall mean a continuation to the normal Support period,
+“Extended Support” shall mean a continuation to the normal Support period,
 which allows Designated Users to receive selected Support (Standard Support or
 Premium Support) for a version of Licensed Software that is no longer generally
 supported by The Qt Company.
 
-"Install Support" shall mean Support that is limited to installation related
+”Install Support” shall mean Support that is limited to 
installation-related
 Error(s) on Development Platforms specified as supported host platforms for
-each Qt release under doc.qt.io.
+each Qt release under doc.qt.io. Install Support covers also operational use of
+the QA Tools, but not operational use of Qt Software.
 
-"Maintenance Release" shall mean a release or version of Licensed Software
+“Maintenance Release” shall mean a release or version of Licensed Software
 containing bug fixes, error corrections and other changes targeted to
 maintaining and improving product stability and quality. Maintenance Releases
 are generally depicted as a change to the third digit of Licensed Software
 version number.
 
-"Platforms" shall mean both Development Platforms and Deployment Platforms.
+“Platforms” shall mean both Development Platforms and Deployment Platforms.
 Supported host and target Platforms may vary from for each Qt release as
 defined under doc.qt.io.
 
-"Premium Support" shall mean an upgraded level of Support that The Qt Company
+“Premium Support” shall mean an upgraded level of Support that The Qt 
Company
 provides pursuant to these Support Terms to Licensee if Licensee has purchased
-Premium Support instead of Standard Support. Premium Support shall always be
-purchased for all Designated User(s) in the respective development team of the
-Licensee.
+Premium Support instead of Standard Support. Premium Support also covers what
+is included in Standard Support. Premium Support shall always be purchased for
+all Designated User(s) in the respective development team of the Licensee.
+
+“Qt Account” shall mean the Qt Account for a Designated User used for 
using Qt
+services and Customer Portal. A Qt Account is mapped to the Licensee company
+with the corporate email domain or domains.
+
+”Qualification Kit” shall mean a set of documents and validation test cases
+used for product certification needs as defined in section 2.6.
 
-"Response Time" shall mean the period of time from when Licensee notifies
-TheQt Company about an Error or requests Support until The Qt Company provides
+“Response Time” shall mean the period of time from when Licensee notifies 
The
+Qt Company about an Error or requests Support until The Qt Company provides
 Licensee with a response that addresses (but not necessarily resolves) the
 reported Error or provides the requested Support.
 
-"Standard Support" shall mean standard level of Support that The Qt Company
-provides pursuant to these Support Terms to Licensee.
+“Standard Support” shall mean standard level of Support that The Qt Company
+provides pursuant to these Support Terms to Licensee.  Standard Support also
+covers what is included in Install Support.
+
+“Security Issue” shall mean an Error that may cause a vulnerability in a 
system
+or application that uses the Licensed Software.
+
+“Support” shall mean developer assistance that is provided by The Qt 
Company to
+assist eligible Designated Users in Licensed Software installation, usage and
+functionality problem resolution for Error(s) and Error workarounds pursuant to
+the terms of these Support Terms. Support for different products is available
+as specified in the below table (‘X’ marking the Support that is included 
in
+the license price, optional Add-on Support services are marked as ‘O’):
 
-"Support" shall mean developer assistance that is provided by The Qt Company
-to assist eligible Designated Users in Licensed Software installation, usage
-and functionality problem resolution for Error(s) and Error workarounds
-pursuant to the terms of these Support Terms. Support for different products is
-available as specified in the below table ("X" marking the Support that is
-included in the license price, optional Add-on Support services are marked as
-"O"):
-
-+-----------------------------------------------------------------------+
-|                       |ADP|ADE|DCP|DCE|DSP|DSE|Squish|Coco|Test Center|
-+-----------------------------------------------------------------------+
-| Install Support       | X | X | X | X | X | X |  X   |  X |     X     |
-+-----------------------------------------------------------------------+
-| Standard Support      |   | X | X | X | X | X |  X   |  X |     X     |
-+-----------------------------------------------------------------------+
-| Premium Support       |   | O | O | O | O | O |  O   |  O |     O     |
-+-----------------------------------------------------------------------+
-| Extended Support      |   | O | O | O | O | O |      |    |           |
-+-----------------------------------------------------------------------+
-| Tool Qualification Kit|   |   |   |   |   |   |  O   |  O |           |
-+-----------------------------------------------------------------------+
++-----------------------------------------------------------------------------+
+|                        | Install| Standard| Premium| Extended| Qualification|
+|                        | Support| Support | Support| Support | Kit          |
++-----------------------------------------------------------------------------+
+| DSP                    |    X   |     X   |    O   |     O   |              |
++-----------------------------------------------------------------------------+
+| DSE                    |    X   |     X   |    O   |     O   |              |
++-----------------------------------------------------------------------------+
+| ADP                    |    X   |         |        |         |              |
++-----------------------------------------------------------------------------+
+| ADE                    |    X   |     X   |    O   |     O   |              |
++-----------------------------------------------------------------------------+
+| DCP                    |    X   |     X   |    O   |     O   |              |
++-----------------------------------------------------------------------------+
+| DCE                    |    X   |     X   |    O   |     O   |              |
++-----------------------------------------------------------------------------+
+| Squish                 |    X   |     X   |    O   |         |       O      |
++-----------------------------------------------------------------------------+
+| Coco                   |    X   |     X   |    O   |         |       O      |
++-----------------------------------------------------------------------------+
+| Test Center            |    X   |     X   |    O   |         |       O      |
++-----------------------------------------------------------------------------+
+| Axivion Suite          |    X   |     X   |        |         |              |
++-----------------------------------------------------------------------------+
+| Architecture Analysis  |    X   |     X   |        |         |              |
++-----------------------------------------------------------------------------+
+| Static Code Analysis   |    X   |     X   |        |         |              |
++-----------------------------------------------------------------------------+
+| Static Coverage        |    X   |     X   |        |         |              |
+| Analysis Professional  |        |         |        |         |              |
++-----------------------------------------------------------------------------+
+| Qt Insight             |        |     X   |        |         |              |
++-----------------------------------------------------------------------------+
 
-"Support Validity Term" shall mean the Development License Term or any other
-fixed time period agreed between the Parties during which time the Customer is
+“Support Validity Term” shall mean the Development License Term or any 
other
+fixed time period agreed between the Parties during which time the Licensee is
 eligible to receive Support from The Qt Company.
 
-"Tool Qualification Kit" shall mean a customized set of documents and
-validation test cases.
-
 2 SUPPORT SERVICES
 
 2.1  Support Services Provided by The Qt Company
 
 Subject to these Support Terms and during the Support Validity Term, The Qt
-Company will via its web-based support user-interface, provide Designated
-User(s) with Support for the Platforms which Customer has licensed under the
-Agreement.
-The Qt Company will make commercially reasonable efforts to solve any Errors
-reported by Designated User(s).  Resolution of an Error may be provided through
+Company will via its Customer Portal, provide Designated User(s) with Support
+for the Licensed Software which Licensee has licensed under the Agreement. The
+Qt Company will make commercially reasonable efforts to solve any Errors
+reported by Designated User(s). Resolution of an Error may be provided through
 Designated User(s) themselves downloading of a later released version of the
 applicable Licensed Software product(s) or providing the Designated User with a
-temporary workaround addressing such Error.
+workaround addressing such Error or providing the Designated User with an
+updated tool configuration.
 
 2.2  Licensee's Obligations
 
-To report an Error, the Designated User shall register the Error on The Qt
-Company's web-based support user interface located at:
-https://account.qt.io/login or at another location designated by The Qt 
Company.
+To report an Error, the Designated User shall register the Error on the
+Customer Portal. If the Designated User considers the reported Error to be a
+Security Issue, the Error shall be marked as a Security Issue.
 
 The Designated User must provide adequate information and documentation to The
 Qt Company to enable it to recreate the Error or problem for which the
-Designated User has sought assistance.
-To ensure efficient handling of Errors, the Designated User must provide the
-following information, where relevant:
+Designated User has sought assistance. To ensure efficient handling of Errors,
+the Designated User must provide the following information, where relevant:
 - A clear, detailed description of the problem, question or suggestion;
 - Identification of which Licensed Software product and version is affected;
 - Identification of the operating environment (e.g. operating system, hardware
-  Platform, build tools, etc.) on which the problem exists;
+  Platform, build tools, tool configuration, etc.) on which the problem exists;
+- Marking the issue as a Security Issue, when reporting a Security Issue;
 - On Standard Support: A complete and compilable test case of not more than 500
  lines of code that demonstrates the problem;
 - On Premium Support: A complete and compilable test case that demonstrates the
@@ -1800,29 +1836,30 @@
 
 Each version or release of the Licensed Software will be Supported under
 Standard Support or Premium Support only for limited time period as set forth
-in doc.qt.io. For example, regular releases of Qt Software are supported for
-one (1) year from the release date of the version x.y.0 and Long Term Support
-(LTS) Releases are supported for a period of three (3) years from the release
-date of the LTS version x.y.0.
-
-The Qt Company shall only provide Support for Designated User(s).
-
-Support is made available for the entire development teams only: It is not
-allowed to purchase Support only for some members of the development team, and
-all Designated Users of the respective development team must be eligible for
-the same level of Support.
+in doc.qt.io or in documentation provided with the respective Licensed Software
+product. If nothing is documented, a release of Licensed Software is supported
+for one (1) year from the release date of the version x.y.0 and Long Term
+Support (LTS) Releases are supported for a period of three (3) years from the
+release date of the LTS version x.y.0.
+
+The Qt Company shall only provide Support for Designated User(s) through
+Customer Portal.Support is made available for the entire development teams
+only: It is not allowed to purchase Support only for some members of the
+development team, and all Designated Users of the respective development team
+must be eligible for the same level of Support.
 
 Support is not provided for snapshots, preview releases, beta releases or
 release candidates.
 
-The Qt Company shall have no obligation to provide Support for hardware or
-operating system specific  problems or problems arising from improper use,
-accident, neglect or modification of Qt.
+The Qt Company shall have no obligation to provide Support for 3rd party
+components, hardware or operating system specific problems or problems arising
+from improper use, accident, neglect, or modification of Qt.
 
 Limitations with Install Support:
 
-Support limited to Error(s) regarding installation and setting up of the Qt
-development environment on host Platforms.
+Support limited to (i) Error(s) regarding installation and setting up of the Qt
+development environment on host Platforms, or (ii) Errors impacting operational
+use of the QA Tools.
 
 Limitations with Standard Support:
 
@@ -1848,31 +1885,60 @@
 corresponding supported Platform.
 
 Premium Support is optional and purchased for an agreed bucket of hours
-("Bucket"). Hours can be used by any Designated User in the respective
+(“Bucket”). Hours can be used by any Designated User in the respective
 development team. To encourage continuous usage of the Support, ten percent
 (10%) of the purchased Bucket shall automatically expire (regardless of whether
 such support hours are actually used or not by the Licensee) each month after
 three (3) months from the purchase of the Premium Support.
 
-2.4 Extended Support
+2.4 Handling of Security Issues
+
+The reported Errors marked as Security Issues will be assessed by experts to
+determine the severity of the issue and to verify if it indeed is a valid
+Security Issue. The Designated User who reported the issue may be contacted for
+more details. If the reported issue is not deemed to be a Security Issue, it
+will be treated as a normal Error and handled accordingly.
+
+A verified Security Issue will be fixed as soon as possible. Qt Company will
+notify all Licensees via appropriate channels about the Security Errors and
+availability of patches for Licensed Software. Typically, a fix for the
+Security Issue is included in the next Maintenance Release of Licensed
+Software.
+
+If the Security Issue is reported in a third-party library used in Licensed
+Software, The Qt Company will notify the relevant third party of such Security
+Issue detected in their library. When the Security Issue is fixed in the
+third-party library, the new version of the third-party library will be in the
+next feasible Maintenance Release of the Licensed Software. If a fixed version
+of the third-party library is not available, The Qt Company may instead decide
+to include documentation regarding the issue, or a patch for this third-party
+library.
+
+All known Security Issues in Licensed Software will be mentioned as part of the
+change notes released with each version of Licensed Software.
+
+2.5 Extended Support
 
 Extended Support extends the Support Validity Term for a release of Licensed
 Software that is no longer generally supported.
 
 Extended Support includes and is by default provided with Standard Support
-rules and limitations, unless Extended Support is purchased with Premium
-Support in which case Premium Support rules and limitations will apply.
+rules and limitations, unless Extended Support is purchased together with
+Premium Support in which case Premium Support rules and limitations will apply.
 
 Extended Support is optional and purchased with annual fee and separately per
 each Licensee product. Extended Support will need definition of (i) Licensee
-product, (ii) used Platform(s) and (iii) Licensed Software version(s).
-
-2.5 Tool Qualification Kit
-
-The Qt Company shall provide set of customized documents and validation tests
-that enable Licensee to qualify QA testing tool for the purpose of ISO 26262,
-EN 50128, DO-330, IEC 61508, IEC 62304 or IEC 13485 certification Licensee end
-to end solution.
+product, (ii) used Platform(s) and (iii) Licensed Software version(s). For
+avoidance of doubt, Extended Support requires that the Designated User has a
+valid license for the respective Licensed Software.
+
+2.6 Qualification Kit
+
+The Qt Company shall provide a set of documents and validation tests that
+enable the Licensee to qualify QA testing tool (subject to a separate fee) or
+Qt Safe Renderer for the purpose of safety certification of Licensee end-to-end
+solution. Exact complied safety standards may vary between products, used
+features, use case, and industry.
 
 3 RESPONSE TIME
 
@@ -1885,6 +1951,9 @@
 Premium Support: Errors and Support requests will have a Response Time not to
 exceed one (1) business day.
 
+Security Issues: Errors that are Security Issues will have a Response Time not
+to exceed one (1) business day.
+
 For complex issues, The Qt Company may provide an initial response to the
 Designated User and then follow up, without undue delay, with additional
 communication before an Error is properly addressed or Support provided.
@@ -1908,7 +1977,7 @@
 
 5 MAINTENANCE RELEASES, UPDATES AND UPGRADES
 
-Under the Support the Customer is eligible for Maintenance Releases and Updates
+Under the Support the Licensee is eligible for Maintenance Releases and Updates
 that The Qt Company generally makes available to customers who has purchased
 Support. Unless otherwise decided by The Company at its free and absolute
 discretion, Upgrades will not be provided under the Support.
@@ -1920,6 +1989,7 @@
 - Fixes related to build issues on supported Platforms;
 - Error corrections specific to a single Platform that are not present on other
   Platforms;
+- Corrections to Security Issues;
 - Critical Error corrections such as crashes, data corruption, loss of data,
   race conditions; and
 - Updates to documentation and license information when deemed necessary by
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtquick3dphysics-everywhere-src-6.5.0/.cmake.conf 
new/qtquick3dphysics-everywhere-src-6.5.1/.cmake.conf
--- old/qtquick3dphysics-everywhere-src-6.5.0/.cmake.conf       2023-03-28 
22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/.cmake.conf       2023-05-16 
13:18:57.000000000 +0200
@@ -1,2 +1,2 @@
-set(QT_REPO_MODULE_VERSION "6.5.0")
+set(QT_REPO_MODULE_VERSION "6.5.1")
 set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_AS_CONST=1")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtquick3dphysics-everywhere-src-6.5.0/.tag 
new/qtquick3dphysics-everywhere-src-6.5.1/.tag
--- old/qtquick3dphysics-everywhere-src-6.5.0/.tag      2023-03-28 
22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/.tag      2023-05-16 
13:18:57.000000000 +0200
@@ -1 +1 @@
-653bc5f59a9681cee7bbb665894edd86b877c00f
+216c4cd8ae6996272b12817eb18c04c2c94ea6a9
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/dependencies.yaml 
new/qtquick3dphysics-everywhere-src-6.5.1/dependencies.yaml
--- old/qtquick3dphysics-everywhere-src-6.5.0/dependencies.yaml 2023-03-28 
22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/dependencies.yaml 2023-05-16 
13:18:57.000000000 +0200
@@ -1,13 +1,13 @@
 dependencies:
   ../qtbase:
-    ref: aea92807be2567c4212b96ae67de7137075ba4ee
+    ref: 55aee8697512af105dfefabc1e2ec41d4df1e45e
     required: true
   ../qtdeclarative:
-    ref: 3238e18d6b0dc45d2e765fb0b93da5cbf3f396ec
+    ref: 65651dc1d333e2aded18b0d6f0b71c35e5b40c1c
     required: true
   ../qtquick3d:
-    ref: 3538ca27fbb0a0247df3b0b4c03af88de086e9bd
+    ref: c3fcfc65a3ea38013081eb93ff351609f368dfaf
     required: true
   ../qtshadertools:
-    ref: 2a9f26b893fbc955b7ec1c04c84c5e2de3e987e5
+    ref: 46e8aadf1c6e19b5c177dfb2c1111e245ef37917
     required: true
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/cannon/main.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/cannon/main.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/cannon/main.qml
   2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/cannon/main.qml
   2023-05-16 13:18:57.000000000 +0200
@@ -56,7 +56,7 @@
             collisionShapes: PlaneShape {}
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(2000, 2000, 0)
+                scale: Qt.vector3d(2000, 2000, 1)
                 materials: PrincipledMaterial {
                     baseColor: "green"
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/compoundshapes/main.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/compoundshapes/main.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/compoundshapes/main.qml
   2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/compoundshapes/main.qml
   2023-05-16 13:18:57.000000000 +0200
@@ -64,7 +64,7 @@
             collisionShapes: PlaneShape {}
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(500, 500, 0)
+                scale: Qt.vector3d(500, 500, 1)
                 materials: DefaultMaterial {
                     diffuseColor: "green"
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/impeller/main.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/impeller/main.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/impeller/main.qml
 2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/impeller/main.qml
 2023-05-16 13:18:57.000000000 +0200
@@ -50,7 +50,7 @@
             collisionShapes: PlaneShape {}
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(500, 500, 0)
+                scale: Qt.vector3d(500, 500, 1)
                 materials: PrincipledMaterial {
                     baseColor: "green"
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/simple/main.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/simple/main.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/examples/quick3dphysics/simple/main.qml
   2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/examples/quick3dphysics/simple/main.qml
   2023-05-16 13:18:57.000000000 +0200
@@ -49,7 +49,7 @@
             collisionShapes: PlaneShape {}
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(10, 10, 10)
+                scale: Qt.vector3d(10, 10, 1)
                 materials: DefaultMaterial {
                     diffuseColor: "green"
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/helpers/qcapsulegeometry.cpp 
new/qtquick3dphysics-everywhere-src-6.5.1/src/helpers/qcapsulegeometry.cpp
--- old/qtquick3dphysics-everywhere-src-6.5.0/src/helpers/qcapsulegeometry.cpp  
2023-03-28 22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/src/helpers/qcapsulegeometry.cpp  
2023-05-16 13:18:57.000000000 +0200
@@ -580,8 +580,8 @@
     setVertexData(vertexData);
     setIndexData(indexData);
 
-    setBounds(QVector3D(-radius, -radius - 0.5f * m_height, -radius),
-              QVector3D(radius, radius + 0.5f * m_height, radius));
+    setBounds(QVector3D(-radius - 0.5f * m_height, -radius, -radius),
+              QVector3D(radius + 0.5f * m_height, radius, radius));
 }
 
 QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/CMakeLists.txt
 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/CMakeLists.txt
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/CMakeLists.txt
        2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/CMakeLists.txt
        2023-05-16 13:18:57.000000000 +0200
@@ -17,7 +17,6 @@
         DynamicRigidBodySection.qml
         HeightFieldShapeSection.qml
         HeightFieldShapeSpecifics.qml
-        IdComboBox.qml
         NodeSection.qml
         physics.metainfo
         PhysicsBodySection.qml
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/IdComboBox.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/IdComboBox.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/IdComboBox.qml
        2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/IdComboBox.qml
        1970-01-01 01:00:00.000000000 +0100
@@ -1,96 +0,0 @@
-// Copyright (C) 2023 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
-import QtQuick 2.15
-import HelperWidgets 2.0
-
-ComboBox {
-    id: comboBox
-
-    property alias typeFilter: itemFilterModel.typeFilter
-
-    manualMapping: true
-    editable: true
-    model: comboBox.addDefaultItem(itemFilterModel.itemModel)
-
-    textInput.validator: RegularExpressionValidator { regularExpression: 
/(^$|^[a-z_]\w*)/ }
-
-    ItemFilterModel {
-        id: itemFilterModel
-        modelNodeBackendProperty: modelNodeBackend
-    }
-
-    property string defaultItem: qsTr("None")
-    property string textValue: comboBox.backendValue.expression
-    property bool block: false
-    property bool dirty: true
-    property var editRegExp: /^[a-z_]\w*/
-
-    onTextValueChanged: {
-        if (comboBox.block)
-            return
-
-        comboBox.setCurrentText(comboBox.textValue)
-    }
-    onModelChanged: comboBox.setCurrentText(comboBox.textValue)
-    onCompressedActivated: function(index, reason) { 
comboBox.handleActivate(index) }
-    Component.onCompleted: comboBox.setCurrentText(comboBox.textValue)
-
-    onEditTextChanged: {
-        comboBox.dirty = true
-        colorLogic.errorState = !(editRegExp.exec(comboBox.editText) !== null
-                                  || comboBox.editText === 
parenthesize(defaultItem))
-    }
-    onFocusChanged: {
-        if (comboBox.dirty)
-           comboBox.handleActivate(comboBox.currentIndex)
-    }
-
-    function handleActivate(index)
-    {
-        if (!comboBox.__isCompleted || comboBox.backendValue === undefined)
-            return
-
-        var cText = (index === -1) ? comboBox.editText : comboBox.textAt(index)
-        comboBox.block = true
-        comboBox.setCurrentText(cText)
-        comboBox.block = false
-    }
-
-    function setCurrentText(text)
-    {
-        if (!comboBox.__isCompleted || comboBox.backendValue === undefined)
-            return
-
-        comboBox.currentIndex = comboBox.find(text)
-
-        if (text === "") {
-            comboBox.currentIndex = 0
-            comboBox.editText = parenthesize(comboBox.defaultItem)
-        } else {
-            if (comboBox.currentIndex === -1)
-                comboBox.editText = text
-            else if (comboBox.currentIndex === 0)
-                comboBox.editText = parenthesize(comboBox.defaultItem)
-        }
-
-        if (comboBox.currentIndex === 0) {
-            comboBox.backendValue.resetValue()
-        } else {
-            if (comboBox.backendValue.expression !== comboBox.editText)
-                comboBox.backendValue.expression = comboBox.editText
-        }
-        comboBox.dirty = false
-    }
-
-    function addDefaultItem(arr)
-    {
-        var copy = arr.slice()
-        copy.unshift(parenthesize(comboBox.defaultItem))
-        return copy
-    }
-
-    function parenthesize(value)
-    {
-        return "[" + value + "]"
-    }
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/PhysicsBodySection.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/PhysicsBodySection.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/PhysicsBodySection.qml
        2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/PhysicsBodySection.qml
        2023-05-16 13:18:57.000000000 +0200
@@ -20,7 +20,7 @@
             }
 
             SecondColumnLayout {
-                IdComboBox {
+                ItemFilterComboBox {
                     typeFilter: "QtQuick3D.Physics.PhysicsMaterial"
                     backendValue: backendValues.physicsMaterial
                     implicitWidth: StudioTheme.Values.singleControlColumnWidth
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/PhysicsWorldSection.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/PhysicsWorldSection.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/designer/PhysicsWorldSection.qml
       2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/designer/PhysicsWorldSection.qml
       2023-05-16 13:18:57.000000000 +0200
@@ -18,7 +18,7 @@
         }
 
         SecondColumnLayout {
-            IdComboBox {
+            ItemFilterComboBox {
                 typeFilter: "QtQuick3D.Node"
                 backendValue: backendValues.scene
                 implicitWidth: StudioTheme.Values.singleControlColumnWidth
@@ -35,7 +35,7 @@
         }
 
         SecondColumnLayout {
-            IdComboBox {
+            ItemFilterComboBox {
                 typeFilter: "QtQuick3D.Node"
                 backendValue: backendValues.viewport
                 implicitWidth: StudioTheme.Values.singleControlColumnWidth
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qabstractphysicsnode_p.h
 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qabstractphysicsnode_p.h
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qabstractphysicsnode_p.h
       2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qabstractphysicsnode_p.h
       2023-05-16 13:18:57.000000000 +0200
@@ -104,6 +104,7 @@
 
     friend class QAbstractPhysXNode;
     friend class QPhysicsWorld; // for register/deregister TODO: cleaner 
mechanism
+    friend class SimulationEventCallback;
     QAbstractPhysXNode *m_backendObject = nullptr;
 };
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qcharactercontroller.cpp
 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qcharactercontroller.cpp
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qcharactercontroller.cpp
       2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qcharactercontroller.cpp
       2023-05-16 13:18:57.000000000 +0200
@@ -27,6 +27,9 @@
     \note \l {PhysicsNode::collisionShapes}{collisionShapes} must be set to
     a single \l {CapsuleShape}. No other shapes are supported.
 
+    \note The character controller is able to scale obstacles that are lower 
than one fourth of
+    the capsule shape's height.
+
     \sa {Qt Quick 3D Physics Shapes and Bodies}{Shapes and Bodies overview 
documentation}
 */
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qphysicsworld.cpp 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qphysicsworld.cpp
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qphysicsworld.cpp  
    2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qphysicsworld.cpp  
    2023-05-16 13:18:57.000000000 +0200
@@ -235,14 +235,16 @@
     return physx::PxFilterFlag::eDEFAULT;
 }
 
-class CallBackObject : public physx::PxSimulationEventCallback
+class SimulationEventCallback : public physx::PxSimulationEventCallback
 {
 public:
-    CallBackObject(QPhysicsWorld *worldIn) : world(worldIn) {};
-    virtual ~CallBackObject() = default;
+    SimulationEventCallback(QPhysicsWorld *worldIn) : world(worldIn) {};
+    virtual ~SimulationEventCallback() = default;
 
     void onTrigger(physx::PxTriggerPair *pairs, physx::PxU32 count) override
     {
+        QMutexLocker locker(&world->m_removedPhysicsNodesMutex);
+
         for (physx::PxU32 i = 0; i < count; i++) {
             // ignore pairs when shapes have been deleted
             if (pairs[i].flags
@@ -250,8 +252,8 @@
                    | physx::PxTriggerPairFlag::eREMOVED_SHAPE_OTHER))
                 continue;
 
-            QAbstractPhysicsNode *triggerNode =
-                    static_cast<QAbstractPhysicsNode 
*>(pairs[i].triggerActor->userData);
+            QTriggerBody *triggerNode =
+                    static_cast<QTriggerBody 
*>(pairs[i].triggerActor->userData);
 
             QAbstractPhysicsNode *otherNode =
                     static_cast<QAbstractPhysicsNode 
*>(pairs[i].otherActor->userData);
@@ -261,16 +263,19 @@
                 continue;
             }
 
+            if (world->isNodeRemoved(triggerNode) || 
world->isNodeRemoved(otherNode))
+                continue;
+
             if (pairs->status == physx::PxPairFlag::eNOTIFY_TOUCH_FOUND) {
                 if (otherNode->sendTriggerReports()) {
-                    world->registerOverlap(pairs[i].triggerActor, 
pairs[i].otherActor);
+                    triggerNode->registerCollision(otherNode);
                 }
                 if (otherNode->receiveTriggerReports()) {
                     emit otherNode->enteredTriggerBody(triggerNode);
                 }
             } else if (pairs->status == physx::PxPairFlag::eNOTIFY_TOUCH_LOST) 
{
                 if (otherNode->sendTriggerReports()) {
-                    world->deregisterOverlap(pairs[i].triggerActor, 
pairs[i].otherActor);
+                    triggerNode->deregisterCollision(otherNode);
                 }
                 if (otherNode->receiveTriggerReports()) {
                     emit otherNode->exitedTriggerBody(triggerNode);
@@ -286,6 +291,7 @@
     void onContact(const physx::PxContactPairHeader &pairHeader, const 
physx::PxContactPair *pairs,
                    physx::PxU32 nbPairs) override
     {
+        QMutexLocker locker(&world->m_removedPhysicsNodesMutex);
         constexpr physx::PxU32 bufferSize = 64;
         physx::PxContactPairPoint contacts[bufferSize];
 
@@ -298,13 +304,14 @@
                 QAbstractPhysicsNode *other =
                         static_cast<QAbstractPhysicsNode 
*>(pairHeader.actors[1]->userData);
 
-                if (!trigger || !other) //### TODO: handle character 
controllers
+                if (!trigger || !other || !trigger->m_backendObject || 
!other->m_backendObject
+                    || world->isNodeRemoved(trigger) || 
world->isNodeRemoved(other))
                     continue;
 
-                const bool triggerReceive = 
world->hasReceiveContactReports(trigger)
-                        && world->hasSendContactReports(other);
-                const bool otherReceive = 
world->hasReceiveContactReports(other)
-                        && world->hasSendContactReports(trigger);
+                const bool triggerReceive =
+                        trigger->receiveContactReports() && 
other->sendContactReports();
+                const bool otherReceive =
+                        other->receiveContactReports() && 
trigger->sendContactReports();
 
                 if (!triggerReceive && !otherReceive)
                     continue;
@@ -448,7 +455,7 @@
             s_physx.physicsCreated = true;
         }
 
-        callback = new CallBackObject(physicsWorld);
+        callback = new SimulationEventCallback(physicsWorld);
 
         physx::PxSceneDesc sceneDesc(scale);
         sceneDesc.gravity = QPhysicsUtils::toPhysXType(gravity);
@@ -468,7 +475,7 @@
 
     // variables unique to each world/scene
     physx::PxControllerManager *controllerManager = nullptr;
-    CallBackObject *callback = nullptr;
+    SimulationEventCallback *callback = nullptr;
     physx::PxScene *scene = nullptr;
     bool isRunning = false;
 };
@@ -547,7 +554,7 @@
     void createMaterial(PhysXWorld *physX) override;
 
 private:
-    physx::PxController *controller = nullptr;
+    physx::PxCapsuleController *controller = nullptr;
 };
 
 class QPhysXActorBody : public QAbstractPhysXNode
@@ -709,30 +716,42 @@
     auto *characterController = static_cast<QCharacterController 
*>(frontendNode);
 
     auto shapes = characterController->getCollisionShapesList();
-    if (shapes.empty())
+    if (shapes.length() != 1) {
+        qWarning() << "CharacterController: invalid collision shapes list.";
         return;
+    }
     auto *capsule = qobject_cast<QCapsuleShape *>(shapes.first());
-    if (!capsule)
+    if (!capsule) {
+        qWarning() << "CharacterController: collision shape is not a capsule.";
         return;
-
+    }
     auto *mgr = world->controllerManager();
-    if (!mgr)
+    if (!mgr)  {
+        qWarning() << "QtQuick3DPhysics internal error: missing controller 
manager.";
         return;
+    }
 
     createMaterial(physX);
 
-    const QVector3D s = characterController->sceneScale();
-    const qreal hs = s.y();
-    const qreal rs = s.x();
+    const QVector3D scale = characterController->sceneScale();
+    const qreal heightScale = scale.y();
+    const qreal radiusScale = scale.x();
     physx::PxCapsuleControllerDesc desc;
-    desc.radius = rs * capsule->diameter() / 2;
-    desc.height = hs * capsule->height();
-    desc.stepOffset = desc.height / 4; // TODO: API
+    desc.radius = 0.5f * radiusScale * capsule->diameter();
+    desc.height = heightScale * capsule->height();
+    desc.stepOffset = 0.25f * desc.height; // TODO: API
 
     desc.material = material;
     const QVector3D pos = characterController->scenePosition();
     desc.position = { pos.x(), pos.y(), pos.z() };
-    controller = mgr->createController(desc);
+    // Safe to static_cast since createController will always return a 
PxCapsuleController
+    // if desc is of type PxCapsuleControllerDesc
+    controller = static_cast<physx::PxCapsuleController 
*>(mgr->createController(desc));
+
+    if (!controller) {
+        qWarning() << "QtQuick3DPhysics internal error: could not create 
controller.";
+        return;
+    }
 
     auto *actor = controller->getActor();
     if (actor)
@@ -1004,19 +1023,48 @@
 void QPhysXCharacterController::sync(float deltaTime,
                                      QHash<QQuick3DNode *, QMatrix4x4> & 
/*transformCache*/)
 {
-    Q_ASSERT(controller);
-    auto pos = controller->getPosition();
-    QVector3D qtPosition(pos.x, pos.y, pos.z);
+    if (controller == nullptr)
+        return;
+
     auto *characterController = static_cast<QCharacterController 
*>(frontendNode);
 
+    // Update capsule height, radius, stepOffset
+    const auto &shapes = characterController->getCollisionShapesList();
+    auto capsule = shapes.length() == 1 ? qobject_cast<QCapsuleShape 
*>(shapes.front()) : nullptr;
+
+    if (shapes.length() != 1) {
+        qWarning() << "CharacterController: invalid collision shapes list.";
+    } else if (!capsule) {
+        qWarning() << "CharacterController: collision shape is not a capsule.";
+    } else {
+        const QVector3D sceneScale = characterController->sceneScale();
+        const qreal heightScale = sceneScale.y();
+        const qreal radiusScale = sceneScale.x();
+
+        // Update height
+        const float heightNew = heightScale * capsule->height();
+        if (!qFuzzyCompare(controller->getHeight(), heightNew))
+            controller->resize(heightNew);
+        // Update radius
+        const float radiusNew = 0.5f * radiusScale * capsule->diameter();
+        if (!qFuzzyCompare(controller->getRadius(), radiusNew))
+            controller->setRadius(radiusNew);
+        // Update stepOffset
+        const float stepOffsetNew = 0.25f * heightNew;
+        if (!qFuzzyCompare(controller->getStepOffset(), stepOffsetNew))
+            controller->setStepOffset(stepOffsetNew);
+    }
+
     // update node from physX
+    QVector3D position = 
QPhysicsUtils::toQtType(physx::toVec3(controller->getPosition()));
     const QQuick3DNode *parentNode = static_cast<QQuick3DNode 
*>(characterController->parentItem());
     if (!parentNode) {
         // then it is the same space
-        characterController->setPosition(qtPosition);
+        characterController->setPosition(position);
     } else {
-        
characterController->setPosition(parentNode->mapPositionFromScene(qtPosition));
+        
characterController->setPosition(parentNode->mapPositionFromScene(position));
     }
+
     QVector3D teleportPos;
     bool teleport = characterController->getTeleport(teleportPos);
     if (teleport) {
@@ -1140,13 +1188,13 @@
 {
     m_workerThread.quit();
     m_workerThread.wait();
-    m_physx->deleteWorld();
-    delete m_physx;
-    worldManager.worlds.removeAll(this);
-
     for (auto body : m_physXBodies) {
+        body->cleanup(m_physx);
         delete body;
     }
+    m_physx->deleteWorld();
+    delete m_physx;
+    worldManager.worlds.removeAll(this);
 }
 
 void QPhysicsWorld::classBegin() {}
@@ -1189,40 +1237,9 @@
     return m_typicalSpeed;
 }
 
-void QPhysicsWorld::registerOverlap(physx::PxRigidActor *triggerActor,
-                                     physx::PxRigidActor *otherActor)
-{
-    QTriggerBody *trigger = static_cast<QTriggerBody 
*>(triggerActor->userData);
-    QAbstractPhysicsNode *other = static_cast<QAbstractPhysicsNode 
*>(otherActor->userData);
-
-    QMutexLocker locker(&m_removedPhysicsNodesMutex);
-    if (!m_removedPhysicsNodes.contains(other) && 
!m_removedPhysicsNodes.contains(trigger))
-        trigger->registerCollision(other);
-}
-
-void QPhysicsWorld::deregisterOverlap(physx::PxRigidActor *triggerActor,
-                                       physx::PxRigidActor *otherActor)
-{
-    QTriggerBody *trigger = static_cast<QTriggerBody 
*>(triggerActor->userData);
-    QAbstractPhysicsNode *other = static_cast<QAbstractPhysicsNode 
*>(otherActor->userData);
-
-    QMutexLocker locker(&m_removedPhysicsNodesMutex);
-    if (!m_removedPhysicsNodes.contains(other) && 
!m_removedPhysicsNodes.contains(trigger))
-        trigger->deregisterCollision(other);
-}
-
-bool QPhysicsWorld::hasSendContactReports(QAbstractPhysicsNode *object)
-{
-    QMutexLocker locker(&m_removedPhysicsNodesMutex);
-    return !m_removedPhysicsNodes.contains(object) && object->m_backendObject
-            && object->sendContactReports();
-}
-
-bool QPhysicsWorld::hasReceiveContactReports(QAbstractPhysicsNode *object)
+bool QPhysicsWorld::isNodeRemoved(QAbstractPhysicsNode *object)
 {
-    QMutexLocker locker(&m_removedPhysicsNodesMutex);
-    return !m_removedPhysicsNodes.contains(object) && object->m_backendObject
-            && object->receiveContactReports();
+    return m_removedPhysicsNodes.contains(object);
 }
 
 void QPhysicsWorld::setGravity(QVector3D gravity)
@@ -1424,6 +1441,7 @@
                 const auto halfExtents = 
QPhysicsUtils::toQtType(boxGeometry.halfExtents);
                 if (!qFuzzyCompare(halfExtentsOld, halfExtents)) {
                     auto geom = 
QDebugDrawHelper::generateBoxGeometry(halfExtents);
+                    geom->setParent(model);
                     model->setGeometry(geom);
                     holder.setHalfExtents(halfExtents);
                 }
@@ -1437,6 +1455,7 @@
                 const float radius = holder.radius();
                 if (!qFuzzyCompare(sphereGeometry.radius, radius)) {
                     auto geom = 
QDebugDrawHelper::generateSphereGeometry(sphereGeometry.radius);
+                    geom->setParent(model);
                     model->setGeometry(geom);
                     holder.setRadius(sphereGeometry.radius);
                 }
@@ -1453,6 +1472,7 @@
                     || !qFuzzyCompare(capsuleGeometry.halfHeight, halfHeight)) 
{
                     auto geom = QDebugDrawHelper::generateCapsuleGeometry(
                             capsuleGeometry.radius, 
capsuleGeometry.halfHeight);
+                    geom->setParent(model);
                     model->setGeometry(geom);
                     holder.setRadius(capsuleGeometry.radius);
                     holder.setHalfHeight(capsuleGeometry.halfHeight);
@@ -1470,6 +1490,7 @@
 
                 if (model->geometry() == nullptr) {
                     auto geom = QDebugDrawHelper::generatePlaneGeometry();
+                    geom->setParent(model);
                     model->setGeometry(geom);
                 }
             }
@@ -1489,6 +1510,7 @@
                     auto geom = QDebugDrawHelper::generateHeightFieldGeometry(
                             heightFieldGeometry.heightField, 
heightFieldGeometry.heightScale,
                             heightFieldGeometry.rowScale, 
heightFieldGeometry.columnScale);
+                    geom->setParent(model);
                     model->setGeometry(geom);
                     holder.setHeightScale(heightFieldGeometry.heightScale);
                     holder.setRowScale(heightFieldGeometry.rowScale);
@@ -1507,6 +1529,7 @@
                 if (model->geometry() == nullptr) {
                     auto geom = QDebugDrawHelper::generateConvexMeshGeometry(
                             convexMeshGeometry.convexMesh);
+                    geom->setParent(model);
                     model->setGeometry(geom);
                 }
             }
@@ -1522,6 +1545,7 @@
                 if (model->geometry() == nullptr) {
                     auto geom = QDebugDrawHelper::generateTriangleMeshGeometry(
                             triangleMeshGeometry.triangleMesh);
+                    geom->setParent(model);
                     model->setGeometry(geom);
                 }
             }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qphysicsworld_p.h 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qphysicsworld_p.h
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/src/quick3dphysics/qphysicsworld_p.h  
    2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/src/quick3dphysics/qphysicsworld_p.h  
    2023-05-16 13:18:57.000000000 +0200
@@ -93,11 +93,7 @@
     Q_REVISION(6, 5) float minimumTimestep() const;
     Q_REVISION(6, 5) float maximumTimestep() const;
 
-    void registerOverlap(physx::PxRigidActor *triggerActor, 
physx::PxRigidActor *otherActor);
-    void deregisterOverlap(physx::PxRigidActor *triggerActor, 
physx::PxRigidActor *otherActor);
-
-    bool hasSendContactReports(QAbstractPhysicsNode *object);
-    bool hasReceiveContactReports(QAbstractPhysicsNode *object);
+    bool isNodeRemoved(QAbstractPhysicsNode *object);
 
     static QPhysicsWorld *getWorld(QQuick3DNode *node);
 
@@ -199,6 +195,7 @@
     friend class QTriangleMeshShape; //####
     friend class QHeightFieldShape;
     friend class QQuick3DPhysicsHeightField;
+    friend class SimulationEventCallback;
     static physx::PxPhysics *getPhysics();
     static physx::PxCooking *getCooking();
     QThread m_workerThread;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/CMakeLists.txt 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/CMakeLists.txt
--- old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/CMakeLists.txt 
2023-03-28 22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/CMakeLists.txt 
2023-05-16 13:18:57.000000000 +0200
@@ -1,5 +1,7 @@
 add_subdirectory(changescene)
 add_subdirectory(character)
+add_subdirectory(character_remove)
+add_subdirectory(character_resize)
 add_subdirectory(cooked)
 add_subdirectory(invalidscene)
 add_subdirectory(multiscene)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/changescene/ImpellerScene.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/changescene/ImpellerScene.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/changescene/ImpellerScene.qml
  2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/changescene/ImpellerScene.qml
  2023-05-16 13:18:57.000000000 +0200
@@ -34,7 +34,7 @@
         collisionShapes: PlaneShape {}
         Model {
             source: "#Rectangle"
-            scale: Qt.vector3d(500, 500, 0)
+            scale: Qt.vector3d(500, 500, 1)
             materials: PrincipledMaterial {
                 baseColor: "green"
             }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/CMakeLists.txt
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/CMakeLists.txt
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/CMakeLists.txt
        1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/CMakeLists.txt
        2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,22 @@
+# Copyright (C) 2022 The Qt Company Ltd.
+# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH 
Qt-GPL-exception-1.0
+
+set(PROJECT_NAME "test_auto_character_remove")
+
+qt_internal_add_test(${PROJECT_NAME}
+    GUI
+    QMLTEST
+    SOURCES
+        tst_character_remove.cpp
+    LIBRARIES
+        Qt::Core
+        Qt::Qml
+    TESTDATA
+        tst_character_remove.qml
+        Character.qml
+    BUILTIN_TESTDATA
+)
+
+if(QT_BUILD_STANDALONE_TESTS)
+    qt_import_qml_plugins(${PROJECT_NAME})
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/Character.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/Character.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/Character.qml
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/Character.qml
 2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,22 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+import QtQuick3D
+import QtQuick3D.Physics
+import QtQuick3D.Physics.Helpers
+
+CharacterController {
+    collisionShapes:  CapsuleShape {
+        height: 1
+        diameter: 1
+    }
+
+    Model {
+        eulerRotation.z: 90
+        scale: Qt.vector3d(0.01, 0.01, 0.01)
+        geometry: CapsuleGeometry {}
+        materials: PrincipledMaterial {
+            baseColor: "blue"
+        }
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/tst_character_remove.cpp
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/tst_character_remove.cpp
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/tst_character_remove.cpp
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/tst_character_remove.cpp
      2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,21 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH 
Qt-GPL-exception-1.0
+
+#include <QtQuickTest/quicktest.h>
+class tst_character_remove: public QObject
+{
+    Q_OBJECT
+private slots:
+    void skiptest() { QSKIP("This test will fail, skipping."); };
+};
+int main(int argc, char **argv)
+{
+    if (!qEnvironmentVariableIsEmpty("QEMU_LD_PREFIX")) {
+        qWarning("This test is unstable on QEMU, so it will be skipped.");
+        tst_character_remove skip;
+        return QTest::qExec(&skip, argc, argv);
+    }
+    QTEST_SET_MAIN_SOURCE_PATH
+    return quick_test_main(argc, argv, "tst_character_remove", 
QUICK_TEST_SOURCE_DIR);
+}
+#include "tst_character_remove.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/tst_character_remove.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/tst_character_remove.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_remove/tst_character_remove.qml
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_remove/tst_character_remove.qml
      2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,114 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+// Tests adding and removing character controller
+
+import QtTest
+import QtQuick3D
+import QtQuick3D.Physics
+import QtQuick
+
+Item {
+    width: 640
+    height: 480
+    visible: true
+
+    function randomInRange(min, max) {
+        return Math.random() * (max - min) + min
+    }
+
+    PhysicsWorld {
+        id: world
+        gravity: Qt.vector3d(0, -9.82, 0)
+        running: true
+        forceDebugDraw: true
+        typicalLength: 1
+        typicalSpeed: 10
+        scene: viewport.scene
+    }
+
+    View3D {
+        id: viewport
+        anchors.fill: parent
+
+        environment: SceneEnvironment {
+            clearColor: "#151a3f"
+            backgroundMode: SceneEnvironment.Color
+        }
+
+        PerspectiveCamera {
+            id: camera1
+            position: Qt.vector3d(0, 5, 10)
+            eulerRotation: Qt.vector3d(-20, 0, 0)
+            clipFar: 50
+            clipNear: 0.01
+        }
+
+        DirectionalLight {
+            eulerRotation.x: -45
+            eulerRotation.y: 45
+        }
+
+        StaticRigidBody {
+            collisionShapes: BoxShape {
+                extents: Qt.vector3d(8, 2, 4)
+            }
+        }
+
+        Timer {
+            id: spawnTimer
+            interval: 100
+            running: true
+            repeat: true
+            onTriggered: {
+                var pos = Qt.vector3d(randomInRange(-5, 5),
+                                      randomInRange(3, 6),
+                                      randomInRange(-1, 1))
+                shapeSpawner.createCharacter(pos)
+            }
+        }
+
+        Timer {
+            id: resetTimer
+            interval: 2000
+            running: true
+            repeat: true
+            property int repeats: 0
+            onTriggered: {
+                shapeSpawner.reset()
+                repeats += 1
+            }
+        }
+
+        Node {
+            id: shapeSpawner
+            property var instancesCharacters: []
+            property var characterComponent: 
Qt.createComponent("Character.qml")
+
+            function createCharacter(position) {
+                let settings = {
+                    "position": position,
+                    "gravity": world.gravity
+                }
+                let character = characterComponent.createObject(shapeSpawner, 
settings)
+
+                if (character === null) {
+                    console.log("Error creating object")
+                    return
+                }
+                instancesCharacters.push(character)
+            }
+
+            function reset() {
+                instancesCharacters.forEach(character => { character.destroy() 
})
+                instancesCharacters = []
+            }
+        }
+
+        TestCase {
+            name: "trigger box"
+            when: resetTimer.repeats > 5
+            function triggered() {}
+        }
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_resize/CMakeLists.txt
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_resize/CMakeLists.txt
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_resize/CMakeLists.txt
        1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_resize/CMakeLists.txt
        2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,21 @@
+# Copyright (C) 2023 The Qt Company Ltd.
+# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH 
Qt-GPL-exception-1.0
+
+set(PROJECT_NAME "test_auto_character_resize")
+
+qt_internal_add_test(${PROJECT_NAME}
+    GUI
+    QMLTEST
+    SOURCES
+        tst_character_resize.cpp
+    LIBRARIES
+        Qt::Core
+        Qt::Qml
+    TESTDATA
+        tst_character_resize.qml
+    BUILTIN_TESTDATA
+)
+
+if(QT_BUILD_STANDALONE_TESTS)
+    qt_import_qml_plugins(${PROJECT_NAME})
+endif()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_resize/tst_character_resize.cpp
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_resize/tst_character_resize.cpp
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_resize/tst_character_resize.cpp
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_resize/tst_character_resize.cpp
      2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,21 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH 
Qt-GPL-exception-1.0
+
+#include <QtQuickTest/quicktest.h>
+class tst_character_resize: public QObject
+{
+    Q_OBJECT
+private slots:
+    void skiptest() { QSKIP("This test will fail, skipping."); };
+};
+int main(int argc, char **argv)
+{
+    if (!qEnvironmentVariableIsEmpty("QEMU_LD_PREFIX")) {
+        qWarning("This test is unstable on QEMU, so it will be skipped.");
+        tst_character_resize skip;
+        return QTest::qExec(&skip, argc, argv);
+    }
+    QTEST_SET_MAIN_SOURCE_PATH
+    return quick_test_main(argc, argv, "tst_character_resize", 
QUICK_TEST_SOURCE_DIR);
+}
+#include "tst_character_resize.moc"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_resize/tst_character_resize.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_resize/tst_character_resize.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/character_resize/tst_character_resize.qml
      1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/character_resize/tst_character_resize.qml
      2023-05-16 13:18:57.000000000 +0200
@@ -0,0 +1,192 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+
+// A scene with a character controller getting resized until it triggers
+// boxes and can move over an obstacle.
+
+import QtCore
+import QtTest
+import QtQuick3D
+import QtQuick3D.Physics
+import QtQuick3D.Physics.Helpers
+import QtQuick
+
+Item {
+    width: 640
+    height: 480
+    visible: true
+
+    PhysicsWorld {
+        id: world
+        gravity: Qt.vector3d(0, -9.82, 0)
+        running: true
+        forceDebugDraw: true
+        typicalLength: 1
+        typicalSpeed: 10
+        scene: viewport.scene
+    }
+
+    View3D {
+        id: viewport
+        anchors.fill: parent
+
+        environment: SceneEnvironment {
+            clearColor: "#151a3f"
+            backgroundMode: SceneEnvironment.Color
+        }
+
+        PerspectiveCamera {
+            id: camera1
+            position: Qt.vector3d(0, 5, 10)
+            eulerRotation: Qt.vector3d(-20, 0, 0)
+            clipFar: 50
+            clipNear: 0.01
+        }
+
+        DirectionalLight {
+            eulerRotation.x: -45
+            eulerRotation.y: 45
+        }
+
+        StaticRigidBody {
+            collisionShapes: BoxShape {
+                extents: Qt.vector3d(8, 2, 4)
+            }
+        }
+
+        StaticRigidBody {
+            collisionShapes: BoxShape {
+                extents: Qt.vector3d(2, 1, 4)
+            }
+            position: Qt.vector3d(0, 2, 0)
+        }
+
+        TriggerBody {
+            id: triggerBoxUp
+            position: Qt.vector3d(2, 5, 0)
+            collisionShapes: BoxShape {
+                extents: Qt.vector3d(2, 1, 2)
+            }
+            receiveTriggerReports: true
+            property bool entered: false
+            onBodyEntered: function(body) {
+                entered = true
+            }
+        }
+
+        TriggerBody {
+            id: triggerBoxSide
+            position: Qt.vector3d(3.5, 2, 0)
+            collisionShapes: BoxShape {
+                extents: Qt.vector3d(1, 1, 1)
+            }
+            receiveTriggerReports: true
+            property bool entered: false
+            onBodyEntered: function(body) {
+                entered = true
+            }
+        }
+
+        TriggerBody {
+            id: triggerBoxStep
+            position: Qt.vector3d(-6, 3, 0)
+            collisionShapes: BoxShape {
+                extents: Qt.vector3d(2, 1, 2)
+            }
+            receiveTriggerReports: true
+            property bool entered: false
+            onBodyEntered: function(body) {
+                entered = true
+            }
+        }
+
+        CharacterController {
+            id: character
+            property bool collided: false
+            position: Qt.vector3d(2, 2, 0)
+
+            gravity: world.gravity
+            onCollisionsChanged: {
+               collided = true;
+            }
+
+            sendTriggerReports: true
+
+            Connections {
+                target: world
+                property real totalAnimationTime: 5000
+                function onFrameDone(timeStep) {
+                    let progressStep = timeStep / totalAnimationTime
+                    animationController.progress += progressStep
+                    if (animationController.progress >= 1) {
+                        animationController.completeToEnd()
+                    }
+                }
+            }
+
+            AnimationController {
+                id: animationController
+                animation: ParallelAnimation {
+                    NumberAnimation {
+                        target: capsuleShape
+                        property: "height"
+                        to: 2
+                        from: 1
+                        duration: 5000
+                    }
+                    NumberAnimation {
+                        target: capsuleShape
+                        property: "diameter"
+                        to: 3
+                        from: 1
+                        duration: 3000
+                    }
+                }
+            }
+
+            collisionShapes:  CapsuleShape {
+                id: capsuleShape
+                height: 1
+                diameter: 1
+            }
+
+            movement.x: -1;
+
+            Model {
+                eulerRotation.z: 90
+                //scale: Qt.vector3d(0.01, 0.01, 0.01)
+                geometry: CapsuleGeometry {
+                    height: capsuleShape.height
+                    diameter: capsuleShape.diameter
+                }
+                materials: PrincipledMaterial {
+                    baseColor: "blue"
+                }
+            }
+        }
+
+        TestCase {
+            name: "character up"
+            when: character.collisions === CharacterController.Down
+            function triggered() {}
+        }
+
+        TestCase {
+            name: "trigger box up"
+            when: triggerBoxUp.entered
+            function triggered() {}
+        }
+
+        TestCase {
+            name: "trigger box side"
+            when: triggerBoxSide.entered
+            function triggered() {}
+        }
+
+        TestCase {
+            name: "trigger box step"
+            when: triggerBoxStep.entered
+            function triggered() {}
+        }
+    }
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/invalidscene/ImpellerScene.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/invalidscene/ImpellerScene.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/invalidscene/ImpellerScene.qml
 2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/invalidscene/ImpellerScene.qml
 2023-05-16 13:18:57.000000000 +0200
@@ -16,7 +16,7 @@
         collisionShapes: PlaneShape {}
         Model {
             source: "#Rectangle"
-            scale: Qt.vector3d(500, 500, 0)
+            scale: Qt.vector3d(500, 500, 1)
             materials: PrincipledMaterial {
                 baseColor: "green"
             }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/multiscene/ImpellerScene.qml
 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/multiscene/ImpellerScene.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/auto/multiscene/ImpellerScene.qml
   2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/auto/multiscene/ImpellerScene.qml
   2023-05-16 13:18:57.000000000 +0200
@@ -34,7 +34,7 @@
         collisionShapes: PlaneShape {}
         Model {
             source: "#Rectangle"
-            scale: Qt.vector3d(500, 500, 0)
+            scale: Qt.vector3d(500, 500, 1)
             materials: PrincipledMaterial {
                 baseColor: "green"
             }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/convexmesh/main.qml 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/convexmesh/main.qml
--- old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/convexmesh/main.qml  
2023-03-28 22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/convexmesh/main.qml  
2023-05-16 13:18:57.000000000 +0200
@@ -57,7 +57,7 @@
 
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(0.3, 0.3, 0.3)
+                scale: Qt.vector3d(0.3, 0.3, 1)
                 materials: DefaultMaterial {
                     diffuseColor: "green"
                 }
@@ -77,7 +77,7 @@
             }
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(0.3, 0.3, 0.3)
+                scale: Qt.vector3d(0.3, 0.3, 1)
                 materials: PrincipledMaterial {
                     baseColor: "gray"
                     cullMode: Material.NoCulling
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/kinematictree/main.qml 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/kinematictree/main.qml
--- 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/kinematictree/main.qml   
    2023-03-28 22:24:18.000000000 +0200
+++ 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/kinematictree/main.qml   
    2023-05-16 13:18:57.000000000 +0200
@@ -54,7 +54,7 @@
             collisionShapes: PlaneShape {}
             Model {
                 source: "#Rectangle"
-                scale: Qt.vector3d(10, 10, 10)
+                scale: Qt.vector3d(10, 10, 1)
                 materials: DefaultMaterial {
                     diffuseColor: "green"
                 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/scaling/main.qml 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/scaling/main.qml
--- old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/scaling/main.qml     
2023-03-28 22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/scaling/main.qml     
2023-05-16 13:18:57.000000000 +0200
@@ -59,7 +59,7 @@
                 collisionShapes: PlaneShape {}
                 Model {
                     source: "#Rectangle"
-                    scale: Qt.vector3d(5, 5, 0)
+                    scale: Qt.vector3d(5, 5, 1)
                     materials: DefaultMaterial {
                         diffuseColor: "green"
                     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/spawn/main.qml 
new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/spawn/main.qml
--- old/qtquick3dphysics-everywhere-src-6.5.0/tests/manual/spawn/main.qml       
2023-03-28 22:24:18.000000000 +0200
+++ new/qtquick3dphysics-everywhere-src-6.5.1/tests/manual/spawn/main.qml       
2023-05-16 13:18:57.000000000 +0200
@@ -146,7 +146,7 @@
                 collisionShapes: PlaneShape {}
                 Model {
                     source: "#Rectangle"
-                    scale: Qt.vector3d(5, 5, 0)
+                    scale: Qt.vector3d(5, 5, 1)
                     materials: DefaultMaterial {
                         diffuseColor: "green"
                     }

Reply via email to