PhysicsNode QML Type
Type de base pour tous les objets de la scène physique. Plus d'informations...
| Import Statement: | import QtQuick3D.Physics |
| Since: | Qt 6.4 |
| Inherits: | |
| Inherited By: | CharacterController, DynamicRigidBody, PhysicsBody, StaticRigidBody, and TriggerBody |
Propriétés
- collisionShapes : list<CollisionShape>
- filterGroup : int
- filterIgnoreGroups : int
- receiveContactReports : bool
- receiveTriggerReports : bool
- sendContactReports : bool
- sendTriggerReports : bool
Signaux
- bodyContact(PhysicsNode *body, list<vector3D> positions, list<vector3D> impulses, list<vector3D> normals)
- enteredTriggerBody(TriggerBody *body)
- exitedTriggerBody(TriggerBody *body)
Description détaillée
PhysicsNode est le type de base pour tous les objets qui participent à la simulation physique. Ces objets ont une position dans l'espace tridimensionnel et une forme géométrique.
Documentation des propriétés
collisionShapes : list<CollisionShape>
Cette propriété contient la liste des formes de collision. Ces formes seront combinées et agiront comme un seul corps rigide lors de l'interaction avec d'autres corps.
Voir également la documentation générale sur les formes et les corps.
filterGroup : int
Cette propriété détermine le groupe de filtres dont fait partie ce corps.
La valeur par défaut est 0.
Plage de valeurs : [0, 32]
Voir aussi PhysicsNode::filterIgnoreGroups.
filterIgnoreGroups : int
Cette propriété détermine les groupes avec lesquels l'organisme doit filtrer les collisions.
Remarque : ce nombre est interprété comme un masque de bits, ce qui signifie que si le bit i est défini, les collisions avec le numéro filterGroup i seront filtrées. Par exemple, pour filtrer les groupes 1, 3 et 4, fixez la valeur à 0b11010.
Voir aussi PhysicsNode::filterGroup.
receiveContactReports : bool
Cette propriété détermine si ce corps recevra des rapports de contact lorsqu'il entre en collision avec d'autres corps. Si elle est activée, cela signifie que le signal bodyContact sera émis lors d'une collision avec un corps dont la valeur de sendContactReports est égale à true.
Valeur par défaut : false
receiveTriggerReports : bool
Cette propriété détermine si ce corps recevra des rapports lors de l'entrée ou de la sortie d'un corps de déclenchement.
Valeur par défaut : false
sendContactReports : bool
Cette propriété détermine si le corps envoie des rapports de contact lorsqu'il entre en collision avec d'autres corps.
Valeur par défaut : false
sendTriggerReports : bool
Cette propriété détermine si ce corps envoie des rapports lorsqu'il entre ou sort d'un corps de déclenchement.
Valeur par défaut : false
Signal Documentation
bodyContact(PhysicsNode *body, list<vector3D> positions, list<vector3D> impulses, list<vector3D> normals)
Ce signal est émis lorsqu'il y a une collision entre un corps dynamique et un autre corps. Les paramètres receiveContactReports de ce corps et sendContactReports du corps entrant en collision doivent être définis comme vrais. Les paramètres body, positions, impulses et normals contiennent l'autre corps, la position, la force d'impulsion et la normale pour chaque point de contact au même index.
Remarque : le gestionnaire correspondant est onBodyContact.
Voir également CharacterController::shapeHit, PhysicsWorld::reportKinematicKinematicCollisions, et PhysicsWorld::reportStaticKinematicCollisions.
enteredTriggerBody(TriggerBody *body)
Ce signal est émis lorsque ce corps entre dans le déclencheur spécifié body.
Remarque : Ce signal n'est émis que lorsque receiveTriggerReports est true
Note : Le gestionnaire correspondant est onEnteredTriggerBody.
Voir aussi receiveTriggerReports et exitedTriggerBody.
exitedTriggerBody(TriggerBody *body)
Ce signal est émis lorsque ce corps sort du déclencheur spécifié body.
Remarque : Ce signal n'est émis que lorsque receiveTriggerReports est true
Note : Le gestionnaire correspondant est onExitedTriggerBody.
Voir également receiveTriggerReports et enteredTriggerBody.
© 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.