# PhysicsWorld

> A world is a container for all other physics objects such as PhysicsBody, PhysicsShape, PhysicsJoint etc. A world can be simulated in isolation from all other worlds. The maximum number of worlds that can be created at one time is defined by PhysicsConstants.MaxWorlds. A world is completely isolated from all other worlds.

## Definition

* **Type:** Struct
* **Namespace:** [UnityEngine.LowLevelPhysics2D](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d.md)
* **Assembly:** UnityEngine.Physics2DModule
* **Implements:** [IEquatable\<PhysicsWorld>](https://learn.microsoft.com/dotnet/api/system.iequatable-1)

```csharp
public readonly struct PhysicsWorld : IEquatable<PhysicsWorld>
```

## Properties

| Property                                                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ---------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [autoBodyUpdateCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autobodyupdatecallbacks.md)         | Controls if body update callback targets are automatically called. See [PhysicsWorld.SendBodyUpdateCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendbodyupdatecallbacks.md)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [autoContactCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autocontactcallbacks.md)               | Controls if shape contact callback targets are automatically called. See [PhysicsWorld.SendContactCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendcontactcallbacks.md)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [autoJointThresholdCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autojointthresholdcallbacks.md) | Controls if joint threshold callback targets are automatically called. See [PhysicsWorld.SendJointThresholdCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendjointthresholdcallbacks.md)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [autoTriggerCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autotriggercallbacks.md)               | Controls if shape trigger callback targets are automatically called. See [PhysicsWorld.SendTriggerCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendtriggercallbacks.md)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [awakeBodyCount](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/awakebodycount.md)                           | Get the number of awake bodies in the world.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md)                       | Get the body events from the last simulation. The [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsBody.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/isvalid.md)). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.BodyUpdateEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/bodyupdateevent.md).                                                                                                                                                                                                                                                                                                                                       |
| [bounceThreshold](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bouncethreshold.md)                         | Adjust the bounce threshold, usually in meters per second. It is recommended not to make this value very small because it will prevent bodies from sleeping.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [contactBeginEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactbeginevents.md)                   | Get the contact begin events from the last simulation. The [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)). The [PhysicsShape.Contact](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/contact.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see isValid). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.ContactBeginEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/contactbeginevent.md).                                            |
| [contactDamping](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactdamping.md)                           | The contact bounciness with 1 being critical damping (non-dimensional).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [contactEndEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactendevents.md)                       | Get the contact end events from the last simulation. The [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)). The [PhysicsShape.Contact](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/contact.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see isValid). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.ContactEndEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/contactendevent.md).                                                  |
| [contactFilterCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactfiltercallbacks.md)           | Controls if contact filter callbacks will be called. A contact filter callback allows direct control over whether a contact will be created between a pair of shapes. This applies to both triggers and non-triggers but only with Dynamic bodies. These are relatively expensive so disabling them can provide a significant performance benefit. A contact filter callback will call the [PhysicsShape.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/callbacktarget.md) for both shapes involved if they implement [PhysicsCallbacks.IContactFilterCallback](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicscallbacks/icontactfiltercallback.md).                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [contactFrequency](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactfrequency.md)                       | The contact stiffness, in cycles per second.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [contactHitEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contacthitevents.md)                       | Get the contact hit events from the last simulation. The [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.ContactHitEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/contacthitevent.md).                                                                                                                                                                                                                                                                                                                            |
| [contactHitEventThreshold](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contacthiteventthreshold.md)       | The contact hit event threshold controls the collision speed needed to generate a contact hit event, usually in meters per second. See [PhysicsEvents.ContactHitEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/contacthitevent.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [contactRecycleDistance](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactrecycledistance.md)           | The contact recycle distance, in meters. Setting this to zero disables contact point recycling. Contact recycling reuses contact points across simulation time-steps when the relative movement is small. This feature improves stability and performance by around 25% (approximately). Contact points are not recalculated until shapes move more than 5cm (default) relative to each other. Contact recycling skips some updates such as friction, pre-solve (etc) until the contacts are no longer recycled.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [contactSpeed](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactspeed.md)                               | The contact speed used to solve overlaps, in meters per second.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [continuousAllowed](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/continuousallowed.md)                     | Controls if continuous collision detection will be used between Dynamic and Static bodies. Generally you should keep continuous collision enabled to prevent fast moving objects from going through Static objects. The performance gain from disabling continuous collision is minor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [counters](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/counters.md)                                       | Get the world counters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [definition](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/definition.md)                                   | Get/Set a world definition by accessing all of its current properties. This is provided as convenience only and should not be used when performance is important as all the properties defined in the definition are accessed sequentially. You should try to only use the specific properties you need rather than using this feature.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [drawCapacity](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcapacity.md)                               | Controls the draw capacity. The draw capacity of the buffers when drawing are initially zero however increasing this value will mean buffers won't be resized when more elements are drawn and therefore no GC allocations will occur. Changes won't take effect until exiting play mode. This value directly controls the capacity for each element type drawn. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [drawColors](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcolors-1.md)                                 | Controls what colors are used to draw [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md), [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md), [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md) etc. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [drawContactType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcontacttype-1.md)                       | Controls the [PhysicsWorld.DrawContactType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcontacttype.md) used when drawing contact points.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [drawFillAlpha](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawfillalpha.md)                             | Controls the draw fill alpha. This is used to scale the interior fill alpha and is only used when [PhysicsWorld.DrawFillOptions.Outline](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawfilloptions/outline.md) is used so that the interior color can be distinguished from the outline color by transparency. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [drawFillOptions](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawfilloptions-1.md)                       | Controls what aspects of is drawn using Draw. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [drawImpulseScale](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawimpulsescale.md)                       | Controls the joint contact impulse scale used when drawing contact impulses. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [drawNormalScale](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawnormalscale.md)                         | Controls the joint contact normal scale used when drawing contact normals. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [drawOptions](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawoptions-1.md)                               | Draw Options used to control what is drawn using Draw. This is only used in the Unity Editor or in a Development Player. See [PhysicsWorld.DrawOptions](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawoptions.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [drawPointScale](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawpointscale.md)                           | Controls the draw point scale used when drawing points. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [drawThickness](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawthickness.md)                             | Controls the draw thickness (outline and orientation). This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [elementDepth](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/elementdepth.md)                               | Controls the element depth.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [gravity](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/gravity.md)                                         | Get/Set the gravity vector applied to all bodies in the world, usually in m/s^2.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [isDefaultWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/isdefaultworld.md)                           | Check if this is the default [PhysicsWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld.md). The default world is automatically created at start-up.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [isEmpty](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/isempty.md)                                         | Check if the world is empty as defined by having no bodies, shapes or joints.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [isOwned](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/isowned.md)                                         | Get if the world is owned. See [PhysicsWorld.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setowner.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/isvalid.md)                                         | Check if the world is valid.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [jointThresholdEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/jointthresholdevents.md)               | Get the joint events from the last simulation. An event is produced by a Joint which exceeds either its [PhysicsJoint.forceThreshold](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/forcethreshold.md) or [PhysicsJoint.torqueThreshold](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/torquethreshold.md). The [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsJoint.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/isvalid.md)). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.JointThresholdEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/jointthresholdevent.md).   |
| [lastSimulationDeltaTime](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lastsimulationdeltatime.md)         | Get the delta-time used for the last simulation run.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [lastSimulationTimestamp](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lastsimulationtimestamp.md)         | Get the timestamp when the last simulation was run.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [maximumLinearSpeed](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/maximumlinearspeed.md)                   | Get/Set the maximum linear speed.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [ownerUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/owneruserdata.md)                             | Get [PhysicsUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsuserdata.md) that can be used for any purpose, typically by the owner only.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [paused](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/paused.md)                                           | Get/Set if the world is paused. When paused, any simulation attempted will be ignored whether it be automatic or manual.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [preSolveCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/presolvecallbacks.md)                     | Controls if pre-solve callbacks will be called. This only applies to Dynamic bodies and is ignored for triggers. These are relatively expensive so disabling them can provide a significant performance benefit. A pre-solve callback will call the [PhysicsShape.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/callbacktarget.md) for both shapes involved if they implement [PhysicsCallbacks.IPreSolveCallback](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicscallbacks/ipresolvecallback.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [profile](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/profile.md)                                         | Get the world timing profile.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [simulationSubSteps](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationsubsteps.md)                   | Get/Set the simulation sub-steps to use during simulation. See [PhysicsWorld.Simulate](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulate.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [simulationType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype-1.md)                         | Get/Set the simulation type which controls when or if the simulation will be automatically simulated. See [PhysicsWorld.SimulationType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [simulationWorkers](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationworkers.md)                     | Get/Set the simulation worker count for the world. A single simulation worker is always used for simulation therefore a worker count of one means single thread simulation only. The actual quantity of workers used will always be capped to those available on the current device and reading the property will return the number of workers actually being used by the device. Changing the worker count continuously is not recommend and will impact performance as it requires the task queue be recreated. See [PhysicsWorldDefinition.simulationWorkers](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworlddefinition/simulationworkers.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [sleepingAllowed](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sleepingallowed.md)                         | Controls if bodies go to sleep when not moving and not interacting. Sleeping can provide a significant performance improvement when many Dynamic or Kinematic bodies are in the world.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [transformPlane](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformplane-1.md)                         | Controls the transform plane that the world uses when writing transforms. See [PhysicsWorld.transformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformwritemode-1.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [transformTweening](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformtweening.md)                     | Controls if Transform tweening is used. Transform tweening is where bodies that have their [PhysicsBody.transformObject](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/transformobject.md) set, write to the [Transform](/engine/6000.3/script-reference/unityengine/transform.md) each frame depending on the specific body [PhysicsBody.TransformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/transformwritemode.md) set. Regardless of this setting, Transform tweening is never used if the [PhysicsWorld.simulationType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype-1.md) is [PhysicsWorld.SimulationType.Update](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype/update.md) or [PhysicsWorld.transformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformwritemode-1.md) is [PhysicsWorld.TransformWriteMode.Off](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformwritemode/off.md). |
| [transformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformwritemode-1.md)                 | Controls how transform writing is handled. Only bodies that have their [PhysicsBody.transformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/transformwritemode-1.md) active and produce a [PhysicsEvents.BodyUpdateEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/bodyupdateevent.md) will write to a transform. See [PhysicsWorld.TransformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformwritemode.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [triggerBeginEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/triggerbeginevents.md)                   | Get the trigger begin events from the last simulation. The [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.TriggerBeginEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/triggerbeginevent.md).                                                                                                                                                                                                                                                                                                                      |
| [triggerEndEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/triggerendevents.md)                       | Get the trigger end events from the last simulation. The [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) objects returned should be checked to see if they are valid before accessing as they may have been deleted since this event was produced (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)). Any change to the world state can invalidate this data so referring to this data afterwards may cause an unavoidable crash! It is recommended that you immediately extract what information you need and not directly reference the returned data. See [PhysicsEvents.TriggerEndEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/triggerendevent.md).                                                                                                                                                                                                                                                                                                                            |
| [userData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/userdata.md)                                       | Get/Set [PhysicsUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsuserdata.md) that can be used for any purpose. This cannot be set on the [PhysicsWorld.defaultWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/defaultworld.md) and will always be at the default. The physics system doesn't use this data, it is entirely for custom use.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [warmStartingAllowed](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/warmstartingallowed.md)                 | Is warm-starting allowed in the world? Disabling warming-starting will severely impact stability. This is typically used for testing only!                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |

## Static Properties

| Property                                                                                                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| -------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [aabbMargin](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/aabbmargin.md)                                 | The distance used to expand AABBs in the broadphase dynamic tree, in meters. This allows broadphase proxies to move by a small amount without triggering a tree adjustment. This value is 0.05f \* [PhysicsWorld.lengthUnitsPerMeter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lengthunitspermeter.md). Normally this is 5cm.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [bodyMaxRotation](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodymaxrotation.md)                       | The maximum rotation of a body per time step, in degrees. This limit is very large and is used to prevent numerical problems. This value is approximately 45-degrees or 0.25f \* [PhysicsMath.PI](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsmath/pi.md) radians.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [bodyTimeToSleep](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodytimetosleep.md)                       | The time that a body must be still before it will go to sleep, in seconds. This value is 0.5f                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [bypassLowLevel](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bypasslowlevel.md)                         | Get if the low-level physics is currently bypassed or not. When bypassed, no simulations or rendering will occur reducing it to near-zero CPU overhead. This can be controlled via [PhysicsLowLevelSettings2D.bypassLowLevel](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslowlevelsettings2d/bypasslowlevel.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [concurrentSimulations](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/concurrentsimulations.md)           | Controls how many simulations can be started in parallel. Whilst running simulations in parallel can improver overall performance, workers should ideally be left free for the simulation solver otherwise it may degrade solving performance. The actual quantity of workers used will always be capped to those available on the current device. If the total number of workers available is below 4 then parallel simulation won't occur as generally this would reduce overall performance, however parallel solving of each simulation using workers will still be used. This should not be confused with the quantity of workers used when solving a simulation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [defaultWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/defaultworld.md)                             | Get the default world created at start-up. This world cannot be destroyed as it is permanently owned by Unity itself. See [PhysicsWorld.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setowner.md) and [PhysicsWorld.isOwned](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/isowned.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [globalCounters](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/globalcounters.md)                         | Get the world counters, summed for all the active worlds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [globalProfile](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/globalprofile.md)                           | Get the world timing profile, summed for all the active worlds.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [hugeWorldExtent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/hugeworldextent.md)                       | Positions greater than about 16km will have precision problems, so 100km as a limit should be fine in all cases. This is used to detect bad values. This value is 100000.0f \* [PhysicsWorld.lengthUnitsPerMeter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lengthunitspermeter.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| [isRenderingAllowed](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/isrenderingallowed.md)                 | Get if rendering is currently allowed. Rendering is always allowed in the Editor however it is only allowed in build if [PhysicsLowLevelSettings2D.drawInBuild](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslowlevelsettings2d/drawinbuild.md) is active when building.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [lengthUnitsPerMeter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lengthunitspermeter.md)               | Get the internal length units per meter. Changes won't take effect until exiting play mode. The physics system bases all length units on meters but you may need different units for your project. You can set this value to use different units but it should only be modified before any other calls to the physics system occur and only modified once. Changing this value after any physics object has been created can result in severe simulation instabilities.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| [linearSlop](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/linearslop.md)                                 | A small length used as a collision and constraint tolerance, in meters. Usually it is chosen to be numerically significant, but visually insignificant. This value is 0.005f \* [PhysicsWorld.lengthUnitsPerMeter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lengthunitspermeter.md). Normally this is 0.5cm.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [safetyLocksEnabled](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/safetylocksenabled.md)                 | Get/Set whether safety threading locks are enabled or not. Locks are enabled by default however on platforms that do not support threading, locks are not used. Disabling locks can result in a small performance boost however, please note the following EXTREME CAUTIONS.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [speculativeContactDistance](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/speculativecontactdistance.md) | The distance at which speculative contacts will be calculated. This reduces jitter. This value is 4.0f \* [PhysicsWorld.lengthUnitsPerMeter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/lengthunitspermeter.md). Normally this is 2cm.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [useFullLayers](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/usefulllayers.md)                           | Indicates if the option of [PhysicsLowLevelSettings2D.useFullLayers](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslowlevelsettings2d/usefulllayers.md) is active or not. If no [PhysicsLowLevelSettings2D](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslowlevelsettings2d.md) asset is assigned, this option will return false (inactive). When active, the 64-bit layers are used (see [PhysicsLowLevelSettings2D.physicsLayerNames](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslowlevelsettings2d/physicslayernames.md)) for property drawers and [PhysicsLayers.GetLayerMask](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslayers/getlayermask.md). When inactive, the 32-bit layers are used (see [LayerMask](/engine/6000.3/script-reference/unityengine/layermask.md))  for property drawers and [PhysicsLayers.GetLayerMask](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslayers/getlayermask.md). In all cases, the physics system itself will always use the full 64-bit layers assigned, however when using 32-bit layers, the top 32-bits will be set to zero. |
| [worldCount](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/worldcount.md)                                 | Get the number of created worlds. This will be a value in the range of 1 to [PhysicsConstants.MaxWorlds](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsconstants/maxworlds.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |

## Methods

| Method                                                                                                                                             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [CastGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/castgeometry.md)                                         | Returns the shape(s) that intersect the specified Capsule geometry as it is cast through the world. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldCastMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastmode.md), [PhysicsQuery.WorldCastResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [CastMover](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/castmover.md)                                               | Cast a "Mover" which is geometry designed to collide with the world and solve its movement. Everything is specified via the [PhysicsQuery.WorldMoverInput](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldmoverinput.md) with results returned in [PhysicsQuery.WorldMoverResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldmoverresult.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [CastRay](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/castray.md)                                                   | Returns the shape(s) that intersect the specified Ray. Technically this is a line-segment and not an infinite ray. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldCastMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastmode.md), [PhysicsQuery.WorldCastResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [CastShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/castshape.md)                                               | Returns the shape(s) that intersect the specified shape as it is cast through the world. The selected shape is excluded from any results and must be in this world otherwise a warning will be produced. Neither [PhysicsShape.ShapeType.Segment](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/shapetype/segment.md) or [PhysicsShape.ShapeType.ChainSegment](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/shapetype/chainsegment.md) shape types are supported. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldCastMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastmode.md), [PhysicsQuery.WorldCastResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                              |
| [CastShapeProxy](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/castshapeproxy.md)                                     | Returns the shape(s) that intersect the specified Circle geometry as it is cast through the world. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldCastMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastmode.md), [PhysicsQuery.WorldCastResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldcastresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [ClearDraw](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/cleardraw.md)                                               | Clear all the custom drawn items that have a lifetime. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [CreateBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/createbody.md)                                             | Create a body using the [PhysicsBodyDefinition.defaultDefinition](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbodydefinition/defaultdefinition.md) in the world. See [PhysicsBody.Create](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/create.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [CreateBodyBatch](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/createbodybatch.md)                                   | Create a batch of bodies in the world.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [CreateJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/createjoint.md)                                           | Create a PhysicsDistanceJoint in the world. See [PhysicsDistanceJoint.Create](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsdistancejoint/create.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [Destroy](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/destroy.md)                                                   | Destroy a world, destroying all objects contained within it such as all [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) and attached [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) and [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md). If the object is owned with [PhysicsWorld.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setowner.md) then you must provide the owner key it returned. Failing to do so will return a warning and the world will not be destroyed. You cannot destroy the [PhysicsWorld.defaultWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/defaultworld.md) as it is permanently owned by Unity itself.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| [DrawBox](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawbox.md)                                                   | Draw a Box. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [DrawCapsule](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcapsule.md)                                           | Draw a Capsule outline. This is only used in the Unity Editor or in a Development Player. For further information on the parameters.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [DrawCircle](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcircle.md)                                             | Draw a Circle outline. This is only used in the Unity Editor or in a Development Player. For further information on the parameters. See [CircleGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/circlegeometry.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [DrawGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawgeometry.md)                                         | Draw the specified span of Capsule geometry. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [DrawLine](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawline.md)                                                 | Draw a Line. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [DrawLineStrip](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawlinestrip.md)                                       | Draw a set of vertices as lines joined to each other. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [DrawPoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawpoint.md)                                               | Draw a Point. This is only used in the Unity Editor or in a Development Player. A Point is similar to a filled Circle except the radius here is specified in pixels rather than world units.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| [DrawTransformAxis](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawtransformaxis.md)                               | Draw a Transform axis. This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [Explode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/explode.md)                                                   | Apply a radial explosion applying impulses away from the position to all bodies found within in the radius.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [GetBodies](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getbodies.md)                                               | Get all the active [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) in the specified world.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [GetBodyUpdateCallbackTargets](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getbodyupdatecallbacktargets.md)         | Get all current [PhysicsWorld.bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md) where either of the [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) involved are valid (see [PhysicsBody.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/isvalid.md)) and have a callback target assigned (see [PhysicsBody.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/callbacktarget.md)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| [GetBodyUpdateOwnerUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getbodyupdateowneruserdata.md)             | Get all [PhysicsBody.ownerUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/owneruserdata.md) assigned to each [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) returned with [PhysicsWorld.bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md). The Native Array returned will be of the same length and be ordered the same as the [PhysicsEvents.BodyUpdateEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/bodyupdateevent.md) returned with [PhysicsWorld.bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md). Any [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) that are not valid will return a default [PhysicsUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsuserdata.md).                                                                                                                                                                                                                                                                                                                                                   |
| [GetBodyUpdateUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getbodyupdateuserdata.md)                       | Get all [PhysicsBody.userData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/userdata.md) assigned to each [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) returned with [PhysicsWorld.bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md). The Native Array returned will be of the same length and be ordered the same as the [PhysicsEvents.BodyUpdateEvent](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsevents/bodyupdateevent.md) returned with [PhysicsWorld.bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md). Any [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) that are not valid will return a default [PhysicsUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsuserdata.md).                                                                                                                                                                                                                                                                                                                                                             |
| [GetContactCallbackTargets](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getcontactcallbacktargets.md)               | Get all current [PhysicsWorld.contactBeginEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactbeginevents.md) and [PhysicsWorld.contactEndEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactendevents.md) where either of the [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) involved are valid (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)) and have a callback target assigned (see [PhysicsShape.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/callbacktarget.md)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [GetJoints](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getjoints.md)                                               | Get all the active [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md) in the specified world.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [GetJointThresholdCallbackTargets](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getjointthresholdcallbacktargets.md) | Get all current [PhysicsWorld.jointThresholdEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/jointthresholdevents.md) where either of the [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md) involved are valid (see [PhysicsJoint.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/isvalid.md)) and have a callback target assigned (see [PhysicsJoint.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/callbacktarget.md)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [GetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getowner.md)                                                 | Get the owner object associated with this world as specified using [PhysicsWorld.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setowner.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [GetTransformWriteTweens](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/gettransformwritetweens.md)                   | Gets all the existing Transform Write Tweens that are handled per-frame.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [GetTriggerCallbackTargets](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/gettriggercallbacktargets.md)               | Get all current [PhysicsWorld.triggerBeginEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/triggerbeginevents.md) and [PhysicsWorld.triggerEndEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/triggerendevents.md) where either of the [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) involved are valid (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)) and have a callback target assigned (see [PhysicsShape.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/callbacktarget.md)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [OverlapAABB](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/overlapaabb.md)                                           | Returns all shapes that potentially overlap the provided AABB. The overlap is between AABB of shapes in the world therefore it may not result in an exact overlap of the shape itself. See [PhysicsAABB](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsaabb.md), [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldOverlapResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldoverlapresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [OverlapGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/overlapgeometry.md)                                   | Returns all shapes that overlap the provided Capsule geometry. See [CapsuleGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/capsulegeometry.md), [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldOverlapResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldoverlapresult.md) and  [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [OverlapPoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/overlappoint.md)                                         | Returns all shapes that overlap the provided point. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md), [PhysicsQuery.WorldOverlapResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldoverlapresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [OverlapShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/overlapshape.md)                                         | Returns all shapes that overlap the provided shape. The selected shape is excluded from any results and must be in this world otherwise a warning will be produced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [OverlapShapeProxy](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/overlapshapeproxy.md)                               | Returns all shapes that overlap the shape proxy. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md). [PhysicsQuery.WorldOverlapResult](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/worldoverlapresult.md) and [Allocator](/engine/6000.3/script-reference/unity/collections/allocator.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [Reset](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/reset.md)                                                       | Reset the world to a canonical state so that it will reproduce identical results each time. The world must be empty for this to be called otherwise a warning is produced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| [SendAllCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendallcallbacks.md)                                 | Send all callbacks to targets:                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [SendBodyUpdateCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendbodyupdatecallbacks.md)                   | Send all current [PhysicsWorld.bodyUpdateEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/bodyupdateevents.md) where the [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) involved are valid (see [PhysicsBody.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/isvalid.md)) and have a callback target assigned (see [PhysicsBody.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/callbacktarget.md)). Only callback targets that implement [PhysicsCallbacks.IBodyUpdateCallback](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicscallbacks/ibodyupdatecallback.md) will be called. This will be called automatically if [PhysicsWorld.autoBodyUpdateCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autobodyupdatecallbacks.md) is true. This must be called on the main thread.                                                                                                                                                                                                                                                                                                                                                        |
| [SendContactCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendcontactcallbacks.md)                         | Send all current [PhysicsWorld.contactBeginEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactbeginevents.md) and [PhysicsWorld.contactEndEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/contactendevents.md) where either of the [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) involved are valid (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)) and have a callback target assigned (see [PhysicsShape.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/callbacktarget.md)). These events will only be created if both of the shape pairs has [PhysicsShape.contactEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/contactevents.md) set to true. Only callback targets that implement [PhysicsCallbacks.IContactCallback](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicscallbacks/icontactcallback.md) will be called. This will be called automatically if [PhysicsWorld.autoContactCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autocontactcallbacks.md) is true. This must be called on the main thread.    |
| [SendJointThresholdCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendjointthresholdcallbacks.md)           | Send all current [PhysicsWorld.jointThresholdEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/jointthresholdevents.md) where the [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md) involved are valid (see [PhysicsJoint.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/isvalid.md)) and have a callback target assigned (see [PhysicsJoint.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/callbacktarget.md)). These events will only be created if the joint exceeds its [PhysicsJoint.forceThreshold](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/forcethreshold.md) or [PhysicsJoint.torqueThreshold](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/torquethreshold.md). Only callback targets that implement [PhysicsCallbacks.IJointThresholdCallback](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicscallbacks/ijointthresholdcallback.md) will be called. This will be called automatically if [PhysicsWorld.autoJointThresholdCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autojointthresholdcallbacks.md) is true. This must be called on the main thread. |
| [SendTriggerCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/sendtriggercallbacks.md)                         | Send all current [PhysicsWorld.triggerBeginEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/triggerbeginevents.md) and [PhysicsWorld.triggerEndEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/triggerendevents.md) where either of the [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md) involved are valid (see [PhysicsShape.isValid](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/isvalid.md)) and have a callback target assigned (see [PhysicsShape.callbackTarget](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/callbacktarget.md)). These events will only be created if one of the shape pairs has [PhysicsShape.triggerEvents](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/triggerevents.md) set to true. Only callback targets that implement [PhysicsCallbacks.ITriggerCallback](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicscallbacks/itriggercallback.md) will be called. This will be called automatically if [PhysicsWorld.autoTriggerCallbacks](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/autotriggercallbacks.md) is true. This must be called on the main thread.     |
| [SetElementDepth3D](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setelementdepth3d.md)                               | Set the element depth using the specified 3D position. The relevant axis will be extracted using the current [PhysicsWorld.transformPlane](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformplane-1.md). This is only used in the Unity Editor or in a Development Player.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setowner.md)                                                 | Set the (optional) owner object associated with this world and return an owner key that must be specified when destroying the world with [PhysicsWorld.Destroy](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/destroy.md). The physics system provides access to all objects, including the ability to destroy them so this feature can be used to stop accidental destruction of objects that are owned by other objects. You can only set the owner once, multiple attempts will produce a warning. The lifetime of the specified owner object is not linked to this world i.e. this world will still be owned by the owner object, even if it is destroyed. It is also valid to not specify an owner object (NULL) to simply gain an owner key however it can be useful, if simply for debugging purposes and discovery, to know which object is the owner.                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [SetOwnerUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/setowneruserdata.md)                                 | Set [PhysicsUserData](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsuserdata.md) that can be used for any purpose, typically by the owner only.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [Simulate](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulate.md)                                                 | Simulate the world. The world should must have its [PhysicsWorld.simulationType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype-1.md) set to [PhysicsWorld.SimulationType.Script](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype/script.md) for this to work.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| [TestOverlapAABB](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/testoverlapaabb.md)                                   | Tests if the provided AABB potentially overlaps any shapes. The overlap is between AABB of shapes in the world therefore it may not result in an exact overlap of any shape itself. See [PhysicsAABB](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsaabb.md) and [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [TestOverlapGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/testoverlapgeometry.md)                           | Tests if the provided Capsule geometry overlaps any shapes. See [CapsuleGeometry](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/capsulegeometry.md) and [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [TestOverlapPoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/testoverlappoint.md)                                 | Tests if the provided point overlaps any shapes. See [PhysicsQuery.QueryFilter](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsquery/queryfilter.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| [TestOverlapShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/testoverlapshape.md)                                 | Tests if the provided shape overlaps any shapes. The selected shape is excluded from any results and must be in this world otherwise a warning will be produced.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| [TestOverlapShapeProxy](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/testoverlapshapeproxy.md)                       | Test if the provided shape proxy overlaps any shapes.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |

## Static Methods

| Method                                                                                                               | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| -------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Create](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/create.md)                       | Create a PhysicsWorld using the [PhysicsWorldDefinition.defaultDefinition](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworlddefinition/defaultdefinition.md).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| [DestroyBodyBatch](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/destroybodybatch.md)   | Destroy a batch of bodies. Any invalid bodies will be ignored. Owned bodies will produce a warning and will not be destroyed (See [PhysicsBody.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/setowner.md)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| [DestroyJointBatch](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/destroyjointbatch.md) | Destroy a batch of joints. Any invalid joints will be ignored. Owned joints will produce a warning and will not be destroyed ([PhysicsJoint.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint/setowner.md)).                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [DestroyShapeBatch](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/destroyshapebatch.md) | Destroy a batch of shapes, destroying all [PhysicsShape.Contact](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/contact.md) the shapes are involved in. Any invalid shapes will be ignored including chain segment shapes created via a [PhysicsChain](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicschain.md) (the chain must be destroyed)." Owned shapes will produce a warning and will not be destroyed ([PhysicsShape.SetOwner](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/setowner.md)). See [PhysicsBody.MassConfiguration](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody/massconfiguration.md). |
| [GetWorlds](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/getworlds.md)                 | Get all the active [PhysicsWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld.md). This includes the [PhysicsWorld.defaultWorld](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/defaultworld.md) so will always contain at least a single world.                                                                                                                                                                                                                                                                                                                                                                                                             |
| [Simulate](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulate.md)                   | Simulate a batch of worlds. The worlds can be simulated concurrently depending on the setting of [PhysicsLowLevelSettings2D.concurrentSimulations](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicslowlevelsettings2d/concurrentsimulations.md). The worlds in the batch must have their [PhysicsWorld.simulationType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype-1.md) set to [PhysicsWorld.SimulationType.Script](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype/script.md).                                                                                                                           |

## Structs

| Struct                                                                                                                                | Description                                                                                                                                                                                                                                                                                                            |
| ------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [PhysicsWorld.DrawColors](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcolors.md)                   | The colors used to draw [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md), [PhysicsShape](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape.md), [PhysicsJoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsjoint.md) etc. |
| [PhysicsWorld.ExplosionDefinition](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/explosiondefinition.md) | Used to define the parameters when using [PhysicsWorld.Explode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/explode.md).                                                                                                                                                                |
| [PhysicsWorld.WorldCounters](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/worldcounters.md)             | PhysicsWorld counters that give details of the world simulation size.                                                                                                                                                                                                                                                  |
| [PhysicsWorld.WorldProfile](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/worldprofile.md)               | PhysicsWorld profile that contains the timings of specific world simulation stages. All times are in milliseconds.                                                                                                                                                                                                     |

## Enums

| Enum                                                                                                                                | Description                                                                                                                                                                                                                                                                                               |
| ----------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [PhysicsWorld.DrawContactType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawcontacttype.md)       | Controls which properties of a [PhysicsShape.ContactManifold.ManifoldPoint](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsshape/contactmanifoldmanifoldpoint.md) are drawn when drawing contact points.                                                                            |
| [PhysicsWorld.DrawFillOptions](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawfilloptions.md)       | Controls what aspects of is drawn using Draw.                                                                                                                                                                                                                                                             |
| [PhysicsWorld.DrawOptions](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/drawoptions.md)               | Draw Options used to control what is drawn using Draw. Debug Drawing is only available on devices that support Compute Shaders.                                                                                                                                                                           |
| [PhysicsWorld.SimulationType](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/simulationtype.md)         | Defines when the simulation will run.                                                                                                                                                                                                                                                                     |
| [PhysicsWorld.TransformPlane](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformplane.md)         | Defines the 2D Transform plane where Transform writes will occur. This also defines the rotation axis which will automatically be perpendicular to the selected plane. See [PhysicsWorld.transformPlane](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformplane-1.md). |
| [PhysicsWorld.TransformWriteMode](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsworld/transformwritemode.md) | Defines how the 2D Transforms from each [PhysicsBody](/engine/6000.3/script-reference/unityengine/lowlevelphysics2d/physicsbody.md) are written to the 3D Transform system.                                                                                                                               |
