- Home /
Vector2 - Check Position
Hello,
Is it possible to use two empty game objects and use their position between the two, to check if a certain object is left or right of the game objects?
So basically, lets say I have two empty objects, I want to create an 'imaginary line' between the two points. I want to be able to check which side of this 'line' my player is.
Possible? Thanks
Answer by clunk47 · Sep 05, 2013 at 06:30 PM
Here's a pretty simple script I wrote up you can attach to a cube in an empty scene. This automatically creates a cube to the left and right of your main cube on awake, which are point A and point B. This checks the distance between point A and point B on awake, and divides that distance by 2 to get the center line. Use left and right arrows or 'A' and 'D' keys to move your cube, and the console will print whether you are to the left, right, or origin of the centerline. Hope my example helps.
using UnityEngine;
using System.Collections;
public class Example : MonoBehaviour
{
Transform pointA;
Transform pointB;
float distAB;
float centerLine;
void Awake()
{
pointA = GameObject.CreatePrimitive(PrimitiveType.Cube).transform;
pointB = GameObject.CreatePrimitive(PrimitiveType.Cube).transform;
pointA.gameObject.name = "PointA";
pointB.gameObject.name = "PointB";
pointA.position = transform.position + Vector3.left * 5;
pointB.position = transform.position + Vector3.right * 5;
distAB = Vector3.Distance(pointA.position, pointB.position);
centerLine = distAB / 2;
}
void Update()
{
if(Vector3.Distance(transform.position, pointA.position) < centerLine)
print ("Left Side");
if(Vector3.Distance(transform.position, pointB.position) < centerLine)
print ("Right Side");
if(Vector3.Distance(transform.position, pointA.position) == Vector3.Distance(transform.position, pointB.position))
print ("CenterLine");
transform.Translate(Vector3.right * Input.GetAxis ("Horizontal") * 3 * Time.deltaTime);
}
}
Answer by ZenithCode · Sep 05, 2013 at 06:03 PM
Sure thing. :-)
http://answers.unity3d.com/questions/228203/getting-vector-which-is-pointing-to-the-rightleft.html
Your answer
![](https://koobas.hobune.stream/wayback/20220613113637im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
How Vectors work and how I should use them? 1 Answer
How would you check if an object is closer to the bottom side or top side of another object 1 Answer
How do I move a gameobject to the postion of the player? 2 Answers
Using a screen-drawn line to check for a collision [Vectrosity] 5 Answers
Calculate the intersection between a line and a sprite edge 2 Answers