1

如果我像这样实例化一个预制件:

GameObject asteroid = GameObject.Instantiate(thing2spawn);
//then set the location and some other stuff

预制小行星的碰撞根本没有记录,但如果我只是将小行星拖到场景中,碰撞就会完全按照预期工作。

4

1 回答 1

1

弄清楚了。

我的小行星物体有两个子物体,其中包含做不同事情的对撞机。击中小行星的某个部分会治愈你,而击中另一部分会伤害你。这两个孩子有刚体组件,所以当我在代码中设置小行星(父对象)的速度时,这两个孩子不会随之移动。所以看起来对撞机似乎没有工作,而实际上它们只是被留在了其他地方。从孩子身上移除刚体解决了这个问题。

诡异的。

于 2017-04-03T04:41:33.973 回答