Switch模拟器YUZU进度报告2022-2月

本月,我们很自豪地展示了大量内核更改,这些更改最终修复了长期存在的错误、大规模的性能改进、UI 和输入更改等等!

图形修复,以及如何提高性能

由于 Linux 上的 RADV 驱动程序存在问题,在 AMD 的 RDNA2 显卡上运行时,使用 Vulkan API 会使 yuzu 崩溃。 最值得注意的是,这个问题影响了 Steam 平台,正如尝试在其设备上测试yuzu的用户所报告的那样。

确定崩溃问题是因为 VK_EXT_vertex_input_dynamic_state,一个 Vulkan 扩展,用于最小化着色器编译过程中所需的管道对象数量。 这些结构非常庞大,有时,游戏可能只想更改其中的一小部分内容,例如顶点输入状态。 使用此扩展,API 可以通过简单的函数调用动态更改结构中的这些成员,无需创建全新的对象,从而减少操作使用的资源量。

虽然这个错误正在解决, epicboy 推送了一个 PR 将扩展列入黑名单 在运行 RADV 驱动程序的 RDNA2 设备上,因此 yuzu 不会彻底崩溃。

但是还有一个驱动给我们带来了问题。

Linux 上 Mesa 的 ANV 驱动程序不支持纹理格式 VK_FORMAT_B5G6R5_UNORM_PACK16,这导致yuzu在运行使用它的游戏时崩溃,例如 酷霸王之怒. 为了绕过这个问题, voidanix 实现了一个模拟的解决方案 BGR565纹理 混合 RGB565,以此解决。

类似地, Morph 实现了 缺失的顶点格式 , 如游戏使用口袋力量棒球R asLody 还实现了缺少的 帧缓冲区格式 , 这次用于 妖怪手表4.

Switch模拟器YUZU进度报告2022-2月

妖怪手表4

该开发人员的另一个修复是 添加缺少的信号量操作 为了 MaxwellDMA, 被使用 塞尔达传说:旷野之息 和 宝可梦传说:阿尔宙斯

内核变化,以及如何驯服 Smash

继续在内核上进行的工作, 改进 bunnei 内核内存管理器 使其与最新的系统更新更兼容。

伴随这些变化而来的一个巧妙设置是yuzu能够支持不同的内存布局,例如在开发人员单元中使用的“6 GB 扩展内存布局”(MOD社区要求的一项功能)。

一些模组可以使用比 Switch 提供的更多的 RAM,主要是高分辨率纹理替换。 为了解决这个问题,bunnei 添加了一个开关来启用扩展的 6GB 内存布局 真正的开发人员工具包将可用。 那些额外的 2GB 将允许重型模块正常工作。 您可以在中找到设置 模拟 > 设置… > 通用 > 扩展的内存布局 (6GB DRAM).

Switch模拟器YUZU进度报告2022-2月

扩展的内存布局 (6GB DRAM)

不要指望它会对模拟性能产生影响,游戏不会关心模拟控制台是否超过 4GB,它们只关心是否有足够的空闲内存用于操作。

bunnei 还通过 将锁迁移到使用模拟客户锁来 以及 改进物理内存的映射和解映射 .

与往常一样,这项工作背后的最大动力是提高我们实现的准确性,同时还修复了过去几年可能隐藏在那里的任何错误。

Dynarmic 是我们的 ARM JIT 重新编译器,本月也进行了许多新的优化和错误修复。

Blinkhawk 更正了 Dynarmic 中内存存储/加载操作序列化的屏蔽逻辑 x64代码发射器,并随后 更新了子模块 将这些更改带入 yuzu 的代码库。 这修复了影响的卡死 宝可梦传说:阿尔宙斯.

在调查稳定性问题时 任天堂明星大乱斗, bunnei 和 Merry 发现问题是由于在 SpaceRemaining函数,用于计算缓存块中 JITed 代码可用的剩余空间。

Dynarmic 将这些代码块分成两个区域,命名为 near和 far. 该方案旨在通过将“热”代码保留在 near随时可供执行,而“冷”代码被推入 far地区。 由于计算剩余空间的方式存在错误, near区域会溢出到 far区域,用“热”代码覆盖“冷”代码。 然后,CPU 将尝试运行之前存在的“冷”代码,并在尝试时严重崩溃。

最终,在几场比赛后崩溃 SSBU,因为那是耗尽空间并溢出缓存所花费的时间。 通过 纠正比较 用于计算这个值,开发人员终于能够缓解围绕这个游戏的最长期存在的问题之一。

Switch模拟器YUZU进度报告2022-2月

任天堂明星大乱斗

Merry 也一直忙于 实现对新 CPU 优化的支持 ,这使得通过使用 ARM 独占访问指令的仿真 cmpxchg(比较和交换)指令 x64建筑学。

ARM 指令集包含可以排除对内存地址的访问的指令,因此只有一些指令——在这种情况下是一对:一个用于读取值,另一个用于写入它们——可以在多核环境中安全运行,而不会受到干扰来自其它线程的指令,这些线程可能也想访问内存中的相同值。

它通过在读取内存中的值后将地址标记为“用于独占访问”来实现这一点,因此“独占”存储指令只有在使用此标志标记时才会写入该地址。 另一方面,“正常”存储指令旨在始终在写入后清除该标志。 因此,独占指令可以利用该信息知道内存地址中的值何时被非独占指令改变,并重新启动整个作业,直到操作成功。

ARM 能够通过称为 Exclusive Monitor. 但是在 x64考虑到多线程环境中测试和调试的复杂性,架构可能非常困难。 因此,它们之前的实现相当保守且效率低下,以确保并发性。

但是,可以通过使用 cmpxchg,它将内存地址中的值与引用进行比较,如果匹配,则将新值写入其中。 因此,可以将内存地址中的值用作引用,然后当且仅当存储的值与引用匹配时,将另一个值写入同一地址。 依靠该指令的语义,可以将独占内存读取和写入内联到 JITed 代码中并加快它们的执行速度。

广泛使用这些专有说明的游戏,例如 宝可梦传说:阿尔宙斯,应该会看到性能略有提高。

一般错误修正和 UI 更改

German77 在 UI 上做了一些工作来增加趣味性。

他改进了 SDL 电池电量检测 ,重新调整了控制设置中的一些 UI 元素, 并为我们提供了新的、更漂亮的电池符号!

Switch模拟器YUZU进度报告2022-2月

旧的电量图标

Switch模拟器YUZU进度报告2022-2月

新的电量图标

German77 还 添加了新的热键 应大众要求。 加入战斗的是停靠/取消停靠(用于控制器)、窗口自适应过滤器、GPU 精度(在正常和高之间切换)和静音/取消静音。

Switch模拟器YUZU进度报告2022-2月

更加便捷的热键设置

另一个高度要求的修复是 改进 Amiibo 支持 . 我们的旧代码不是很准确,导致一些游戏失败。 虽然还有改进的余地,但这个新实现要准确得多,现在应该可以在大多数游戏中稳定使用 Amiibo 转储。

我们还想宣布,对实体 Amiibos 的 NFC 扫描的原生支持正在开发中! 随着进展,我们将分享更多信息。

Morph 修复了最近出现的一个奇怪问题。 在某些情况下,重新打开柚子后,窗口会是一个最大化的无边框状态。 事实证明,由于某种原因,配置文件在关闭 yuzu 后没有重置无框标志。 强制移除标志 在每次启动时解决问题。

Maide 为模组制作者和任何对游戏内部结构感兴趣的人添加了一个非常有用的功能。 此前,yuzu倾销基地 exeFS,其中仅包括来自基础游戏的数据,缺少更新或 DLC 中的任何新增内容。 相反,通过 转储补丁 exeFS,就像 EliEron 过去建议的那样 ,用户将有权访问更新文件!

toastUnlimited 发现 喷射战士 2中的库存时崩溃 LAN 大厅 。 存根 IsUsbFullKeyControllerEnabled功能 这就是我们所需要的。 肆无忌惮地打你的朋友!

Switch模拟器YUZU进度报告2022-2月

喷射战士2

对于复古游戏迷来说,toastUnlimited 和 German77 都修复了 Nintendo Switch Online 服务中包含的 SNES 和 NES 模拟器(是的,您也可以转储和离线播放这些模拟器)。 存根 mnpp:app解决崩溃,并 更新流程修订 我们的音频仿真允许官方仿真器在 yuzu 上正常工作。

Switch模拟器YUZU进度报告2022-2月

Switch模拟器YUZU进度报告2022-2月

Switch模拟器YUZU进度报告2022-2月

Switch模拟器YUZU进度报告2022-2月

输入改进

正如每个月都会发生的那样,german77 在这个部分中占主导地位。

作为测试当前震动设置强度的一种方式,您现在可以 强制控制器振动 在配置振动窗口打开时按任意按钮都可以体会到震动强度。

Switch模拟器YUZU进度报告2022-2月

此窗口中按键可以体会震动强度了

游戏手柄有漂移,不仅是 Joy-Cons 所熟知的飘逸问题,而且每个游戏手柄都有一定程度的漂移。 为了隐藏这一点,控制台会自动居中其摇杆。

限制之一 SDL 是它只能读取 Nintendo 官方控制器上的工厂校准,跳过任何可能可用的用户校准配置文件。 我们通过在启动时自动居中来解决这个问题,但是摇杆仍然可以去任何它们喜欢的地方,所以 German77 添加了一个选项来手动居中每个轴 作为附加选项。 只需在我们的控制器设置中右键单击摇杆的任何方向。

Switch模拟器YUZU进度报告2022-2月

只需要右键单机

添加了支持以 允许映射 Enter 键 ,之前只是重新启动了映射过程。

toastUnlimited 添加了对体感输入的支持 至 yuzu-cmd,我们的可执行文件的终端版本。 终端用户现在也可以享受一些舞力全开。

改进模拟以不使用模拟

xerpi 实现了 32 位版本 的 OutputDebugString, CreateCodeMemory, 和 ControlCodeMemory的管理程序调入。 谢谢!

xerpi 的帮助有一个更大的目标,而不仅仅是帮助一些鲜为人知的 Switch 模拟器。 他们正在开发 vita2hos ,一个可以运行的翻译层 PlayStation VitaNintendo Switch 原生应用和游戏! 前面的路很长,因为大多数 Switch 调试工具都是 64 位的,而 Vita 是一个 32 位的控制台,所以为了让项目继续进行多次重写和更改。

yuzu 缺少一些功能来提供完整的 32 位执行模式支持,因此打开了 PR 以帮助改进该领域,因为 xerpi 正在使用 Switch 模拟器来协助和简化开发。 我们迫不及待地想看看这个项目如何发展!

Vulkan 是未来

随着工作 Project Y.F.C以及其它计划的更改,我们正在慢慢地致力于默认启用 Vulkan,并保持 OpenGL 的长期支持。 本节不会列出 yuzu 中的更改,但用户可以调整设置以提高他们在 yuzu 和其它模拟器中的 Vulkan 性能。

Vulkan 性能的主要问题之一是当前 GPU 将采取积极的频率管理来节省电力。 由于即使是现代低端 GPU,Nintendo Switch 游戏产生的实际 3D 负载也会非常低,因此时钟速度往往会保持在其频率的省电方面。

一个显著提高性能的简单方法是强制 GPU 以更高的时钟频率来运行模拟器。 GPU 可以达到的最高值在这里通常是无关紧要的,因为大多数 GPU 将比 Switch 的 Tegra X1 更快,但更高的时钟速度将使帧速率保持在较高水平并将卡顿降至最低。

NVIDIA 用户在 NVIDIA 控制面板, Prefer maximum performance. 您可以在 3D Settings > Manage 3D settings > Program Settings tab点击 Add并从可用选项中选择 yuzu,然后向下滚动到 电源管理 并将其设置为 最高性能优先 .

Switch模拟器YUZU进度报告2022-2月

nvidia控制面板

在 AMD 方面,这需要一些手动工作,并且可能仅与基于 RDNA 的 GPU 兼容。 只有相对较新的 Radeon 驱动程序添加了调整所包含的最小和最大 GPU 频率的选项 Radeon WattMan.。

需要做的是,以与 NVIDIA 类似的方式,将 yuzu 作为配置文件添加到 Gaming选项卡,点击 Tune Game Performance并将调谐控制设置为 Custom. 启用 GPU 调整,您将能够调整 Min. Frequency (%).

Switch模拟器YUZU进度报告2022-2月

虽然这可以在 Radeon Software 上全局设置,但我们建议使用每个应用程序的配置文件

Switch模拟器YUZU进度报告2022-2月

除了 GPU,提高内存时钟速度总是有助于仿真,尤其是在高分辨率下 AMD

以一个RX 6500 XT 为例,我们可以看到 宝可梦传说:阿尔宙斯 将其帧速率提高到 73% 时 ,轻松超过 RX 570,只需将最低时钟速度从 500MHz 提高到 2875MHz(如下图所示,提高了 475%)。

Switch模拟器YUZU进度报告2022-2月

太省电也并不是什么好事

这里的性能提升可能是巨大的,但在某个点之后,性能将不再会有太大的提升,所以这里可以自己一点点拉高来调节测试。

未来项目

Project Y.F.C.随着发展,更多以前被破坏的游戏开始变得可玩,它继续成熟。 Blinkhawk 告诉我们,他目前正在将重点转移到性能上。 我们迫不及待地想告诉你更多!

本文链接:https://www.dzdvip.com/34031.html 版权声明:本文内容均来源于互联网。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 395045033@qq.com,一经查实,本站将立刻删除。
(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年6月18日 01:33
下一篇 2022年6月18日 11:23

相关推荐

  • 怎么让视频加快速度播放?

    我们在编辑视频时常常需要将视频的播放速度加快,利用快剪辑就可以达到这样的效果,那么该如何操作呢?

    2021年5月4日
    11
  • 计划生育是从哪一年开始的(中国计划生育的历史演进)

    我国于1971年就开始推行计划生育政策,但把计划生育确定为基本国策并写入宪法是1982年。1980年9月,中央发表《关于控制我国人口增长问题致全体党员、团员的公开信》,提倡一对夫妇只生育一个孩子。 中国计划生育的历史演进 1954年12月27 日,刘少奇发表《提倡节育》 1956年,毛泽东主席主持制订的《全国农业发展纲要(草案)》中规定:“除了少数民族地区以外,在一切人口稠密的地方, 宣传和推广节制生育。” 中国地方政府开始设立计划生育管理机构,对人口生育进行控制。此后,中国部分地区的部分已婚已育的家庭响应国家号召,自愿结扎。 1956年3月30日,《卫生部关于人工流产及绝育手术的通知》 1956年8月6日,《卫生部关于避孕工作的指示》 1957年3月,毛泽东主席在最高国务会议第11次会议上强调指出:“人类要控制自己,做到有计划地增长”。 1957年3月5日,《人民日报》社论《应该适当地节制生育》 1957年11月,中国部分地区成立计划生育委员会。 1957年马寅初(时年75周岁,回族)因发表《新人口论》等文章而遭到批判。 1958年,上海演出了一部滑稽剧——《玉皇大帝和人间开战》。主要内容如下:玉皇大帝发洪水,大跃进中人们修水库把水蓄了起来,大旱的时候大家又把蓄的水放了出来灌溉。在采用种种办法无效后,玉皇大帝说要让人们大量生育,但是人间搞计划生育,玉皇大帝又失败了。 1958年底或1959年初,上海办了个大跃进成绩展览会,1958年试生产出来的计划生育用品避孕套作为大跃进的成就公开展览。 1960年1月4日马寅初(时年78岁)“被迫辞去”北大校长职务,居家赋闲。(1982年,马寅初以100周岁的高龄去世) 1962年12月18日,《中共中央、国务院关于认真提倡计划生育的指示》 1963年开始,上海先后在各区县成立计划生育工作委员会。上海郊区农民家庭总和生育率由解放前的7.5下降到4.0。 1964年,中央计划生育办公室成立,除文革暂停一段后,1971年又恢复。 1966年1月28日 中共中央指出,实行计划生育是一件极为重要的大事。 1966 年下半年由于受“文化大革命”冲击,地方上的计划生育机构瘫痪。 1967年7月开始,中国部分地区的地方计划生育领导小组开始恢复。 1971年 7月8日 ,中央转发关于做好计划生育的工作报告。 中国全面开始符合人性的计划生育,允许…

    2022年7月19日
    86
  • 7月份这四款手机最值得买,几乎“零差评”,用到2027年不成问题

    7月份这四款手机最值得买,几乎“零差评”,用到2027年不成问题 第一款:红米K50 Pro 2489起 搭载天玑9000处理器,另外还有3950m㎡的VC液冷散热面积,保证性能的同时功耗更低,体验更好;5000mAh的电池,还有120W快充技术下放,续航和快充都能得到保证;采用2K柔性直屏,支持DC调光,屏幕素质非常优秀,还有一亿像素主摄+光学防抖,同价位可以说性价比相当高了。 第二款:vivoX80 3669起 X80系列我更看好标准版,跟大家推荐的也是标准版,相比Pro虽然没有长焦镜头,但是整体更加均衡;同样天玑9000处理器,没有最好,只有更好。5000W像素IMX866主摄,支持光学防抖,还有蔡司T*光学镜头、V1+芯片加持,影像实力同价位无敌,三星E5材质AMOLED屏,屏幕素质极高,可以说是目前最值得买的旗舰手机之一 第三款:iPhone13 4998起 相比上代,iPhone 13四款机型在性能、相机、屏幕、续航等方面都有较大提升。旗舰处理器A15保证足够强大的性能,支持5G网络、且5G频段足够齐全;目前iPhone13价格可以说是近几年来最低的一款,而二手市场更是划算,95新256GB也才4000多,可以说真的香了 第四款:荣耀Magic4 Pro 5499起 缪斯之眼+中轴对称设计,保证颜值的同时辨识度极高,骁龙8 Gen1+LPDDR5+UFS3.1的铁三角组合,性能够强;屏幕素质优秀,类钻排列,10bit色深,LTPO 120Hz刷新率,1920Hz高频PWM调光护眼效果不错;另外拍照也是目前最强机型之一,这手机真的完美的继承了华为手机的优点,用个五六年真没问题。

    2022年7月5日
    19
  • SEO排名:如何规模化批量创建内容?

    一个网站的成功与否与建站前的网站规划有着极为重要的关系,在建立网站前应明确建设网站的目的,确定网站的功能,确定网站规模和投入费用,进行必要的市场分析等,只有详细地规划才能避免在网站建设中出现的很多问题,使网站建设能顺利进行,网站建设方案书应该尽可能函盖网站规划中的各个方面,网站现划书的写作要科学。

    2021年5月9日
    13
  • 电商运营该如何做?新手有什么注意事项?

    不要再问我电商运营有前途吗? 因为这个事情是首先自己要有动手能力 分析能力,还得有坚持的毅力 其实做任何事都应该如此 缺一不可。在时间上而且还得看个人。 但据本人经验,半年资历算入门,一年算上手,两年算熟手,至于什么时候成大神因人而异 从运营要学哪些知识? 1.比重问题 平台排名因素和平台基本规则 ,一般比较成熟的店铺不会让你去试,你也不会接触到 这涉及到试错机会和试错能力,我身边有一个客服直接被炒就是因为标题写法有问题导致人家降权。 2.平台引流渠道,清楚的知道 更好的效果 是哪种引流方式带来的,有些初学者吃的亏都是在只知道投直通车。 3.Landing Page以及设计以及产品主图,要多搜索多做对比。 4最重要的是市场分析还有各种数据的整理,这也包含了必须知道并了解市面上各种官方和第三方工具的作用和使用方式,这个没法教,因为不同店铺的运营方式都不同 接下来就是是最难的 营销模式,简单地说 你得知道主要关键词排名,转化率等 这些数据是该检查的 从而判定出店铺的水平,找出能用于该店铺提升优化的策略(主图问题,还是详情问题),你看到一个店铺应该做的第一反应,然后准确给出并判断出在哪里投入,怎么投入 要看之前写的四方面来看一下怎么进行 。 从几个维度上来给你们分析店铺的精细化运营 一、怎么运营商品?从产品上架到退出市场,例如连衣裙,有自己的市场需求,你需要考虑的是哪个阶段出货多 需求量大,哪个时候需求量少,这样就大概清楚需要多少货 来备货,如果淡季要来就得准备清仓,销售、充足货源和找到供应链,来保证确保你有最大利润在这个商品周期中。其中也包含非季节性产品 如手机,因为新品在不断地升级 也会引发用户的需求量,因此,他们都是有一定的生命周期 所以我们最重要的基本功——商品的运营以及管理 二、怎么运营店铺?一个店铺会出现多个商品或者多个商品类目,正常情况下 都会现在多个类目中 赚钱,那么引流是哪些商品,创造利润的又是哪些商品,还可以找一些关联商品 一起售出 而哪些商品可以关联哪些商品,所以你需要去考虑和梳理各个商品、各个类目之间的关系,单品流量怎么可以流入店铺,商品在店内如何进行流量分配以及转化,等等,这些问题运营前是需要首先考虑的。 三、把握行业风口以及敏锐的眼光在哪?借助当季节奏推动店铺发展,实现弯道超车,把握风口。你做服装的话,他是有一个恒定的规律 每年春夏秋冬四季节的…

    2021年7月27日
    14
  • Windows 11支持安卓应用

    Windows 11来了,小雷还记得某位微软高管以前的一段话:“Windows 10将会是最后一个Windows 系统。”,说实话,当时感觉就像343宣布《光环:无限》是光环系列的最后一作一样,怎么听都不靠谱。 现在看来,小雷的直觉是没错的,Windows 11果真来了,而且还带来了一个大家期待已久的功能——原生支持Android软件。欢呼吧!Android手机党们,以后再也不用去安装什么模拟器了!(开玩笑的) 不过,与一些网友认为的“官方模拟器”不同,微软这次是真的让Android程序在Windows上原生运行了,在流畅度和稳定性上将超过大多数的模拟器。当然,现在Windows 11的Android协同具体能够做到什么地步还有待商榷,但是从实用性方面来说,可能是本次更新中最值得期待的功能之一。 酝酿7年的Android子系统 很多人可能觉得,微软捣鼓Windows系统和Android系统的协同功能,是从Your Phone开始的,但实际上早在2014年,微软就已经秘密开始推动Project Astoria,一个在Windows 10 Mobile上运行的Android子系统,随后更是在2015年的Build大会公开了这个计划。 不过,微软推动这个计划的初衷并非让Windows 10能够支持Android系统,而是希望能够拉一把刚发布不久的Windows 10 Mobile生态,希望通过引入对Android软件的支持,让整个系统生态能够被用户所接受。 至于后面的故事,我想熟悉Windows系统的朋友应该都知道,Project Astoria因为某些原因,仅开发了两年,发布不到一年后就被砍掉,而Windows 10 Mobile也在2019年发布最后一个版本后,被微软彻底放弃。 Project Astoria并非因为效果不好而被砍掉,但从当时遗留的测试结果来看,该系统的运行效率已经是超过了大多数的模拟器,甚至在部分应用上超过了Native Android。 所以,虽然最后因为某些原因被迫停止计划,但是微软内部其实一直在对其进行持续开发,从WSL到WSL2,再到后来基于WSL2开发的Your Phone,这个功能国内的用户可能没多少人用过,但是在国外却是备受好评。因此,这个在Windows 11中作为附件存在的功能正式转正,成为Windows 11的基础功能之一。 至于…

    2021年6月27日
    10