# implicit operator Vector2

> Converts a Vector3 to a Vector2.

## Definition

* **Type:** Operator
* **Namespace:** [UnityEngine](/engine/6000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

## implicit operator Vector2(Vector)

Converts a [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md) to a [Vector2](/engine/6000.0/script-reference/unityengine/vector2.md).

```csharp
public static implicit operator Vector2(Vector3 v)
```

### Parameters

**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)):&#x20;

### Returns

| Type                                                              | Description |
| ----------------------------------------------------------------- | ----------- |
| [Vector2](/engine/6000.0/script-reference/unityengine/vector2.md) |             |

### Remarks

A [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md) can be implicitly converted into a [Vector2](/engine/6000.0/script-reference/unityengine/vector2.md). (The z is discarded).

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    void Start()
    {
        Vector2 v2 = new Vector2(1, 2);
        Debug.Log("Vector2 is: " + v2);

        // convert v2 to v3
        Vector3 v3 = v2;
        Debug.Log("Vector3 is: " + v3);

        // convert v3 to new Vector3
        Debug.Log("Set v3 to (3, 4, 5)");
        v3 = new Vector3(3, 4, 5);

        // convert v3 to v2
        v2 = v3;
        Debug.Log("Vector2 is: " + v2);
    }
}
```

## implicit operator Vector3(Vector)

Converts a [Vector2](/engine/6000.0/script-reference/unityengine/vector2.md) to a [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md).

```csharp
public static implicit operator Vector3(Vector2 v)
```

### Parameters

**** (\[Vector2]\(/engine/6000.0/script-reference/unityengine/vector2)): The Vector2 to convert.

### Returns

| Type                                                              | Description |
| ----------------------------------------------------------------- | ----------- |
| [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md) |             |

### Remarks

A [Vector2](/engine/6000.0/script-reference/unityengine/vector2.md) can be implicitly converted into a [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md). (The z is set to zero in the result).

### Examples

```csharp
using UnityEngine;

public class ExampleScript : MonoBehaviour
{
    void Start()
    {
        Vector2 v2 = new Vector2(1, 2);
        Debug.Log("Vector2 is: " + v2);

        // convert v2 to v3
        Vector3 v3 = v2;
        Debug.Log("Vector3 is: " + v3);

        // convert v3 to new Vector3
        Debug.Log("Set v3 to (3, 4, 5)");
        v3 = new Vector3(3, 4, 5);

        // convert v3 to v2
        v2 = v3;
        Debug.Log("Vector2 is: " + v2);
    }
}
```
