Unity3d 如何将一个物体粘在另一个物体上,这些物体又回到统一的起点
我想用另一个物体捕捉一个物体。然后把它带到第一个物体的起点,在2D中。 我以恒定的速度把一个物体扔到另一个物体上。 第一个物体与第二个物体碰撞,然后我定义了第一个物体相对于站立的第二个物体的反向速度。当发生碰撞时(OnCollissonListener),它不会自然返回,因此返回的角度是错误的 他们到处乱跑。我怎样才能使折返正常工作我可以使用哪个函数?我只使用velocity.x和velocity.y 谢谢你阅读我的问题,谢谢你的帮助, 您诚挚的。伪代码:Unity3d 如何将一个物体粘在另一个物体上,这些物体又回到统一的起点,unity3d,collision,projectile,Unity3d,Collision,Projectile,我想用另一个物体捕捉一个物体。然后把它带到第一个物体的起点,在2D中。 我以恒定的速度把一个物体扔到另一个物体上。 第一个物体与第二个物体碰撞,然后我定义了第一个物体相对于站立的第二个物体的反向速度。当发生碰撞时(OnCollissonListener),它不会自然返回,因此返回的角度是错误的 他们到处乱跑。我怎样才能使折返正常工作我可以使用哪个函数?我只使用velocity.x和velocity.y 谢谢你阅读我的问题,谢谢你的帮助, 您诚挚的。伪代码: public class Catche
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;
}
}
}
还可以添加一个标志/检查,以了解对象是在向后移动还是在向前移动。如果您仍然需要帮助,可以发布“反向速度”计算的代码吗?另外,正在发生的事情的屏幕截图也会很好。你应该更准确地知道你需要什么。您希望第二个对象附着固定(如被卡住)还是更软(如在字符串上)?您可以重新设置其父级或使用物理链接。另外,是否使用刚体也是非常重要的。