- Qt 6.6
- Qt Quick 3D Physics
- QML Types
- PhysicsNode
- Qt Quick 3D Physics | Commercial or GPLv3

# PhysicsNode QML Type

Base type for all objects in the physics scene. More...

Import Statement: | import QtQuick3D.Physics
Since: | Qt 6.4
Inherits: | Node
Inherited By: | PhysicsBody and TriggerBody

- List of all members, including inherited members

## Properties

- collisionShapes : list<CollisionShape>
- receiveContactReports : bool
- receiveTriggerReports : bool
- sendContactReports : bool
- sendTriggerReports : bool

## Signals

- bodyContact(PhysicsNode *body, list<vector3D> positions, list<vector3D> impulses, list<vector3D> normals)
- enteredTriggerBody(TriggerBody *body)
- exitedTriggerBody(TriggerBody *body)

## Detailed Description

PhysicsNode is the base type for all the objects that take part in the physics simulation. These objects have a position in three-dimensional space and a geometrical shape.

## Property Documentation

collisionShapes : list<CollisionShape>

This property contains the list of collision shapes. These shapes will be combined and act as a single rigid body when interacting with other bodies.

See also Shapes and Bodies overview documentation.

receiveContactReports : bool

This property determines whether this body will receive contact reports when colliding with other bodies. If activated, this means that the bodyContact signal will be emitted on a collision with a body that has sendContactReports set to true.

receiveTriggerReports : bool

This property determines whether this body will receive reports when entering or leaving a trigger body.

sendContactReports : bool

This property determines whether this body will send contact reports when colliding with other bodies.

sendTriggerReports : bool

This property determines whether this body will send reports when entering or leaving a trigger body.

## Signal Documentation

bodyContact(PhysicsNode *body, list<vector3D> positions, list<vector3D> impulses, list<vector3D> normals)

This signal is emitted when there is a collision between a non-kinematic dynamic body and any other body. The receiveContactReports in this body and sendContactReports in the colliding body need to be set to true. The parameters body, positions, impulses and normals contain the other body, position, impulse force and normal for each contact point at the same index.

Note: The corresponding handler is `onBodyContact`.

See also CharacterController::shapeHit.

enteredTriggerBody(TriggerBody *body)

This signal is emitted when this body enters the specified trigger body.

Note: Only emitted when receiveTriggerReports is `true`

Note: The corresponding handler is `onEnteredTriggerBody`.

See also receiveTriggerReports and exitedTriggerBody.

exitedTriggerBody(TriggerBody *body)

This signal is emitted when this body exits the specified trigger body.

Note: Only emitted when receiveTriggerReports is `true`

Note: The corresponding handler is `onExitedTriggerBody`.

See also receiveTriggerReports and enteredTriggerBody.