首页 > 解决方案 > 如何让游戏中的物体更好地移动

问题描述

我刚开始团结,但对于第一个项目,我想制作类似信使球游戏的东西,但我在物体移动方面遇到了小问题。我想做这样的运动

但现在我只有垂直运动。所以问题是如何以简单的方式将其更改为视频中那个球的运动?

void OnMouseDown() 
{
   rb.velocity = Vector2.up * jumpForce;
}

标签: c#unity3dgame-engine

解决方案


您需要测量球心和点击点之间的距离。然后您可以在您测量的相同方向上添加力。请记住锁定刚体在 z 轴上的运动,并用屏幕边界约束球(这些也可以是刚体 - 只是重力 = 0)。

rb.AddForce(transform.up * direction);

文档链接:https ://docs.unity3d.com/ScriptReference/Rigidbody.AddForce.html


推荐阅读