我正在Flash中制作没有预定义路径的塔防游戏。
尽管我的网格是40x40(小?),但每次重新计算时A *都在挣扎。因此,我进行了自己的修改以简化重新计算,并且触摸的单元数减少到900(在根附近进行修改时)。放置新塔时,它仍会冻结很短但可检测的时间。
这是一个实现问题,还是40x40太多了?
编辑:
我的代码的结构:
- 所有数据都保存在二维单元格数组中。
- 每个单元在路径方向(顺时针为1-8)中包含其父级,并在路径中包含其子项的按位编码的数组(每个位代表一个子项)。
- 搜索是由A *执行,并估计了欧几里得距离。