# ViewportToWorldPoint

> Transforms position from viewport space into world space.

## Definition

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

## ViewportToWorldPoint(Vector3, MonoOrStereoscopicEye)

Transforms position from viewport space into world space.

```csharp
public Vector3 ViewportToWorldPoint(Vector3 position, Camera.MonoOrStereoscopicEye eye)
```

### Parameters

**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): The 3d vector in Viewport space.**** (\[MonoOrStereoscopicEye]\(/engine/6000.0/script-reference/unityengine/camera/monoorstereoscopiceye)):&#x20;

### Returns

| Type                                                              | Description                   |
| ----------------------------------------------------------------- | ----------------------------- |
| [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md) | The 3d vector in World space. |

### Remarks

Viewport space is normalized and relative to the camera. The bottom-left of the viewport is (0,0); the top-right is (1,1). The z position is in world units from the camera.

Note that [Camera.ViewportToWorldPoint](/engine/6000.0/script-reference/unityengine/camera/viewporttoworldpoint.md) transforms an x-y screen position into a x-y-z position in 3D space.

Provide the function with a vector where the x-y components of the vector are the screen coordinates and the z component is the distance of the resulting plane from the camera.

### Examples

```csharp
// Draw a yellow sphere at top-right corner of the near plane
// for the selected camera in the Scene view.
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnDrawGizmosSelected()
    {
        Camera camera = GetComponent<Camera>();
        Vector3 p = camera.ViewportToWorldPoint(new Vector3(1, 1, camera.nearClipPlane));
        Gizmos.color = Color.yellow;
        Gizmos.DrawSphere(p, 0.1F);
    }
}
```

## ViewportToWorldPoint(Vector3)

Transforms position from viewport space into world space.

```csharp
public Vector3 ViewportToWorldPoint(Vector3 position)
```

### Parameters

**** (\[Vector3]\(/engine/6000.0/script-reference/unityengine/vector3)): The 3d vector in Viewport space.

### Returns

| Type                                                              | Description                   |
| ----------------------------------------------------------------- | ----------------------------- |
| [Vector3](/engine/6000.0/script-reference/unityengine/vector3.md) | The 3d vector in World space. |

### Remarks

Viewport space is normalized and relative to the camera. The bottom-left of the viewport is (0,0); the top-right is (1,1). The z position is in world units from the camera.

Note that [Camera.ViewportToWorldPoint](/engine/6000.0/script-reference/unityengine/camera/viewporttoworldpoint.md) transforms an x-y screen position into a x-y-z position in 3D space.

Provide the function with a vector where the x-y components of the vector are the screen coordinates and the z component is the distance of the resulting plane from the camera.

### Examples

```csharp
// Draw a yellow sphere at top-right corner of the near plane
// for the selected camera in the Scene view.
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnDrawGizmosSelected()
    {
        Camera camera = GetComponent<Camera>();
        Vector3 p = camera.ViewportToWorldPoint(new Vector3(1, 1, camera.nearClipPlane));
        Gizmos.color = Color.yellow;
        Gizmos.DrawSphere(p, 0.1F);
    }
}
```
