# PhysicsWorld.TransformWriteMode

> Defines how the 2D Transforms from each PhysicsBody are written to the 3D Transform system.

## Definition

* **Type:** Enum
* **Namespace:** [Unity.U2D.Physics](/engine/6000.7/script-reference/unity/u2d/physics.md)
* **Assembly:** UnityEngine.PhysicsCore2DModule

```csharp
public enum PhysicsWorld.TransformWriteMode
```

## Fields

| Value                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Custom](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformwritemode/custom.md) | Transforms are not written. Instead, the callback target set with [\_transformWriteCallbackTarget](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformwritecallbacktarget.md) which must implement [PhysicsCallbacks.ITransformWriteCallback](/engine/6000.7/script-reference/unity/u2d/physics/physicscallbacks/itransformwritecallback.md) will have [PhysicsCallbacks.ITransformWriteCallback.OnTransformWrite](/engine/6000.7/script-reference/unity/u2d/physics/physicscallbacks/itransformwritecallback/ontransformwrite.md) called allowing custom transform writing.                    |
| [Fast2D](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformwritemode/fast2d.md) | Transforms are written but the rotation is converted to a [Quaternion](/engine/6000.7/script-reference/unityengine/quaternion.md) where only a single axis is written, all others will be set to zero rotation. This is the fastest method of writing transforms however, any 3D rotations or rotations on the unused axis will be reset to zero. The rotational axis written to depends on the current [PhysicsWorld.TransformPlane](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformplane.md) selected with \_transformPlane where it will always be perpendicular to the transform plane. |
| [Off](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformwritemode/off.md)       | Transforms are never written. This is the fastest operation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| [Slow3D](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformwritemode/slow3d.md) | Transforms are written but the rotation is converted to a [Quaternion](/engine/6000.7/script-reference/unityengine/quaternion.md) where the rotation of the body transform is merged into the existing 3D rotation. This is the slowest method of writing transforms however, all 3D rotations are preserved. The rotational axis written to depends on the current [PhysicsWorld.TransformPlane](/engine/6000.7/script-reference/unity/u2d/physics/physicsworld/transformplane.md) selected with \_transformPlane where it will always be perpendicular to the transform plane.                                     |
