本帖最后由 CiXY 于 2021-2-16 21:41 编辑
东方Project所有官作程序都是win平台的,所以在Linux以及macOS上玩东方是需要借助wine这一第三方软件实现的兼容层来运行游戏。在这个教程中将介绍如何在macOS与Linux下安装Wine以及对于东方正作进行补丁以及设置上的优化,减少显示Bug以及输入延迟的问题。
一、安装Wine
1.1 在macOS上安装Wine
因为在10.15及其以上版本的系统中移除了32bit程序的支持,所有在macOS上安装Wine需要macOS系统版本在10.14及其以下。10.15及其以上版本需要使用收费软件CrossOver运行,可以跳过这一部分在下一部分参照此教程对正作游戏进行优化。
这里推荐使用Mac上的包管理软件Homebrew安装Wine。
- 打开Terminal.app,其位于launchpad中“其他”文件夹内;
- 将下列命令复制进终端并回车,然后将自动安装Homebrew,等待安装完成。
- /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
复制代码
- 安装好Homebrew后安装Wine,需要先安装依赖XQuartz,将下列命令输入命令行:
- brew install --cask xquartz
复制代码
- 安装好XQuartz后安装Wine,这里推荐使用wine-stable版本,将下列两行命令依次输入命令行:
- brew tap homebrew/cask-versions
- brew install --cask --no-quarantine wine-stable
复制代码
- 安装好Wine后在终端输入winecfg,之后会提示安装一些东西,一路确定就行。
1.2 在Linux上安装Wine 相信Linux用户有能力自己参照winehq.org上面给的安装说明进行安装。apt默认安装的Wine版本较老,还是4.0,现在最新的已经到了6.0。所以请参照winehq.org上所给的安装说明安装最新版本。
二、游戏的相关优化
2.1 输入延迟
在窗口模式下运行游戏可以感觉出很高的输入延迟,因为在游戏的画面渲染后还需要经过窗口管理器的渲染,在窗口管理器下的渲染会产生很大的延迟。在Windows下感觉还是不明显,但在使用Wine的情况下延迟问题就非常显著。
延迟对于STG的影响是非常大的。所以,为了避免延迟,请在全屏模式下运行程序。关于垂直同步部分产生的延迟将在下一节中VsyncPatch中进行说明。
2.2 VsyncPatch
由于ZUN写的程序虽然在Windows上没有什么问题,但在Wine下或多或少的存在一些小的bug,例如游戏突然暴走、帧率不稳定等,使用VsyncPatch可以解决掉大部分的问题。VsyncPatch可以在THBwiki的STG常用工具页面找到:STG常用工具
VsyncPatch的安装方法是将文件夹下的Vpatch.exe、thXX.dll与vpatch.ini复制到游戏目录下即可,与Windows下使用方法一样。修改参数通过修改vpatch.ini文件实现,在Mac下可以使用脚本编辑器进行修改。相关参数的说明可以参照星海天下在B站专栏中的文章,但他对Vsync这一参数说明比较模糊,我在这里做一些补充。
- Vsync = 0 不进行垂直同步,绘制延迟在0~16ms之间
- Vsync = 1 执行垂直同步,FPS等于刷新率,屏幕上半部分有0~8ms延迟,下半部分有8~16ms延迟
- Vsync = 2 以GameFPS中指定的FPS进行绘图,保持垂直同步
- Vsync = 3 扫描线到达屏幕中心时进行绘制,屏幕上半部分有8~16ms延迟,下半部分有0~8ms延迟
2.2 异常色块
红魔乡和妖妖梦在Wine下运行时在两帧撕裂的位置会产生异常色块,如下图所示。
对于红魔乡,请将游戏升级到1.02版本以上,并在custom.exe中勾选“强制运行在60fps”(強制的に60フレームにする)(1.02以下版本勾选这一选项会把fps锁定在62.5,为了确定这一问题我安装了一个日文版Win7虚拟机用原版的红魔乡一步步打补丁到1.02)
对于妖妖梦在custom.exe中勾选“每次刷新都描绘出来”(画面周いを每回描画)与“不使用垂直同步”(垂直同期を取らない)。
其他:
使用喵玉殿汉化的th13东方神灵庙时在一面BOSS战时会出错闪退,日文原版不会出问题。
相关网址:
WineHQ:
https://www.winehq.org
Homebrew:
https://brew.sh
|