Minecraft 原版卡顿的来源与缓解

谁有365bet网址 🗓 2025-09-12 23:36:20 ✍ admin 👁 5062 👍 808
Minecraft 原版卡顿的来源与缓解

Minecraft 原版卡顿的来源与缓解

Minecraft的流畅运行,少不了我们每个人的努力。

Minecraft 原版卡顿的来源与缓解

Minecraft 原版卡顿有 2 种来源,客户端卡顿(FPS)与服务端卡顿(TPS)[这里忽略网络]。*文章中并未列举出所有卡顿来源。*此处无需优化仅指玩家,而非服务器管理员等。

A.仅影响客户端的卡顿来源

实体与实体渲染的方块

任何大量的实体和实体渲染的方块都会导致 FPS 下降。如:怪物,大量的箱子,栅栏,潜影盒。

解决方法:不要堆叠过量的这些方块。

粒子效果

任何大量的粒子效果都会导致 FPS下降。如:下雨,TNT爆炸,火焰。

缓解方法:关闭粒子效果,安装优化模组等。

B.仅影响服务端的卡顿来源

漏斗

漏斗具有吸入和传递功能,它每 GameTick 都会更新一次,每 4 GameTick 传送一次物品。

根据 ExperimentalIdea 的测试,我们得到了以下数据,测试基于 1.14.4

漏斗上面的方块/状态

使用的MSPT(越低越好)

大箱子

66

普通方块

62.8

空气(什么都不放)

62.6

小箱子

36.5

潜影盒

35.9

32.5

锁住的漏斗(红石充能)

24.3

酿造台

23.5

高炉

23.2

烟熏炉

23

熔炉

22.6

投掷器

22.3

堆肥桶

15.5

红石块(会锁住漏斗)

4.8

横向传递物品:可以看到,漏斗上方什么都没有是非常卡顿的,如果你不需要漏斗的吸入物品功能,请在上方放上堆肥桶。如果你想输入物品,可以在上方放上投掷器,把物品放在投掷器中即可输入。并尽量少使用大箱子配合漏斗。还有一个情况就是,如果漏斗指向了一个放满的容器,那么甚至可能会比20个漏斗更卡顿。向下传输物品可以使用 漏斗→投掷器→漏斗 的方式。请尽量少使用漏斗矿车,一个漏斗矿车≈60个漏斗的卡顿程度。传递物品最好使用水流,和气泡柱。

根据 ExperimentalIdea 的测试,我们得到了以下数据,测试基于 1.15.2

传递物品方式

传输物品时的MSPT(越低越好)

未传输物品时的MSPT(越低越好)

每 8 Tick 触发一次的纯投掷器链(使用观察者触发)

43.5

35.2

每 12 Tick 触发一次的纯投掷器链(使用观察者触发)

30.5

24.3

每 16 Tick 触发一次的纯投掷器链(使用观察者触发)

22.8

18.2

每 24 Tick 触发一次的纯投掷器链(使用观察者触发)

14.9

11.5

每 32 Tick 触发一次的纯投掷器链(使用观察者触发)

10.6

8.5

纯漏斗链(上方放置堆肥桶)

9

11.4

每 64 Tick 触发一次的纯投掷器链(使用观察者触发)

5.2

4.3

传递物品最好使用水流,和气泡柱。如果要使用漏斗那么最好在上面放置堆肥桶。如果要使用投掷器链,那么请不要使用太高频率的触发。

红石粉

红石粉强度变化时,会引起周围大量的方块更新,从而造成卡顿。在较早版本中, 3 格红石线在信号 0→15 时会引起 144 次更新, 在信号 15→0 时甚至能引起 1782 次更新。在最近版本中,1 格红石粉在信号 0→15 时会引起 42 次更新, 在信号 15→0 时甚至能引起 630 次更新。在最近版本中,1 格充能铁轨信号改变时会引起 12 次方块更新,1 个中继器在信号改变时会引起 24 次更新。

根据 黑の秋风 的测试,我们得到了以下数据,测试基于 1.14.4注意:由于 MC-182868 这个 BUG 在 1.14.4 - 1.16.1 版本中有可能铁轨比红石线卡顿

测试项目

MSPT(越低越好)

每 8 Tick 更新一次两格相邻的红石线,红石线信号强度为 1 - 2

75

每 8 Tick 更新一次两格相邻的红石线,红石线信号强度为 14-15

239

每 8 Tick 更新一次单格红石线,红石线信号强度为 1

94

每 8 Tick 更新一次单格红石线,红石线信号强度为 15

97

平面信号传递距离

红石线和观察者MSPT(越低越好)

充能铁轨和观察者MSPT(越低越好)

9

51

46

8

46

40

7

42

35

6

37

29

5

33

23

4

27

18

3

21

13

2

14

9

1

4

4

斜向45度上升信号传递距离

红石线和实体方块和观察者MSPT(越低越好)

红石线和上半砖和观察者MSPT(越低越好)

充能铁轨和实体方块和观察者MSPT(越低越好)

充能铁轨和上半砖和观察者MSPT(越低越好)

9

113

30

190

175

8

100

28

156

152

7

93

24

131

138

6

83

22

113

117

5

74

19

93

93

4

63

16

74

70

3

45

14

50

49

2

32

8

30

31

1

7

6

15

15

传递红石信号时,红石信号强度越低,卡顿越低(不变化时不卡顿)。平面传递红石信号时,可以全都替换为充能铁轨+观察者的组合,如果你需要持久的信号,那么请不要替换。斜向传递红石信号时,如果不需要双向信号,可以使用上半砖。如果需要双向信号传递,则不需要替换。

地狱门

每次传输物品和实体(你也是实体)时,地狱门都会再次搜索 1600 万个方块找到对应的地狱门,从而造成卡顿地狱门只会缓存 15 秒的搜索结果,超过 15 秒后,地狱门会再次搜索。(? - 1.16.1)1.16.2 之后机制已改变,只要不是特别大的传送门,一般不会造成卡顿。

一般情况下无需进行优化。

C.同时影响服务端和客户端的卡顿来源

光照

在白天的时候,会从 255 → 有方块那一层 逐层检测,然后在第一个方块打上 15 级的光照。但仅仅会更新一次。

根据 10935336 的测试,我们得到了以下数据,测试基于 1.16.3

测试项目

MSPT(越低越好)

在 255 层填充 160000 个不透明方块

170

删除在 255 层填充的 160000 个不透明方块

1300

在 0 层 填充 160000 个不透明方块

165

删除在 0 层填充的 160000 个不透明方块

168

通常情况下无需优化,建造飞行器时和地表活塞设施时,可以在机械上方铺一层不透明方块。因为被活塞推动时,运动中的方块会变成 36 号方块,而 36 号方块是透明方块,这样会造成光照更新。

其他红石元件

所有红石元件都是需要大量计算的,这一点相信不难想象。活塞等运动红石元件同时也会在客户端进行运算。

通常情况下无需优化,建造飞行器时和地表活塞设施时,可以在机械上方铺一层不透明方块。但需要保证活塞运动部分无光照,除非有伪和平,否则很容易刷怪,所以一般无需优化。因为被活塞推动时,运动中的方块会变成 36 号方块,而 36 号方块是透明方块,这样会造成光照更新。

TNT

TNT激活后会变为实体并产生大量粒子,导致客户端卡顿。TNT爆炸时会计算 1352 条射线,经过一些计算后,射线穿过的地方都会被破坏,需要大量计算,导致服务端卡顿。

通常情况下无需优化。

漏斗矿车

漏斗矿车会吸收比自身稍微大一点范围的方块,且传输速度比漏斗快,导致服务端卡顿。漏斗矿车是实体。

请尽量少使用漏斗矿车,一个漏斗矿车≈60个漏斗的卡顿程度。

实体

实体碰撞需要大量的计算,同时卡客户端与服务端。

不要堆叠实体(相互碰撞),例如矿车,家畜,怪物,掉落物。不要使用矿车挤压方式做刷怪塔。做牧场请保证有足够的空间,不要牛挤牛,羊挤羊。相互碰撞造成的卡顿非常严重!

相关推荐

抓蝴蝶的网子叫什么网
谁有365bet网址

抓蝴蝶的网子叫什么网

🗓 07-07 👁 5617
5号电池放多久会没电 南孚电池能用几个月
谁有365bet网址

5号电池放多久会没电 南孚电池能用几个月

🗓 07-06 👁 4213