Version: 2023.2
LanguageEnglish
  • C#

Vector2 Constructor

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Declaration

public Vector2(float x, float y);

Description

Constructs a new vector with given x, y components.

//This script moves a GameObject to a new x position using a Vector2.
//Attach this script to a GameObject
//Set your x position in the Inspector

using UnityEngine;

public class Examples : MonoBehaviour { Vector2 m_NewPosition; //This is the new X position. Set it in the Inspector. public float m_XPosition;

// Use this for initialization void Start() { //Initialise the vector m_NewPosition = new Vector2(0.0f, 0.0f); }

void Update() { //Press the space key to change the x component of the vector if (Input.GetKeyDown(KeyCode.Space)) { m_NewPosition.x = m_XPosition; } //Change the position depending on the vector transform.position = m_NewPosition; } }
//This script shows how a GameObject can be moved to new positions using vectors.

//Attach this script to a GameObject. Click on the GameObject and the Inspector window appears. Change the “Second Vector” in the Inspector //Attach a GameObject in the MyTransform field //Also create 3 UI Buttons (Create>UI>Button) and go to each of their Inspectors to change their OnClick method (click the + button) //Put your GameObject in each field. Use the No function dropdown to assign one Button with the ZeroButton method, one with PositiveButton method and the other with the GameObjectButton method.

using UnityEngine;

public class Example : MonoBehaviour { //Use these to set the GameObject's position Vector2 m_MyFirstVector; //Set this Vector in the Inspector (the position you would like the GameObject to move to) public Vector2 m_MySecondVector; Vector2 m_MyThirdVector;

//You must assign to this Transform in the Inspector (could be another GameObject) public Transform m_MyTransform;

void Start() { //Set the first vector to be at (0, 0, 0) m_MyFirstVector = Vector2.zero; //Set the third vector to the GameObject you set in the Inspector's position m_MyThirdVector = m_MyTransform.position; }

public void ZeroButton() { //Press this Button to move your GameObject to the first vector position (0, 0) //Use this to move your GameObject to the origin (be wary of parent GameObjects) transform.position = m_MyFirstVector; }

//Press this Button to move your GameObject to the second vector position (100, 200) public void PositionButton() { //Use this to move your GameObject to a specified position transform.position = m_MySecondVector; }

//Press this Button to move your GameObject to the third vector position (The m_MyTransform's position) public void GameObjectButton() { //Use this to move your GameObject to another GameObject's position transform.position = m_MyThirdVector; } }

A script that converts degrees into radians. The radians are used to rotate around the origin.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ExampleScene : MonoBehaviour { void Start() { float degrees = 45.0f; float radians = degrees * Mathf.Deg2Rad;

Vector2 vec2 = new Vector2(Mathf.Cos(radians), Mathf.Sin(radians)); Debug.Log(vec2); } }