Minecraft 的距离算法与密铺
Minecraft 使用了三种距离算法,作用在不同的机制中。比如水对
耕地 的湿润作用,是
切比雪夫距离 的 4 格。而
脚手架 的支撑范围,是
曼哈顿距离 的 6 格。
图片 1 展示了一格水对耕地的湿润情况,图片 2 与 3 是脚手架最远支撑范围的情况。如果使用最少的水来做普通农场,那么只需要制作多个这样的 9 × 9 农田,然后镶嵌在一起即可。这个问题的本质是正方形镶嵌。
脚手架同样也能这样密铺,实现最少的材料,铺出最大的面积。为了演示方便,这里使用曼哈顿距离为 1 格的甘蔗(甘蔗需要在水的四周 1 格,才能种植),作为演示。
图片 4 与 5 就是曼哈顿距离为 1 格的密铺方式(图片 5 来自维基人
Tomruen),更大的曼哈顿距离也是相同的原理。源自哔哩哔哩 UP 主「
Azhu_233」视频的图片 6,是脚手架的密铺方法。
附言:剩下的是直线距离,即欧几里得距离。但主要与实体相关,比如刷怪距离、怪物视线距离等,与方块关系不大。
#游戏 #原理 #minecraft