# half2

> A 2 component vector of halfs.

## Definition

* **Type:** Struct
* **Namespace:** [Unity.Mathematics](/engine/6000.6/script-reference/unity/mathematics.md)
* **Assembly:** UnityEngine.MathematicsModule
* **Implements:** [IEquatable\<half2>](https://learn.microsoft.com/dotnet/api/system.iequatable-1), [IFormattable](https://learn.microsoft.com/dotnet/api/system.iformattable)

```csharp
public struct half2 : IEquatable<half2>, IFormattable
```

## Fields

| Value                                                             | Description                |
| ----------------------------------------------------------------- | -------------------------- |
| [x](/engine/6000.6/script-reference/unity/mathematics/half2/x.md) | x component of the vector. |
| [y](/engine/6000.6/script-reference/unity/mathematics/half2/y.md) | y component of the vector. |

## Static Fields

| Value                                                                   | Description       |
| ----------------------------------------------------------------------- | ----------------- |
| [zero](/engine/6000.6/script-reference/unity/mathematics/half2/zero.md) | half2 zero value. |

## Constructors

| Constructor                                                                                                                                | Description                                                                                                        |
| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| [half2(System.Double)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(double\))                                    | Constructs a half2 vector from a single double value by converting it to half and assigning it to every component. |
| [half2(System.Single)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(float\))                                     | Constructs a half2 vector from a single float value by converting it to half and assigning it to every component.  |
| [half2(Unity.Mathematics.double2)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(double2\))                       | Constructs a half2 vector from a double2 vector by componentwise conversion.                                       |
| [half2(Unity.Mathematics.float2)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(float2\))                         | Constructs a half2 vector from a float2 vector by componentwise conversion.                                        |
| [half2(Unity.Mathematics.half)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(half\))                             | Constructs a half2 vector from a single half value by assigning it to every component.                             |
| [half2(Unity.Mathematics.half,Unity.Mathematics.half)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(half-half\)) | Constructs a half2 vector from two half values.                                                                    |
| [half2(Unity.Mathematics.half2)](/engine/6000.6/script-reference/unity/mathematics/half2/ctor.md#half2\(half2\))                           | Constructs a half2 vector from a half2 vector.                                                                     |

## Properties

| Property                                                                    | Description                                    |
| --------------------------------------------------------------------------- | ---------------------------------------------- |
| [this\[\]](/engine/6000.6/script-reference/unity/mathematics/half2/item.md) | Returns the half element at a specified index. |
| [xx](/engine/6000.6/script-reference/unity/mathematics/half2/xx.md)         | Swizzles the vector.                           |
| [xxx](/engine/6000.6/script-reference/unity/mathematics/half2/xxx.md)       | Swizzles the vector.                           |
| [xxxx](/engine/6000.6/script-reference/unity/mathematics/half2/xxxx.md)     | Swizzles the vector.                           |
| [xxxy](/engine/6000.6/script-reference/unity/mathematics/half2/xxxy.md)     | Swizzles the vector.                           |
| [xxy](/engine/6000.6/script-reference/unity/mathematics/half2/xxy.md)       | Swizzles the vector.                           |
| [xxyx](/engine/6000.6/script-reference/unity/mathematics/half2/xxyx.md)     | Swizzles the vector.                           |
| [xxyy](/engine/6000.6/script-reference/unity/mathematics/half2/xxyy.md)     | Swizzles the vector.                           |
| [xy](/engine/6000.6/script-reference/unity/mathematics/half2/xy.md)         | Swizzles the vector.                           |
| [xyx](/engine/6000.6/script-reference/unity/mathematics/half2/xyx.md)       | Swizzles the vector.                           |
| [xyxx](/engine/6000.6/script-reference/unity/mathematics/half2/xyxx.md)     | Swizzles the vector.                           |
| [xyxy](/engine/6000.6/script-reference/unity/mathematics/half2/xyxy.md)     | Swizzles the vector.                           |
| [xyy](/engine/6000.6/script-reference/unity/mathematics/half2/xyy.md)       | Swizzles the vector.                           |
| [xyyx](/engine/6000.6/script-reference/unity/mathematics/half2/xyyx.md)     | Swizzles the vector.                           |
| [xyyy](/engine/6000.6/script-reference/unity/mathematics/half2/xyyy.md)     | Swizzles the vector.                           |
| [yx](/engine/6000.6/script-reference/unity/mathematics/half2/yx.md)         | Swizzles the vector.                           |
| [yxx](/engine/6000.6/script-reference/unity/mathematics/half2/yxx.md)       | Swizzles the vector.                           |
| [yxxx](/engine/6000.6/script-reference/unity/mathematics/half2/yxxx.md)     | Swizzles the vector.                           |
| [yxxy](/engine/6000.6/script-reference/unity/mathematics/half2/yxxy.md)     | Swizzles the vector.                           |
| [yxy](/engine/6000.6/script-reference/unity/mathematics/half2/yxy.md)       | Swizzles the vector.                           |
| [yxyx](/engine/6000.6/script-reference/unity/mathematics/half2/yxyx.md)     | Swizzles the vector.                           |
| [yxyy](/engine/6000.6/script-reference/unity/mathematics/half2/yxyy.md)     | Swizzles the vector.                           |
| [yy](/engine/6000.6/script-reference/unity/mathematics/half2/yy.md)         | Swizzles the vector.                           |
| [yyx](/engine/6000.6/script-reference/unity/mathematics/half2/yyx.md)       | Swizzles the vector.                           |
| [yyxx](/engine/6000.6/script-reference/unity/mathematics/half2/yyxx.md)     | Swizzles the vector.                           |
| [yyxy](/engine/6000.6/script-reference/unity/mathematics/half2/yyxy.md)     | Swizzles the vector.                           |
| [yyy](/engine/6000.6/script-reference/unity/mathematics/half2/yyy.md)       | Swizzles the vector.                           |
| [yyyx](/engine/6000.6/script-reference/unity/mathematics/half2/yyyx.md)     | Swizzles the vector.                           |
| [yyyy](/engine/6000.6/script-reference/unity/mathematics/half2/yyyy.md)     | Swizzles the vector.                           |

## Methods

| Method                                                                                | Description                                                           |
| ------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| [Equals](/engine/6000.6/script-reference/unity/mathematics/half2/equals.md)           | Returns true if the half2 is equal to a given half2, false otherwise. |
| [GetHashCode](/engine/6000.6/script-reference/unity/mathematics/half2/gethashcode.md) | Returns a hash code for the half2.                                    |
| [ToString](/engine/6000.6/script-reference/unity/mathematics/half2/tostring.md)       | Returns a string representation of the half2.                         |

## Operators

| Operator                                                                                | Description                                                                                                               |
| --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| [operator ==](/engine/6000.6/script-reference/unity/mathematics/half2/op-equality.md)   | Returns the result of a componentwise equality operation on a half value and a half2 vector.                              |
| [half2](/engine/6000.6/script-reference/unity/mathematics/half2/op-explicit.md)         | Explicitly converts a single double value to a half2 vector by converting it to half and assigning it to every component. |
| [operator !=](/engine/6000.6/script-reference/unity/mathematics/half2/op-inequality.md) | Returns the result of a componentwise not equal operation on a half value and a half2 vector.                             |
