Qt Quick Cambios en la API de Física 3D desde la Tech Preview
A partir de la versión Qt 6.5.0, el módulo Qt Quick 3D Physics ya no está en la Tech Preview. Como resultado del proceso de retroalimentación y revisión de la API, se han realizado algunos cambios incompatibles con el código fuente.
La mayoría de los cambios consisten en cambiar el nombre de los tipos y las propiedades para mantener la coherencia con otras API y para que los nombres sean más descriptivos. El cambio más notable es el de DynamicsWorld por PhysicsWorld, que afectará a todas las aplicaciones.
El cambio de comportamiento más importante es la gestión de kinematic bodies. El cambio de posición/orientación de un cuerpo cinemático ya no se realiza utilizando las propiedades de Node (position, rotation, etc.), sino utilizando las nuevas propiedades: kinematicPosition, kinematicEulerRotation, kinematicRotation, y kinematicPivot. El motivo de este cambio es asegurarse de que el movimiento visual de los cuerpos cinemáticos está sincronizado con el resto de la simulación, en lugar de producirse un paso de simulación antes de tiempo.
La propiedad DynamicRigidBody.density ya no trata los valores negativos (y cero) como un caso especial. En su lugar, hay dos nuevos valores de enumeración massMode que sustituyen a Density:
DefaultDensity | La densidad del cuerpo está definida por PhysicsWorld.defaultDensity. Este es el valor por defecto. |
CustomDensity | La densidad del cuerpo se define mediante la propiedad density. |
La propiedad enableTriggerReports ha sido renombrada a sendTriggerReports. Además, los objetos de física pueden ahora ser notificados cuando entran en un cuerpo de disparo estableciendo receiveTriggerReports.
A continuación se incluye una lista completa de todos los cambios de la API:
- CollisionShape:
- se ha cambiado el nombre de enableDebugView a enableDebugDraw
- renombrado el tipo base abstracto
CollisionNodea PhysicsNode- cambiado enableTriggerReports a sendTriggerReports y receiveTriggerReports
- CharacterController
- renombrado
speeda movement
- renombrado
- ConvexMeshShape
- renombrado
meshSourcea source
- renombrado
- HeightFieldShape
- renombrado
heightMapa source
- renombrado
- TriangleMeshShape
- renombrado
meshSourcea source
- renombrado
- PhysicsWorld (renombrado de
DynamicsWorld)- renombrado
forceDebugViewa forceDebugDraw - renombrado
minTimestep/maxTimestepa minimumTimestep/maximumTimestep - eliminado sceneNode
- añadido scene
- añadido viewport
- renombrado
- DynamicRigidBody
- cambiado las propiedades
axisLockLinearX/Y/Zen una sola propiedad linearAxisLock que toma un bitfield - cambiado las propiedades
axisLockAngularX/Y/Zen una sola propiedad angularAxisLock que toma un bitfield - añadidas nuevas propiedades kinematicPosition, kinematicEulerRotation, kinematicRotation, y kinematicPivot
- cambiado el valor del enum
Densitya DefaultDensity/CustomDensity y eliminado el caso especial de los valores negativos. - reemplazado la propiedad
linearVelocitycon el método setLinearVelocity. - se sustituye la propiedad
angularVelocitypor el método setAngularVelocity.
- cambiado las propiedades
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.