switch模拟器YUZU进度报告2022-9月
大家好!这个月我们有很多话要谈。从游戏修复,输入更改和生活质量改进,到每个人都可以使用的新游戏选项!
伦敦项目:开源、在线本地网络联机
正如在之前的进度报告中所承诺的那样,并在其专用文章中进行了解释,LDN现在已经支持,并可供所有用户使用!享受在你喜欢的游戏中虐一些菜鸟,又或者和好友一起共同挑战,但在我们解释实施之前,让我们先介绍一些理论。
Switch联机可用方式
任天堂掌机为多人游戏提供了4种方法:
局域网联机本地多人游戏。虽然这通常只指同一物理房间中的人,但社区一直在享受远程访问流媒体的好处,使用Parsec等服务,以尽可能低的延迟在线播放。
局域网 (LAN) 多人游戏。这是当多个switch连接到同一本地网络时。此选项已经在yuzu中被模拟并提供了很长一段时间。它仅限于极少数游戏,并且对网络延迟没有很好的容忍度。
LDN多人游戏,通常被称为本地无线联机,本节的重点。这是当一个switch通过内置 WiFi 硬件托管主机,而其它switch作为来宾连接到该主机时。这里的诀窍是,没有什么能阻止模拟器使用服务器基础设施来托管房间,以便来自世界任何地方(包括本地)的用户都可以加入房间。与LAN相比,游戏更支持这种方法。
任天堂在线.这是在线玩游戏的付费任天堂服务,其中还包括其它奖励,例如使用官方模拟器来玩旧游戏。我们没有计划在近期或远期为任天堂在线提供支持。
Project London包括了对 LDN 的完全支持,包括房间托管和加入,并改进了我们的 LAN 支持以使用新的 LDN 代码。
现在,让我们进入有趣的部分:如何使用它!
用户可以通过选择菜单栏中的选项,然后选择Multiplayer来启动 ,或者单击右下角标记为Public Room BrowserMultiplayerBrowse Public Game LobbyNot Connected. Click here to find a room!
从那里,双击房间名称将允许用户加入该房间。请记住,这只是一个建议,对可以在一个房间里玩哪些游戏没有硬性限制。在加入公共游戏房间时,请记住这一点,并礼貌地对待您的同伴!任何由用户托管的房间都可以通过踢出玩家或锁定它们的IP来强制你无法加入此房间。
有锁就是有密码保护的房间
说到用户托管的房间,菜单中的选项允许用户托管自己的房间,具有自定义播放器限制和可选的密码安全性。某些端口需要在主机的路由器配置中转发,因此请按照上一篇的LDN指南进行操作。
还可以创建房间
一旦玩家加入一个房间,它们就可以与其它成员聊天,查看它们正在运行的游戏,而且非常重要的是,其它玩家正在使用的游戏版本。大多数游戏往往只有在所有玩家都运行相同的游戏版本时才有效,因此请记住从YUZU中更新你的游戏版本到最新!
在柚子中开始游戏之前,不强制要求加入房间,但建议这样做。目前,只有LAN支持与真正的Switch连接。LDN 只是柚子到柚子,但我们正在努力在将来的某个时候为 LDN 提供模拟器与实机Switch的支持。
到目前为止,很少有游戏存在LDN问题。并已报告为不兼容。任何其它本地无线兼容游戏都应该可以正常工作,但是如果您发现任何问题,请不要害羞地报告它们。Super Mario Maker 2 Mario Golf:Super Rush DRAGON BALL FighterZ
一点信息,在LDN上播放时具有硬编码的6帧延迟。据说这是为了“帮助缓冲”在线和WiFi游戏的预期延迟。虽然理想的解决方案是使用Parsec在本地多人游戏中玩游戏(本地游戏没有强制延迟),但并不是每个人都有良好的上传速度来进行parsec主机,或者愿意让别人远程访问它们的计算机。Super Smash Bros. Ultimate
另一种方法是:以120 FPS的速度运行游戏,将延迟减少到只有3帧。为此,房间中的所有用户都必须执行两项操作:
安装 120 FPS 的MOD。右键单击柚子的游戏列表中的游戏并选择 ,然后将压缩文件解压后的文件夹放在柚子MOD打开的位置。Open Mod Data Location
将游戏的运行速度设置为 200%。这可以通过自定义配置对每一个游戏进行设置。像以前一样右键单击yuzu列表中的游戏,然后选择>选项卡>勾选运行速度限制(这意味着它是自定义值,忽略默认值),>并将其更改为200%。PropertiesGeneralLimit Speed Percent
通过运行更快的FPS来减少延迟
维持120 FPS需要一些GPU性能,因此,我们的最低硬件建议可能不会削减它(RX 550在1v1战斗中低于100 FPS),但现代低/中端硬件应该没问题。测试还表明,如果显示器支持,AMD Windows驱动程序只能达到高于60的帧速率。我们向AMD报告了这个问题,希望将来这不会强迫用户购买高刷新率显示器。
就是这样!加入房间,无论是在柚子还是在游戏中,并战斗!或者交易那些神奇宝贝,由于ldn_mitm项目为我们提供了许可证豁免,以及Tobi和gerd77所做的工作,以及测试人员(包括您的作者)所做的工作,它们从未以进步的名义对游戏进行过如此多的乐趣。
在主线发行后,Linux用户报告说LDN房间拒绝在某些Linux发行版上工作。问题在于 SSL 包的分发方式。Toast不受限制,参考了Docteh之前的拉取请求,修复了这个问题,所以现在所有支持的操作系统都可以享受LDN。
一些用户报告在运行游戏时崩溃。在实现更正时,请确保在网络中选择了有效的网络设备。崩溃似乎发生在设置为错误的网络接口所导致。Pokémon Sword/ShieldEmulation > Configure… > System > Network > Network InterfaceNone
图形更改
NVIDIA OpenGL用户可能在游戏中看到了一些奇怪的图形故障,由于柚子对性能增强扩展的处理疏忽导致。现已修复,这些游戏现在渲染了它们应该的样子。
勇者斗恶龙:建造者
点心世界
像素游戏制作大师系列:狼姬辉夜
用户可能已经注意到 一个有趣的方形月亮 。这是由于纹理缓存未正确同步游戏使用的ASTC纹理到所有图层,因此vonchenplus添加了一种解决方法,以避免用错误颜色填充额外的无效图层,这会将月亮变回我们都喜欢的圆形。Live a Live
时空勇士
时空勇士有个正确的月亮
一些系统,如Steam,不喜欢柚子生成新进程以检查Vulkan支持工作的行为。ToastUnlimit更新了Vulkan检查器,并提供了一个配置选项,可以停止检查,允许这些系统与旧的柚子版本相同。
经过三个月的回归求解和通常令人讨厌的延迟,第1部分终于合并到主线!以及第2部分在不久的将来的预期内容。Project Y.F.C.
目前,一个倒退仍然存在。它会影响 的单人游戏模式中的某些谜题。虽然第 2 部分正在开发中,但受此问题影响的用户应坚持使用主线版本 1190。喷射战士 2
我们上个月提到过尝试推送更具侵略性的值,以使GPU用户受益,这些用户可以启用可调整大小的BAR/智能访问内存(或ReBAR / SAM)。虽然该选项确实与主线 1189短暂合并,但用户很快报告了巨大的性能提升和损失,与正在使用的GPU / CPU无关。此更改似乎非常特定于平台,并且平均值倾向于性能损失,因此byte将其还原。Staging Buffer
自从Morph涉足图形工作以来已经有一段时间了。 由于 vsync 事件调用过多而无法启动。将事件限制为每个显示器仅一次,可以最终启动并播放。.hack//G.U. Last Recode.hack
.hack//G.U. Last Recode
音频更改
上个月的清理工作在本月继续进行,来自Maide的新音频拉取请求。这修复了某些用户在过场动画期间遇到的音频不同步问题。以前,Maide 的音频实现有时会出现游戏音频生成样本的速度太快的问题,以至于主机音频后端(SDL 或 Cubeb)无法及时播放。现在,如果游戏开始产生太多样本,它将暂时暂停,直到音频后端赶上。异度之刃 3
Maide还对音频系统及其与暂停和关机的关系进行了相对较大的清理。在拉取请求8842之前,音频系统有自己的计时器系统来处理独立于yuzu的计时器系统运行的后端。现在,执行此操作时的同步问题已得到解决,Maide删除了自定义计时器系统,以便现在通过 正确处理暂停和关闭来运行所有内容。因此,不再需要音频系统识别暂停和关机的束缚,可以将其删除。
异度之刃3
然而,这些音频变化确实伴随着轻微的倒退。在多核模式下,计时器回调在它们自己的线程上运行,这允许它们独立于 CPU 内核执行。但是,由于 yuzu 尝试在单核模式下可行性,因此在此模式下,每个定时回调和每个模拟处理器指令都从单个主机线程运行。在单核模式下,这可以防止计时器回调被有效地暂停,从而导致音频服务尝试不断暂停游戏以赶上进度。Maide通过简单地不暂停(如果启用了单核模式)来解决此问题。
这一次,Maide并不是唯一一个从事音频工作的贡献者!vonchenplus注意到,新服务是用于优化Opus音频播放的服务,它没有实现启动所需的任何多流功能。它添加了一个游戏需要的新功能,游戏启动了。
勇者斗恶龙10
内核仿真
柚子正在缓慢但肯定地提高其运行自制应用程序的能力。因此,当团队发现HarbourMasters自制程序(的 PC 端口)在柚子中无法正常工作时,我们很感兴趣,并追踪到一个缺失的服务。german77增加了对pl:s服务的支持,该服务用于加载字体,游戏现在启动和渲染,帧插值高达60 fps即可正常工作。塞尔达传说:时之笛
在我们的“其它架构”新领域,柳树宇修改了柚子的CMake设置,使其与ARM64架构部分兼容。这允许为 ARM64 构建 LDN 服务器应用程序。Pi服务器,有人吗?这消息真好!盒子?派?手机?平板?
请继续关注有关ARM64上的柚子的未来新闻...
输入更改
yuzu的输入模拟长期存在的问题之一是控制器重新连接后体感控制不起作用。多亏了 german77,此问题现已修复。发生这种情况是因为yuzu仅在控制器首次连接时检查体感控制,而不是在随后的重新连接时检查。确保柚子在每次重新连接时检查体感控制解决了此问题。
多年来,yuzu的输入模拟一直缺少对模拟流行控制器的支持。在它对此进行逆向工程的努力中,german77发现,对其最有意义的功能都被锁定在任天堂在线开关(NSO)之后。虽然这使他对它失去了兴趣,但他部分地实现了对模拟该控制器(包括运动控制)的支持,从而为其它人提供了改进。现在,您可以在中选择它并像任何其它控制器一样使用它,但不支持从中加载数据或向其写入数据。Pokéball PlusPokémon Let's Go, Pikachu/Eevee!的精灵球?
上个月的Amiibo模拟支持工作也看到了重大改进和错误修复。通过这些更改,Amiibo 密钥现在是读取/写入任何数据的强制性要求。这也修复了Amiibo在游戏等中的支持。Shovel Knight Super Smash Bros. Ultimate
修复了GameCube控制器输入映射中的一个小错误,该错误导致GC触发器覆盖按钮。为了进一步补充此修复,german77还使模拟输入按钮可切换以扩展可用性。ZL/ZR
可访问性既非常重要,又可悲的是,也很容易被忽视。例如,一些简单的事情:如果用户需要更多时间来单独映射按钮,该怎么办?为了帮助解决此特定情况,按钮映射计时器持续时间已从 2.5秒增加到了4秒 。
用户界面更改
本月,我们还从多个贡献者那里获得了各种 UI 改进。
旧的SD卡图标已被开发组用新的彩色微型SD卡图标取代。
更美观的SD卡图标
Tachi107 修复了柚子源代码中的一些小错误。
german77 修改了保存的输入配置文件的顺序。它们现在按名称排序。Emulation > Configure... > Controls
虽然彩色主题在一段时间内一直是默认主题,但某些图标仍保留在“默认”主题目录中。但是由于Linux不支持从其它主题抓取图标,因此这被打破了。Docteh通过将所有图标移动到彩色主题来解决此问题。
由于配置选项卡变得拥挤,Docteh 使其可滚动。
选项卡可以滚动了
Docteh还修复了TAS配置窗口中损坏的帮助页面超链接。
杂项
很长一段时间以来,来自Windows用户的任何柚子错误报告都必须由团队手动复制和调查。Linux 用户可以选择提供堆栈跟踪,但 Windows 用户无法提供类似的调试信息。
为了克服这个问题,Toast无限制地实现了支持,以在柚子本身中创建Windows故障转储。这允许Windows上的任何外行人轻松获得故障转储,而无需跳过各种开发人员预期的箍。但是,由于此功能对性能有很大的影响,因此在设置中的选项后面添加了此功能,供用户选择。你可以在 中找到它。设置 > 通用… > 调试 > 调试选项> 勾选微型故障转储
但会带来一些性能的损失
由于转储使用新式 Windows SDK 功能,因此此更改可能会破坏与旧版 Windows 选项的兼容性。柚子只正式支持Windows版本10 1803及更高版本。当然还有 Linux。它比windows更效率。
硬件部分
AMD Radeon,当提高准确性时会产生崩溃
用户在运行官方 AMD 驱动程序(windows驱动程序或linxu系统驱动程序)的 AMD Radeon GPU 上启动时开始报告崩溃。我们正在调查amdvulkan源代码以找到原因,并已通知AMD我们掌握的所有相关信息。异度之刃3
原因似乎是宏观JIT准确性的提高。测试表明,即使使用较旧的驱动程序和柚子版本,禁用MacroJIT速度也会导致官方AMD Vulkan驱动程序崩溃,因此它遗憾地发现,提高其准确性现在会产生相同的结果。
受影响的用户可以尝试运行主线 1188,或者只是使用 OpenGL 运行游戏。Mesa RADV 驱动程序不受影响。
英伟达,崩溃的一个来源,还有更多
我们已经合并了上个月提到的多线程ASTC CPU解码器,因此我们强烈建议NVIDIA Maxwell 和 Pascal(GTX 745 /750,900和1000系列)用户禁用ASTC解码,如果您运行最新的驱动程序。
您可以在模拟>设置>图形中找到使用CPU解码,此设置使用 GPU 进行解码,同时变更它时使用 CPU解码。作为优点,现在此选项可以在核显GPU系统上略微提高性能,例如具有MX系列Geforce硬件的旧笔记本电脑或任何英特尔iGPU,CPU可以更快地处理ASTC解码。测试表明,Geforce MX 500 和Radeon Vega 7 的 GPU 使用 GPU 进行解码的速度稍快一些。在受影响的 NVIDIA 硬件上,解码 ASTC 纹理时性能下降的次数极小。例如,在游戏中打开地图时避免崩溃可以说要重要得多。Emulation > Configure... > Graphics > Accelerate ASTC Texture DecodingThe Legend of Zelda
由最近的驱动程序更新引起的崩溃仍然存在,但您的作者继续每天*扰NVIDIA驱动程序开发人员(我现在只需要进入英特尔即可对所有三个供应商执行相同的操作)。因此,我们推荐适用于 Maxwell 和 Pascal 硬件的 472/473 系列驱动程序,以确保最佳性能和与 yuzu 的兼容性。使用最新的驱动程序没有错,但在解决这些崩溃之前,预计它们会出现不稳定和图形故障。uring, Ampere, 和 Ada hardware硬件(1600,2000,3000和4000系列)表现出一些奇怪的行为,但与它们的哥哥相比,(在撰写本文时)最新的520/522系列驱动程序上要稳定得多。
人们希望Maxwell 和 Pascal架构将继续得到NVIDIA的支持。
英特尔 ARC 支持
目前还没有关于Vulkan支持英特尔这些新的“AV1视频解码器卡”的消息,这些卡也可以用作GPU。低可用性使我们很难获得一个,但这是我们想要尽快解决的问题。
OpenGL现在是“功能性的”,但英特尔仍然是Windows上OpenGL支持方面最糟糕的供应商,因此体验非常糟糕。据报道,Linux Mesa驱动程序在OpenGL和Vulkan中都能正常工作,并且具有良好的性能。
说到 AV1,目前我们一直在对文章中嵌入的视频使用 h.264 编码,因为它在硬件要求方面既得到广泛支持,又非常轻量级。您是否希望我们从现在开始切换到AV1?在没有专用硬件解码器的设备上,这可能是一个很大的电池消耗,但它将允许更低的比特率,同时保持类似的质量水平,这是数据存储用户过去抱怨的事情。在Reddit,我们的论坛或我们的 Discord server 上告诉我们您更喜欢什么!
未来项目
这一次,我们在本节中没有太多要说的。或者我应该说,我们还不想开始为新项目制造炒作。
如前所述,Blinkhawk 已经开始着手制作 第 2 部分,GPU 帮派的其余部分(字节 []、迈德、冯辰普拉斯)也忙于进行一些绝密的更改(目前,您的作者有一个声誉)来提高渲染精度和性能。Project Y.F.C.
将第一部分合并到主线为许多迄今为止被搁置的项目打开了闸门。我们将在下一份进度报告中更详细地讨论这些问题。Y.F.C.
特别感谢神秘作家B对这份进度报告的帮助,以及CaptV0rt3x,它立即伸出援手。
这就是所有的内容!一如既往,非常感谢您抽出宝贵时间。我们希望在下一篇文章中见到你!
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved