[英]c# get object's 2d plot points from 3d position, unit vectors, and dimensions
[英]Get 2D position of a 3D object when it follows another object?
當該對象跟隨另一個3D對象時,如何獲得3D對象的2D位置(即z軸應為0)?
到目前為止,我已經嘗試了下面的一行代碼,但是z軸不會保持為0,因為它跟隨另一個不斷波動的對象。 有什么辦法嗎?
public GameObject Car;
public GameObject Icon;
// Update is called once per frame
void Update ()
{
Icon.transform.position = Vector3.MoveTowards(Car.transform.position, Car.transform.position, 0);
}
Icon.transform.position = Vector3.MoveTowards(Car.transform.position, Car.transform.position, 0);
這絕對沒有任何作用...首先,您在相同的位置之間移動,其次是速度= 0
...所以基本上等於
Icon.transform.position = Car.transform.position;
您想要做的是消除位置矢量的z
分量,例如
Icon.transform.position = new Vector3(Car.transform.position.x, Car.transform.position.y, 0);
或一個小技巧:您可以將其轉換為Vector2
,使其“忘記” z
值。 然后隱式地將其轉換為Vector3
, z=0
Icon.transform.position = (Vector2) Car.transform.position;
您只需將位置放在局部變量中,然后將z設置為0。
public GameObject Car;
public GameObject Icon;
// Update is called once per frame
void Update () {
Vector3 pos3d = Car.transform.position;
pos3d.z = 0;
Icon.transform.position = pos3d;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.