Farseer physics会创建重复的Body ID

时间:2014-01-07 17:27:34

标签: c# game-physics farseer

您好!我使用此代码段生成Body并将World添加到其中。我在程序启动时添加了三个正文,它们正确BodyID。但是当我尝试在运行时添加一个主体时,它会创建主体,但BodyID0,这会影响碰撞检测。有人知道这可以解决吗? (我尝试手动设置BodyID,但它说,设置器无法访问)。谢谢你的帮助

                    ...
                    Body temp = BodyFactory.CreateRectangle(pWorld, bd.width, bd.height, bd.density);
                    temp.SetTransform(bd.postition, 0f);

                    temp.BodyType = bt;
                    temp.OnCollision += OnCollision;
                    ...

1 个答案:

答案 0 :(得分:1)

好吧,问题是我在另一个威胁中添加了一个身体,导致物理世界的探测。我通过将实体添加到List并创建PreUpdate方法来解决这个问题,该方法收集待处理的实体并在每次更新之前将它们添加到世界中。