XNAとfarseer物理学を使用して、ローグライクゲームを作成しています。一部の部屋には、ブロックから作られたレイアウトのような手続き的に生成された洞窟があります。
現時点では、すべてのブロックは個別のボディです。このように作成された:
_floor = BodyFactory.CreateRectangle(_world, ConvertUnits.ToSimUnits(Globals.SmallGridSize.X), ConvertUnits.ToSimUnits(Globals.SmallGridSize.Y), 30f);
_floor.Position = ConvertUnits.ToSimUnits(_position.X + _centerVect.X, _position.Y + _centerVect.Y);
_floor.IsStatic = true;
_floor.Restitution = 0.2f;
_floor.Friction = 0.2f;
部屋ごとに1つのボディを用意し、各ブロックのすべての長方形をボディに追加する必要がありますか?これにより、パフォーマンスが向上しますか?また、このボディにブロックシェイプを追加および削除することは可能ですか(ブロックを破棄して、その背後にある露出したブロックを「追加」できるようにするため)。