私が作成しているのは、上/左のポイントと下/右のポイントを持つ部屋だけである 2D トップダウン マップ生成アルゴリズムに取り組んでいます。すべての部屋は長方形で、時折壁を共有する場合を除いて、どの部分も重なっていません。
私の質問は、壁を共有する 2 つの部屋がある場合、壁内の両方の部屋で共有されている「タイル」(またはポイント) のリストをすばやく簡単に吐き出すにはどうすればよいですか?
私は次のようなことを望んでいます:
private List<Point> SharedTiles (Point P1, Point P2, Point P3, Point P4)
{
/*
P1 = Top Left point of room1
P2 = Bottom Right point of room1
P3 = Top Left point of room2
P4 = Bottom Right point of room2
*/
List<Point> _SharedTiles = new List<Point>();
//Magic goes here...
return _SharedTiles;
}