跳到主要内容
正在加载页面…
Myths' Valley

性能挑战 · 2026年10月5日

山谷很美,却太沉重了

树林茂密、房屋上色之后,游戏掉到 5 至 30 FPS,启动要近 97 秒。我们用一天时间测量、找出原因,并封存了 Tripothon 版 Build 9B。

全屏测量,1920×1080

山谷究竟跑得多快

在山谷的 128 个视角中,游戏从未达到 60 FPS,其中 81 个视角低于 15 FPS。
5.3 128 个视角中最差的 FPS
13.4 中位视角的 FPS
30.1 最佳视角的 FPS
≈ 97 s 从选择语言到能够行走

历史记录里的 60 FPS 来自 9 月 26 日,窗口为 1280×720,树林只有今天的三分之一。山谷变大了,屏幕升到 1080p,10 月 5 日的新内容又把帧率压到了十几帧。

先测量,再动手

一天内完成的调查

戴尔 G3 笔记本,GeForce GTX 1660 Ti Max-Q,全屏 1080p:这是玩家的机器,而不是开发者的机器。
128

128 个视角

山谷里的 16 个地点,每个地点 8 个镜头朝向,按玩家看到的方式测量。

A/B

开关对照

每次只改一项,并总与基准交替测量,以消除漂移。收益以毫秒计。

3

拆开的一帧

物理、脚本和 GPU 分别测量:在做任何改动之前,瓶颈就已显现。

2×

重复验证

第二轮测量没有改动任何设置,结果复现了第一轮:广场为 4.8 对 5.3 FPS。

按影响大小排序,全部实测

丢帧的八个原因

每项收益是指该原因消除后,一帧缩短的时间。
01

三角面过多

−37 ms

树林、灌木层和景观绿化加起来有 4670 万个三角面,而按距离裁剪几乎覆盖了整个山谷。

02

双面绘制的模型

−17 ms

Tripo 模型默认开启了背面绘制。关掉它,照片里看不出任何变化。

03

太阳的阴影

−13 ms

四级级联、最远 180 u 的阴影,每帧要重画 370 万个三角面。

04

物理的螺旋

5 → 13 FPS

单个 tick 最长 22 ms 的脚本,让 Godot 每帧最多运行 8 个 tick。在广场,游戏一度跌到 5 FPS。

05

小地图

−4 ms

它每帧都重画整个山谷,却只是为了一张 170 像素的地图。

06

1080p 下的 MSAA 2x

−9 ms

全屏下的边缘平滑,耗时几乎与太阳阴影相当。

07

没有遮挡剔除

890 万

在教堂里正对着墙壁时,游戏仍在绘制墙外山谷的 890 万个三角面。

08

笔记本的显卡

60 W 中的 17 W

显卡只以 60 W 中的 17 W 运行,被系统限制。这不是游戏的错,却会放大其他所有问题。

从点击到迈出第一步

97 秒的加载

几乎所有时间都是处理器在用 GDScript 搭建世界,而不是磁盘或着色器。
0148 → 32 s

重做了 2.3 万次的网格

缓存缺陷会让屏幕在每次搭建山谷时冻结 19 秒。已修复,结果完全一致。

022×

山谷搭建了两次

一次在菜单后面,用于飞越镜头,另一次在点击开始游戏时。这是交付之后的工作。

0311 s

每次加载都重做地形

地形网格和碰撞每次打开游戏都用 GDScript 重新生成。

048–12 s

进度条满了之后的工作

村民、野兽和室内场景在进度条走满之后才生成,还会卡顿近 8 秒。

在 Tripothon 版 Build 9B 中

玩家几乎看不出的修正

六项改动,依据实测收益挑选,并尽量不损伤山谷的画面。
01

海岸缓存

海岸网格改为按边缘缓存:山谷的搭建时间从 48 秒降到 32 秒。

02

有上限的物理

每帧最多 3 个 tick。低于 20 FPS 时,游戏会变成慢动作,而不会越拖越卡。

03

阴影与边缘

太阳阴影只到 70 u,使用 2 级级联,地形和丝带不再投射阴影,并用 FXAA 取代 MSAA。

04

树林减半

树木减半,林中开出 12 片独立的空地,每片都有一棵独特树种的标志树(或一座房子)、几块石头,以及一条通往道路的土路。

05

静态小地图

地图不再每帧重画山谷:它是一张固定的图片,玩家标记叠在上面。

06

视频大厅

菜单不再构建 3D 山谷:一段用 LTX 生成的循环手绘飞越画面衬在祭坛画后面。这段 36 秒的过场动画就是本页的开场。

拖动分隔线

照片里几乎没有变化

左边是原来的山谷,右边是模拟调整之后的画面。变化的只是边缘的锐利程度。
观景台,朝西 · 之后 观景台,朝西 · 之前 之前 之后
观景台,朝西. 基准:10.2 FPS。方案 D(树林 × 0.35、FXAA、60 u 阴影、120 u 模型):24.1 FPS。
1 / 3

版本数据

这个版本还给玩家什么

中位数从 12.9 提升到 28.9 FPS,加载时间也大幅缩短,山谷的外观不变。
指标 之前(实测) 之后(实测)
最差视角的 FPS 5.3 18.0
中位视角的 FPS 12.9 28.9
最佳视角的 FPS 30.1 42.8
每帧三角面数(中位数) 5.72 百万 1.77 百万
每帧物理 tick 数(中位数) 4.6 2.1
山谷搭建时间 48 s 29 s
加载:从选择语言到能够行走 ≈ 97 s ≈ 35 s

测试机器:戴尔 G3,GeForce GTX 1660 Ti Max-Q,1920×1080,128 个视角。

Build 9B · B 组,已锁定

用于评委评审

锁定版本,不在游戏内更新,独立于标准版本线(目前为 Build 12)。与本页修复相同的演示版。Windows 10 或 11,64 位。
版本
v0.1.0-dev
Build
9B
日期
2026年10月5日
大小
1.0 GB
SHA-256
e38ce1e5e1620d45d84e799772a8829efc46c441d42d1cfa217f4a3c2699d0b0