您好!我使用此代码段生成Body
并将World
添加到其中。我在程序启动时添加了三个正文,它们正确BodyID
。但是当我尝试在运行时添加一个主体时,它会创建主体,但BodyID
为0
,这会影响碰撞检测。有人知道这可以解决吗? (我尝试手动设置BodyID
,但它说,设置器无法访问)。谢谢你的帮助
...
Body temp = BodyFactory.CreateRectangle(pWorld, bd.width, bd.height, bd.density);
temp.SetTransform(bd.postition, 0f);
temp.BodyType = bt;
temp.OnCollision += OnCollision;
...
答案 0 :(得分:1)
好吧,问题是我在另一个威胁中添加了一个身体,导致物理世界的探测。我通过将实体添加到List并创建PreUpdate方法来解决这个问题,该方法收集待处理的实体并在每次更新之前将它们添加到世界中。