【问题标题】:(Unity 3D C#) Conveyor Physics(Unity 3D C#) 传送带物理
【发布时间】:2020-02-23 10:36:59
【问题描述】:

所以,我正在尝试创建一个可以放置块并移动的平面输送机,但我希望它能够转动,所以我不能使用rigidbody.moveposition,我尝试使用addforce,但我无法获得它可以在不使用 impule 或速度变化的情况下正常工作,因为它会使矿石滚动(它们是立方体)。我最近的尝试是使用速度,但我不确定如何让它在换角时保持原来的速度,这样它就不会搞砸了。

.

如果这没有多大意义,这里有一个更好的解释,我正在尝试在网格上创建一个传送系统,其中每个插槽都有一个方向,并且一个立方体沿着它移动,只要立方体到达一个转弯,我希望立方体继续向前移动一小段距离,这样它就不会立即改变方向并沿着新的传送带前进,因为这样,它会立即改变并坐在传送带的边缘,而不是继续移动方向。

编辑:我目前正在工作,我现在的问题是立方体在接触传送带时会反弹,所以它们不会平放在传送带上,我可以通过限制所有立方体旋转来解决这个问题,但有时它会冻结传送带上的矿石,不允许它移动。

【问题讨论】:

    标签: unity3d


    【解决方案1】:

    由于你没有提供代码,我不知道你在做什么,所以我给出自己的解决方案:

    object.transform.position = Vector3.MoveTowards(target.transform.position, endpoint.position, Time.deltaTime * speed)
    

    然后,当它与它发生碰撞时,它可以关闭这个脚本,所以它停留在最后。

    target 是你想要移动的地方,endpoint 是你想要它结束的地方。

    使端点成为一个游戏对象,并将其放在传送带的末端,这样对象就会向其移动,它看起来就像一个传送带。

    【讨论】:

      猜你喜欢
      • 2011-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-18
      • 1970-01-01
      • 1970-01-01
      • 2011-06-04
      • 1970-01-01
      相关资源
      最近更新 更多