目前我试图让T方格用我已创建的线锁定其位置,但我不知道如何获得一条线的x位置。现在,我的T square能够检测到它与线条发生冲突。这是我目前的代码。
void LockPostion(float x)
{
gObjTmp.transform.position = new Vector3 (x, this.transform.position.y, this.transform.position.z);
}
void OnCollisionEnter(Collision col)
{
if (col.gameObject.tag == "Lines")
{
Debug.Log ("Collision with line");
LockPostion (minlockXPos);
}
}
答案 0 :(得分:1)
就像您使用this.transform.position
获取脚本所附加的this
对象的位置一样,col.transform.position
应该用于获取从碰撞函数返回的另一个Object的位置或col.transform.position.x
仅适用于x
轴。
void OnCollisionEnter(Collision col)
{
if (col.gameObject.tag == "Lines")
{
Vector3 linePos = col.transform.position;
float linePosX = col.transform.position.x;
Debug.Log("Collision with line");
LockPostion(linePosX);
}
}