Unity鼠标操作移动施加圆形限制
在场景中心生成一个中心点,计算所控制物体与中心点距离,将距离控制在所需的范围内。
Vector3 center;
//鼠标拖拽的位置
Vector3 pos = 物体位置 + _hit.point - (鼠标初始点击的位置);
//当物体在限制范围内时
if (Vector3.Distance(pos , center) < 限制范围)
{
物体位置 = pos;
}
//当物体出限制范围时
else
{
物体位置 = center + (pos - center).normalized * 限制范围;
}
有更好的方法欢迎指点。