我有一个地图的抽象表示,比如说,X 和 Y 坐标上有 5.000.000 个不同的整数坐标,所以它是一个非常大的二维矩形。
然后,在那个可变大小的矩形内,我有几个对象(角色、怪物、NPC)。玩家可以选择这个矩形的位置,我必须检查该位置是否有怪物或角色。
到目前为止,我用列和行创建了一个名为 GameMatrix 的自定义类,并且说列有 3000x2000 个位置(角色的区域视图)。
当我的游戏玩家点击所述坐标时,我必须对foreach()
矩阵内的每个元素执行一次,而且大多数情况下它是空的。
有没有更好的方法来解决这个问题?具体来说,我在问什么是最好的方法,有一个非常大的矩形和一个坐标,以一种有效的方式检查所述坐标内是否有对象。
忘了提,但这是在服务器端每毫秒完成几次。所以我需要很多表现。
编辑:忘了提,我使用的是 C#。