# PhysicsEvents.PreSolveEvent

> An event produced when a contact between a pair of PhysicsShape is updated, used to provide the ability to decide if the contact should be disabled or not.

## Definition

* **Type:** Struct
* **Namespace:** [UnityEngine.LowLevelPhysics2D](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d.md)
* **Assembly:** UnityEngine.Physics2DModule

```csharp
public readonly struct PhysicsEvents.PreSolveEvent
```

## Properties

| Property                                                                                                                  | Description                                 |
| ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
| [normal](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/presolveevent/normal.md)             | The surface normal at the point of contact. |
| [physicsWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/presolveevent/physicsworld.md) | The physics world both shapes are within.   |
| [point](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/presolveevent/point.md)               | The point of contact.                       |
| [shapeA](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/presolveevent/shapea.md)             | One of the shapes involved in the event.    |
| [shapeB](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/presolveevent/shapeb.md)             | The other shape involved in the event.      |
