【发布时间】:2020-12-13 22:13:17
【问题描述】:
我似乎无法理解以下内容,我有一个带有 2 个炮塔的简单宇宙飞船:
我的“玩家”白色飞船有一个刚体。炮塔没有。
我正在通过刚体移动和旋转我的玩家,但我也想通过物理系统旋转炮塔。
我曾考虑在炮塔上添加一个rigidBody2D,但是根据我的在线阅读帖子的理解,不建议这样做。这是因为孩子的刚体会以无法预料的方式影响父母。
所以放弃这个想法,我怎样才能移动我的炮塔并让它受到物理影响?
一些旁注: 我希望炮塔受到物理的影响。假设我尝试旋转炮塔,但它撞到了墙上,我希望它能够抵抗。假设一些碎片击中了我的炮塔枪管,我希望它朝相反的方向移动。
虽然我可以将炮塔移到其父容器(船)之外,但我当然希望它“在游戏中留在船上”。炮塔是船的一部分,如果你愿意,它可以安装在船体或机身上。所以它应该随船移动并保持它的位置。
【问题讨论】:
-
How to deal with nested rigidbody?-> 不要! 如果您需要组合刚体,您应该使用Joints .. 在您的具体情况下可能是HingeJoint -
@derHugo 您好,感谢您抽出宝贵时间回答我。您能否再解释一下,当使用这种方法时,我的层次结构会是什么样子(船、炮塔等)?我是否应该假设我应该将关节(和 rb)添加到炮塔,并将其连接到船的 rb?
标签: unity3d