# SetUserData

> Set PhysicsUserData on a batch of joints that can be used for any purpose. The joints and userDatas spans must be the same length; joints[n] receives userDatas[n].

## Definition

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

## SetUserData(ReadOnlySpan\<PhysicsJoint>, ReadOnlySpan\<PhysicsUserData>)

Set [PhysicsUserData](/engine/6000.7/script-reference/unity/u2d/physics/physicsuserdata.md) on a batch of joints that can be used for any purpose. The joints and userDatas spans must be the same length; joints\[n] receives userDatas\[n].

```csharp
public static int SetUserData(ReadOnlySpan<PhysicsJoint> joints, ReadOnlySpan<PhysicsUserData> userDatas)
```

### Parameters

**** (\[ReadOnlySpan\<PhysicsJoint>]\(https\://learn.microsoft.com/dotnet/api/system.readonlyspan-1)): The joints to set the user data on.**** (\[ReadOnlySpan\<PhysicsUserData>]\(https\://learn.microsoft.com/dotnet/api/system.readonlyspan-1)): The user data to set, one entry per joint.

### Returns

| Type                                                       | Description                                                                                                                                                                                                                |
| ---------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | The number of joints that were ignored (not set because the joint was invalid). A single warning is logged when any are ignored. If the spans are different lengths, nothing is set and every joint is counted as ignored. |

## SetUserData(ReadOnlySpan\<PhysicsJoint>, PhysicsUserData)

Set the same [PhysicsUserData](/engine/6000.7/script-reference/unity/u2d/physics/physicsuserdata.md) on a batch of joints that can be used for any purpose.

```csharp
public static int SetUserData(ReadOnlySpan<PhysicsJoint> joints, PhysicsUserData physicsUserData)
```

### Parameters

**** (\[ReadOnlySpan\<PhysicsJoint>]\(https\://learn.microsoft.com/dotnet/api/system.readonlyspan-1)): The joints to set the user data on.**** (\[PhysicsUserData]\(/engine/6000.7/script-reference/unity/u2d/physics/physicsuserdata)): The user data to set on every joint.

### Returns

| Type                                                       | Description                                                                                                                      |
| ---------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | The number of joints that were ignored (not set because the joint was invalid). A single warning is logged when any are ignored. |
