Epstein Island Game 系统需求:浏览器、硬件、手机与网络
一座有棕榈树、海浪和会说话角色的岛屿,能不能在你的设备上流畅运行,在 Epstein Island Game 里几乎完全取决于浏览器。这款游戏是一个 3D 原型,你可以直接在网站上玩,另外也有 Windows、macOS 和 Linux 的客户端。
这里讲清楚游戏在技术上要求什么,在手机和平板上它自己会做出哪些不同的调整,什么时候需要联网,以及画面卡顿时哪个设置能帮上忙。数据基于 0.15.2-wasser 版本。
浏览器端的系统需求:WebGL 2,不需要 WebGPU
官方在首页和常见问题里给出的答案很简短:一款较新的、支持 WebGL 的浏览器就够了。经过测试的系统需求要等到 Unity 版,也就是真正的主项目发布之后才会公布。
浏览器原型的代码透露了“较新”具体指什么。这座岛是用 three.js 180 版通过 WebGL 渲染器绘制的,这个版本的 three.js 需要 WebGL 2,因为它从 163 版起就不再支持 WebGL 1 了。WebGPU 则用不上,游戏没有使用它。
此外要开启 JavaScript,浏览器还得能通过 import map 加载 JavaScript 模块。游戏正是靠这个方式,把 three.js 和它的各个组件加载进来。
加载出问题时,开始菜单会直接告诉你:大按钮上会写着“加载失败”,下面还有“无法加载这座岛”,附带原因和重新加载的提示。一切正常的话,同一个按钮会从“加载中……”变成“单人模式”。
提示报告错误时,写清楚操作系统、浏览器,以及当时正在做什么。这正是常见问题页面要求提供的信息。
需要什么硬件:原型真正要求的是什么
游戏没有给出处理器、显卡或内存的最低配置,这篇文章也不打算凭空编一个。能确认的是原型对显示效果的要求:启动时它会向浏览器请求高性能显卡,并打开抗锯齿。
在“高”这一档,游戏最高每秒渲染 60 帧,带柔和阴影,在高分辨率屏幕上每个屏幕像素最多渲染 1.65 个画面像素。夜晚时,附近最多可以有四盏灯投出真实光照,角色可见的距离也比低档设置更远。
只要打开一个窗口,比如背包、地图或设置,游戏就会把帧率降到每秒 15 帧。切到别的标签页,它就会暂停,完全停止渲染。
手机和平板上:游戏自己会做出哪些改变
在手机和平板上,浏览器是唯一途径,客户端只提供给 Windows、macOS 和 Linux。当游戏检测到触屏是主要输入方式时,会自动启动“省电”这一档显示设置。
它在这些设备上还会一个一个地加载角色,而不是一次性全部加载,因为手机和平板解压角色文件时容易内存不够。开始按钮下方的进度条会数着加载了多少个角色。在电脑上,这一步是并行进行的,因此更快。
在手机上,游戏页面会把游戏放在最上方,带一个“全屏”按钮。在浏览器不支持真正全屏的地方,比如 iPhone 上的 Safari,画面框会盖满整个窗口,并留一个可见的退出按钮。竖屏时,提示会建议把手机转成横屏。
移动靠屏幕上的按键,环顾靠滑动,手柄不支持。完整的按键说明见手机与平板操作。
提示先把手机转成横屏,点一下“全屏”,再开始游戏。横屏能让你看到更多岛屿。
Windows、macOS 和 Linux 的桌面客户端
喜欢用独立程序的人,每个系统都有一个对应文件。客户端启动时会自己检查更新,只下载有变化的文件,而不是整个安装包。下载页面没有列出操作系统的最低版本,但为每个文件标出了版本号、大小、更新日期和 SHA256 校验值。
首次启动需要点哪些步骤,详细写在Windows、macOS 和 Linux 安装指南里。浏览器还是客户端更适合你,见在浏览器玩还是下载。
- Windows:一个 ZIP 压缩包,里面是 Island 文件夹,包含 Island.exe。首次启动时会出现 Windows 对新程序常见的 SmartScreen 提示。
- macOS:一个包含 Island.app 的 ZIP。这些安装包没有经过苹果公证,因此首次启动时会显示“Apple 无法验证……”。
- Linux:一个 tar.gz 压缩包,里面是 Island/Island 程序。如果系统提示和“SUID sandbox”有关的问题,加上 --no-sandbox 参数启动即可。
联机和语音需要的网络:游戏什么时候要联网
浏览器版打开时会从服务器加载这座岛。联机模式下,游戏之后会和 Island 服务器保持一条持续连接,每秒把你的位置发送十次,并把共享存档在线保存。
连接中断时,游戏会显示“连接中断,Island 正在为你重新连接……”,并尝试五次,间隔时间会逐渐拉长到最多八秒。如果都没成功,可以通过“多人模式”重新加入。如果你已经在另一个窗口里连接着,游戏也会告诉你。
语音方面,取决于对话方式。预先准备好的语音片段,目前这个版本一共 442 条,随游戏一起提供,不需要任何外部服务。设置里默认开启的“自由对话,使用角色语音”则不同,每次对话都会通过 WebRTC 建立一条实时语音连接。这需要一个游戏档案,麦克风只有在你想说话而不是打字时才用得到。
角色不会干等着:预先准备好的语音片段会立刻播放,实时连接一旦建立就会接上。超过 18 秒没有连接,游戏就会放弃,改用预先准备的对话;一条实时连接最多四分钟后会自动结束。联机模式下,角色始终使用预先准备的对话,不支持 WebRTC 的浏览器也是如此。
提示网络不好的话,在设置里把“对话方式”改成“预先准备的对话”,游戏就完全不会再尝试建立实时语音连接。
如果卡顿:把“显示”改成“省电”
最有用的开关就在游戏里。从开始菜单,或者在暂停时按 Esc 打开设置,把“显示”从“高”改成“省电”,再点“应用”确认。游戏内手机上的“设置”应用也会带你到同一个地方。“省电”会带来这些变化:
- 最高每秒 30 帧,而不是 60 帧
- 每个屏幕像素只渲染一个画面像素,而不是最多 1.65 个,这在高分辨率屏幕上影响明显
- 没有阴影
- 夜晚附近最多两盏真实光源,而不是四盏
- 远处的角色会更早被隐藏
- 水效果更少:两道尾迹而不是三道,水环数量减半,水花粒子 200 个而不是 600 个
提示几乎所有改动都会立刻生效。只有水效果是在加载时就定好的,要重新加载页面才会变化。浏览器会记住你的选择,留到下次访问。
常见问题
玩 Epstein Island Game 需要 WebGPU 吗?
不需要。游戏用 three.js 的 WebGL 渲染器绘制这座岛,需要的是 WebGL 2,不使用 WebGPU。
需要什么显卡?
没有给出最低配置。官方说法是一款较新、支持 WebGL 的浏览器就够了,经过测试的系统需求要等还没发布的 Unity 版才会出现。
游戏能在手机和平板上运行吗?
可以,在浏览器里。触屏设备上会自动启用“省电”显示档,并且一个一个加载角色,好让内存够用。
游戏卡顿该怎么办?
在设置里把“显示”改成“省电”,再点“应用”。这会把帧率上限设在 30,关掉阴影,并在高分辨率屏幕上降低渲染精度。