我想用另一个物体捕捉一个物体。然后将它带到第一个对象的起点,在 2D 中。我以恒定的速度将一个物体扔到另一个物体上。第一个与第二个碰撞,然后我定义了第一个与站立的第二个物体的反向速度。当发生碰撞时(onCollisonListener)它不会自然返回,因此返回的角度是错误的。
他们到处乱跑。我怎样才能使它正常返回功能?我可以使用哪个功能?我只使用velocity.x 和velocity.y 感谢您阅读我的问题和您的帮助,真诚的您。
我想用另一个物体捕捉一个物体。然后将它带到第一个对象的起点,在 2D 中。我以恒定的速度将一个物体扔到另一个物体上。第一个与第二个碰撞,然后我定义了第一个与站立的第二个物体的反向速度。当发生碰撞时(onCollisonListener)它不会自然返回,因此返回的角度是错误的。
他们到处乱跑。我怎样才能使它正常返回功能?我可以使用哪个功能?我只使用velocity.x 和velocity.y 感谢您阅读我的问题和您的帮助,真诚的您。
伪代码:
public class Catcher : MonoBehaviour
{
Vector2 startingPoint;
void Awake()
{
startingPoint = transform.position;
}
void Update()
{
//Your moving code
}
void OnTriggerEnter(Collider other)
{
if(other.tag == "someTag")
{
other.transform.parent = transform;
StartCoroutine("MoveBack");
}
}
private IEnumerator MoveBack()
{
while(transform.position != startingPoint)
{
// Move this towards starting point
// Use Vector2 functions like Lerp, MoveTowards or SmoothDamp
// Could also use Mathf functions
yield null;
}
}
}
并且可能添加一个标志/检查以了解对象是向后还是向前移动。