我有一个数组,用于存储我正在开发的游戏的地图数据。
MyMapType[,,] map;
我使用固定数组而不是 Collection 的原因是固定数组的工作速度非常快。
现在我的问题是,我想在游戏中支持负 z 水平。所以我希望能够访问负索引。
如果这是不可能的,我想到了一对其他的解决方案。
我正在考虑将地平面设置为任意数字(例如 10)作为可能的解决方案,任何小于 10 的都可以被视为负数。但是,如果不使用,这不会使阵列变大 10 倍吗?
我考虑的另一个解决方案是“滚动我自己的”,你有一个二维数组字典,列表中的 Z 级别作为索引。但这是更多的工作,我不确定它是否慢。
所以总结一下 - 创建支持负索引的数组的任何方式?如果没有 - 是否有一种干净的方式来“模拟”这种行为而不会牺牲过多的 CPU 时间或 RAM - 注意这些游戏地图最终可能会很大并且需要不断访问。