本站文本内容除另有声明外,转载时均必须注明出处,并遵守CC BY-NC-SA 3.0协议。(转载须知
本站是中文Minecraft Wiki的镜像站,与Mojang AB、Gamepedia没有从属关系。(免责声明

基岩版中的距离现象

来自Minecraft WIKI
跳到导航 跳到搜索
页面贡献者 :
中文mcwiki机器人

由于基岩版使用了C++编写,导致其可玩的范围被限制在了32位整数极限(2,147,483,647)之内。事实上,情况比这还要糟糕,因为其使用单精度浮点数进行计算,导致一些精度问题在可能很近的距离(甚至可能只有数万个方块的距离)上就开始出现,而随着更加深入,情况会变得更加严重。卡顿、世界变得破碎、2D或者1D渲染的方块甚至崩溃的现象都是基岩版边境之地的特征。

第一极限(X/Z ±0–65,536)

基岩版在许多计算上都会使用32位浮点数,例如玩家的位置。当玩家移动时,玩家会在每一个刻上不断改变位置,它会受到浮点精度误差的影响。在低速且距离遥远的位置上误差会被忽略不计,这导致玩家无法移动。浮点精度误差会在2的每个幂次翻倍。

虽然实体中心的位置存储在NBT中,但碰撞箱角的位置存储在内存中。当玩家走过2的每个次幂时这些角分别可能会以不同的速度移动,导致碰撞箱的大小被改变。在某些情况下(比如重载世界、使用/tp命令或者其他方式‌[需要更多信息])会使碰撞箱大小重置为0.6。玩家的碰撞箱大小有可能会变成0,导致玩家穿过方块边缘掉入虚空(MCPE-39299)。

有一些方法能够降低玩家的移动速度,比如说潜行状态效果、使用物品(比如拉蓄力)或者进入某些方块中(比如蜘蛛网)。另外,沿对角线移动会降低玩家在任何给定轴上的速度。向对角线前面的方块移动会导致玩家向侧面移动,移动速度与玩家坐标允许的一样慢。

位置 现象
X/Z ±256(28 虽然这个位置上不太可能,但这是可能掉出世界的最近位置。由于故障是由受不同级别的浮点精度误差影响的碰撞箱角引起的,理论上可能在X/Z±1时就可以发生这类事件。但这至少需要耗去近6游戏日的时间(如果在此之间退出过游戏还必须重新计数)。
X/Z ±1,024(210 在生存中使用最慢的移动方式在非固体方块上移动在这个位置后变得不可能(通过饮用神龟药水II得到缓慢VI效果并潜行和站在甜浆果丛和上的蜘蛛网的间隙中使用物品实现)。
X/Z ±16,384(214 可以在这个位置上感受到非常小的抖动感。
X/Z ±32,768(215 在上面有蜘蛛网的灵魂沙上潜行并拉弓将无法移动。[1]

抖动(X/Z ±131,072–524,288)

最终,一些常见的运动方式开始出现故障。并且部分有着非常精细细节的方块模型开始出现渲染错误。

位置 现象
X/Z ±131,072(217
X/Z ±262,144(218
  • 潜行着爬上梯子和藤蔓更慢且不平滑了。
  • 海泡菜茎渲染的会比正常细一些。
  • 绊线变得不可见。
  • 甜浆果灌木丛和蜘蛛网看上去比平常略大。
  • 向日葵会出现显示错误。
X/Z ±524,288(219
  • 会进入到方块中,导致可以将多张画重叠在一起。
  • 物品展示框的内部会与其附着的方块侧边对齐。
  • 无法在蜘蛛网中移动。
  • 过了这个位置后移动颠簸开始变得十分明显。
  • 生物无法自然地跳上方块。
  • 海龟无法在陆地上移动了。

3D方块模型渲染错误(X/Z ±1,048,576–8,388,608)

方块模型的渲染是从它们的边角开始的,渲染位置也为32位浮点数。常规情况下是116的倍数。所以在精度接近116的位置上方块都可以正常渲染。在X/Z±1,048,576 (220)之后由于精度损失,方块将无法正常渲染。

在RTX beta版本中即使方块的形状出错,光照也不会受到浮点精度错误的影响。[2]

另外,“通常”的移动方式在这之后将无法移动。

位置 现象
X/Z±1,048,576(220
  • 渲染地比正常更宽。
  • 栅栏(不包括柱子部分)和关闭的栅栏门将会被渲染成完全扁平的。
  • 和开启的活板门被渲染地比正常更薄。
  • 铁栏杆玻璃板渲染的宽度是正常的2倍。
  • 如果不按住跳跃键就无法顺利爬上梯子和藤蔓,而且如果潜行着爬上梯子会变得十分的缓慢。
  • 无法向X/Z轴对角线潜行。
  • 粘液块里的正方体会变的稍微宽一点。
  • 蜂蜜块里的小方块会拉伸成一个完整方块的大小,导致方块出现深度冲突效应。
  • 蛋糕会被拉伸成一整个方块宽。
  • 会稍微渲染的比平常不同。
  • 海泡菜渲染的有点与平常不同,放置后没有茎。
  • 灯笼比平常更宽,而且没有顶部部分。
  • 营火中的木头渲染地彼此重叠。
  • 酿造台的底座渲染的不正确,且中间的杆子无法看到。
  • 铁砧的底座渲染不正确。
  • 砂轮的支撑部分渲染不正确。
  • 物品展示框渲染地更宽了。
  • 花盆会渲染地更宽一点。
  • 信标的内部渲染不正确。
  • 的支撑部分渲染不正确。
  • 横着的末地烛会渲染成扁平的,而竖着的只会渲染底座。
  • 红石渲染地有点不同。
  • 火把变得不可见。
  • 放置在任何方向的按钮变得更宽了,而且按下侧面的按钮会使其进入方块。
  • 压力板会覆盖整个方块。
  • 红石中继器红石比较器渲染地无法看见红石火把部分。
  • 第二阶段的可可豆渲染的宽度与成熟的一样大。
  • 仙人掌被渲染成一整个方块大小,但边角带有缝隙。
  • 竹子被渲染地比正常更小、更扁平或不可见。
  • 龙蛋看上去细节丢失了一些。
  • 海龟蛋看上去变得扭曲了。
  • 紫颂植物看上去凸起部分消失了。
X/Z ±2,097,152(221
  • 潜行时无法移动。
  • 步行变得十分有卡顿感。
  • 在方块间隙中的物品将穿过方块掉下去。掉到岩浆边缘的物品将会弹开而不会被烧着,这种情况会持续到条纹之地生成时。
  • 栅栏杆变得不可见。
  • 开启的栅栏门变得完全扁平。
  • 门和活板门渲染地比平常宽。
  • 铁栏杆和玻璃板渲染得完全扁平了。
  • 脚手架的支撑部分变得不可见。
  • 炼药锅堆肥桶有着十分平坦的壁,里面的容物如果满了会被延展至顶部。
  • 漏斗的底部不可见。
  • 下界传送门方块变得十分扁平。
  • 花、甜浆果丛、蜘蛛网和高草丛比正常情况要小得多。
  • 可可豆的第一阶段变成扁平的。
  • 紫颂花被渲染成一整个方块宽。
X/Z±4,194,304(222
  • 从此时起通过步行移动变得不可能。玩家需要通过使用末影珍珠紫颂果鞘翅烟花火箭并用、骑马和划船来移动,或者其他能做到5方块/秒速度前行的方法。这也就是说正常步行速度在这个位置无法移动。
  • 小于半个方块宽的实体(例如物品蠹虫)会掉进方块的缝隙中,但如果站在方块中心处则不会掉下去。这可能是因为碰撞箱角会四舍五入出相同的位置,导致碰撞箱变为“未知”而掉下去。目前这无法确认是否是这样。
  • 状态效果颗粒会卡在玩家的中心处,导致它们聚集在屏幕中央。
  • 末地传送门框架上如果放置了末影之眼,末影之眼会被拉长为整个方块大小。
  • 侧置的活塞基座会被拉长至整个方块。如果活塞头缩回,那么就会引发深度冲突效应。
  • 农作物海草会被渲染成一个方块的边缘部分。
X/Z ±8,388,608(223
  • 所有的实体都会站在方块之间的缝隙中。导致玩家和其他小于1格方块宽的实体总会掉出世界。能站在这个位置上的实体只有蜘蛛铁傀儡北极熊劫掠兽
    • 如果只有一个坐标超过该值,则方块仍会从侧面进行碰撞检测。
    • 玩家会被一直视作在方块“下面”,意味着幻翼不会生成。因此在生存中使用马继续前进还是有可能的。
  • 在创造模式中飞行必须疾跑或往一个方向走。速度效果在这里没用,见MCPE-61425
  • 所有的方块在这里都有可能被渲染成片状或变为整个方块大小。不过还是有几个例外,比如箱子无论走多远都可以被正常渲染。
    • 如果两个坐标都超过此值,则方块将变为一维的,因此是完全不可见的。
  • 切石机的切片会多出一个,两个切片都会显示在方块的边缘部分上。

硬极限(X/Z ±12,550,821–2,147,483,648)

位置 现象
X/Z+12,550,821或-12,550,824 边境之地开始在这个坐标上生成。
X/Z ±16,777,216(224
  • 浮点精度错误导致仅偶数坐标不能被4整除的方块被渲染,并且被拉伸为2个方块宽。这种现象被称为条纹之地。
    • 有些在其他坐标上的方块会被渲染成2D的,但是底层的方块不会这样。通常只有“暴露”于空气或是透明方块的情况下才渲染其方块。
  • 从侧面看2D方块看上去也是非固体的。然而,恶魂、大型史莱姆岩浆怪无论方块是2D还是3D都会将其看作固体方块,因为这些方块超过了2格宽。
  • 当玩家在能被4整除的位置时,游戏将无法正确注册在中的玩家。这导致玩家掉下水中,在这里无法进行游泳,且水中有一层看上去是黑或蓝黑色的迷雾。然而水仍然会导致玩家退出滑翔模式,船仍然可以漂在水上。
  • 唯一可能的移动方法是使用鞘翅
  • 村民无法在逃离敌对生物时正确寻路。
    • 溺尸在这个距离上仍然可以在水中移动,尽管十分缓慢、卡顿。
X/Z ±30,000,000 原版游戏中无法通过tp命令传送到这个位置以外的地方。任何超出此位置的tp请求都会被传送到这个位置。这里无法使用放置方块的命令,并在执行时发生错误。虽然如此,但使用结构方块/locate依然是有可能的。
X/Z ±31,999,872 使用下界传送门能到达的主世界最远的位置。
X/Z ±33,554,432(225
  • 水平面的方块渲染在这里完全停止,这里只能渲染方块的垂直面(侧面),导致了切片之地‌[非官方名称]在这里开始生成。侧面被遮挡的方块(例如自然生成的水)在这里是完全不可见的。
    • 这个位置上的每个切片的距离有4个方块长,这个距离会在2的每个次幂上翻倍。
    • 很难在这个位置后放置方块。玩家必须看着已经渲染出的方块并向着轴的方向移动。无需外部工具即可生成(放置)方块的唯一方法是使用结构方块
  • 方块的渲染基本停止于切片之角,[3]在切片之角的方块会被渲染成1D的,因此看不到方块。
  • 水完全变得不是固体方块。
  • 若要移动,玩家必须使用鞘翅以大约45度的向下角滑翔。三叉戟是唯一能在此处水平移动的其他实体,无法使用末影珍珠传送。
X/Z ±67,108,864 (226) 所有的实体在这个位置后无法移动。仍然可用的移动方法是吃紫颂果传送。
X/Z ±134,217,728 (227)
  • 移动平台能够生成结构的极限位置。然而在Windows平台上可以一直生成到32位整数极限时。
  • 这是使用移动平台能用紫颂果能够传送的极限位置,因此这是在这些平台上不使用外部工具进行移动的世界可移动极限点。但理论上Windows 10的基岩版可以靠紫颂果到达X/Z ±2,678,435,456的位置。
X/Z ±1,073,741,824 (230) 每个切片的距离有128个方块长,这意味着邻近的切片在低渲染距离下不可见。
X/Y/Z ±2,147,483,647 (231-1) 这是32位系统的整数极限,超过此处时会造成游戏崩溃。

垂直方向极限

类似于X轴和Z轴,游戏也会在Y超过某一位置时出现错误。由于方块无法放置在Y=255以上的地方,所以不会出现方块渲染故障,但会出现其他现象。

这些影响也会在负坐标产生,但在Y=-40的地方有一处屏障。可以通过传送至X/Z±8,388,608处规避这一限制,但只有创造模式的玩家才不会在虚空中消失。

Y位置 现象
Y ±65,536
  • 药水粒子将在此处之后的每一个次幂后变黑,并在64格后恢复。
Y ±1,048,576
  • 漂浮的速度会变得更快一些。
Y ±2,097,152
  • 使用鞘翅缓降并按住跳跃按钮将无法向上移动。
Y ±8,388,608
  • 状态效果粒子会卡在玩家的头部、足部和玩家的中心处,导致第一人称下看到的粒子效果有错误。
  • 缓降效果会导致玩家卡在空中。
  • 创造模式无法在这个位置向上飞行。
  • 在玩家退出飞行模式之后会出现明显的掉落滞后。
Y ±16,777,216
  • 上述的滞后变的更长了。
  • 创造模式无法在这个位置向下飞行。
Y ±30,000,000
  • 此处是使用/tp命令可以到达的极限位置,再向上只能使用外部修改。

画廊

参考