# shuffle

> Returns the result of specified shuffling of the components from two bool2 vectors into a bool value.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Mathematics](/engine/6000.7/script-reference/unity/mathematics.md)
* **Assembly:** UnityEngine.MathematicsModule

## shuffle(bool2, bool2, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool2 vectors into a bool value.

```csharp
public static bool shuffle(bool2 left, bool2 right, math.ShuffleComponent x)
```

### Parameters

**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the left argument of the shuffle operation.**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool.

### Returns

| Type                                                          | Description                           |
| ------------------------------------------------------------- | ------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | bool result of the shuffle operation. |

## shuffle(bool2, bool2, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool2 vectors into a bool2 vector.

```csharp
public static bool2 shuffle(bool2 left, bool2 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the left argument of the shuffle operation.**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool2 y component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool2](/engine/6000.7/script-reference/unity/mathematics/bool2.md) | bool2 result of the shuffle operation. |

## shuffle(bool2, bool2, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool2 vectors into a bool3 vector.

```csharp
public static bool3 shuffle(bool2 left, bool2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the left argument of the shuffle operation.**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 z component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool3](/engine/6000.7/script-reference/unity/mathematics/bool3.md) | bool3 result of the shuffle operation. |

## shuffle(bool2, bool2, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool2 vectors into a bool4 vector.

```csharp
public static bool4 shuffle(bool2 left, bool2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the left argument of the shuffle operation.**** (\[bool2]\(/engine/6000.7/script-reference/unity/mathematics/bool2)): bool2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 w component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool4](/engine/6000.7/script-reference/unity/mathematics/bool4.md) | bool4 result of the shuffle operation. |

## shuffle(bool3, bool3, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool3 vectors into a bool value.

```csharp
public static bool shuffle(bool3 left, bool3 right, math.ShuffleComponent x)
```

### Parameters

**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the left argument of the shuffle operation.**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool.

### Returns

| Type                                                          | Description                           |
| ------------------------------------------------------------- | ------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | bool result of the shuffle operation. |

## shuffle(bool3, bool3, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool3 vectors into a bool2 vector.

```csharp
public static bool2 shuffle(bool3 left, bool3 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the left argument of the shuffle operation.**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool2 y component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool2](/engine/6000.7/script-reference/unity/mathematics/bool2.md) | bool2 result of the shuffle operation. |

## shuffle(bool3, bool3, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool3 vectors into a bool3 vector.

```csharp
public static bool3 shuffle(bool3 left, bool3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the left argument of the shuffle operation.**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 z component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool3](/engine/6000.7/script-reference/unity/mathematics/bool3.md) | bool3 result of the shuffle operation. |

## shuffle(bool3, bool3, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool3 vectors into a bool4 vector.

```csharp
public static bool4 shuffle(bool3 left, bool3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the left argument of the shuffle operation.**** (\[bool3]\(/engine/6000.7/script-reference/unity/mathematics/bool3)): bool3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 w component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool4](/engine/6000.7/script-reference/unity/mathematics/bool4.md) | bool4 result of the shuffle operation. |

## shuffle(bool4, bool4, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool4 vectors into a bool value.

```csharp
public static bool shuffle(bool4 left, bool4 right, math.ShuffleComponent x)
```

### Parameters

**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the left argument of the shuffle operation.**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool.

### Returns

| Type                                                          | Description                           |
| ------------------------------------------------------------- | ------------------------------------- |
| [bool](https://learn.microsoft.com/dotnet/api/system.boolean) | bool result of the shuffle operation. |

## shuffle(bool4, bool4, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool4 vectors into a bool2 vector.

```csharp
public static bool2 shuffle(bool4 left, bool4 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the left argument of the shuffle operation.**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool2 y component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool2](/engine/6000.7/script-reference/unity/mathematics/bool2.md) | bool2 result of the shuffle operation. |

## shuffle(bool4, bool4, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool4 vectors into a bool3 vector.

```csharp
public static bool3 shuffle(bool4 left, bool4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the left argument of the shuffle operation.**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool3 z component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool3](/engine/6000.7/script-reference/unity/mathematics/bool3.md) | bool3 result of the shuffle operation. |

## shuffle(bool4, bool4, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two bool4 vectors into a bool4 vector.

```csharp
public static bool4 shuffle(bool4 left, bool4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the left argument of the shuffle operation.**** (\[bool4]\(/engine/6000.7/script-reference/unity/mathematics/bool4)): bool4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting bool4 w component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [bool4](/engine/6000.7/script-reference/unity/mathematics/bool4.md) | bool4 result of the shuffle operation. |

## shuffle(double2, double2, ShuffleComponent)

Returns the result of specified shuffling of the components from two double2 vectors into a double value.

```csharp
public static double shuffle(double2 left, double2 right, math.ShuffleComponent x)
```

### Parameters

**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the left argument of the shuffle operation.**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double.

### Returns

| Type                                                           | Description                             |
| -------------------------------------------------------------- | --------------------------------------- |
| [double](https://learn.microsoft.com/dotnet/api/system.double) | double result of the shuffle operation. |

## shuffle(double2, double2, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double2 vectors into a double2 vector.

```csharp
public static double2 shuffle(double2 left, double2 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the left argument of the shuffle operation.**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double2 y component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double2](/engine/6000.7/script-reference/unity/mathematics/double2.md) | double2 result of the shuffle operation. |

## shuffle(double2, double2, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double2 vectors into a double3 vector.

```csharp
public static double3 shuffle(double2 left, double2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the left argument of the shuffle operation.**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 z component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double3](/engine/6000.7/script-reference/unity/mathematics/double3.md) | double3 result of the shuffle operation. |

## shuffle(double2, double2, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double2 vectors into a double4 vector.

```csharp
public static double4 shuffle(double2 left, double2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the left argument of the shuffle operation.**** (\[double2]\(/engine/6000.7/script-reference/unity/mathematics/double2)): double2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 w component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double4](/engine/6000.7/script-reference/unity/mathematics/double4.md) | double4 result of the shuffle operation. |

## shuffle(double3, double3, ShuffleComponent)

Returns the result of specified shuffling of the components from two double3 vectors into a double value.

```csharp
public static double shuffle(double3 left, double3 right, math.ShuffleComponent x)
```

### Parameters

**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the left argument of the shuffle operation.**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double.

### Returns

| Type                                                           | Description                             |
| -------------------------------------------------------------- | --------------------------------------- |
| [double](https://learn.microsoft.com/dotnet/api/system.double) | double result of the shuffle operation. |

## shuffle(double3, double3, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double3 vectors into a double2 vector.

```csharp
public static double2 shuffle(double3 left, double3 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the left argument of the shuffle operation.**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double2 y component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double2](/engine/6000.7/script-reference/unity/mathematics/double2.md) | double2 result of the shuffle operation. |

## shuffle(double3, double3, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double3 vectors into a double3 vector.

```csharp
public static double3 shuffle(double3 left, double3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the left argument of the shuffle operation.**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 z component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double3](/engine/6000.7/script-reference/unity/mathematics/double3.md) | double3 result of the shuffle operation. |

## shuffle(double3, double3, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double3 vectors into a double4 vector.

```csharp
public static double4 shuffle(double3 left, double3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the left argument of the shuffle operation.**** (\[double3]\(/engine/6000.7/script-reference/unity/mathematics/double3)): double3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 w component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double4](/engine/6000.7/script-reference/unity/mathematics/double4.md) | double4 result of the shuffle operation. |

## shuffle(double4, double4, ShuffleComponent)

Returns the result of specified shuffling of the components from two double4 vectors into a double value.

```csharp
public static double shuffle(double4 left, double4 right, math.ShuffleComponent x)
```

### Parameters

**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the left argument of the shuffle operation.**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double.

### Returns

| Type                                                           | Description                             |
| -------------------------------------------------------------- | --------------------------------------- |
| [double](https://learn.microsoft.com/dotnet/api/system.double) | double result of the shuffle operation. |

## shuffle(double4, double4, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double4 vectors into a double2 vector.

```csharp
public static double2 shuffle(double4 left, double4 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the left argument of the shuffle operation.**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double2 y component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double2](/engine/6000.7/script-reference/unity/mathematics/double2.md) | double2 result of the shuffle operation. |

## shuffle(double4, double4, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double4 vectors into a double3 vector.

```csharp
public static double3 shuffle(double4 left, double4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the left argument of the shuffle operation.**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double3 z component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double3](/engine/6000.7/script-reference/unity/mathematics/double3.md) | double3 result of the shuffle operation. |

## shuffle(double4, double4, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two double4 vectors into a double4 vector.

```csharp
public static double4 shuffle(double4 left, double4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the left argument of the shuffle operation.**** (\[double4]\(/engine/6000.7/script-reference/unity/mathematics/double4)): double4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting double4 w component.

### Returns

| Type                                                                    | Description                              |
| ----------------------------------------------------------------------- | ---------------------------------------- |
| [double4](/engine/6000.7/script-reference/unity/mathematics/double4.md) | double4 result of the shuffle operation. |

## shuffle(float2, float2, ShuffleComponent)

Returns the result of specified shuffling of the components from two float2 vectors into a float value.

```csharp
public static float shuffle(float2 left, float2 right, math.ShuffleComponent x)
```

### Parameters

**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the left argument of the shuffle operation.**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float.

### Returns

| Type                                                          | Description                            |
| ------------------------------------------------------------- | -------------------------------------- |
| [float](https://learn.microsoft.com/dotnet/api/system.single) | float result of the shuffle operation. |

## shuffle(float2, float2, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float2 vectors into a float2 vector.

```csharp
public static float2 shuffle(float2 left, float2 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the left argument of the shuffle operation.**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float2 y component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float2](/engine/6000.7/script-reference/unity/mathematics/float2.md) | float2 result of the shuffle operation. |

## shuffle(float2, float2, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float2 vectors into a float3 vector.

```csharp
public static float3 shuffle(float2 left, float2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the left argument of the shuffle operation.**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 z component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float3](/engine/6000.7/script-reference/unity/mathematics/float3.md) | float3 result of the shuffle operation. |

## shuffle(float2, float2, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float2 vectors into a float4 vector.

```csharp
public static float4 shuffle(float2 left, float2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the left argument of the shuffle operation.**** (\[float2]\(/engine/6000.7/script-reference/unity/mathematics/float2)): float2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 w component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float4](/engine/6000.7/script-reference/unity/mathematics/float4.md) | float4 result of the shuffle operation. |

## shuffle(float3, float3, ShuffleComponent)

Returns the result of specified shuffling of the components from two float3 vectors into a float value.

```csharp
public static float shuffle(float3 left, float3 right, math.ShuffleComponent x)
```

### Parameters

**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the left argument of the shuffle operation.**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float.

### Returns

| Type                                                          | Description                            |
| ------------------------------------------------------------- | -------------------------------------- |
| [float](https://learn.microsoft.com/dotnet/api/system.single) | float result of the shuffle operation. |

## shuffle(float3, float3, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float3 vectors into a float2 vector.

```csharp
public static float2 shuffle(float3 left, float3 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the left argument of the shuffle operation.**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float2 y component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float2](/engine/6000.7/script-reference/unity/mathematics/float2.md) | float2 result of the shuffle operation. |

## shuffle(float3, float3, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float3 vectors into a float3 vector.

```csharp
public static float3 shuffle(float3 left, float3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the left argument of the shuffle operation.**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 z component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float3](/engine/6000.7/script-reference/unity/mathematics/float3.md) | float3 result of the shuffle operation. |

## shuffle(float3, float3, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float3 vectors into a float4 vector.

```csharp
public static float4 shuffle(float3 left, float3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the left argument of the shuffle operation.**** (\[float3]\(/engine/6000.7/script-reference/unity/mathematics/float3)): float3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 w component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float4](/engine/6000.7/script-reference/unity/mathematics/float4.md) | float4 result of the shuffle operation. |

## shuffle(float4, float4, ShuffleComponent)

Returns the result of specified shuffling of the components from two float4 vectors into a float value.

```csharp
public static float shuffle(float4 left, float4 right, math.ShuffleComponent x)
```

### Parameters

**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the left argument of the shuffle operation.**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float.

### Returns

| Type                                                          | Description                            |
| ------------------------------------------------------------- | -------------------------------------- |
| [float](https://learn.microsoft.com/dotnet/api/system.single) | float result of the shuffle operation. |

## shuffle(float4, float4, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float4 vectors into a float2 vector.

```csharp
public static float2 shuffle(float4 left, float4 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the left argument of the shuffle operation.**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float2 y component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float2](/engine/6000.7/script-reference/unity/mathematics/float2.md) | float2 result of the shuffle operation. |

## shuffle(float4, float4, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float4 vectors into a float3 vector.

```csharp
public static float3 shuffle(float4 left, float4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the left argument of the shuffle operation.**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float3 z component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float3](/engine/6000.7/script-reference/unity/mathematics/float3.md) | float3 result of the shuffle operation. |

## shuffle(float4, float4, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two float4 vectors into a float4 vector.

```csharp
public static float4 shuffle(float4 left, float4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the left argument of the shuffle operation.**** (\[float4]\(/engine/6000.7/script-reference/unity/mathematics/float4)): float4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting float4 w component.

### Returns

| Type                                                                  | Description                             |
| --------------------------------------------------------------------- | --------------------------------------- |
| [float4](/engine/6000.7/script-reference/unity/mathematics/float4.md) | float4 result of the shuffle operation. |

## shuffle(int2, int2, ShuffleComponent)

Returns the result of specified shuffling of the components from two int2 vectors into an int value.

```csharp
public static int shuffle(int2 left, int2 right, math.ShuffleComponent x)
```

### Parameters

**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the left argument of the shuffle operation.**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int.

### Returns

| Type                                                       | Description                          |
| ---------------------------------------------------------- | ------------------------------------ |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | int result of the shuffle operation. |

## shuffle(int2, int2, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int2 vectors into an int2 vector.

```csharp
public static int2 shuffle(int2 left, int2 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the left argument of the shuffle operation.**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int2 y component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int2](/engine/6000.7/script-reference/unity/mathematics/int2.md) | int2 result of the shuffle operation. |

## shuffle(int2, int2, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int2 vectors into an int3 vector.

```csharp
public static int3 shuffle(int2 left, int2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the left argument of the shuffle operation.**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 z component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int3](/engine/6000.7/script-reference/unity/mathematics/int3.md) | int3 result of the shuffle operation. |

## shuffle(int2, int2, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int2 vectors into an int4 vector.

```csharp
public static int4 shuffle(int2 left, int2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the left argument of the shuffle operation.**** (\[int2]\(/engine/6000.7/script-reference/unity/mathematics/int2)): int2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 w component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int4](/engine/6000.7/script-reference/unity/mathematics/int4.md) | int4 result of the shuffle operation. |

## shuffle(int3, int3, ShuffleComponent)

Returns the result of specified shuffling of the components from two int3 vectors into an int value.

```csharp
public static int shuffle(int3 left, int3 right, math.ShuffleComponent x)
```

### Parameters

**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the left argument of the shuffle operation.**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int.

### Returns

| Type                                                       | Description                          |
| ---------------------------------------------------------- | ------------------------------------ |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | int result of the shuffle operation. |

## shuffle(int3, int3, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int3 vectors into an int2 vector.

```csharp
public static int2 shuffle(int3 left, int3 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the left argument of the shuffle operation.**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int2 y component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int2](/engine/6000.7/script-reference/unity/mathematics/int2.md) | int2 result of the shuffle operation. |

## shuffle(int3, int3, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int3 vectors into an int3 vector.

```csharp
public static int3 shuffle(int3 left, int3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the left argument of the shuffle operation.**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 z component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int3](/engine/6000.7/script-reference/unity/mathematics/int3.md) | int3 result of the shuffle operation. |

## shuffle(int3, int3, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int3 vectors into an int4 vector.

```csharp
public static int4 shuffle(int3 left, int3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the left argument of the shuffle operation.**** (\[int3]\(/engine/6000.7/script-reference/unity/mathematics/int3)): int3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 w component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int4](/engine/6000.7/script-reference/unity/mathematics/int4.md) | int4 result of the shuffle operation. |

## shuffle(int4, int4, ShuffleComponent)

Returns the result of specified shuffling of the components from two int4 vectors into an int value.

```csharp
public static int shuffle(int4 left, int4 right, math.ShuffleComponent x)
```

### Parameters

**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the left argument of the shuffle operation.**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int.

### Returns

| Type                                                       | Description                          |
| ---------------------------------------------------------- | ------------------------------------ |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) | int result of the shuffle operation. |

## shuffle(int4, int4, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int4 vectors into an int2 vector.

```csharp
public static int2 shuffle(int4 left, int4 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the left argument of the shuffle operation.**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int2 y component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int2](/engine/6000.7/script-reference/unity/mathematics/int2.md) | int2 result of the shuffle operation. |

## shuffle(int4, int4, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int4 vectors into an int3 vector.

```csharp
public static int3 shuffle(int4 left, int4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the left argument of the shuffle operation.**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int3 z component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int3](/engine/6000.7/script-reference/unity/mathematics/int3.md) | int3 result of the shuffle operation. |

## shuffle(int4, int4, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two int4 vectors into an int4 vector.

```csharp
public static int4 shuffle(int4 left, int4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the left argument of the shuffle operation.**** (\[int4]\(/engine/6000.7/script-reference/unity/mathematics/int4)): int4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting int4 w component.

### Returns

| Type                                                              | Description                           |
| ----------------------------------------------------------------- | ------------------------------------- |
| [int4](/engine/6000.7/script-reference/unity/mathematics/int4.md) | int4 result of the shuffle operation. |

## shuffle(uint2, uint2, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint2 vectors into a uint value.

```csharp
public static uint shuffle(uint2 left, uint2 right, math.ShuffleComponent x)
```

### Parameters

**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the left argument of the shuffle operation.**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint.

### Returns

| Type                                                         | Description                           |
| ------------------------------------------------------------ | ------------------------------------- |
| [uint](https://learn.microsoft.com/dotnet/api/system.uint32) | uint result of the shuffle operation. |

## shuffle(uint2, uint2, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint2 vectors into a uint2 vector.

```csharp
public static uint2 shuffle(uint2 left, uint2 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the left argument of the shuffle operation.**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint2 y component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint2](/engine/6000.7/script-reference/unity/mathematics/uint2.md) | uint2 result of the shuffle operation. |

## shuffle(uint2, uint2, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint2 vectors into a uint3 vector.

```csharp
public static uint3 shuffle(uint2 left, uint2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the left argument of the shuffle operation.**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 z component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint3](/engine/6000.7/script-reference/unity/mathematics/uint3.md) | uint3 result of the shuffle operation. |

## shuffle(uint2, uint2, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint2 vectors into a uint4 vector.

```csharp
public static uint4 shuffle(uint2 left, uint2 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the left argument of the shuffle operation.**** (\[uint2]\(/engine/6000.7/script-reference/unity/mathematics/uint2)): uint2 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 w component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint4](/engine/6000.7/script-reference/unity/mathematics/uint4.md) | uint4 result of the shuffle operation. |

## shuffle(uint3, uint3, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint3 vectors into a uint value.

```csharp
public static uint shuffle(uint3 left, uint3 right, math.ShuffleComponent x)
```

### Parameters

**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the left argument of the shuffle operation.**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint.

### Returns

| Type                                                         | Description                           |
| ------------------------------------------------------------ | ------------------------------------- |
| [uint](https://learn.microsoft.com/dotnet/api/system.uint32) | uint result of the shuffle operation. |

## shuffle(uint3, uint3, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint3 vectors into a uint2 vector.

```csharp
public static uint2 shuffle(uint3 left, uint3 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the left argument of the shuffle operation.**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint2 y component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint2](/engine/6000.7/script-reference/unity/mathematics/uint2.md) | uint2 result of the shuffle operation. |

## shuffle(uint3, uint3, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint3 vectors into a uint3 vector.

```csharp
public static uint3 shuffle(uint3 left, uint3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the left argument of the shuffle operation.**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 z component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint3](/engine/6000.7/script-reference/unity/mathematics/uint3.md) | uint3 result of the shuffle operation. |

## shuffle(uint3, uint3, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint3 vectors into a uint4 vector.

```csharp
public static uint4 shuffle(uint3 left, uint3 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the left argument of the shuffle operation.**** (\[uint3]\(/engine/6000.7/script-reference/unity/mathematics/uint3)): uint3 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 w component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint4](/engine/6000.7/script-reference/unity/mathematics/uint4.md) | uint4 result of the shuffle operation. |

## shuffle(uint4, uint4, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint4 vectors into a uint value.

```csharp
public static uint shuffle(uint4 left, uint4 right, math.ShuffleComponent x)
```

### Parameters

**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the left argument of the shuffle operation.**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint.

### Returns

| Type                                                         | Description                           |
| ------------------------------------------------------------ | ------------------------------------- |
| [uint](https://learn.microsoft.com/dotnet/api/system.uint32) | uint result of the shuffle operation. |

## shuffle(uint4, uint4, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint4 vectors into a uint2 vector.

```csharp
public static uint2 shuffle(uint4 left, uint4 right, math.ShuffleComponent x, math.ShuffleComponent y)
```

### Parameters

**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the left argument of the shuffle operation.**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint2 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint2 y component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint2](/engine/6000.7/script-reference/unity/mathematics/uint2.md) | uint2 result of the shuffle operation. |

## shuffle(uint4, uint4, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint4 vectors into a uint3 vector.

```csharp
public static uint3 shuffle(uint4 left, uint4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z)
```

### Parameters

**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the left argument of the shuffle operation.**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint3 z component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint3](/engine/6000.7/script-reference/unity/mathematics/uint3.md) | uint3 result of the shuffle operation. |

## shuffle(uint4, uint4, ShuffleComponent, ShuffleComponent, ShuffleComponent, ShuffleComponent)

Returns the result of specified shuffling of the components from two uint4 vectors into a uint4 vector.

```csharp
public static uint4 shuffle(uint4 left, uint4 right, math.ShuffleComponent x, math.ShuffleComponent y, math.ShuffleComponent z, math.ShuffleComponent w)
```

### Parameters

**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the left argument of the shuffle operation.**** (\[uint4]\(/engine/6000.7/script-reference/unity/mathematics/uint4)): uint4 to use as the right argument of the shuffle operation.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 x component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 y component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 z component.**** (\[ShuffleComponent]\(/engine/6000.7/script-reference/unity/mathematics/math/shufflecomponent)): The ShuffleComponent to use when setting the resulting uint4 w component.

### Returns

| Type                                                                | Description                            |
| ------------------------------------------------------------------- | -------------------------------------- |
| [uint4](/engine/6000.7/script-reference/unity/mathematics/uint4.md) | uint4 result of the shuffle operation. |
