翻车🐭
1KLUYUI
关注数: 17
粉丝数: 373
发帖数: 4,142
关注贴吧数: 32
你们有没有双子村+快要生孩子存档
Yuzu进展报告2022年1月【edge浏览器机翻】 我们度过了一个月,尤兹人。这一次,我们为您提供了大量的内核更改,输入修复和新增功能,还有更多NVIDIA驱动程序修复,用户界面更改等等! 适用于 NVIDIA 用户的 PSA:第 3 部分 这还没有结束。 如您所知,常规的NVIDIA台式机和笔记本电脑GPU不支持解码ASTC纹理,因此柚子利用GPU的计算功能来并行化该过程。但是,最近发布的 511.XX 驱动程序引入了一个问题,该问题影响了我们基于计算着色器的加速 ASTC 纹理解码。并置 脆皮(超级马里奥奥德赛) 经过一番调查,epicboy发现该错误的原因是新驱动程序引入的过度优化(对一个场景的优化会导致另一个场景的问题)。行为上的一个小小的改变就能解决这个问题。您可以在拉取请求中找到更多技术信息。 用户玩或应该坚持使用47X。XX系列驱动程序,因为任何版本都比该版本更新,因此会出现几个渲染问题。别担心,我们正在调查原因!Hyrule Warriors: Age of CalamityLuigi’s Mansion 3抽象艺术生成器(Hyrule Warriors: Age of Calamity) 另一方面,版本511.65包括对最近发布的Vulkan 1.3的支持,并且在使用所述API时大大提高了性能。有些游戏的性能提高了24%! 新传奇 最后,经过二十多年的发展,神奇宝贝系列偏离了其疲惫的公式,并在最近发布的游戏中实现了对游戏玩法的重大更改 。Pokémon Legends: Arceus 所有这些都是以牺牲图形保真度为代价的。但是,嘿,还有看起来更差的游戏...在GameCube上。 除了令人失望的图形之外,这款游戏的发布还暴露了柚子的几个问题,甚至帮助我们解决了影响更多游戏的长期问题。 bunnei 修复了用于在内核之间迁移线程的代码中发现的死锁,这导致了 中一些值得注意的软锁。Pokémon Legends: Arceus 问题可以总结如下:一个线程(线程)将等待另一个线程(线程)释放锁,相反,线程将等待线程释放另一个锁,从而导致死锁。ABBA几十年来最好的游戏玩法变化(神奇宝贝传奇:阿修斯) 从内核问题出发,epicboy实施了各种GPU更改。 他发现,减少开始时的缓冲区分配量,而不仅仅是在结束时,可以防止游戏在某些位置崩溃。 某些 Vulkan 驱动程序,尤其是英特尔 Windows 驱动程序,无法处理 64 位原子操作(可以独立于任何其他进程运行的操作)。epicboy 在 yuzu 中添加了对未签名的 2x32 位原子操作的支持,因为这是此类驱动程序使用的回退选项。通过此更改,游戏将使用运行 Vulkan 的英特尔 GPU 启动。 AMD在其官方Windows和Linux驱动程序中都存在长期存在的问题,导致无数游戏的渲染问题。虽然这个问题最近在Linux AMDVLK驱动程序中得到了解决,但AMD Windows驱动程序仍然需要被告知接下来将使用哪个驱动程序。Transform FeedbackExecution Mode 在开始使用Transform Feedback之前明确声明使用Xfb可以解决AMD Windows Vulkan驱动程序上与之相关的所有问题,不仅使,而且像,,,和许多其他游戏一样。Execution ModePokémon Legends: ArceusXenoblade Chronicles 2Xenoblade Chronicles Definitive EditionHellblade: Senua's SacrificeDonkey Kong Country: Tropical FreezePOKKÉN TOURNAMENT DX并置 神奇宝贝传说:阿尔塞乌斯并置 异形之刃编年史限定版并置 驴港国度:热带冰冻 Pokémon Legends: Arceus受顶点爆炸的影响,表现出看起来像随机拉伸的纹理。坏消息是,这是 一个问题,修复它需要相当长的时间。Buffer Cache 好消息是,Blinkhawk在epicboy的帮助下,设法实施了一个临时的解决方法,以避免在永久解决方案开始形成时出现此问题。在写入之前刷新缓冲区可以使我们以最低的性能成本从多边形地狱中拯救出来。并置 想象一下它在太空中的样子(神奇宝贝传奇:阿尔塞乌斯) 在我们开始计划另一个缓冲区缓存重写的那一天标记这一点。 首先,Arceus的VRAM使用率比正常情况高得多,导致2GB GPU用户在过场动画中崩溃。Blinkhawk的解决方案是扩展缓冲区缓存增加的特定方向,而不是之前将大小加倍的方法。这允许2GB用户定期玩游戏,4GB用户能够扩展到2倍而不必担心崩溃。 以下是一些一般性建议: 从以前的Switch神奇宝贝游戏中保存将在教程后解锁特殊的服装选项。 我们在(目前)最新的22.2.1 AMD Windows驱动程序上测量了微小的性能改进,如前所述,511.65 NVIDIA Windows驱动程序的性能提高了24%。乍得武尔坎1.3伸出援手。 关于 GPU 精度,虽然可以产生最高的性能,但允许适当的粒子渲染,因此,如果您想要额外的精度并具有备用性能,请坚持使用 。NormalHighHigh 效果、粒子和某些攻击似乎在分辨率超过原生 1x 时呈现不正确。虽然我们正在调查其原因,但它似乎也发生在Switch本身上,所以它可能只是这些着色器的性质(感觉让人想起3DS神奇宝贝游戏中的重影。谢谢冰霜!(神奇宝贝传说:阿尔塞乌斯) 柚子的默认设置是使用GLASM(通常称为程序集着色器)在OpenGL中运行游戏。这些设置会在角色上引起奇怪的阴影痤疮,解决方案是使用GLSL而不是GLASM,或者我们建议完全切换到Vulkan。并置 破碎的阴影?零!(神奇宝贝传说:阿尔塞乌斯) 运行 Windows 的 400 系列之前使用 Radeon GPU 的用户将由于驱动程序过时且不受支持而崩溃。甚至连修改过的驱动程序似乎都没有帮助,所以唯一的解决方案是使用仍然支持并且速度更快的Mesa驱动程序的Linux。 最后,过度使用 mod 或较高的值可能会导致某些 GPU 配置出现顶点爆炸。我们仍在调查其原因。Anisotropic Filtering
Yuzu进展报告2022年1月【edge浏览器机翻】 我们度过了一个月,尤兹人。这一次,我们为您提供了大量的内核更改,输入修复和新增功能,还有更多NVIDIA驱动程序修复,用户界面更改等等! 适用于 NVIDIA 用户的 PSA:第 3 部分 这还没有结束。 如您所知,常规的NVIDIA台式机和笔记本电脑GPU不支持解码ASTC纹理,因此柚子利用GPU的计算功能来并行化该过程。但是,最近发布的 511.XX 驱动程序引入了一个问题,该问题影响了我们基于计算着色器的加速 ASTC 纹理解码。并置 脆皮(超级马里奥奥德赛) 经过一番调查,epicboy发现该错误的原因是新驱动程序引入的过度优化(对一个场景的优化会导致另一个场景的问题)。行为上的一个小小的改变就能解决这个问题。您可以在拉取请求中找到更多技术信息。 用户玩或应该坚持使用47X。XX系列驱动程序,因为任何版本都比该版本更新,因此会出现几个渲染问题。别担心,我们正在调查原因!Hyrule Warriors: Age of CalamityLuigi’s Mansion 3抽象艺术生成器(Hyrule Warriors: Age of Calamity) 另一方面,版本511.65包括对最近发布的Vulkan 1.3的支持,并且在使用所述API时大大提高了性能。有些游戏的性能提高了24%! 新传奇 最后,经过二十多年的发展,神奇宝贝系列偏离了其疲惫的公式,并在最近发布的游戏中实现了对游戏玩法的重大更改 。Pokémon Legends: Arceus 所有这些都是以牺牲图形保真度为代价的。但是,嘿,还有看起来更差的游戏...在GameCube上。 除了令人失望的图形之外,这款游戏的发布还暴露了柚子的几个问题,甚至帮助我们解决了影响更多游戏的长期问题。 bunnei 修复了用于在内核之间迁移线程的代码中发现的死锁,这导致了 中一些值得注意的软锁。Pokémon Legends: Arceus 问题可以总结如下:一个线程(线程)将等待另一个线程(线程)释放锁,相反,线程将等待线程释放另一个锁,从而导致死锁。ABBA几十年来最好的游戏玩法变化(神奇宝贝传奇:阿修斯) 从内核问题出发,epicboy实施了各种GPU更改。 他发现,减少开始时的缓冲区分配量,而不仅仅是在结束时,可以防止游戏在某些位置崩溃。 某些 Vulkan 驱动程序,尤其是英特尔 Windows 驱动程序,无法处理 64 位原子操作(可以独立于任何其他进程运行的操作)。epicboy 在 yuzu 中添加了对未签名的 2x32 位原子操作的支持,因为这是此类驱动程序使用的回退选项。通过此更改,游戏将使用运行 Vulkan 的英特尔 GPU 启动。 AMD在其官方Windows和Linux驱动程序中都存在长期存在的问题,导致无数游戏的渲染问题。虽然这个问题最近在Linux AMDVLK驱动程序中得到了解决,但AMD Windows驱动程序仍然需要被告知接下来将使用哪个驱动程序。Transform FeedbackExecution Mode 在开始使用Transform Feedback之前明确声明使用Xfb可以解决AMD Windows Vulkan驱动程序上与之相关的所有问题,不仅使,而且像,,,和许多其他游戏一样。Execution ModePokémon Legends: ArceusXenoblade Chronicles 2Xenoblade Chronicles Definitive EditionHellblade: Senua's SacrificeDonkey Kong Country: Tropical FreezePOKKÉN TOURNAMENT DX并置 神奇宝贝传说:阿尔塞乌斯并置 异形之刃编年史限定版并置 驴港国度:热带冰冻 Pokémon Legends: Arceus受顶点爆炸的影响,表现出看起来像随机拉伸的纹理。坏消息是,这是 一个问题,修复它需要相当长的时间。Buffer Cache 好消息是,Blinkhawk在epicboy的帮助下,设法实施了一个临时的解决方法,以避免在永久解决方案开始形成时出现此问题。在写入之前刷新缓冲区可以使我们以最低的性能成本从多边形地狱中拯救出来。并置 想象一下它在太空中的样子(神奇宝贝传奇:阿尔塞乌斯) 在我们开始计划另一个缓冲区缓存重写的那一天标记这一点。 首先,Arceus的VRAM使用率比正常情况高得多,导致2GB GPU用户在过场动画中崩溃。Blinkhawk的解决方案是扩展缓冲区缓存增加的特定方向,而不是之前将大小加倍的方法。这允许2GB用户定期玩游戏,4GB用户能够扩展到2倍而不必担心崩溃。 以下是一些一般性建议: 从以前的Switch神奇宝贝游戏中保存将在教程后解锁特殊的服装选项。 我们在(目前)最新的22.2.1 AMD Windows驱动程序上测量了微小的性能改进,如前所述,511.65 NVIDIA Windows驱动程序的性能提高了24%。乍得武尔坎1.3伸出援手。 关于 GPU 精度,虽然可以产生最高的性能,但允许适当的粒子渲染,因此,如果您想要额外的精度并具有备用性能,请坚持使用 。NormalHighHigh 效果、粒子和某些攻击似乎在分辨率超过原生 1x 时呈现不正确。虽然我们正在调查其原因,但它似乎也发生在Switch本身上,所以它可能只是这些着色器的性质(感觉让人想起3DS神奇宝贝游戏中的重影。谢谢冰霜!(神奇宝贝传说:阿尔塞乌斯) 柚子的默认设置是使用GLASM(通常称为程序集着色器)在OpenGL中运行游戏。这些设置会在角色上引起奇怪的阴影痤疮,解决方案是使用GLSL而不是GLASM,或者我们建议完全切换到Vulkan。并置 破碎的阴影?零!(神奇宝贝传说:阿尔塞乌斯) 运行 Windows 的 400 系列之前使用 Radeon GPU 的用户将由于驱动程序过时且不受支持而崩溃。甚至连修改过的驱动程序似乎都没有帮助,所以唯一的解决方案是使用仍然支持并且速度更快的Mesa驱动程序的Linux。 最后,过度使用 mod 或较高的值可能会导致某些 GPU 配置出现顶点爆炸。我们仍在调查其原因。Anisotropic Filtering
原小【switch模拟器吧吧主】吧主恭喜原大吧主重回大吧主位置 switch吧让你们发游戏
我批准让你们在吧内发【旧的】游戏 本人不发游戏资源
yuzu模拟器吧吧主竞选:NO.0001号候选人
申请了
隔壁的贴吧
Yuzu进展报告2021年12月【edge浏览器机翻】 我每个月发一个yuzu进展帖【隔壁ns模拟器我也是这样】
【刷帖子】你们不介意的话那就吧这里当贴吧 点击链接加入QQ频道【模拟器研究协会】:http://tieba.baidu.com/mo/q/checkurl?url=https%3A%2F%2Fqun.qq.com%2Fqqweb%2Fqunpro%2Fshare%3F_wv%3D3%26_wwv%3D128%26inviteCode%3D1mNXip%26from%3D246610%26biz%3Dka&urlrefer=7d11888315c50435cf1582ce594a3f3c
我去申请吧主大家吧票投给我
yuzu模拟器资源+配置要求【搬运】 yuzu配置要求 最低配置 CPU Intel Core i5-4430 AMD Ryzen 3 1200 显卡 Intel HD Graphics 520 NVIDIA GeForce GT 1030 2GB 内存 8GB 官方推荐 CPU Intel Core i5-10400 AMD Ryzen 5 3600 显卡 Intel UHD Graphics 630 NVIDIA GeForce GTX 1650 4GB 内存 16GB
我是switch模拟器吧【打酱油】吧主你们不介意的话我来当这个吧主 不介意我刷帖子去了
Yuzu进展报告2021年12月【edge浏览器机翻】 尤兹人!欢迎来到2022年发布的2021年最新进展报告,因为我们仍然没有弄清楚如何回到过去。12 月,我们改进了内核仿真,修复了驱动程序问题,改进了输入、渲染、整体稳定性等等! 我们一直在尝试使用时间机器,但是我们用完了香蕉来微波加热,垃圾来为Fusion先生加油。好的,让我们开始吧! 适用于 NVIDIA 用户的 PSA:第 2 部分 正如两个月前提到的,由于NVIDIA在49X系列驱动程序中放弃对开普勒卡的支持而引入的变化,NVIDIA用户在使用GLSL时遇到了问题。 我们很高兴地宣布,我们有一套由epicboy实施的解决方法,可以解决所有已知问题。这些已经可用于 主线和抢先体验。 NVIDIA驱动程序中问题的根源似乎在于整数和浮点值的否定,以及输入值的按位转换。 在以前的驱动程序上,可以将值赋给名为 的变量,然后将该值作为值分配给名为 的新变量。 将等于 。新司机完全忽略了这种否定,导致随机的自发火灾,安全漏洞,太多的狗引起嚎叫,以及完全混乱。x-xyy-1 * x 解决方法是简单地从 0 中减去该值。在我们的示例中,将获得 的值。y0 - x 按位转换问题更为复杂,但我们过去讨论过这个问题。早在八月份,我们就提到了英特尔在Vulkan中的问题如何影响马里奥的传奇胡子。 GetAttribute返回浮点值,因此在使用整数值时需要转换。 影响英特尔 GPU 的相同问题现在发生在"更环保"的一面,但却是颠倒过来的。使用 时,旧驱动程序接受浮点数到无符号整数转换没有问题,您可以多次执行此转换而不会丢失正确的值。另一方面,当前的驱动程序有时可以返回零。instance_id 现在,将值直接解释为无符号整数可以解决GLSL和GLASM中的此问题。由于这算作优化,我们现在将其应用于所有 API。并置 回到早期(火焰纹章:三座房子) 如果您发现任何问题,请报告,因为由于未知的驱动程序错误,可能会有更多损坏的游戏。同样,如果需要,Vulkan也应该有更多的修复程序。一个这样的问题自行解决,很可能NVIDIA将其修复在最新的驱动程序上。 其他图形修复 每当一个游戏同时播放多个视频时,其中一些视频就会出现故障和闪烁。发生这种情况是因为柚子被限制为一次解码单个视频流。同时运行多个视频将导致解码器接收从不同视频源发送的帧,从而混淆插值算法并导致上述问题。为了防止此问题发生,vonchenplus实施了一个临时解决方案,为每个视频流提供自己的视频解码器,仅将正确的帧数据发送到正确的解码器。 它仍然闪烁,但这是Chozo的错(Metroid Dread) Morph将缺失的格式R16G16_UINT和ASTC_2D_8X5_UNORM添加到Vulkan API中,分别修复了缺失的图形并使其可玩性。(请注意,进入游戏,但目前图形已损坏)。Immortals Fenyx RisingLEGO® CITY UNDERCOVERImmortals Fenyx Rising我不是砖块(乐高®城市卧底) Blinkhawk修复了纹理缓存中的一个错误,该错误被AMD驱动程序方便地忽略了,但在使用Vulkan API时会导致Nvidia GPU崩溃。当使用不同格式类型破坏纹理时,会发生此崩溃,这表明纹理缓存中存在一个问题,该问题将在未来的 PR 中得到解决。 Blinkhawk还更新了Vulkan标头以修复扩展并实现了逻辑操作。Vulkan 使用扩展和这些逻辑操作来描述和处理数据,以便组合稍后将发送到屏幕的帧。此 PR 修复了 中的沙子和阴影图形问题,以及 中看到的阴影问题。The Legend of Zelda: Skyward SwordXenoblade Chronicles 2并置 当您反转 HDR 显示器的极性时(异形之刃编年史 2) epicboy 研究了影响大量使用稀疏 GPU 内存的游戏的问题,并进行了必要的更改以缓解此问题。 稀疏内存是一种非连续存储数据的技术,这是一种奇特的方式,可以说数据被分解成小块,只有相关的位被加载到内存中。用于将此数据映射到内存的代码中存在一个错误,因为计算中未包含获取正确地址所需的偏移量。为了以防万一,他还添加了一个额外的保护措施,以防止修改内存地址 0,因为它被用作占位符来指示尚未加载的地址。 这些更改旨在解决与GPU内存管理相关的(没有双关语)问题,并希望减轻与之相关的一些稳定性复杂性。值得注意的是,使用引擎开发的标题崩溃(咳嗽,真正的女神轮回V或类似的东西,咳嗽)。开发人员仍在调查围绕此游戏的任何其他奇怪之处,因此请继续关注更多更新。UE4这些更改减轻了与内存相关的问题,但不能保证完全"修复"它们(SHIN MEGAMI TENSEI V) 用户报告说,在引入分辨率缩放器后,用户在Vulkan上的AMD和Intel GPU上玩游戏时崩溃。史诗男孩迅速跳进去干预并拯救了蓝色刺猬。Sonic Colors Ultimate 在AMD方面,Sonic存在ImageView问题,当调整纹理缓存的容器大小时,会导致无效的指针取消引用。即使在原始分辨率下也可能发生这种情况。epicboy 发现保留容器的引用可以解决问题。slot_images 现在轮到英特尔了。英特尔 Vulkan Windows 驱动程序在处理图像点排时严格遵循规范。Khronos定义了不允许使用MSAA点位,虽然大多数驱动程序都允许这样做,但英特尔是一个好孩子,并且在尝试重新缩放MSAA纹理时崩溃了。撇开在像Switch这样的移动设备上使用传统的抗锯齿是一种危害人类罪(你不会在传统的抗锯齿上浪费极其有限的带宽),这个问题可以通过在使用3D管道重新缩放时直接渲染到缩放后的图像中来解决。性能成本更高(像大多数英特尔一样,集成GPU也讨厌传统的抗锯齿),但要避免崩溃或失去扩展,这是一个代价。丰富多彩(声波色彩:终极) 在处理渲染时,纹理缓存必须处理几种奇怪的情况。这个过程的一个方面是,当不同的纹理争夺相同的视频内存空间时。当在 GPU 内存中相对较大的距离上发生重叠时,在纹理缓存的逻辑中发现了一个错误。可能会发生溢出,导致错误地尝试渲染大量纹理,导致VRAM立即填满,并导致柚子崩溃。此问题在 中很常见。多亏了epicboy,用户再也不用遭受这种突然的崩溃了 。overlapsBRAVELY DEFAULT II勇敢地违约 II 天际线框架:第 2 部分 itsmeft24提交了一个补丁来实现ProcessMemory和CodeMemory内核SVC(Supervisor Calls),这是支持Skyline框架进行修改所需的一些更改。 正在进行的工作的一部分包括在柚子中为所有级别的.游戏可以使用从0到8的等级,其中9是免费的。Skyline用于操作,因此jam1garner包括对柚子,8和9中其余两个缺失层的支持。subsdksubsdksubsdk9 在准备就绪之前,仍有几件事需要实施,但事情肯定越来越接近完成。 您可以在此处查看当前进度。 输入更改 german77为我们修复了几个问题,并增加了一些重要的新内容。 让我们为手持PC用户,沙发玩家以及任何不想在玩游戏时一直伸手到键盘的人提供出色的新功能来开始:支持游戏手柄热键。您可以自定义它们 这样,用户可以自定义按钮宏。例如:访问或退出全屏,解锁帧速率,暂停/继续仿真,捕获屏幕截图(默认情况下方便地映射到任天堂控制器的捕获按钮),关闭柚子等等! 抱歉质量差 当某些游戏开始时,会进行一些内部测试,以确保事情在它们应该到达的位置,并以可接受的延迟进行响应。其中一项测试涉及隆隆声。游戏通过低频隆隆声测试来刺激控制器,但有时,某些游戏永远不会停止,控制器会继续振动,耗尽电池并让您怀疑开发人员的初衷是什么。german77在测试后强制隆隆声振幅为零,阻止这些受影响游戏的不必要振动。 VR游戏可以使用Switch本身(而不是控制器)上的陀螺仪传感器来馈送运动数据。以前,柚子只会向游戏提供部分数据,导致游戏摄像机的移动不稳定。german77添加了所有缺失的数据,包括陀螺仪传感器,以解决此问题。 german77还增加了对该系列服务的支持,从日志中删除了一些垃圾邮件。此更改还增加了对连接单个 Joy-Con 的双 Joy-Con 对的支持,这是某些游戏似乎要执行的操作。SetNpadJoyAssignmentMode 在发布后,输入重写,模拟触发器被意外破坏。一个简单的错误溜走了,导致它们只有在操纵杆移动时才能工作。两行代码被更改,问题不再出现。Project Kraken german77也一直在努力使游戏变得可玩。在努力实现对游戏所需的压力环配件的支持的同时,german77最终也进行了一些全球性的改进。Ring Fit Adventure 最终使所有游戏受益的一个更改是控制器类型验证,它确保模拟器只能接受游戏支持的控制器类型,同时丢弃和断开其他任何内容。 控制器类型验证代码中的错误导致在尝试启动双人游戏模式时不断向控制器小程序发送垃圾邮件。好吧,没有了!再次感谢德语77。Captain Toad: Treasure Tracker合作寻宝,你还能要求什么?(蟾蜍船长:宝藏追踪器) 平面贴修复 继我们上个月提到的之后,柳树宇继续与弗拉特帕克的怪异作斗争。 NVDEC要求现在更加灵活,CUDA库不再是强制性的,实际上不会影响CUDA解码支持。此外,FFmpeg要求已提高到 4.3 及更高版本。这应该在以后有驱动程序支持时启用本机 Vulkan 视频支持。 这样,在运行柚子的Flatpak构建时,可以解决解码崩溃问题。 liushuyu还解决了影响Flatpak上防止睡眠功能的问题。实现XDP的抑制API解决了这个问题,防止显示器在播放时最糟糕的时刻关闭。 此外,Flatpak 生成是在启用断言的情况下编译的,这意味着当断言失败或遇到向量内部的越界访问时,模拟器将停止。应用程序和常规主线/抢先体验版本在附带时禁用了断言。 虽然这通常不是问题,但Flatpak用户报告说,在尝试设置统一号码时崩溃了。事实证明,屏幕键盘(OSK)在呼叫数字键盘时正在执行越界访问。Morph将 OSK 指向正确的阵列,崩溃停止了。Pokémon Sword & Shield谢谢罗德里戈TR的照片!(神奇宝贝剑) 常规更改和错误修复 bunnei继续致力于内核重写,努力提高我们实现的准确性。 这一次,通过简化多个功能并完善资源跟踪,他引入了更多更改来改进线程和调度内核例程。这些变化增加了柚子与Nintendo Switch OS最近更新的奇偶校验,并且还修复了许多竞争条件和崩溃,例如和 中经历的。Pokémon Sword & ShieldDead or Alive Xtreme 3 Scarlet bunnei还实现了SetMemoryPermission,并更新了SetHeapSize的实现,SetHeapSize是内核用来管理内存资源的SVC。 以前,仅支持设置堆大小并扩展它,这对于大多数游戏来说已经足够好了。但是由于某些游戏(例如)可能会缩小此大小,因此更新了实现以允许游戏根据需要更改堆,使其更准确。SetHeapSizeDonkey Kong Tropical Freeze 这两项更改都经过了硬件测试的验证,确保它们的行为符合预期。 在进行这些更改时,bunnei在用于检索当前正在执行的进程的信息的服务中发现了一个错误。纠正此行为允许启动,尽管此标题上仍存在许多图形问题需要修复。The Witcher 3: Wild Hunt Blinkhawk还对构建过程进行了许多更改,以强制执行更多的链接时间优化,并改善生成包含调试信息的(程序数据库)文件所需的时间。如果这个mumbo-jumbo听起来令人困惑,那么它的要点是,构建柚子的过程现在应该产生更有效的代码和更小的二进制文件。但是,如果您对细节不感兴趣,请随时跳过以下几段。PDB 粗略地说,编译器优化在每个对象的"本地"级别上工作。此优化步骤将内联一些函数,合并循环,将调用和被调用的函数关闭在内存中,以便更好地缓存等。但是,如果在文件中调用了另一个文件中定义的函数,则编译器无法执行这些优化,因为它不知道此外部函数的作用或如何优化它。 另一方面,链接时间优化会考虑项目中的所有功能。因此,链接器能够执行与编译器相同的优化,但效率更高,因为它知道项目中定义的所有函数的内容。这是有代价的,因为该过程需要更多的内存并且需要更多的时间才能完成,但它保证了释放的二进制文件的性能更好。 在这项工作中,我们考虑强制执行SSE4.2支持,提高性能,但使柚子与Core 2 Duo和Phenom II或更早版本的12年CPU不兼容。虽然性能结果是积极的,但我们仍在争论是否应该降低CPU兼容性。 当您打开柚子时,模拟器必须花费一些时间来测量RDTSC频率,这是一种测量CPU时钟速度的方法。由于在之前的实现中存在一些膨胀,因此需要整整3秒才能完成操作。Morph重写了整个函数,现在只需要 0.2 秒(200 毫秒)即可获得与以前一样准确的结果,从而大大减少了模拟器本身的启动时间。 如前所述,german77继续致力于使可玩性。他截取了、 、 和 服务,并添加了对该服务的支持。Ring Fit AdventureSetNpadCaptureButtonAssignmentClearNpadCaptureButtonAssignmentListAlarmSettingsInitializenotif:a 通过他的所有更改,当前的抢先体验版本(在撰写本文时)可以启动并播放游戏的第一阶段! 戒指适合冒险 Tatsh将NSP和XCI文件关联添加到Linux中。谢谢! Tachi107 更新了 cubeb并删除了现已弃用的功能。清洁总是更好,谢谢! 海纳曼修复了当仿真暂停并且窗口失焦时会发生的崩溃 。谢谢! jbeich更改了构建配置,以便在Unix系统上启用Linux的视频解码API之一VA-API,允许想要构建针对BSD或其他基于Unix的系统的用户使用硬件加速进行视频解码。 这只是jbeich为帮助柚子在BSD系统上工作而写的几篇PR之一,感谢您的贡献! 用户界面更改 柚子的游戏列表中的收藏夹行总是被展开的,即使用户将其折叠。epicboy添加了一个持久设置,以记住用户在启动之间的偏好。 用户面临的最常见问题之一是他们的PC上缺乏Vulkan支持。不是缺少硬件支持,而是由于过时的GPU驱动程序或编码不良/过时的Vulkan注入而导致的软件支持缺失。 我们的旧错误弹出窗口没有反映这一点,因此您的作者完全缺乏编码技能,因此决定对其进行改进。这是一个复杂的问题,也是Vulkan不是柚子的默认API的主要原因。使用AMD和Intel集成GPU的旧笔记本电脑的用户倾向于使用笔记本电脑供应商或Windows Update提供的驱动程序。在这两种情况下,这些驱动程序很可能都是几年前的(柚子可以从2012年开始在AMD GPU上运行),要么根本不支持Vulkan支持,要么只支持运行柚子所需的一部分。此外,由于笔记本电脑在默认情况下将显示器直接连接到集成GPU,因此这是将看到的第一个Vulkan驱动程序,因此即使您的笔记本电脑具有运行最新驱动程序的专用NVIDIA GPU,安装最新的GPU驱动程序也至关重要。 虽然告诉AMD用户手动下载并安装更新的驱动程序是一个可行的选择,并且应该如此,但英特尔决定阻止手动安装自己的官方驱动程序,如果正在使用自定义笔记本电脑供应商驱动程序(这些修改的驱动程序通常用于欺骗电池寿命指标和/或节省冷却费用)。 在这些情况下,唯一的替代方法是手动下载驱动程序的ZIP版本>将其解压缩>启动设备管理器>右键单击"显示适配器"中的正确GPU>选择>选择>选择>选择>最后浏览到解压缩驱动程序的文件夹并选择文件。更新GPU驱动程序是多么直观和用户友好的方式...伟大的工作英特尔。Update Driver Software…Browse my computer for driver softwareLet me pick from a list of device drivers on my computerHave Disk…iigd_dch.inf 这是一个视频教程,适合那些更喜欢视觉辅助而不是我们的漫步的人。只需确保使用该文件,而不是稍微过时的视频中显示的文件即可。视频中提到的其他优化不再适用。iigd_dch.inf 通过这项简单的工作,英特尔 GPU 将获得完整的 Vulkan 支持,以预期的性能运行,并可以访问驱动程序开发人员开发的所有新功能、修复程序和性能改进。还允许驱动程序在新的官方版本上自动更新。 使用损坏的Vulkan注入器的已知软件是过时的屏幕录像机,如Bandicam,Action!,甚至OBS。我们强烈建议使用最新的OBS,GPU供应商的本机编码器(Radeon ReLive和Geforce Experience),或Windows上集成的Xbox Game Bar。Overwolf和GShade也已知会破坏Vulkan的支持,因此我们强烈建议避免使用它们。 未来项目 Project Gaia进展顺利。请注意,SSD用户在发布后会注意到改进。 Blinkhawk告诉我们,它将以较小的块发布,以便推动更渐进的更新,而不是推迟需要更多测试时间的大型发布。我们希望尽快将这些更新送到您手中!我们将继续计划添加一些待处理的 GPU 功能。下面是一个屏幕截图作为示例:Project Y.F.C.马里奥高尔夫:超级冲刺 这就是所有的人!感谢您的关注,我们希望下个月见到您!
Yuzu进展报告2021年11月【edge浏览器机翻】 你好,尤兹人!欢迎阅读11月份的进度报告。本月,我们将向您介绍完整的输入重写,使用控制器的UI导航,导致稳定性提高的内核更改等。 克拉肯计划 哦,男孩,German77为我们带来了什么享受。正如我们在上一个进度报告 中提到的,我们最新的输入重写现在可供所有用户使用。Project Kraken 但这意味着什么呢?好吧,Kraken有多个目标 - 首先是准确性。我们的目标更接近Nintendo Switch的运行方式。其次,简化和删除旧的冗余代码使维护和可伸缩性变得更加容易。最重要的是,使所有输入都基于事件,而不是基于轮询。这意味着控制器本身不会定期询问控制器它做了什么,而是在用户输入操作的那一刻报告其操作。这适用于按钮,扳机,摇杆,运动 - 整个交易。最终结果是减少了输入延迟。 但这些并不是唯一的改进,Kraken还包括许多错误修复和新功能。用户现在可以在任何模拟控制器中将任何按钮反转或转换为切换(再次按下以释放)。以前,这只能在有限种类的控制器上实现。有人说他们想用方向盘打败黑暗之魂吗? 按钮在非 SDL 输入控制器上是命名的,而不是编号的,有助于识别。SDL 输入(如本机任天堂控制器或 Xbox 控制器)将具有编号按钮,而不是命名按钮 虽然我们建议使用没有第三方驱动程序的控制器,但完整的UDP Cemuhook 支持位于 。Emulation > Configure… > Controls > Advanced > Enabled UDP controllers 以前,Cemuhook仅用于UDP运动,但现在即使是Android应用程序也可以连接到柚子。Cemuhook提供了有关如何设置UDP设备的指南请点击此处。.一定有人试图在某个地方玩手机作为Joy-Con 改进了键盘和鼠标仿真,允许本机支持 USB 鼠标和键盘输入的游戏正常运行。在《动物穿越:新视野号》等游戏中很有用,这些游戏在Switch上接受实际的键盘 此外,后端还有数百个错误修复。要列出一些: Dual Joy-Cons现在将正确重新连接,而不是在柚子重新启动后恢复到"任何"输入。 模拟触发器已正确映射(包括 Gamecube 控制器)。 配置参数在所有模拟的控制器类型上共享。 电池电量现在在可用时通知。 按下按钮将自动重新连接第一个玩家。 右侧的隆隆声是固定的。 对于那些感兴趣的人,拉取请求描述包括有关Kraken现在如何运行的所有技术信息,包括对每个子系统的内部更改。 Morph和 german77随后的拉取请求提供了进一步的修复和清理。例如,在过去,柚子会自动确定控制器小程序是否需要弹出,从而消除单人游戏中的烦恼。Kraken附带了一个错误,导致控制器保持配置模式,等待一个从未出现的小程序。german77更正了此行为,以在这种情况下启用控制器。 其他输入更改 一个备受追捧的功能是UI元素上的控制器导航,这正是german77提供的。目前支持游戏列表和配置文件选择器(如果用户创建了多个配置文件)。该功能处于其婴儿阶段,因此预计会有一些粗糙的边缘。例如,在控制器小程序中或尝试握住摇杆时。我们目前正在努力改进它。 以下是 GPD Win 3 上的一个示例: 蒸汽甲板炒作火车,我们走了! 当询问角色的名字时,游戏在中文中生成了一个错误,然后崩溃了。问题的根源在于使用屏幕键盘 (OSK) 处理文本的方式存在不良行为。无需要求用户确认已确认的文本。由于使用了错误的字符编码,生成的错误消息已损坏。Morph解决了这两个问题,游戏现在可以玩了。Famicom Detective Club: The Missing Heir小学,我亲爱的柚子(Famicom侦探俱乐部:失踪的继承人) german77 厌倦了在测试不同类型的不受支持的控制器时必须不断修改代码,因此他添加了一个切换开关以允许它们。我们不建议为正常游戏玩法启用此设置,但如果有人想尝试一下,该选项位于 中。Emulation > Configure… > General > Debug > Enable all Controller Types 图形修复 缺少的视频格式之一是 。我们直到现在才实现它,因为很少有已知的游戏使用它。目前至少有 3 个已知游戏在使用:、、和 。因此,epicboy攻击了他的键盘,并在柚子中实现了VP8支持。但是,我们正在努力解决的神奇宝贝解码存在一些已知问题。VP8VP8TY the Tasmanian Tiger HDDiablo II: ResurrectedPokémon Brilliant Diamond/Shining PearlVP8 大张旗鼓(神奇宝贝闪亮的珍珠) 纹理可以根据颜色或深度格式进行划分,但是当TCR受到攻击时,一切都发生了变化。 在 OpenGL 中,缺少一种用于复制"不兼容"纹理格式的转换方法,例如颜色<>深度格式副本。epicboy 通过使用我们过去提到的 BGR <-> RGB 转换中实现的相同方法来解决此限制。 修复了无数的故障,两个值得注意的例子是中的阴影和中的过场动画。Luigi’s Mansion 3Bayonetta 2 您现在可以专注于...游戏玩法(刺刀2) 不再有幽灵阴影(路易吉的宅邸3) 随着Unity引擎游戏和虚幻引擎4游戏的发布,我们意识到需要做多少工作来解决影响两个引擎的稳定性和渲染问题。由于我们没有那么多可用的GPU开发人员(特别是在决赛月份),我们一次只能专注于一件事,所以首先,Unity。Pokémon Brilliant Diamond/Shining PearlSHIN MEGAMI TENSEI V Blit检测在引入分辨率缩放器Project ART时遇到了一些倒退。Blinkhawk修复了它们,并添加了纹理格式以转换为Vulkan,修复了在这个新的神奇宝贝重制版中影响两个API的几个崩溃。D24S8RGBA8 Morph 后来又针对此拉取请求进行了一些修复。 另一个影响的问题是一个有趣的腐败,可能发生在战斗和一段时间后的反射中,或者某些覆盖整个屏幕的攻击中。通过替换旧的"格式演绎算法",而是使用全深度转换,Blinkhawk修复了这个丰富多彩的错误。Pokémon Brilliant Diamond/Shining Pearl真是一次旅行,几乎就像一首迪士尼歌曲(神奇宝贝璀璨钻石) 其中一个(许多)缺失的纹理格式是 ,一个 8 位模具纹理。Morph使用自制单元测试来验证他是否取得了进展。 并利用 ,但由于两款游戏都需要仍然缺少的其他格式和其他修复程序,因此它们在测试中不是很有帮助。S8_UINTBaldur’s Gate 1 and 2Citizens of SpaceS8_UINT 虽然现在OpenGL和Vulkan都支持S8_UINT,但NVIDIA是唯一一家在Vulkan中指定支持该格式的供应商,这意味着在AMD或Intel GPU上运行的任何受影响的游戏都需要坚持使用OpenGL才能获得适当的渲染。测试自制啤酒 vonchenplus发现了一个错误,其中图像创建将包含不适用于以后更新和下载的宽度大小限制,从而导致OpenGL出现垃圾邮件错误。正确处理这些情况可以让司机冷静下来。正确和干净的代码也可以意味着更少的驱动程序开销。 继续实现不受支持的格式,vonchenplus向Vulkan和全局添加了纹理。同样,就像AMD和英特尔硬件缺乏对Vulkan的支持一样。R5G6B5_UNORM_PACK16S8_UINT_D24_UNORMS8_UINTS8_UINT_D24_UNORM vonchenplus 还将着色器中旧属性的所有用法转换为通用属性,因为某些图形驱动程序不支持这些属性,从而提高了兼容性。 这四个变化有所改善,但需要更多的工作才能使游戏可玩。如果您有兴趣测试此游戏,请使用 Vulkan,或在使用 OpenGL 时禁用异步 GPU 仿真。请注意,可能会发生崩溃。DRAGON QUEST BUILDERSMissing graphics make the game not an optimal experience for now (DRAGON QUEST BUILDERS) Let’s go back to the topic of fixing issues introduced by the resolution scaler. Users reported that taking screenshots at the 1x resolution multiplier resulted in saved images with a size higher than the rendering resolution of the game. A mix up resulted in the screenshot being saved at the window size instead of the game’s framebuffer size. epicboy fixed the logic and we’re back to proper screenshot resolutions. liushuyu,我们出色的Web管理员,收到了具有多个GPU的系统在Linux上运行Flatpak版本的柚子时遇到崩溃的报告。似乎mesa和ffmpeg的捆绑版本不适用于具有不同GPU供应商的系统。这是由于Flatpak的内置ffmpeg在NVIDIA硬件上缺乏对NVDEC和VDPAU的支持,并且具有损坏的编解码器检测。只是普通的GNOME,他同时管理Flatpak和FlatHub。 liushuyu提交了两个单独的拉取请求来解决这个问题,但更多的边缘案例继续出现,所以战斗还没有结束。 当我们继续努力赢得这场关于Flatpak问题的战争时,请坚持使用我们的AppImages,或手动构建柚子。如果您更喜欢手动构建柚子,请确保您的 ffmpeg 库能够在 硬件上解码 和。似乎解决这个问题的唯一方法就是发布我们自己的ffmpeg,而不是Flatpak的默认版本。VP8VP9H.264 用户界面更改 MightyCreak一直致力于将行为更改为默认的浅色主题。以前,柚子会忽略系统范围的主题,即使系统切换到深色调色板,也会坚持使用浅色调色板。将"浅色"主题重命名为"默认",并允许其与系统主题的行为相匹配,从而获得更简化的用户体验。目前,这种行为只能在Linux上正常工作,Windows的Qt尚不支持系统范围的主题。 你真的(GoldenX86)认为以前的丢失键错误屏幕不够清晰,并修复了它,简短而甜蜜。出于某种原因,人们似乎忘记了超链接的用途。 在处理分辨率缩放器及其包含的过滤器时,Blinkhawk 在底部状态栏上命名了 FSR。由于这有点太长,Morph将其重命名为简单 .变化小,但更赏心悦目。AMD'S FIDELITYFX SRFSR更好,你不同意吗? Kewlan为高刷新率用户实现了一个非常好的添加。随着FPS非限度的引入,玩家可以在游戏中通过按键来切换,在配置中引入了上限,以允许将本机帧速率的乘数设置为上限。Ctrl + U 例如,如果游戏以 30FPS 的速度运行,并且用户希望将其限制为 120FPS 以更好地匹配其显示器的最大刷新率,则需要 4 倍乘数。如果游戏本机以 60FPS 运行,则为 2 倍乘数。 这种方法的问题在于,如示例所示,不同的游戏将在本机以不同的帧速率运行,因此全局值并不理想。Kewlan在自定义配置中添加了对帧速率上限的支持,用户可以通过右键单击柚子列表中的游戏并选择属性来访问它。这样,用户可以基于每场比赛设置他们的首选上限。如果您购买新显示器,请记住手动提高刷新率! 如果用户想要的值不是游戏本机帧速率的倍数,他们可以使用MSI Afterburner等软件来指定自定义限制。 已经进行了一些广泛的工作来改进热键。 v1993收到一份报告,如果用户在尝试全屏退出时握住键,柚子的窗口将闪烁。这种情况不会再发生了。Esc german77 发现,持有热键会不断向输入发送垃圾邮件。这是无意的,所以他确保这种行为不再存在。 海纳曼修改了菜单栏如下: 在 中,该按钮已被删除,现在将显示何时适用,反之亦然。 将不再导致崩溃。在 中,热键已修复。使用此功能时,我们仍然会遇到几个游戏的问题,因此请考虑将其置于测试状态。 在 中接收了自己的子菜单。在令人兴奋的消息中,退出模拟器现在可以在全屏模式下工作!EmulationStartContinuePauseRestartFileLoad Amiibo...TASTools > TAS内核修复 Morph 修复了内核中的编译警告,其中参数被错误地声明为无符号整数,而它实际上是一个有符号整数。SVC::WaitSynchronizationnum_handles 海纳曼在内核中发现了一个错误,该错误在退出时使柚子崩溃。 This happened because dummy threads in the kernel weren’t getting destroyed properly. When yuzu was exited during emulation or after stopping emulation, these threads stayed alive even though the kernel got destroyed, thus causing yuzu to crash. By making the kernel own these threads, we ensure they get destroyed when the kernel gets destroyed, mitigating the crash. OatmealDome fixed a bug that caused some homebrew to not boot. The fix was to pass default threadinfo when the kernel creates a thread, allowing homebrew to boot. Skyline framework, Part 1 itsmeft24, jam1garner, and Morph started working on adding support for the Skyline modding framework. This will allow for more intricate code mods, such as using ARCropolis, a mod loader for Smash Ultimate made by Raytwo and blujay. All these PRs [1], [2], [3] are part of the on-going effort to implement support for the modding framework in yuzu. There are more juicy additions, but they didn’t make it in time to be mentioned in this article, we will continue to expand on Skyline’s progress in December’s report. See the current progress here. 常规更改和错误修复 这次在本节中没有太多要讨论的,主要是服务存根和实现。 Animal Crossing: New Horizons通过4个小作品成为焦点,使新的2.0.0更新可玩。谢谢你,german77和Morph。 german77还为该服务提供自己的存根。Just Dance 2022EndFreeCommunication 最后,Morph实现了 的服务。但是,由于游戏需要在线服务,因此目前无法玩。GetCompletionEventSuper Bomberman R Online 未来项目 Project Gaia在我们说话的时候,它继续进步并正在接受优化。我们离开始内部测试不远了。 这就是所有的人!一如既往,非常感谢您的关注,我们下次再见! 特别感谢RodrigoTR和PacoA提供的媒体
我想确认一下[双子村+]企鹅掌门人dlc触发地点是在哪里
已经可以输入中文名称【双子村+汉化】
Yuzu进展报告2021年10月【edge浏览器机翻】 嘿, 尤兹!我们度过了一个相当令人兴奋的月份。我们最期待和高度要求的功能,分辨率缩放,终于出来了!但我们没有休息我们的荣誉, 许多其他修复被推动这个月, 我们迫不及待地告诉你所有关于他们! 用于 Nvidia 用户的 PSA 在进一步深入研究之前,我们希望提醒 NVIDIA 用户,最新的图形驱动程序存在问题,特别是 49X 版本。 过去 472.XX 驱动程序,NVIDIA 删除了 10 之前对 Windows 版本和开普勒系列 GPU(主要是 600 和 700 系列卡)的支持。此外,OpenGL GLSL 和 Vulkan 渲染也受到影响,GLSL 几乎无法使用,武尔坎出现小故障。 虽然 NVIDIA 致力于解决问题,我们致力于替代以缓解问题,我们已经配置了受影响的司机的 NVIDIA GPU,仅在选择 OpenGL 时才使用 GLASM。这似乎可以解决我们在这些最新驱动器上看到的大多数 GLSL 错误。感谢为快速更新而无限制的吐司。 GLSL 仍将适用于版本 472.XX 和较旧的驱动程序。如果有人想使用GLSL在最近的49X系列驱动器,打开。请记住,这将降低性能,因为它只用于调试。Enable Graphics DebuggingEmulation > Configure… > General > Debug 随着 Psa 的离开, 让我们进入好东西!
3ds《牧场物语双子村+》汉化发布 在这秋高气爽的金秋时节(光棍节前一天 诶嘿嘿),家在矿石镇汉化组的各位为大家献上《牧场物语双子村+》这部温馨休闲(无尽狂肝)的作品。 游戏简介 《牧场物语双子村+》是以牧场经营、恋爱、日常为主题的模拟游戏,玩家在欧式风格的“蓝铃村”与日式风格的“此花村”,玩家可以在两个村庄之间进行游戏,经营发展牧场。本作为nds《牧场物语双子村》的移植增强版,追加了新的裸眼3d画面效果,新的cg和dlc,以及几个有趣的新要素。让玩家体验原汁原味的牧场物语游戏。
3ds《牧场物语双子村+》汉化发布 在这秋高气爽的金秋时节(光棍节前一天 诶嘿嘿),家在矿石镇汉化组的各位为大家献上《牧场物语双子村+》这部温馨休闲(无尽狂肝)的作品。 游戏简介 《牧场物语双子村+》是以牧场经营、恋爱、日常为主题的模拟游戏,玩家在欧式风格的“蓝铃村”与日式风格的“此花村”,玩家可以在两个村庄之间进行游戏,经营发展牧场。本作为nds《牧场物语双子村》的移植增强版,追加了新的裸眼3d画面效果,新的cg和dlc,以及几个有趣的新要素。让玩家体验原汁原味的牧场物语游戏。
Yuzu进展报告2021年9月【edge浏览器机翻】 嗨, 尤兹!欢迎收听我们每月进度报告的最新条目。我们有更多的 GPU 渲染修复, TAS 支持, 8 玩家混乱, 输入和 UI 变化, 一些初步工作, 为未来的大变化, 等等! 然而,更多的 AMD 特定更改和其他图形修复 某些 AMD 和英特尔 GPUs 无法使用 Vulkan API 的 yuzu 解锁 FPS 功能,因为演示模式缺乏驱动程序支持。然而,他们支持,另一种模式,允许Vulkan呈现在一个更高的帧速率比屏幕刷新率,所以史诗男孩做了必要的改变,以解锁这些GPU上的FPS。由于此演示模式的性质,这可能会导致屏幕上的可见撕裂,因此请记住,如果您尝试这样做。VK_PRESENT_MODE_MAILBOX_KHRVK_PRESENT_MODE_IMMEDIATE_KHR这是只有 Rx 550 (地铁恐惧) 使用英特尔 Mesa 驱动程序在 Linux 中启动标题时,由于设备丢失错误,导致碰撞。问题在于帧的渲染和随后的演示之间的同步性。 以前,Yuzu 会发布 Vulkan 命令,然后等待帧呈现,然后再继续处理过程。虽然这对其他驱动程序和供应商来说很好,但 ANV(英特尔的 Vulkan 驱动程序)预计在此命令之前已经呈现了帧,从而导致此错误。Present 史诗男孩修复了同步行为,使玉豆现在等待,直到框架完全呈现和准备之前提出它。 随着 AMD 的 Windows 驱动程序版本 21.9.1 的发布,以及其等效的 AMDVLK 和 AMDGPU-PRO Vulkan Linux 对应产品,用户开始注意到大多数游戏在启动时出现崩溃。我们再次指责 AMD 打破了另一个扩展, 因为这不会是第一次。我们甚至挑出罪魁祸首, 提供了一个替代路径, 降低所有运行非 RADV 驱动程序的 AMD GPUs 的性能。Int8Float16 我们错了 原来,这是我们的错。史诗男孩发现,在初始化Vulkan的过程中,模拟器分配了国际8Float16的值后,其内存被释放。令人惊讶的是,这才开始影响官方AMD驱动器最近,在他们的定期Vulkan版本更新后。所以这次我们不得不放下草叉。此 PR 推出后,性能恢复正常。 AMD Windows 用户还熟悉完全变白或重影的某些阶段,类似于应用程序在 Windows XP 时代冻结时。那是好日子Super Smash Bros. Ultimate 嗯, 无论如何, AMD Radeon GPU 缺乏对固定点 24 位深度纹理的支持, 或 D24 简而言之, 一个相对常见的纹理格式的支持。为了绕过此硬件限制,Yuzu 改用 D32 纹理,这可能会在转换过程中导致精度问题。通过调整玉豆 D24 仿制的深度偏差和多边形偏移,闪烁鹰可以永远解决问题。公平竞赛, 请 (超级粉碎兄弟终极) 还有一个AMD拉登的具体问题,是可见的,当播放。地形纹理是丰富多彩和损坏的,就像当 PC 玩家拨号 RGB 到 11。The Legend of Zelda: Breath of the Wild 这个问题影响了我们的常规嫌疑人,GCN4设备(Polaris,RX 400/500系列)和更老的,运行在Windows和Linux专有的Vulkan驱动程序。GCN5 (Vega)、RDNA1 和 RDNA2 设备未受影响。问题在于我们如何猜测游戏正在处理纹理。 一些信息首先:有几个方法来处理纹理,在这个特殊的例子,我们需要专注于两个,和。Cube MapsTexture Arrays 立方体地图是一个立方体,其六张面充满了不同的纹理。用于获取数据的坐标与常规 X 值和 Y 值不同,是源自中心并指向立方体表面的单个转角。另一方面,纹理阵列就像名称所暗示的,一个接一个的纹理有序阵列,X 和 Y 用于在纹理内定位信息,Z 轴用于确定该阵列的纹理在使用中。TL;DR,一个是球体,另一个是列表。 Vulkan 允许在以后需要时将纹理标记为可转换为立方体地图,但采样(读取)由游戏的着色器说明指定的纹理类型决定。然后,此类型传递到图形 API。我们这样做,游戏决定保持其纹理作为阵列,这是它自己的决定。但是,AMD 驱动程序决定将纹理采样为立方体地图,而忽略之前确定的纹理视图。 虽然这本身应该不是问题,因为坐标仍然可以从错误的纹理类型中拉出,但驱动程序最终可能会读错 texel。这可能导致快乐的彩虹地面,或黑暗和邪恶的地形。The Legend of Zelda: Breath of the WildHyrule Warriors: Age of Calamity 通过禁用 GCN4 上的 Cube 兼容性和运行官方 AMD 专有驱动程序的旧设备,史诗男孩将适当的意义回归到被破坏的 Hyrule 土地上。我不喜欢 Rgb, 谢谢 (塞尔达传奇: 狂野的气息)但没那么黑!(海鲁勇士:灾难时代) 说到 RGB,正如早在二月份讨论的那样,Yuzu 必须使用计算阴影器在 OpenGL 中转换大多数 BGR 纹理格式,以避免颜色不匹配。虽然这在大多数当前的 GPU 上都可能正常工作,但性能成本会影响较旧和较慢的产品。 开普勒系列 Nvidia GPU(通常是 GTX 600/700 系列,其中有几个也改名为 800 和 900 系列)的用户可能会经历这些性能处罚,同时也会产生渲染腐败。史诗男孩认为,我们只能使用(或PBO简称PBO)来代替所有受影响的纹理格式,而不是使用计算阴影器来挥动纹理。这有很多好处:它解决了开普勒 BGR 问题,提高了来自任何 GPU 供应商的弱设备的性能,并且也是(开发中的分辨率扩展器)的必修方法。Pixel Buffer ObjectsA.R.T.及时的帽子 关于分辨率刻度器所需的更改主题,闪烁鹰对查询和索引采样器实施了修复。其结果是在英特尔和 AMD GPU 上玩时,无论是 Windows 还是 Linux 上的崩溃次数都更少。此 PR 也有助于提高稳定性。Luigi’s Mansion 3A.R.T. 另一个影响的问题是它在武尔坎使用泰塞尔德阴影。Vulkan 规范要求输入组装拓扑处于销售阶段。并非所有的游戏都遵循这一点,所以手动强制它解决一些司机经历的崩溃,更具体地说,你可能已经猜到了,AMD的专有。这一切都要归功于我们的鱼史诗男孩。Luigi’s Mansion 3PATCH_LIST epicboy还修复了一些小错误与模具,一种数据缓冲,旨在帮助限制渲染区域的大小。因此,正确渲染其模型。WarioWare: Get It Together!哇!(瓦里奥沃: 一起! vonchenplus增加了对传统 GLSL 的支持,并将属性添加到我们的 Vulkan 后端,以便使用它们的任何游戏在使用此 API 时都能正确渲染。gl_Colorgl_TexCoord 这两个属性都是具有特定定义和用途的一组属性的一部分。但是,在 OpenGL 的新版本中,它们被弃用,转而支持程序员可以根据自己的需要自由定义的"通用"属性。 虽然 OpenGL 仍能够运行用于此传统功能的阴影,以便向后兼容,但到 Vulkan 创建时,它们已经被视为过时,这意味着此 API 缺乏后退。 vonchenplus 所做的是使用 Vulkan 中的通用属性来模拟这些功能,以便它们的行为与传统的 GLSL 属性完全一致。 之后,vonchenplus 更正了用于混合纹理的一个内纳姆中值的定义。 这两个变化都会影响,修复此游戏中存在的图形错误。DRAGON QUEST III: The Seeds of Salvation龙任务三:救恩的种子 工具辅助速度运行 怪物德鲁伊德 1增加了塔斯支持yuzu!这意味着可以在游戏中记录和重播精确输入命令。用于存储它们的格式是TAS-nx实现的格式,我们在此处有关于如何启用和使用此功能的指南。 您可以通过访问 TAS 配置Tools > Configure TAS…
一波三折,汉化双子村+终于搞定了几个大问题后期我想再招募几个 需要几名校对和测试 QQ群 82113241
Yuzu进展报告2021年9月【edge浏览器机翻】 这是两个视频它只是工作!(马里奥卡丁车8豪华) 请记住,有些游戏需要某些按钮组合才能在局域网和本地无线模式之间切换。例如,要求用户同时持有 L + R 并按下主菜单中的左模拟棒 (L3),以便能够创建或加入 LAN 房间。Mario Kart 8 Deluxe 莫夫后来跟进网络接口清理。 流畅无故障的视频为胜利 由于yzct12345早在 7 月就引入了 VA-API,Epicboy使得使用硬件视频加速技术解码与 FFmpeg的视频用于所有其他兼容的 GPU 和驱动程序组合成为可能。此外,Yuzu 将优雅地回到软件解码,以防没有支持的组合。 这大大加快了解码过程,提高了模拟器在播放视频时的性能。 目前,已实施以下 GPU 解码器: GPU 窗户 利诺克斯 恩维迪亚 NVDEC/D3D11VA 恩夫德克/VDPAU AMD D3D11VA 瓦-阿皮/VDPAU 英特尔 D3D11VA 瓦-阿皮 请注意,由于用于解码视频的 GPU 不一定与用于渲染的视频相同,因此 NVDEC 在 Windows 上比 D3D11VA 更受欢迎,因为后者默认使用 iGPU 进行解码时的性能较低。 接下来的名单上,我们有一些嘈杂的神器出现在一些游戏的视频的报告。值得注意的是,那些编码与VP9格式。史诗男孩调查了这个问题,并通过存根UnmapBuffer,一个驱动程序命令,这是,你可以猜到,用来释放GPU内存由缓冲器举行。但是这到底有什么问题呢?恐怕这会有点技术性, 所以忍受我一段时间。我保证不会伤害...多。 VP9 编解码器除其他外,定义了视频中用作参考的帧,这些帧又被用于重建这些帧之间的帧。这意味着,要正确地插值这些"中间"框架,必须依靠来自,和以前的信息。,另一方面,完全由他们自己解码,而不依赖于任何参考。解码这样的框架是一个较慢的过程,但它保证框架将尽可能干净的错误,这就是为什么他们可以用作参考。key-frameskey-framesinter-frameskey-frames 如前所述,FFmpeg 用于解码视频。在 VP9 格式的情况下,yuzu 需要发送将解码的原始字节(即您在视频中看到的实际图像)以及包含元数据的头,例如帧的尺寸,无论是帧的尺寸,或者,如果不是,在处理时使用什么帧作为参考, 等。key-frame 构成此头的信息映射到内存中的缓冲器。而现在,事情变得有点滑稽。出于某种原因,在这个缓冲区的信息 - 即,该部分的头,指定什么应该用作参考,将改变不一致之间。这导致视频质量的下降,因为每个插值帧将引用不同的,导致这些臭名昭著的混乱的噪音文物的创建。key-framesinter-frameskey-frame 通过存根命令,这些参考帧的地址现在保持不变,只要他们需要,允许yuzu传递到正确的信息,并解码视频没有任何问题。UnmapBufferFFmpeg 两个小故障自由和光滑 (塞尔达的传说: 链接的觉醒) 在相关方面,epicboy 修复了另一个 VP9 问题:位流的第一帧缺少其帧数据,因此他改变了逻辑以确保第一帧完整,沉默了 FFmpeg 抛出的运行时间错误。 如前所述,Yuzu 直接从缓冲器中包含的 NVDEC 寄存器中读取标题信息。不幸的是,一个关键的旗帜,需要传递给FFmpeg,实际上并没有在这个缓冲举行。is_hidden_frame 为了规避此问题,我们的实施还缓冲了下一帧,然后,根据持有相同信息的另一个标志(),通知 FFmpeg 是否应显示前一帧。这意味着玉豆总是解码一帧晚了,因为已经是这样了,玉豆没有发送第一帧的头信息,因为它需要事先知道的价值。is_previous_frame_hiddenis_hidden_frame 史诗男孩所做的只是复制位流中的第一帧,因此基本上第一帧和第二帧是相同的,因此,利用这一事实,头信息可以传递给FFmpeg,以便它停止抱怨。 唉,软件开发的乐趣在这个世界上转瞬即逝。 一般错误修复 你无法预测虫子会如何出现,有时它们像雏菊一样弹出。随着巴西葡萄牙语作为用户界面的语言,开始只运行在日语,忽略了任何用户设置。Paper Mario: The Origami King 修复"获取可用语句"的副本量足以解决此问题。谢谢莫夫!真正的本地游戏 (纸马里奥: 折纸王) 桑卡桑给了,我们的指挥线SDL2替代常规Qt玉豆,一些额外的爱。通过正确实现,yuzu-cmd现在可以在全屏下正确隐藏鼠标光标。谢谢!yuzu-cmdSDL_ShowCursor 也与过去有关,虽然按钮映射和其他设置工作正常,但使控制器的切换被完全忽略。阅读连接值作为一个酒鬼是它需要通过这个失误, 感谢吐司不受限制!yuzu-cmd 吐司还发现了如何处理每个游戏配置文件的逻辑中的问题:只选择了默认用户配置文件。某些代码会更改,现在将使用当前选定的用户配置文件。 gidoly打开了他有史以来的第一个拉请求, 修复了一个小的, 但可以说是非常重要的描述。 Use Fast GPU time,高级图形选项卡中的选项之一,是旨在提高与使用动态分辨率作为在交换机上保持稳定性能的游戏的兼容性。 通过对内核撒谎并告知性能总是好的,模拟器避免了不必要的破坏和纹理的重建,从而节省了性能和 VRAM。作为额外的好处,一些游戏使用这种完全不掺解的信息,不断呈现在其最高支持分辨率。 出于这两个原因,我们建议用户始终启用此选项,因为在使用时未发现任何回归,并且某些特定标题(如)的稳定性优势非常值得。Luigi’s Mansion 3 所以,通过称铁铲为铁铲,吉多利现在告诉我们,这确实是一个黑客。阿尔潘, 潘, 维诺, 维诺Use Fast GPU time 存根NGCT:U服务允许启动。良好的捕获由德国77。Boyfriend Dungeon男朋友地牢 史诗男孩翻转了配置窗口中限制速度百分比和帧速率帽的位置。整理用户界面永远不会造成伤害。 是否有任何开发人员厌倦了等待超过 3 分钟来编译对代码纹理缓存部分所做的每个更改?嗯,yzct12345 将定义拆分,将构建时间缩短到只有 30 秒。 yzct12345也发现我们的僵局,并提交了解决这个问题的修复方案。重写这个队列并使其完成的工作也已经开始,所以希望下个月我们能看到后续工作。如果您对这些"生产者-消费者"术语感到困惑,只需知道它们基本上描述了如何在多核系统中处理对资源的访问,以便编写到(生产)中的流程和从共享资源(消耗)中读取的过程在此例中正确同步, 队列。Single-Producer, Single Consumer queueMulti-Producer, Multi-Consumer 这个冒险的开发人员还优化了"无威特克斯图尔"功能,产生了甜蜜的速度增益。闪动是指用于优化内存中纹理存储方式以最大限度地减少缓存误用的技术。因此,相反的操作是采取一个轻滑的纹理,并重组它,所以它对人类有意义。 前段时间,吐司检测到潜在的越界访问,这是一个错误,当程序访问内存,这是超出范围,它应该在给定的时刻运行。所涉代码也是用于解刷纹理的功能的一部分。epicboy 注意到,问题的根源在于计算帧缓冲器大小,用于限制代码应在哪里操作,并在此 PR 中将其固定,从而有效地消除了错误。 在手动检查 yuzu 时,在分析工具的帮助下,v1993 还在代码库的不同部分发现了一些小错误,例如内核函数中的放错位置的中断语句- 一个改变算法逻辑的人为错误,防止其按预期操作。同样,他还纠正了影响软件键盘代码的复制粘贴错误。GetThreadContext() v1993 还在功能中发现了另一个错误,用于从 GPU 内存地址获取 CPU 内存段。闪鹰继续前进,并修复了它。GetSubmappedRange() 闪烁鹰的另一个值得注意的变化是,他改变了垃圾收集器(收割机)的逻辑,以便它使用最近使用最少的()缓存代替。LRU 以前,GC(垃圾收集器)的缓存会在每个帧的纹理上进行重述,检查它们是否应该从内存中清除。它还使用某些启发式处理,使清洁对某些类型的纹理更具攻击性,无需与主机内存同步即可清洁它们。n 然而,该计划根据它们最近被使用的速度来订购纹理。一旦内存已满,GC 就会开始在缓存的元素上进行重做,从而消除在最长时间内未使用的纹理。此外,GC 现在优先考虑消除不需要与主机内存同步的纹理,并且仅考虑从缓存中清空这些纹理后的其他纹理。这些更改使新的垃圾收集器更加稳定,因此我们可以默认为所有用户安全地启用它。LRULRU 同时,BreadFish64发现Yuzu花了相当长的CPU时间运行——一个用于在分析时管理线程的内核功能——并提交了一个补丁,优化了生成的代码,提供了一个小的性能提升。GetHostThreadID()Fire Emblem: Three Houses 输入改进 german77 本月实施了一些输入更改。 首先,在映射和移动模拟棒时,以前的实现仅显示表示模拟棒相对位置的蓝点。现在出现了一个新的绿点,代表棍子的模拟位置,考虑范围和死区值。知道棒子是否真正达到整个输入范围是有用的。 记得测试并设置范围和死区 接下来,通常更新到SDL,这总是带来一些好东西。在这种情况下: 向双感触发器发送效果的能力(目前未实施)。 更好的传感器数据速率为开关和游戏机控制器。 为亚马逊 Luna 控制器添加支持。 为谷歌斯塔迪亚控制器添加隆隆声支持。 专业控制器的改进隆隆声。 最后,Web Applet 会导致 SDL 过程死亡,禁用不必要的功能可以解决问题。 未来项目4K 海滩情节 (Xenoblade 纪事确定版) 进展良好,大多数重大问题都得到了解决。莫夫有几个尤里卡时刻与。现在其他秘密食谱在烤箱里,等待轮到他们了。Project A.R.T.Project Gaia 都是人!谢谢你的注意 - 快乐的发挥, 下次见!
Yuzu进度报告2021年8月【edge浏览器机翻】 欢迎, yuz - ers, 到我们的每月报告开发人员毅力和其他事件!在此回顾中,我们将讨论 Radeon 修复、收割机 v3、LAN 支持、流畅的视频渲染等! 一个不合常数的 T错误我执行, 和其他图形修复 这个月对AMD用户来说无疑是一个快乐的月份,因为我们的开发人员设法为AMD显卡用户修复了一些图形错误。 史诗男孩推动一个修复线框问题, 影响各种 3d 模型时, 玩, 而使用 Amd Gpu 在 Windows 上。不幸的是,一些游戏,比如,有类似的错误,并没有通过这个修复改进。此外,请注意,在某些罕见情况下和条件下,问题仍可能发生。Pokémon Sword and ShieldSuper Mario 3D World + Bowser's Fury最佳人物(神奇宝贝剑) 问题的原因归结为某个供应商(AMD) 的驱动程序没有正确读取附近的阴影阴影属性或指令。demotediscard 在 GPU 上运行以渲染图形的许多程序中,碎片阴影器负责计算写入帧缓冲器的每个像素的颜色,这些像素将发送到您的屏幕。在某些情况下,这些阴影器用于执行从属计算,例如衍生工具。 这是一个问题,但是,因为碎片阴影总是期望写入帧缓冲。当这样使用时,这些阴影实例的颜色数据仍然单硝化,这是未定义的行为,很可能会导致彩虹点图形发送到您的屏幕。 这是救援的地点和指示。它们用于标记这些碎片阴影,因此忽略每个被降级的阴影实例的颜色,使线程保持活力以执行计算,而帧缓冲器保持不变。demotediscard 每当驱动程序尝试在这些指令附近读取属性(即位置、常数等数据)时,就会误读这些属性,从而导致臭名昭著的图形故障。 值得庆幸的是,这是通过简单地将这些片段的降级推迟到着色器程序的末尾来修复的,这对其性能有轻微的影响,尽管没有一个足够大的片段值得关注。 接下来在史诗男孩的列表中,我们有一个修复程序,解决从次要 GPU 渲染时sRGB 图形的亮度,因为它们看起来比他们应该暗得多。免费 HDR!(超级马里奥奥德赛) 这发生在由 AMD GPU 执行渲染时,但交换链中图像的演示(GPU 用于防止屏幕更新时撕裂和口吃的虚拟缓冲)是由英特尔或 Nvidia GPU 完成的。正在 AMD GPU 上呈现的交换链(其中包含格式图像)被读为二级 GPU,导致它们呈现错误的强度水平。这是因为这些格式中使用的刻度不兼容,并且其值不会自动映射到对应空间上的等值,因此在使用错误格式时会导致图像质量下降。sRGBLinear 作为解决方案,在从交换链中呈现帧时,现在首选颜色空间格式。这减轻了对帧格式的错误解释,使所有帧在线性颜色空间中正确显示。Linear 另一个恼人的只视窗AMD GPU错误去好感谢史诗男孩是可怕的明亮的正方形,将出现在一些标题的阴影:最值得注意的是, .Fire Emblem: Three Houses 不再那么迷幻了(火徽:三栋房子) 造成这一问题的原因是任天堂交换机的GPU和AMD卡的硬件层面差异。 在图形编程中,在相当数量的元素(如维他语、像素等)上执行相同的操作是极其常见的。因此,GPU 被设计为同时(即并行)在大量数据上运行,使用利用此原理的说明(称为(单个指令、多个数据)。这种并行计算方法与多线程相结合,称为(单个指令、多线程)。SIMDSIMT 在 Tegra X1(任天堂交换机的 GPU)中,这些指令在 32 个线程(称为"")的捆绑包上运行,所有这些线程都运行相同的代码 - 尽管它们不一定基于相同的数据运行。然而,AMD 卡中的说明会发布GCN架构,仅与 64 个线程的工作组配合使用。这提出了一个挑战,因为 yuzu 必须将这些工作组分成 64 个线程,并让它们充当 32 个线程的两个工作组,以便在这些设备上正确模拟访客 GPU。workgroupsSIMT epicboy解决了这个问题并修复了这些说明,因此,通过使用线程的调用 ID,可以判断任何线程是"下"线还是"上"32 线程组的一部分,从而有效地允许 AMD 卡模仿任天堂交换机 GPU 的行为。 闪烁鹰还为影响 AMD 的 Bug 提供了许多修复,从在 (Polaris) 之前禁用其 GPU 中的外阴扩展() 开始,后者没有支持扩展的必要硬件。值得注意的是,这修复了迷幻图形,一个我们很多人会错过,肯定。VK_EXT_SAMPLER_FILTER_MINMAXGCN4The Legend of Zelda: Skyward Sword HD这原本是一个视频,但它可能会触发癫痫(塞尔达传奇:天向剑) 同样,他增加了 AMD 上每个池的集数(Vulkan 中用于管理资源内存的一项功能),修复了启动时发生的随机崩溃。Xenoblade Chronicles 2 K0bin又回来了, 解决了另一个主要问题。这一次,Yuzu没有正确遵循官方的Vulkan规范,导致Nvidia显卡上的纹理和缓冲信息重叠。 bufferImageGranularity指定纹理和缓冲器对齐的字节大小。AMD 和英特尔 GPUs 允许根据硬件提供 1 或 64 字节的精确值,但 Nvidia 则很难局限于 1024 字节块。 yuzu 没有考虑到这种对齐, 导致数据腐败主要通过启用 GPU 缓存垃圾收集器来显示。但同样的问题可能会影响任何游戏,处理小纹理在任何时候,因为任何缓冲可能会损坏任何纹理,任何纹理可能会损坏任何缓冲。Super Mario Odyssey 正确尊重此硬件集值可修复在 Vulkan 使用 Nvidia GPU 运行游戏时闻所未闻的不稳定性,并允许收割者(GPU 缓存垃圾收集器)处理所有游戏。 有一个错误,使马里奥的胡子似乎是浅棕色(而不是我们习惯看到的经典深色阴影),当使用英特尔GPU与Vulkan API。问题很简单:yuzu 在查询属性时返回了错误的数据类型 - 未签名的整数,而不是 32 位浮点值。解决方案同样简单:epicboy 更改了代码,以便使用正确的数据类型返回查询属性。gl_FrontFacing最后, 染发剂打折 (超级马里奥奥德赛) v1993一直在使用PVS 工作室捕捉代码中的逻辑错误,到目前为止取得了良好的成功。例如,由于这个原因,在SPIR-V中可以进行小规模的清理。 兰派对时间! 工作仍在继续,但与此同时,Yuzu 自豪地宣布,(局域网)支持已添加给所有用户!这一切都要归功于斯波尔茨所做的工作。Local WirelessLAN 这意味着,现在可以在连接到同一网络(无论是有线以太网,还是通过 WiFi)时,使用交换机或任何其他运行 yuzu 的计算机来玩少量游戏。使用像ZeroTier这样的服务(hamachi 尚未工作),或者通过手动配置VPN(虚拟专用网络),这可以扩展到全球游戏! 到目前为止,支持局域网的游戏是: ARMS Bayonetta 2 Duke Nukem 3D: 20th Anniversary World Tour Mario & Sonic at the Olympic Games Tokyo 2020 Mario Golf: Super Rush Mario Kart 8 Deluxe Mario Tennis Aces Pokkén Tournament DX Pokémon Sword & Shield(按设计限制游戏功能) Saints Row IV®: Re-Elected™ SAINTS ROW®: THE THIRD™ - THE FULL PACKAGE Splatoon 2(适用于启用自动存根) Titan Quest 目前,并非所有列出的游戏都因缺少服务或与 yuzu 没有最佳兼容性而起作用,但游戏在所有工作案例中都被证明是稳定的。它只是工作!(马里奥卡丁车8豪华) 请记住,有些游戏需要某些按钮组合才能在局域网和本地无线模式之间切换。例如,要求用户同时持有 L + R 并按下主菜单中的左模拟棒 (L3),以便能够创建或加入 LAN 房间。Mario Kart 8 Deluxe 莫夫后来跟进网络接口清理。 流畅无故障的视频为胜利 由于yzct12345早在 7 月就引入了 VA-API,Epicboy使得使用硬件视频加速技术解码与 FFmpeg的视频用于所有其他兼容的 GPU 和驱动程序组合成为可能。此外,Yuzu 将优雅地回到软件解码,以防没有支持的组合。 这大大加快了解码过程,提高了模拟器在播放视频时的性能。 目前,已实施以下 GPU 解码器: GPU 窗户 利诺克斯 恩维迪亚 NVDEC/D3D11VA 恩夫德克/VDPAU AMD D3D11VA 瓦-阿皮/VDPAU 英特尔 D3D11VA 瓦-阿皮 请注意,由于用于解码视频的 GPU 不一定与用于渲染的视频相同,因此 NVDEC 在 Windows 上比 D3D11VA 更受欢迎,因为后者默认使用 iGPU 进行解码时的性能较低。 接下来的名单上,我们有一些嘈杂的神器出现在一些游戏的视频的报告。值得注意的是,那些编码与VP9格式。史诗男孩调查了这个问题,并通过存根UnmapBuffer,一个驱动程序命令,这是,你可以猜到,用来释放GPU内存由缓冲器举行。但是这到底有什么问题呢?恐怕这会有点技术性, 所以忍受我一段时间。我保证不会伤害...多。 VP9 编解码器除其他外,定义了视频中用作参考的帧,这些帧又被用于重建这些帧之间的帧。这意味着,要正确地插值这些"中间"框架,必须依靠来自,和以前的信息。,另一方面,完全由他们自己解码,而不依赖于任何参考。解码这样的框架是一个较慢的过程,但它保证框架将尽可能干净的错误,这就是为什么他们可以用作参考。key-frameskey-framesinter-frameskey-frames 如前所述,FFmpeg 用于解码视频。在 VP9 格式的情况下,yuzu 需要发送将解码的原始字节(即您在视频中看到的实际图像)以及包含元数据的头,例如帧的尺寸,无论是帧的尺寸,或者,如果不是,在处理时使用什么帧作为参考, 等。key-frame 构成此头的信息映射到内存中的缓冲器。而现在,事情变得有点滑稽。出于某种原因,在这个缓冲区的信息 - 即,该部分的头,指定什么应该用作参考,将改变不一致之间。这导致视频质量的下降,因为每个插值帧将引用不同的,导致这些臭名昭著的混乱的噪音文物的创建。key-framesinter-frameskey-frame 通过存根命令,这些参考帧的地址现在保持不变,只要他们需要,允许yuzu传递到正确的信息,并解码视频没有任何问题。UnmapBufferFFmpeg 两个小故障自由和光滑 (塞尔达的传说: 链接的觉醒) 在相关方面,epicboy 修复了另一个 VP9 问题:位流的第一帧缺少其帧数据,因此他改变了逻辑以确保第一帧完整,沉默了 FFmpeg 抛出的运行时间错误。 如前所述,Yuzu 直接从缓冲器中包含的 NVDEC 寄存器中读取标题信息。不幸的是,一个关键的旗帜,需要传递给FFmpeg,实际上并没有在这个缓冲举行。is_hidden_frame 为了规避此问题,我们的实施还缓冲了下一帧,然后,根据持有相同信息的另一个标志(),通知 FFmpeg 是否应显示前一帧。这意味着玉豆总是解码一帧晚了,因为已经是这样了,玉豆没有发送第一帧的头信息,因为它需要事先知道的价值。is_previous_frame_hiddenis_hidden_frame 史诗男孩所做的只是复制位流中的第一帧,因此基本上第一帧和第二帧是相同的,因此,利用这一事实,头信息可以传递给FFmpeg,以便它停止抱怨。 唉,软件开发的乐趣在这个世界上转瞬即逝。 一般错误修复 你无法预测虫子会如何出现,有时它们像雏菊一样弹出。随着巴西葡萄牙语作为用户界面的语言,开始只运行在日语,忽略了任何用户设置。Paper Mario: The Origami King 修复"获取可用语句"的副本量足以解决此问题。谢谢莫夫!真正的本地游戏 (纸马里奥: 折纸王) 桑卡桑给了,我们的指挥线SDL2替代常规Qt玉豆,一些额外的爱。通过正确实现,yuzu-cmd现在可以在全屏下正确隐藏鼠标光标。谢谢!yuzu-cmdSDL_ShowCursor 也与过去有关,虽然按钮映射和其他设置工作正常,但使控制器的切换被完全忽略。阅读连接值作为一个酒鬼是它需要通过这个失误, 感谢吐司不受限制!yuzu-cmd 吐司还发现了如何处理每个游戏配置文件的逻辑中的问题:只选择了默认用户配置文件。某些代码会更改,现在将使用当前选定的用户配置文件。 gidoly打开了他有史以来的第一个拉请求, 修复了一个小的, 但可以说是非常重要的描述。 Use Fast GPU time,高级图形选项卡中的选项之一,是旨在提高与使用动态分辨率作为在交换机上保持稳定性能的游戏的兼容性。 通过对内核撒谎并告知性能总是好的,模拟器避免了不必要的破坏和纹理的重建,从而节省了性能和 VRAM。作为额外的好处,一些游戏使用这种完全不掺解的信息,不断呈现在其最高支持分辨率。 出于这两个原因,我们建议用户始终启用此选项,因为在使用时未发现任何回归,并且某些特定标题(如)的稳定性优势非常值得。Luigi’s Mansion 3 所以,通过称铁铲为铁铲,吉多利现在告诉我们,这确实是一个黑客。阿尔潘, 潘, 维诺, 维诺Use Fast GPU time 存根NGCT:U服务允许启动。良好的捕获由德国77。Boyfriend Dungeon男朋友地牢 史诗男孩翻转了配置窗口中限制速度百分比和帧速率帽的位置。整理用户界面永远不会造成伤害。 是否有任何开发人员厌倦了等待超过 3 分钟来编译对代码纹理缓存部分所做的每个更改?嗯,yzct12345 将定义拆分,将构建时间缩短到只有 30 秒。 yzct12345也发现我们的僵局,并提交了解决这个问题的修复方案。重写这个队列并使其完成的工作也已经开始,所以希望下个月我们能看到后续工作。如果您对这些"生产者-消费者"术语感到困惑,只需知道它们基本上描述了如何在多核系统中处理对资源的访问,以便编写到(生产)中的流程和从共享资源(消耗)中读取的过程在此例中正确同步, 队列。Single-Producer, Single Consumer queueMulti-Producer, Multi-Consumer 这个冒险的开发人员还优化了"无威特克斯图尔"功能,产生了甜蜜的速度增益。闪动是指用于优化内存中纹理存储方式以最大限度地减少缓存误用的技术。因此,相反的操作是采取一个轻滑的纹理,并重组它,所以它对人类有意义。 前段时间,吐司检测到潜在的越界访问,这是一个错误,当程序访问内存,这是超出范围,它应该在给定的时刻运行。所涉代码也是用于解刷纹理的功能的一部分。epicboy 注意到,问题的根源在于计算帧缓冲器大小,用于限制代码应在哪里操作,并在此 PR 中将其固定,从而有效地消除了错误。 在手动检查 yuzu 时,在分析工具的帮助下,v1993 还在代码库的不同部分发现了一些小错误,例如内核函数中的放错位置的中断语句- 一个改变算法逻辑的人为错误,防止其按预期操作。同样,他还纠正了影响软件键盘代码的复制粘贴错误。GetThreadContext() v1993 还在功能中发现了另一个错误,用于从 GPU 内存地址获取 CPU 内存段。闪鹰继续前进,并修复了它。GetSubmappedRange() 闪烁鹰的另一个值得注意的变化是,他改变了垃圾收集器(收割机)的逻辑,以便它使用最近使用最少的()缓存代替。LRU 以前,GC(垃圾收集器)的缓存会在每个帧的纹理上进行重述,检查它们是否应该从内存中清除。它还使用某些启发式处理,使清洁对某些类型的纹理更具攻击性,无需与主机内存同步即可清洁它们。n 然而,该计划根据它们最近被使用的速度来订购纹理。一旦内存已满,GC 就会开始在缓存的元素上进行重做,从而消除在最长时间内未使用的纹理。此外,GC 现在优先考虑消除不需要与主机内存同步的纹理,并且仅考虑从缓存中清空这些纹理后的其他纹理。这些更改使新的垃圾收集器更加稳定,因此我们可以默认为所有用户安全地启用它。LRULRU 同时,BreadFish64发现Yuzu花了相当长的CPU时间运行——一个用于在分析时管理线程的内核功能——并提交了一个补丁,优化了生成的代码,提供了一个小的性能提升。GetHostThreadID()Fire Emblem: Three Houses 输入改进 german77 本月实施了一些输入更改。 首先,在映射和移动模拟棒时,以前的实现仅显示表示模拟棒相对位置的蓝点。现在出现了一个新的绿点,代表棍子的模拟位置,考虑范围和死区值。知道棒子是否真正达到整个输入范围是有用的。 记得测试并设置范围和死区 接下来,通常更新到SDL,这总是带来一些好东西。在这种情况下: 向双感触发器发送效果的能力(目前未实施)。 更好的传感器数据速率为开关和游戏机控制器。 为亚马逊 Luna 控制器添加支持。 为谷歌斯塔迪亚控制器添加隆隆声支持。 专业控制器的改进隆隆声。 最后,Web Applet 会导致 SDL 过程死亡,禁用不必要的功能可以解决问题。 未来项目4K 海滩情节 (Xenoblade 纪事确定版) 进展良好,大多数重大问题都得到了解决。莫夫有几个尤里卡时刻与。现在其他秘密食谱在烤箱里,等待轮到他们了。Project A.R.T.Project Gaia 都是人!谢谢你的注意 - 快乐的发挥, 下次见!
求帮忙了【双子村+】已经翻译好了就卡在码表哪里【原因我忘了】 我是从2018年开始汉化这游戏【牧场物语;双子村移植版】2019年不想再弄就放弃汉化这游戏,现在我想吧已经翻译好了原本再加上原来的码表和一些图【已经导入游戏里】,控制符忘记保存没了,交给其他汉化组接手这坑,我已经和汉化的nds版汉化组说好了。 链接:http://tieba.baidu.com/mo/q/checkurl?url=https%3A%2F%2Fpan.baidu.com%2Fs%2F1K3HGe9btc0_1yS_WtVmJbA+&urlrefer=dd3df12453c51b0e0ef31a401e8be15d 提取码:gdcq
Yuzu进度报告2021年7月【edge浏览器机翻】
打酱油小吧主给你们几个群 1,【这群人数很少但是大佬比较多】模拟器研究协会 657493261 2,ns模拟器交流群 1080198513 3,【这个算是吧群】Yuzu 694888491 4, YUZU模拟器 691813620
我给你们推荐几个群 1,【这群人数很少但是大佬比较多】模拟器研究协会 657493261 2,ns模拟器交流群 1080198513 3,Yuzu 694888491 4, YUZU模拟器 691813620
Yuzu进度报告2021年6月【百度机翻】 嘿,是的!欢迎收看六月的进度报告。在过去的一个月里,我们获得了令人印象深刻的CPU性能提升,projectreaper v1的发布,关键的音频修复,一个“无限”的FPS切换,大量的内核更改,UI改进,等等! 投影纹理收割机 我们欠下的旧债纹理缓存重写是Project Texture Reaper,一个GPU Cache Garbage Collector,最初由罗德里戈完成时间 鹰眼新的和非常重要的优化。 这个垃圾收集器其任务是通过移除最少使用的资源(纹理和缓冲区)来释放VRAM空间,目标是2到4GB的VRAM总使用量。这个范围是由Blinkhawk经过大量测试后决定的。 值得一提的是,具有2GB或更少VRAM的GPU将由驱动程序(在OpenGL中)或yuzu(在Vulkan中)处理,根据需要将资源转移到共享VRAM(系统RAM的一部分)。出于性能原因,我们强烈建议使用4GB或更高VRAM的GPU。 虽然这是我们的Windows AMD Radeon和Intel GPU用户的一个关键功能,这些用户深受OpenGL性能和渲染的影响,但所有GPU供应商都从中受益。这使得它成为未来大多数游戏中使用的安全选项,除了少数异常值:最显著的是Super Mario Odyssey在OpenGL中运行。 最终结果不言而喻。像这样的游戏Xenoblade Chronicles 2现在可以在OpenGL或Vulkan中玩得非常好。在下面的图表中,您可以看到Reaper的效果。我们的测试系统运行的是Nvidia GeForce GTX 1650 SUPER和4GB的VRAM,使用的API是Vulkan(为了避免任何可能的驱动级垃圾收集器)。以前 上面(之前)的结果是在游戏开始后,收割者被禁用。VRAM利用率迅速上升到测试显卡上可用的最大4GB。一旦可用的VRAM被消耗,GPU驱动程序将开始使用系统RAM作为后备,继续累积资源,直到应用程序崩溃。之后 以上(后)结果已启用收割器。你可以看到GPU是如何在玩了几分钟游戏后保持稳定的2.5-2.6GB的VRAM使用率,直到突然出现使用高峰。收割者介入,VRAM利用率迅速恢复到2.5GB的平均空闲。 中的所有用户都可以使用ReaperEmulation > Configure… > Graphics > Advanced > Enable GPU Cache Garbage Collector. 由于在Super Mario Odyssey,默认情况下该选项处于禁用状态。我们计划在将来引入一个更健壮的版本。它应该在默认情况下启用。 上一个Disable Dynamic Resolutionmods现在可以被禁用了,我们建议保留它们,不仅为了图片质量的目的,而且可以通过避免在每次分辨率更改后创建新的纹理来减少不必要的资源使用。 不能简单地将一个窗口快速存储到内存中 这是一个非常令人兴奋的月份,因为我们能够实施fastmem,这是一种通过在yuzu中访问内存时减少CPU负载而显著提高性能的技术。而不是模仿任天堂交换机的内存管理单元(MMU)通过软件,yuzu现在可以使用主机了MMU解码内存地址。这减少了此操作代码的延迟和大小,允许更有效地使用指令缓存(用于在CPU中存储指令并加快获取阶段)。 最初,实施fastmem在Windows操作系统1803中,由于API的一些技术上的改变,ZU最终被认为是一个可行的选项。然而,由于缺少此功能的文档(感谢Microsoft),我们的开发人员不知道他们可以使用它。我们要谢谢你 面包片64向我们的开发人员通报这一变化,以及 草本的对于正在更新Microsoft有关此行为的文档. 如前所述,此功能与早于1803的Windows版本不兼容。使用旧的Windows版本将导致yuzu回退到旧版本MMU实施-尽管这一要求将来可能会改变。如果您有兴趣更详细地解释它是如何工作的,以及阻止它实现的限制,请随时阅读fastmem专用文章 .一些测量的性能增益,以FPS为单位
转贴:【图片】新功能发布-着色器反编译器重写【百度机翻】【sw… 【图片】新功能发布-着色器反编译器重写【百度机翻【switch模拟器吧】_百度贴吧 来自:http://tieba.baidu.com/p/7444222757?sharefrom=tieba
新功能发布-着色器反编译器重写【百度机翻 你好,尤兹人!期待已久的一天终于来到了。我们很高兴向您介绍,哈迪斯计划,我们的着色器反编译器重写!大量的改进,包括大量的改进。我们开始吧!
Yuzu进展报告2021年5月【百度机翻】 你好啊!又到了另一份进度报告的时候了!我们有几十个变化要讨论:内核修复,输入和用户界面的改进,图形更新,传奇点的传奇,甚至是一个方法来获得额外的VRAM! 戳é很快,但它是新的 New Pokémon Snap的发布导致了大量的工作需要使游戏可玩。首先,Snap在游戏中遇到了崩溃,这是一个问题 史诗男孩很不高兴。那个缓冲区缓存重写为uniform bindings,但利用它的条件是缓冲区必须既小又非空. 结果是,没有显式地检查空缓冲区,导致了整个过程中的不稳定性。正确检查那些零大小的缓冲区修正了新快照所面临的稳定性问题。新Poké周一快照 变形一直致力于在yuzu的文件系统仿真中实现急需的修复,提高CreateFile的准确性修复了Snap遇到的保存和加载问题。意外地,诸如“父目录不存在”或“路径已存在”之类的错误代码不正确,从而导致文件系统仿真的严重破坏。 Snap还揭示了我们的触摸屏手势模拟的缺陷德国77 ,玉祖现在正确支持多个手指 . 与GPU仿真相关的问题阻止了这个游戏的完美可玩性。在当前状态下,在阶段结束时对照片进行评估时无法识别。有母必有女对于精度较高的非GPU或GPU中的vul-kan用户,可以使用open-gl或open-gl中的部分精度来解决。 图形修复 纹理块传输(位块传输,位图的组合)有时可以通过交错复制区域来超出边界,yuzu必须能够做到正确地模仿这种行为并返回正确的部分,epicboy对我们正确地执行没有问题。这是一个非常详细的例子,旧的越界错误行为用红色表示,正确的结果用蓝色表示,受影响的区域应该移到下一行 结果在使用这种blit技术的游戏中非常明显,比如Shantae和象素游戏制作人系列狼人公主卡古亚,我们在上一次进度报告 .纹理和文本渲染正确,请注意左侧图像右侧的阶梯 多亏了用户的报告,我们才注意到,我们位于yuzu窗口右下角的FPS计数器不准确。以前GPU线程与其他服务同步时,读数是准确的。现在实现了异步GPU仿真,现在不再是这样了。 epicboy提出的解决方案是,不让nvflinger服务处理柜台,让图形API在完成框架绘制后通知计数器。这样,该值在性能波动时更准确、更稳定。此外,计数器的更新频率从2000毫秒更改为500毫秒,以便显示更频繁和最新的信息。 现在为等待的Vulkan用户提供一个大的更新Project Reaper离开开发委员会。前瓦肯人内存分配器使用本地内存作为最高优先级(即专用GPU上的物理VRAM),并且仅在某些适用的情况下使用主机内存。这些情况取决于GPU驱动程序如何通知yuzu可用的不同内存堆,主要是为了使关键的必需信息更接近CPU。 罗德里戈实现了一个新方法(用旧方法解决一些问题),该方法允许yuzu访问所有可用的主机内存。高达50%的系统RAM可用作主机内存,或Windows在任务管理器中称之为GPU共享内存。这一变化意味着GPU实际上有更多的RAM可用于Vulkan,这有助于延迟这个API令人遗憾的臭名昭著的内存不足问题。 对于那些迫不及待,想测试开发中的部分解决方案,并且有git经验的人,少女一直在研究什么叫 "Light Reaper"。这是Rodrigo计划在将来发布的更简单的版本,在可配置的固定计时器上充当垃圾收集器。对于任何有兴趣并有时间手动构建yuzu的人来说,公关是开放的测试。我们现在不打算合并它,因为它需要像普通的收割者一样的完善,以提供一个愉快的用户体验。 布诺远离的光栅化器缓存溢出的风险通过将责任数组的大小加倍。 任天堂交换机与CPU和GPU共享RAM,因此游戏可以自由假设VRAM中的任何信息在RAM中都是相同的(因为物理上是一样的),因为PC不允许这样做(即使是在集成的GPU系统上),yuzu必须跟踪GPUto正在使用的内存页,以确保所有信息也反映在系统RAM中。在测试过程中,观察到以前255个引用的限制在一些罕见的情况下被超过,导致完全混乱,因此这个PR将其增加到最大值65535。 用户的所有成本2MB而不是之前的1MB. 付出如此沉重的代价,谷歌Chrome会为我们感到骄傲的。 核心变革和改进 内核-也就是说,操作系统的一部分,它控制安装它的机器的资源-组织这些资源的一些参数(例如进程identifiers ,优先事项,文件share和打开模式等)转换成被称为kernel objects,然后存储在内存中以备将来参考将旧的内核对象实现迁移到KAutoObjects,这是过去几个月新编写的实现的一部分,这些实现与任天堂交换机的内核工作方式更为匹配。这是一个很大的变化,包括重构代码库以保持一致性,并充实各种现有内核对象的实现及其定义以匹配新的行为是正确的。部分工作还包括改进一些系统调用(所谓SVCs)通过实现诸如 非共享内存,并使其他调用的实现更健壮(例如,更好的错误检查等)SVCs是游戏或用户软件用来向操作系统发出信号,表示他们要执行他们没有必要权限的操作,例如访问硬件元素,例如某些I/O设备。因此,进程要求具有最高权限的实体-即,内核-代表它执行这些操作SVC公司函数对于进程和操作系统之间的通信至关重要,因此它们的正确运行是必不可少的,因为它们是在游戏需要内核执行需要提升权限的操作时运行的程序。 随着固件版本的引入12.0.0,协议进程间通信 (IPC)也已更新。bunnei在对IPC和会话管理的各种改进以支持TIPC-新协议 IPC是操作系统提供的一种机制,由进程之间用来进行通信,通常用于管理或合作处理某些共享资源,如内存区域、文件等阶段在这个上下文中,指的是一个对象,它被创建来管理客户端(即游戏)和服务器(游戏用于显示图形、播放音频、获取用户输入等的服务)之间的信息交换session management已更新以支持新的工控机协议中,另外修复了一些错误检查功能中的错误。bunnei也大大简化了原来的IPC代码,它应该提高内存使用率和这些操作的性能。 由于前面介绍的变化KAutoObjectPR,许多内核对象的最大值已经开始强制执行。这导致了经常开闭式游戏的增加,比如任天堂Labo ,Pokémon Sword,和 口袋妖怪盾牌,因为yuzu没有正确地管理会话。根本问题也是直到现在才被注意到的小内存泄漏的原因,因为会话没有被正确关闭并保留在内存中。为此,bunnei在后续公关,它纠正了会话计数器及其打开和关闭操作的工作方式。 还有许多其他的内核对象需要迁移,为此,bunnei引入了一个PR来实现KSlabHeap同时使用来宾和主机分配,因为这将在实现缺失功能和其他结构的同时促进该过程。 简单地说板坯堆是一种用于在内存中更有效地存储内核元素的结构链接列表,根据它们的大小。一块内存中的所有插槽大小相同,也可以有不同大小的列表来存储不同的对象。内核不会分配和释放内存,而是将列表上的节点标记为“已使用”或“空闲”,因此当需要存储新对象时,另一方面,如果一个对象不再需要,它存储的节点会被标记为“空闲”,这样就可以用来存储一个新的对象,这样内核就可以更快地找到频繁请求的内存大小,为整个过程提供一个小的优化。 到目前为止,yuzu还没有模拟任天堂交换机的完整内存结构,模拟的内存空间只提供足够的功能来运行单个进程(即游戏),而其他所有服务,如内核,是在虚拟内存之外分配的。这个实现是因为游戏不允许访问内核内存,所以,当yuzu从执行游戏切换到运行某个内核过程时,它只是通过高级仿真在内部进行处理(HLE)实现,游戏完全不知道任何上述过程的存储位置。但是,游戏确实需要访问某些元素,因此,它们必须在模拟内存中线程本地存储 (TLS),模拟线程使用的内存区域,用于存储只有它们才能看到的变量,但它们的对等线程都不能访问这些变量,因为线程只能访问自己的变量TLS公司因为这些实体可以在KSlabHeap,以及其他不需要在游戏可访问的模拟内存中的实体,bunnei引入了这种混合方法,以便yuzu能够管理所有内核对象的slab列表,而不管它们是否需要 HL公司或存储在虚拟内存中 当然,还有许多其他的东西需要充实和实现。内核是系统的一个重要组成部分,它使其他一切工作成为可能。对这个组件的任何改进和添加都会使仿真体验更加健壮,并巩固仿真器如何工作的准确性。 Morph也一直在关注内核,重构部分IPC代码并向弹出进程的ID,修复了一个小错误返回了错误的值,并在内存管理器的函数 . 然而,这个月真正的波约珍珠是他的yuzu公共文件系统接口的改造利用std::filesystem在c17中引入的库,作为维护人员所做工作的延续莱昂卡什 . 文件系统接口是控制yuzu如何访问文件的代码(例如,创建保存文件,或者yuzu如何为游戏加载DLC和更新文件等) 图像,从该项目继承的许多函数并不像这个新添加的库中包含的那样新,或者与yuzu使用的新虚拟文件系统不兼容,或者根本就不使用。 有了这个巨大的公关,在Morph反向设计了文件系统,以便让yuzu的行为更接近它在任天堂交换机上的工作方式,他消除了简单代码的混乱,重写了整个实现,修复了Windows版本中旧代码在这个过程中存在的一些问题。作为额外奖励,他还记录了yuzu的所有文件系统功能。 虽然这些变化不一定会提高最终用户的性能,但它们确实解决了yuzu处理文件的一些长期问题,除了显著简化代码库之外,这使我们的开发人员更容易阅读和维护。 屏幕键盘更改 Morph一直在努力修复软件键盘。 游戏接收到的是内联键盘的文本字符串,而不是常规的文本字符串,导致发送的字段为空,这可能会导致游戏死机,因为这意味着发送了一个无效的条目从右键盘类型发送正确的信息。 用户在中命名规则集或控制器布局后按Enter键时报告崩溃Super Smash Bros. Ultimate.事实证明 QLineEdit::returnPressed信号产生a竞争条件,导致撞车切换到Qt::QueuedConnection解决了这个问题 此外,测试证实,如果执行文本检查,游戏可能会使内存区域未初始化,并且不会导致任何结果Failure或确认,再次导致崩溃。通过只阅读文本检查消息. 感谢gidoly和OZ帮我找到这个! 最后,还有一个问题,鼠标输入被软件键盘捕捉,直到用户移动到下一个事件当yuzu失去焦点时释放鼠标输入。 错误修复常规 让我们从讣告开始这一节,敏锐的用户可能已经注意到旧版本曾经有一个。点在标题栏的末尾。可疑的点目的不明传说 当恢复以前未完成的任务时,史诗男孩,在标题栏上显示游戏版本时,找到了与存在相关的代码点,决定杀了它 当然,是点不会没有战斗就消失了,删除它会导致yuzu版本的信息从日志甚至“关于我们”窗口消失!莫夫是下一个被国王选中杀死怪物的光明英雄,他就这么做了 . 因此,神秘的传奇点现在结束 说到传奇, 火以我们无法理解的方式工作允许yuzu为模拟交换机设置昵称和实施DisableAutoSaveDataCreation服务是鲨鱼给我们留下的惊喜。顺便问一下,最后一次服务?它是由 Mii编辑 . 变形把´导入客户端PKI´ 以及´导入服务器PKI´ 服务,制作JUMP FORCE Deluxe Edition靴子哈迪斯计划将有助于游戏的可玩性。谢谢你,鬼,给我这些照片(跳跃力豪华版) 布诺修正了NVFlinger线程中的挂起关闭(用于合成),修复播放时停止模拟时的挂起Super Mario Odyssey你不仅要让我们走,马里奥,有时也要停下来。 虽然yuzu允许用户在NAND上安装任何东西,无论是updates、DLC,甚至是基本游戏,我们建议只安装updates和DLC,让yuzu使用用户提供的游戏转储位置来查找基本游戏适当地阻止了这个,并添加了一个警告 除了文章前面提到的,Shantae做了一些额外的工作才变得可玩。emulator.epicboy中的另一个模拟器实例解决了开机时的软锁问题通过在查询时创建层,但在合成服务NVFlingerand ogniK中找不到修正了撞车事故通过模仿nvhost-prof-gpu . 好样的女孩!谢谢你奥兹的游戏(山泰) Linux也应该得到一些爱,而且 限制性眩晕会给它的linuxdeploy公司引入了一个回归,如果运行我们的官方AppImages.toast解决了这个问题,它会导致任何文件打开对话框崩溃yuzu通过下载我们自己的版本作为我们的一个外部托管,使我们能够更好地控制Linux部署的更改,并修复崩溃。用户可以再次享受AppImage版本的易用性。 我们所面临的一个旧的限制是Qt二进制文件的过时版本,它决定“保留其旧的可信软件包”。通过将版本5.12设置为最低要求,并在外部添加5.15,我们可以确保在使用任何有效的编译器构建yuzu时不会遇到任何问题,无论是MSVC、GCC、Clang,甚至MinGW。 用户界面和其他生活质量改进 用户可以通过Emulation > Configure… > General > UI,并且可以在那里禁用“附加组件”列。以前,如果用户禁用了它,游戏列表将不会被刷新,这迫使用户找到创造性的方法手动执行此操作。感谢 行为的工作,游戏列表现在可以正常刷新,无需手动干预!附加组件显示安装和启用了哪些更新、dll和mod 不情愿地增加了CPU标签到每个游戏的设置。同时,删除了自定义RTC(实时时钟)以强制将其作为全局值。完全没有任何迹象 当我们讨论这个问题时,关于CPU设置选项卡的一些事情需要澄清。“不安全”最初只适用于缺少FMA指令集的CPU,这会导致游戏以非常低的帧速率运行。后来,我们发现了一个可以提高性能的修复程序Luigi’s Mansion 3通过降低精度。在中对此进行了描述一月份的进度报告 因此,我们推荐那些有FMA的cpu用户Accurate唯一的力量不安全的对于Luigi’s Mansion 3.使用不安全的已知会导致精度问题,例如,在Super Smash Bros. Ultimate。对于使用旧的或低端Intel CPU但缺少FMA的用户,请随时保留不安全的一直启用 我们在以下华丽而完美的表格中提供了一些例子: CPU系列 FMA支持 建议设置 Intel Core 4000至11000系列 是的 使用准确、不安全的LM3 Intel Core 500至3000系列及更高版本 不 使用不安全 英特尔Atom、赛扬和奔腾系列 不 使用不安全 AMD Ryzen系列 是的 使用准确、不安全的LM3 AMD FX和4000至9000 APU系列 是的 使用准确、不安全的LM3 AMD Phenom,3000 APU系列及以上 不 使用不安全 *LM3 = Luigi’s Mansion 3 toastUnlimited也给了我们选择在游戏运行时应用设置。这允许用户在播放时更有效地测试设置。请记住,需要重新启动才能生效的设置不会受“应用”按钮的影响。toast继续改进每款游戏的设置,还为自制程序添加了一个例外。由于大多数自制程序使用的游戏ID为0000000000000000,使用该ID保存每场游戏的设置将是无用的,因此,yuzu将使用自制文件的名称。 最后,干杯,继续德国的工作77和 托比 ,添加了重置默认设置的yuzu按钮 .就这么简单 有时在非常罕见的情况下需要这样做,例如,当无法启动时Super Smash Bros. Ultimate . 摇一摇,宝贝 german77一直致力于实现SDL运动,目的是消除我们对第三方程序的依赖,从Dual Sense、Joy Cons或Pro控制器等有效控制器获取运动输入。通过此PR,用户只需通过蓝牙配对控制器,yuzu将其作为有效输入设备接收,自动映射并启用运动支持,有效地减少在yuzu中使用betterjoy、ds4windows或其他第三方软件的需要。 另一份公关补充道检测两个单独的Joy Cons作为单个输入设备 . 为了在Linux端提供运动支持,v1993型允许在SDL2中使用HIDAPI . 工作继续微调传感器数据的解释方式,特别是来自非任天堂设备的数据。例如,PS3控制器在单个Z轴上操作运动,但将剩余的2个轴用无用的NaN值报告给操作系统,使任何运动计算都变得无用。将X和Y轴的值替换为零,德国77解决了这个问题。 游戏并不总是检查明显的物理限制。例如,在过去,当游戏处于停靠状态时,可以使用手持控制器仿真。这样做会破坏游戏Xenoblade Chronicles 2,因为游戏希望当Joy Cons连接到一个对接的交换机的轨道上时,控制台将禁用输入强制使用仿真Pro控制器别再奇怪的弗兰肯斯坦输入怪物了,拜托。 最后,由于事件处理中的一个错误,有时很难在yuzu映射模拟棒。在解决这个问题的同时,德国77修复了控制器列表中未列出的控制器断开连接导致的崩溃 . 未来项目 现在,我知道我们一直在开玩笑Project Hades,但我们有好消息!SPIR-V已经完成,GLASM正在进行最终测试,GLSL也不远了。只有很少的回归被压缩。一旦着色语言完成,以前的功能,如旧的异步着色器重新实现,微调完成,它最终将被释放。我们正试图与收割者一起发布它,但时间会证明一切。惊奇漫画终极联盟3:黑骑士团,终极幻想世界,尤希精心打造的世界 就这些人!非常感谢您在本月进度报告结束前与我们在一起。下次见!
新特性发布-Fastmem支持【百度机翻】 写成CaptV0rt3x2021年6月8日 嘿,尤兹!当你们所有人都热切地等待我们的着色器反编译重写的项目哈迪斯的发布时,我们认为我们会给你带来一个很好的惊喜,让你忙个不停。我们向您介绍,最新的添加于于祖的不断改进的功能列表-Fastmem(快速内存访问)! 这现在可以在最新的Yuzu早期访问构建(1759年或更高版本)中获得,我们打算很快在Mainline构建中提供这个版本。一如既往,我们要求您用这些构建测试各种游戏,如果您遇到任何问题、错误或崩溃,请通过不和Patreon频道。 注意:默认情况下启用此功能。 什么是Fastmem? Fastmem或快速内存访问(Fastmem)是仿真器开发人员和仿真爱好者中一个众所周知的特性.仿真器海豚和Citra Android在过去已经实施过。 所有现代操作系统都有“虚拟内存”的概念,其中可寻址内存(来自正在运行的进程)是一个内存地址的空间,只有该进程“已知”,例如,在您的PC上不和谐,或者在您的交换机上的超级马里奥奥德赛-这些地址被转换为开关的MMU(内存管理单元)的物理位置在交换机的物理RAM在游戏运行。MMU插图(Mdjango,Andrew S.Tanenbaum) 在Yuzu中,我们模拟了交换机运行过程的虚拟地址空间。但是,这意味着每次游戏试图读取/写入内存(每帧发生数百万次)时,我们基本上需要“解码”,在这种情况下,切换虚拟地址映射到我们的“模拟”交换机内存(分配给Yuzu的RAM)。当您考虑游戏读取/写入内存的数量时,这会增加大量开销。 Fastmem背后的想法是在偏移地址的主机(Windows/Linux)上映射模拟交换机游戏的可寻址内存。偏移量是常数。 技术-怎么做? 在开关上,我们有4GB的内存。硬件支持48位的虚拟内存(与x64一样);然而,交换机内核将其限制为39位,以节省一些内存用于存储页表。这导致使用512 GB虚拟地址空间(2^39)。(页表是用来存储虚拟地址和物理地址之间映射的数据结构。) 为了模拟这种情况,我们分配了一个巨大的页表,该表对开关的虚拟内存区域中的每个内存页具有一个可寻址的偏移量。单这张桌子就有1GB的大小!每当游戏想要访问内存时,我们都会查找这个表,这会导致大约10×64 CPU指令和两倍的内存延迟。延迟是:首先读取表的值,然后读取正确的内存。 然而,Fastmem使用主机MMU重建相同的39位虚拟内存。在这里,我们很幸运任天堂将内存限制在39位。我们不能分配48位,因为这是主机上的整个虚拟地址空间。 这会将访问内存的工作量减少到3+1x64 CPU指令,只需一个内存延迟。检查指针是否小于39位的3个指令和一个内存加载指令。我们需要这个大小检查,以确保超出边界的内存访问不会返回任何物理地址。 挑战 实现Fastmem需要在动力,我们的JIT重新编译器。 第一:A64 Fastmem支持的动力。 Dynarmic已有一段时间支持A32Fastmem(参见CitraAndroid)。A64 Fastmem支持最初工作于一年前,由MerryMage和vdwjermy合作但它从未被合并到主分支。 德格索斯曾与乐美清理干净这些更改合并了让玉祖从中受益。 第二:生成512 GB虚拟地址空间,其映射与交换机上的映射相同。 去年,由于POSIX mmap调用提供了与Horizon操作系统非常相似的特性,因此在Linux上实现这一功能非常容易。但这对Windows来说是一个巨大的挑战,因为Windows虚拟内存API更大,缺少一些特性。此外,虽然Windows页表是对齐的,Windows内存管理则是对齐的过时的原因 解决方案 结果,微软也意识到了这一点,并且经常修补他们的虚拟内存API。随着Windows 10 v1803的发布,他们的新API支持新的“占位符”内存,这并不受以前的限制。 感谢鱼64,他在他们的Gameboy仿真器中使用了这个新的API,并向我们展示了现在确实可以在Windows上支持Fastmem。不幸的是,这使得该功能仅适用于Windows版本1803及更高版本。 由于我们很久以前就已经满足了新Fastmem实现的基本要求,所以我们的DEVS能够迅速解决缺失的部分。本尼在yuzu中实现了非常需要的内核重做更改,degus清理了它们最初的linux概念代码证明,以及罗德里戈实现Windows Fastmem支持。布林霍克提供了宝贵的建议,并协调这些努力,以使功能发布就绪。 结果 作为额外的奖励,游戏启动/加载时间已经因为这些变化而得到了改善。感谢开发者罗德里戈,正常的GPU精度不再触发无数的异常在Smash字符选择屏幕上,将其性能从10-20 FPS提高到一个完整的60。超级粉碎兄弟终极 对于所有的游戏基准,我们使用了一台符合我们自己推荐的硬件规格的PC。在这个测试中,我们观察到在游戏的一些要求最高的区域,性能提高了15-60%。请注意在2.4Ghz处理器上进行了测试的标记标题,以综合地使其比平常慢,并突出其改进。*表示在2.4Ghz测试的标题*表示在2.4Ghz测试的标题
问一个成就 收藏家成就要求是不是要全部收集成999个?
Yuzu进度报告2021年4月【百度机翻】 你好,尤兹人!又一个月过去了,又写了一份进度报告。从新的固件版本到Vulkan补丁,我们有很多要谈的,所以让我们直接开始吧! 艾略西亚项目 如中所述它自己的专门文章 ,变形和 国王一直很忙 king*实现applet 玉祖用 第一步实现On-Screen Keyboard(或OSK)游戏使用的,以及Error Displayyuzu用来提醒用户错误、丢失数据或崩溃。 【图片】 各种键盘游戏请求的例子 另一个主要优势是增加了游戏板的支持!再也不用从沙发上下来拿键盘了。 【图片】 错误示例 部分工作包括解决Qt的怪癖,因此作为一个副产品,用户现在可以选择选择旧的Exclusive Fullscreen(建议在Linux上作为默认值使用),或新的Borderless Fullscreen(建议大多数情况下使用,并使OSK正常工作)。 无边界不仅为我们提供了更好的游戏板输入支持,还减少了屏幕撕裂,改善了一些AMD GPU上与时钟管理相关的性能问题。 投入改进 我们的Stereo Vision实现是对交换机的运动检测的支持,我们不是指Joy Cons,而是指实际的控制台。当开关在Labo护目镜中时,通常用头移动相机。 德国77实现了SevenSixAxis和ConsoleSixAxisSensor,继续从以前的工作完成人变形,允许您配置的运动设备自由地让您在兼容的游戏中环顾四周。 【图片】 请不要这样用它。。 左边和右边的Joy Cons都将他们的按钮映射到不同的内存位置,比如德国77发现了。他发现我们错了SL和SR按钮的位置。一次修复之后,一切都会恢复正常。 当你想玩的时候,一个长期存在的虫子Mario Kart 8 Deluxe在本地分屏多人游戏是一个冻结发生时,确认所有连接的球员。变形修正了这次车祸正在发送焦点状态更改消息小程序状态更改时 感谢你的仿真爱好者和riperiperi的帮助! 与其让游戏崩溃,不如让其他玩家崩溃! 从中获得灵感RPCS3 ,变形设置默认键盘输入更适合个人电脑用户。你不能打败WASD的移动,特别是当与鼠标瞄准相结合的时候。 【图片】 撕扯,按住并单击直到完成 连接到适配器的Gamecube控制器有时会报告游戏杆偏离中心,因为连接过程中发送的数据无效。德国77解决了这个问题在初始化期间进行4次测量,确保控制器找到它的中心,就像任何战士应该。 用户界面更改 行为又有了更多的UI改进! 首先,他们在上下文菜单中添加了一个收藏夹选项,所以你可以把你的一些游戏排在列表的顶端。 【图片】 右击它们! 另外,他们已更新筛选搜索的结果删除目录后。这修复了不正确的行为,如果用户决定修改游戏文件夹,同时进行过滤搜索。 最后,他们修复了在游戏列表中移动文件夹时导致文件夹展开或折叠的随机错误。 一些用户报告说Super Smash Bros. Ultimate可能会在加载我们的网页小程序时卡住,使整个游戏软锁定。原来applet使用的URL在被使用之前被删除了。变形避开了这个虫子通过延长URL的生存期。 现在12点了,是时候换新固件了! 上个月,一个巨大的挑战出现了:任天堂交换机的固件版本终于升级到了12.X版本,这让我们的开发人员忙着弄清楚到底发生了什么变化,需要实现什么。 多亏了德国77 , 史诗男孩 ,莱昂卡什,和变形,yuzu能够更新许多系统调用ID表(PR#6153 ,公共关系)、服务和功能表(公共关系 ,PRŦ6158 ,公共关系 ,普朗6160 ,公共关系 ,公共关系 ,公共关系),以及一些系统值(PRţ6155 ). 固件更新通常旨在提高硬件和补丁漏洞的稳定性,但它们也可能在幕后增加对新功能的支持,这通常需要对服务、其结构和其他潜伏在操作系统中的怪物进行更改。因为未来的游戏可以利用这些东西,所以必须尽快整合和支持这些变化。 一般错误修复 最近, TOASUNLIMITED公司使用时发现了一些错误消毒剂:一些编译器中存在的一些工具,用于分析源代码并警告程序员与内存有关的问题(泄漏、溢出)、未定义的行为(在一个环境中工作但在另一个环境中可能失败的代码),数据竞争(当处理多个线程访问同一数据时出现的同步问题)等。这导致了一系列pr在yuzu的代码中实现修复,例如:阻止在作用域后使用堆栈,这可确保一旦引用丢失(可能会损坏所指向的数据),将无法再次访问以前通过指针间接访问的数据,避免引用绑定到未对齐的地址,以及将内存从一个地址复制到另一个地址时出现的许多未定义的行为错误(公共关系 ,公共关系,和公共关系 ). toastUnlimited还报告了他尝试玩游戏时发生的溢出Pokémon Sword和Pokémon Let's Go Pikachu的演示,与时钟实现的一些操作有关。这有帮助变形注意在实现CalculateStandardUserSystemClockDifferenceByUser功能,以及及时提交修复程序 . 不同的进程通过称为IPC(进程间通信),它们可以使用data buffers,通常用于大型数据传输,或raw arguments,通常由较小的数据集组成。对于该功能的时钟服务,该信息必须通过上述方式发送data buffers,但它被提取为raw arguments相反。这导致函数使用未初始化的数据(换句话说,垃圾)来操作,因为它检索到了错误的值。本来应该被报道为几毫秒的事情,却被报道成了数万亿年的时间跨度——大约是宇宙计算年龄的32万倍!值得庆幸的是,修复只需要一个小的更改,所以现在值从适当的缓冲区中退出,yuzu不再试图扩展时间(相对而言,如果你理解我的意思的话)。 史诗男孩对以前的工作进行了跟踪,旨在提高resource limits是在内核中使用 . 任何硬件资源都是有限的。内存量、I/O设备的数量,甚至处理器的数量,仅举几个例子,都有一个固定的值,如果不先更换硬件,就不能随意更改。操作系统中内核的许多功能之一是管理这些资源并将其分配给请求它们的进程—为此,它必须知道这些资源的可用性和限制。无论何时创建或删除进程,硬件都会通过检查和更新跟踪这些资源的变量来计算可自由使用和正在使用的内存量。 以前,yuzu以这样一种方式创建流程:流程的每个实例对resource limits. 这是一种解决方法,以确保每当进程向内核查询可用内存量时,总是返回正确的值。然而,这并不是硬件的工作原理。内存是系统范围内所有进程共享的资源,内核的任务是协调这些资源如何在系统中的进程之间共享。 使用此PR,进程不会“拥有”自己的resource limits,它们现在使用全局内核实例。 动态的-yuzu的JIT,用于翻译交换机的ARM CPU指令-最近再次更新,以便增加代码缓存的大小(yuzu存储翻译后的代码),并添加对来自thumb32设置,扩展可翻译的代码量。 脱气的测试时发现代码缓存太小The Legend of Zelda: Breath of the Wild,并发出警报愉快的,首席维护人员,关于这个问题。 【图片】 没有物品,只有最好的,最终目的地 令人惊讶的是,这个简单的改变在一个完全不同的游戏中解决了一个非常令人讨厌的问题:奇怪的速度减慢Super Smash Bros. Ultimate. 结果发现,这些减速与运行yuzu的计算机的功率无关,也与构建着色器缓存无关。dynamic只是再次翻译代码,仅仅是因为存储已翻译代码的缓存太小。但是现在,有了新的size值,dynamic就不需要重新编译了,仿真可以顺利进行。 继续上一个Super Smash Bros. UltimateSpirit Board的修复,变形已将网络时钟同步到本地时钟,解决游戏计时器重置问题。 变形也固定了GetClockSnapshotFromSystemClockContext .这个公关允许Super Kirby Clash和Yo-Kai Watch 4启动 【图片】 支持! 变形留茬SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled和德国77添加ectx:aw服务制造的Pixel Game Maker Series Werewolf Princess Kaguya靴子! 【图片】 右图来自最近的一个公关,将在下一个进度报告中提到(像素游戏制作人系列狼人公主卡古亚) 游戏目前有渲染错误,特别是影响Nvidia硬件。AMD的用户将有一个更好的体验在这个特别的游戏现在。 图形改进 为了我们热核笔记本电脑用户和大量的多任务处理者 脱气的请你吃一顿。通过避免旋转循环在视频核心中,可以在不损失性能的情况下获得更多的空闲时间。这意味着GPU可以进入sleep状态更频繁,从而降低温度/功耗,延长电池寿命,并允许调度器在后台执行等待的其他任务,提高系统响应能力。在暂停菜单上,不要再烧伤大腿了,笔记本电脑用户! 约书亚·阿什顿,青蛙大师 DXVK公司,给我们带来了一些Vulkan修复和改进。 首先要避免设备丢失(GPU锁定,驱动程序重新启动)正在检查vkAcquireNextImageKHR的返回值。 约书亚也是启用单个功能从VK_EXT_robustness2,而不是仅启用扩展 最后,修复空顶点缓冲区的错误偏移正确遵循Vulkan规范。你永远不知道司机什么时候会举止古怪。这样的修复允许开发人员向供应商的驱动程序开发团队报告bug,这要感谢确认一切都在规范之内。由此产生的任何错误由驾驶员团队负责。 OpenGL并不是唯一一个存在BGR问题的API,事实证明,当游戏使用A1B5G5R5_UNORM纹理格式 史诗男孩交换了红色和蓝色频道这种格式,在游戏中固定颜色Pokémon Let’s Go Eevee/Pikachu ,山泰:冒险的复仇,还有很多其他人!您可以在下面的图片中看到结果,前(左)后(右)。 【图片】 我不想被戳é天哪,蓝色(戳é妈妈,我们走吧,伊维!) 【图片】 那绝对不是维维(山泰:冒险的复仇) Linux构建系统 TOASUNLIMITED公司一直在为我们的Linux用户群定期改进yuzu的构建系统。并不是所有的用户都希望或能够使用正式的AppImage,因此不仅我们的构建说明需要改进,而且同样重要的是,改进yuzu运行所需的环境,即依赖关系、构建过程等。 第一步是生成SDL2外部依赖这将允许我们发布最新版本,而不必面对由于不同的构建标志(启用了不同的特性)而导致的Linux发行版的不兼容性,或者完全过时的版本不能支持我们输入的所有必需特性。 对SDL2的更改引入了与Conan提供的Boost版本的不兼容。将其作为外部依赖项下载确保兼容性,因为大多数时候发行版提供的本地包是不够的。这一变化也使得我们的外部下载脚本与Windows和其他需要特殊解决方法的发行版跨平台。 作为一个特别的好处,由于所有这些变化,Red Hat EnterpriseLinux8及其衍生产品可以以一种更加用户友好的方式构建yuzu。 对于任何感兴趣的人,我们会不断更新构建说明在这一页上 未来项目 这个部分最近变成了哈迪斯项目的调侃,但我们不会为此道歉!以下是更多信息/调侃: 在为OpenGL实现SPIR-V的过程中,我们发现Nvidia决定采取懒惰的方式,将SPIR-V转换回GLSL,然后再将其编译为GLASM。这不仅破坏了我们在默认情况下切换到SPIR-V时期望获得的任何好处,而且还导致了巨大的延迟和渲染问题。我们也被迫在Hades项目中实现GLSL,引入了大量意想不到的额外工作。 最佳使用细分着色器 这将为Nvidia硬件提供更好的兼容性,再次将费米从阴沟中拯救出来。 关于其他项目新闻,Morph的Gaia项目正在增长。德国Kraken正在努力工作。布内烤箱里的果仁变化更多。 就这些人!感谢您一直支持我们,下个月见!
本来想做壁纸了发现做不了
效果不怎样吧
【柯哀王道】这个是我制作动态壁纸
我自己制作的动态壁纸
yuzu进展报告2021年3月【百度机翻】 你好,尤兹,我们与三月的进度报告,为您提供我们的最新消息!我们继续更新内核,已经为特定的硬件做了一些考虑,我们有几个变化和修复需要讨论,我们有一个项目哈迪斯的进展情况。 一般错误修复和改进 变形去营救!固定计算器允许Super Smash Bros. Ultimate’s精神板开始工作!单独的公关改进时钟快照修正定时器。更多的工作是需要的,以使世界的光明可玩,我们继续为它战斗!(超级粉碎兄弟终极) 那些关注我们之前的进度报告的人会注意到,我们有时会在服务是stubbed(基本上被忽略)允许游戏进一步发展。每当游戏更新或新游戏使用未实现的新服务时,此过程都需要手动干预。为了减轻用户的挫折感,震中男孩落实自动修整,继续前期工作从…好的。 通过这种切换,游戏将忽略任何未实现的服务并继续运行,从而允许开发人员将精力集中在需要紧急、适当实现的服务上。这绝不是一项新发明。过去有几个仿真器使用这个特性带来了很大的好处,减少了开发人员的负载,并为最终用户提供了更好的体验。 请记住,每次引导时,自动存根都将始终被禁用,因此必须手动为每个会话启用自动存根,方法是Emulation > Configure > General > Debug > Enable Auto-Stub.你可以在这里找到它,在图片的底部,在高级部分 变形自食其果将模拟交换机固件版本更新为11.0.1,和那是NgWord版本,改善与最近的游戏的兼容性,并解决一些奇怪的错误。例如,Disgaea游戏不再需要一个固件转储是可玩的。 我们现在在命令行参数中添加了一些新的内容,这要归功于德国77。用户可以选择要加载的用户配置文件通过添加-u #根据他们的命令,用#是侧写号码。例如,通过使用yuzu.exe -u 1 -g "path_to_game",将选择第二个配置文件。 为了减少下载Yuzu时的文件大小,并在从源代码构建文件时减少下载大小,吐司返工Ffmpeg是如何连接的。通过这种方式,只构建了Yuzu所需的内容,从而减少了该模块所需的大小和构建时间,此外,Linux用户还将避免发行版中可能包含的过时版本的问题。数据封顶用户欢欣鼓舞! 伊万·博伊科夫修正按下“取消”将导致目标文件夹错误的问题。在文件系统配置中。没有什么比生活质量更好的了! Microsoft Visual Studio默认情况下,将编译具有与本地开发人员PC区域对应的字符集的应用程序。这一限制在试图建立我们的资源时,可能会给某些地区(如亚洲)带来问题。Morph绕过了这个限制通过强制UTF-8字符集。作为一个额外的好处,一些UI元素,如上下箭头开始呈现。免费奖金。没有比一个好箭头图标更好的了。 而我们需要做大量的工作MONSTER HUNTER RISE运行,包括完成着色器反编译器重写和实现异步软件键盘,这并不意味着奥格尼克不能开始一些初步的工作。在这种情况下,重点是改进Parental Control模拟,使它更接近交换机的本地硬件实现。 图形改进 自引进以来Asynchronous shaders我们注意到并不是所有的司机都喜欢这个功能。特别是,Intel Windows OpenGL和专有的AMD驱动程序(包括带有肾上腺素的Windows驱动程序和带有AMDGPU-pro的Linux驱动程序)都鄙视这种设置,因为Intel在驱动程序级别忽略了它,而AMD完全跳过帧,导致大量口吃。 吐司 加上黑名单对于我们的红色和蓝色GPU用户,确保不发生性能或图形回归,同时试图使用他们的驱动程序无论如何都无法支持的特性。值得一提的是,异步着色器工作在Vulkan和所有免费的Linux OpenGL驱动程序,无论是AMD或英特尔。NVIDIA在API或OS与其专有驱动程序的任何组合上都可以正常工作。感谢泰伯181为了这个建议! 本尼实现了影响所有图形缓存(纹理、缓冲区、着色器)的优化。通过使用平面数组,缓存性能略有提高,更好的资源分配节省了一些内存带宽。一个小的,但可测量的5%的性能提升可以经历,例如,在Super Mario Odyssey. 技术修复,继续 这个动态性子模块最近在本PR中更新,将最新的变化与玉祖合并。多亏了.的努力欢快和现金,许多thumb32指令(ARM指令的一个子集)已经实现,增加了在Yuzu上32位游戏所支持的指令数量。 此外,所有浮点指令都会收到一些小的优化,以及在实现AVX-512扩展也修好了。也有一个问题AMD以前的动态麻醉禁用了BMI指令集(用于位操作),因为在这些处理器中速度极慢。然而,在禅宗3和更新版本上,这些指令的性能有了很大的提高,所以现在动态记忆允许这样做。AMD要使用的处理器BMI如果检测到的CPU足够快地执行它们,则指令。 所有这些变化都是有可能的,这要归功于温科洛敬令人动情的作品(它最终成功了),所以为伟大的作品呐喊吧! 回到内核更新,本尼 重新处理并清理内核内存管理代码。。顾名思义,这是操作系统的一部分,它在游戏请求时为游戏分配内存资源。随着这一变化,实现更接近于任天堂开关。与往常一样,这些更改使得支持任何未来的硬件修订以及当前正在进行的所有其他内核更改变得更加容易。 邦尼内存泄漏引起dummy threads。这些虚拟人被育祖用来与我们模拟的内核进行交互。每个“真实”模拟线程都有一个与之相关的虚拟线程。如在上一次进度报告,育祖利用纤维来模仿线程。然而,这些虚拟线程实际上并不使用光纤。使用此更改,bunnei通过删除创建光纤(仅用于“真实”模拟线程)来消除一些不必要的内存开销,从而减少了一些内存使用。 另一个也被邦尼修复的错误与JIT状态保存在页表更改之间。。一个页表是一种用于将物理内存映射到虚拟内存的方案,用于给进程一种印象,它们使用的是唯一的、连续的内存段,而不管这些内存实际存储在何处以及如何存储。由于动态编码的方式,每当Yuzu更改当前正在使用的页面表时,它都需要重新创建CPU JIT。但是,直到现在,在这种情况发生时,玉祖并没有适当地拯救和恢复这个JIT的状态。但是,通过这一更改,JIT所需的所有上下文现在都被正确地存储和检索。 输入改进 并不是所有的设备都能做到。N-key rollover,意思是同时按多个键/按钮,而不漏掉一些输入。为了这个,德国77已执行a为你按下按钮。这样你就可以让玉祖继续按下一个按钮,把你的手和设备从它中解放出来,同时你可以移动到其他的东西上!若要访问此功能,请右键单击“控件设置”中的“修饰符”按钮,然后选择Toggle button.右键单击任意按钮或修饰符 对于那些使用塞穆霍克为了通过Android设备提供运动,德国77有一个很好的稳定性改善为您!每个单独的套接字连接现在都需要其唯一的客户机ID。 在单独的PR中,german 77每个服务器使用单个UDP连接进行测试由于简化了通信,而不是每个控制器,减少了错误率。这项工作的最终结果是更稳定的连接运动装置。 Xbox 360和Xbox One控制器被错误地显示为Xinput Controller在我们的设备列表中,给我们的用户造成混乱。此外,默认的Pro Controller映射错误地交换了脸按钮。德国77 解决了这两个问题。坏的违约是坏的。 未来项目 哈迪斯计划,我们对着色器反编译器的重写,正在形成。在现在可以引导的游戏上,我们已经可以测量性能的提高和无数错误的修复。 这是一个偷偷摸摸的高峰,新鲜的来源。你可以说这是一个地狱的重写! 当我们的图形开发人员继续重写所有的着色器指令时,我们可以通知每个人,新的Vulkan管道缓存正在完全工作,存储和加载就像OpenGL的着色器缓存一样,甚至更快!不再有硬性碰撞(火灾标志:三栋房子) 除此之外,Rodrigo还实现了一种新的异步着色器“秘密技术”,它可以根据可用线程的数量进行更好的扩展,并产生零图形故障!Bokoblin杀手(海规则战士:灾难的年代) 我们将扩展这一信息,一旦哈迪斯出来,并有自己的专用文章。 全是这些人!非常感谢您允许我们占用您的时间,并在下个月见您!
ryujinx进展报告2021年2月【百度机翻】
yuzu进展报告2021年2月【百度机翻】 欢迎回来,尤兹,欢迎城市17二月进度报告!这次我们将讨论Vulkan性能改进、音频更改、如何充分利用计算着色器、新的输入添加以及更多内核重写。 新的最低要求 多亏了Linux的mesa驱动程序的进步,我们最近修改了我们的最低图形要求。 yuzu现在需要opengl4.6. 然而,任何以前兼容的硬件都可以通过安装最新的GPU驱动程序来达到这一要求,即使是旧的Fermi或GCN 1.0系列产品也是如此(AMD公司 ,英特尔,和 英伟达)而不是笔记本电脑供应商的网站(惠普、联想、华硕等),因为它将提供兼容和最新的驱动程序。谢谢变形为了改变! 另一方面,虽然vulkan1.1的要求没有改变,正如前面的文章所述,罗德里戈制造的VK_EXT_robustness2硬性要求这意味着更新的驱动程序现在是至关重要的,因为缺少这个扩展将阻止yuzu启动游戏,而在Vulkan.AMD上用户仍然需要安装最新的Optional要获得支持的驱动程序版本 VK_EXT_鲁棒性2. 在撰写本文时,最新版本是21.2.3,但yuzu会和 20.12.1 . 多GPU系统必须更新其所有驱动程序,即使对于功能正常但未使用的集成图形也是如此。 修复技术错误 快乐的最近在yuzu的实现中发现了一个bugSPSC环形缓冲器删除粒度模板参数这到底是什么意思?让我们解释一下! 缓冲区是一种数据结构,它在内存中保留空间作为插槽暂时存储信息:例如,音频缓冲区环形缓冲器是一种特殊类型的缓冲区,最后一个插槽旁边的插槽是缓冲区中的第一个插槽(因此开始和结束是连接的)。一旦它满了,在从缓冲区提取一些信息并进行处理之前,不会添加新的数据。 SPSC代表“单一生产者/单一消费者”,是来自生产者-消费者问题计算机科学家提出的一种解决多个进程同时从同一个缓冲区读写时的同步问题。在这种情况下,一次只能有一个线程向缓冲区(单个生产者)插入数据,一次只能有一个线程从缓冲区(单个消费者)中删除元素。 可以为缓冲区的每个“槽”选择最小的大小,以利用存储信息的规律性信息粒yuzu中的环形缓冲区实现是为了尽可能的通用,这就是为什么粒度是程序员可以修改以满足他们的需要的参数的原因。Merry注意到,当将数据以不同于1,但由于没有不同于 one在yuzu,Merry决定完全删除参数,以简化代码库。 布诺一直在看时间码修正了挂钟的整数溢出-一种用于在模拟器中测量时间流逝的工具。以前,这些计算将使用128位数学来获得高精度,这在处理器上相当昂贵,因此进行了一些优化来执行64位数学运算。但是,这些优化带来了一个bug,计时数学会导致一个整数溢出,这个PR通过防止挂钟溢出修复了这个错误,现在一切都恢复了预期的工作状态。 bunnei还继续他重写内核及其代码库的活动。这一次,他一直在整理内存管理代码重构实现使其更接近最新的交换机固件,以便更容易从更新的固件导入代码。 此外,他改变了纤维到使用唯一的而不是共享的,但后来再次更改为使用弱\u ptr因为它在这个用例中更合适。 纤程与线程相似,只是不能并行执行产量控制进程中的其他纤程。在yuzu中,它们被用来更好地控制线程调度,充当内核从应用程序中快速暂停和恢复模拟客户线程的工具,而不必依赖操作系统调度器。 以前,光纤是通过一个称为shared pointer,一种存储其他对象的内存地址的变量,它“引用”它们,特别是这个变量跟踪有多少个对象共享\u ptr对某个对象的引用存在于程序中,并且在引用总数为零之前(即对象不再被使用时),内存不会被释放。如果这些引用没有得到适当的管理,某些指针可能会保留内存并且永远不会释放它,从而导致内存泄漏。因此,bunnei更改了实现以使用不同类型的对象weak pointer,类似于共享指针但它不会增加引用计数器,也不能删除原始被引用对象,因此,只有当原始指针被删除时,被引用内存才会被释放,而不管有多少其他指针被删除weak_ptr存在对相同内存的引用,消除了旧实现导致的内存泄漏。 内核的许多任务之一就是在进程需要资源时将其分配给它们, 史诗男孩开始了必要的工作利用更精确的资源限制实现,以便更紧密地匹配硬件行为。 无论是内存、线程还是端口,内核都会检查它们的可用性,并通过一个名为resource limit。通过将当前使用的资源量与资源限制进行比较,内核可以决定是否拒绝请求。这是因为资源是有限的,尤其是在像任天堂交换机这样较弱的硬件中。另一方面,PC没有任天堂交换机那样受限制。直到现在,无论何时一个进程请求资源,yuzu将创建自己的实例资源限制而不是使用一个系统范围的变量来跟踪它,这个PR只是准备对正确的行为进行反向工程并在模拟器中实现它的第一步。 把我画成你的一块法国画 史诗男孩本月还忙于实现两个功能计算内核,一种特殊的程序,编写成在GPU上运行,而不是在CPU上运行。最初,这些子程序用于计算亮度、暗度、颜色和其他属性,以便在屏幕上呈现3D图像。因此,这些程序很快被命名为着色器 . 现代的GPU被设计成将它们的工作负载分解成更小的问题,而这些问题又在卡的许多计算单元(类似于CPU核心的实体)中被同时处理。这种设计选择的原因很简单,因为并行化是处理计算机图形的一种非常有效的方案。一条指令能够同时操作多个数据组件,例如3D场景的顶点和纹理,并为每个并行执行线程(通常是一个像素)生成单独的结果。这增加了信息的吞吐量,特别是与在CPU上运行相同操作的性能相比。它们的潜力不仅局限于这些功能,还可以编写不一定在图形上运行的程序,我们仍然可以利用GPUs的高水平GPGPU -图形处理单元的通用计算-当有一个问题可以分为多个并行任务以便更有效地处理时,可以使用它。这些问题通常被称为embarrassingly parallel problems . 其中一个案例是使用计算着色器解码ASTC纹理 .ASTC代表“适应性可伸缩纹理压缩”,是ARM和AMD针对移动设备开发的一种相当新的图像压缩格式。任天堂交换机能够在硬件上对这些纹理进行本机解码,但这是大多数PC GPU供应商在其产品中缺乏的一项功能(除了Intel Graphics,因此,对这些纹理的解码是一项非常重要的任务,它会对性能产生巨大的影响。两个值得注意的例子是星体链和Luigi's Mansion 3,因为这两款游戏都大量使用这种格式,但在其他标题中也可以不同程度地观察到,这些纹理通常用于菜单图标、小地图等。 ASTC译码器新旧实现的比较 这导致了一个ASTC译码器通过CPU,这比GPU在缺乏本机支持的情况下能做的更快。CPU解码器还远未成为一个令人满意的解决方案,因为它消耗了宝贵的CPU资源,因此,当运行大量使用这种格式的游戏时,它会减速到停止。因此,解决方案是通过计算着色器来实现解码。因为这是一个令人尴尬的并行过程,从像素块可以独立解码,更适合在GPU上通过对数据的处理来实现 GPGPU。这样,CPU上的负载将转移到GPU上,允许仿真与纹理解码并行运行。作为一个附带好处,现在纹理始终保留在GPU内存中,因为解码时不需要在CPU和GPU之间进行传输,这意味着在解码完成后,不需要花费时间将纹理下载到CPU,然后再将其上载到GPU,就像以前的实现一样。 这个特性在Windows上的所有GPU供应商上都能正常工作,尽管在Linux上有一些问题(更具体地说,是AMDGPU-PRO驱动程序)这还需要解决。我们的开发人员正在努力解决这些漏洞,所以我们要求我们的礼服朋友耐心等待! 由于计算程序最初是用来操作图像数据的,所以它们也很好地解决了yuzu中使用的一个渲染api的问题:by使用计算着色器在副本上切换BGR纹理 . 【图片】 八达路旅行者的标题屏幕的颜色交换和适当的开关版本 在OpenGL中,颜色存储在通道中,颜色的布局方式因使用的格式而异RGBformat按“红、绿、蓝”的顺序存储颜色通道,而 BGR公司format按“蓝色、绿色和红色”的顺序存储频道。不幸的是,OpenGL内部不支持后一种格式,这导致了许多使用该格式的游戏出现问题BGR纹理:他们的红色和蓝色通道被交换,最终的图像看起来是蓝色的。 【图片】 蓝色的克里斯蒂娜看起来不错,但是红色绝对更适合斯坦斯的数码管 解决这个问题的方法是重新排列BGR上传到GPU的拷贝中的纹理。重新排序图像的图形信息以在显卡中处理它称为刷屏,所以这个PR的作用是将红色通道的值复制到蓝色通道中,反之亦然,这个过程可以通过并行计算来利用。这样,OpenGL的限制在GPU上被直接绕过,这些纹理在屏幕上按预期呈现。 一般错误修复和改进 Pokémon Sword and Shield玩家可以减少一次碰撞。老大 布诺修正了LDN初始化的问题,消除了播放器按下时发生的崩溃Y在游戏过程中(激活yuzu缺少的在线服务),仍然会弹出一个错误窗口,但是模拟会继续。 又一个Animal Crossing: New Horizons更新,另一个服务存根或实现以恢复可玩性。这次,存根GetSaveDataBackupSetting制造的1.7.0以后的版本也可以玩了。谢谢德国77 ! 在某些条件下WebApplet打开的时候会撞到玉足,比如说,动作指南在里面超级马里奥奥德赛 . 随机化设法通过修正越界读取 影响新用户的一个常见问题是提示将派生键放在正确的位置keys文件夹,一个必须手动创建的文件夹。感谢变形,现在有一个空的keys在yuzu的安装过程中默认创建的文件夹,可以由用户自己的开关键填充。 图形改进 少女一直致力于改进最近发布的Disgaea 6: Defiance of Destiny . 首先,瓦肯需要一些修正的偏移量对于TexelFetch和 织构机,纹理说明的类型 类似的变化是OpenGL所需要的。此代码还包括更好地处理signed atomics,提高精度。感谢 琉金感谢你的帮助 最后,实现glDepthRangeIndexedNV解决深度缓冲区中的超出范围的问题。 少女工作的结果(第六章:对命运的挑战) 罗德里戈修正了Vulkan的流缓冲区中的一个错误,提高性能并减少VRAM的使用,同时还可以更好地利用专用VRAM,而不是退回到共享VRAM,后者通常被称为系统RAM。 通过使用脏标志 ,罗德里戈还管理了另一个苗条,但可测量的,Vulkan性能提高。减少抽签总是有帮助的! 在花了很多时间做实验之后,罗德里戈缩小了瓦肯指挥库的规模这使得驱动程序为命令缓冲区分配的内存更少,从而节省了大量的系统RAM。 例如,在Pokémon Sword and Shield,Vulkan使用的系统内存从707MB增加到了2MB。 结束这一天,罗德里戈修正了由Buffer Cache Rewrite。有些游戏可以从跳过缓存中获益,但其他游戏则会失去性能。动物穿越:新视野是瓦肯受严重影响的一个例子实现一种启发式决定何时跳过缓存的方法,不仅恢复了性能,而且提高了性能。 投入改进 首先也是最重要的,德国77完成实施本地Gamecube控制器支持!有了这个变化,游戏现在将实际注册GC控制器,而不是注册为仿真的Pro控制器。现在Gamecube触发器被映射为按钮,但在将来的更改中,它们将被正确地作为模拟触发器处理。 变形后来补充道GC控制器的振动支架。 另一个新功能德国77增加的是棍子鼠标平移这允许用户将鼠标设置为模拟杆,在使用右模拟杆作为相机控制的标题上启用非常舒适的游戏。默认情况下,按Ctrl F9可切换此功能。 键盘战士们欢欣鼓舞!(塞尔达传说:野性气息) A单独PR更进一步改进了平移功能,使其具有更自然的控制。 变形实现了Finalize请求在内联键盘实现中,允许它以稳定和优雅的方式退出,而不是无限循环Super Mario 3D World + Bowser’s Fury . _图片:给了我们一个我们不知道我们想要的功能。他们增加了模拟杆的深度在控制预览中的Pro控制器。你自己看看结果! 没有什么能比得上生活质量的变化 音频成就 我们最需要的修复之一终于到了。Fire Emblem: Three Houses不再回响声音! 火负责这次修复实现了I3dl2Reverb。 如果暂停模拟并在一段时间后恢复模拟,则在音频赶上渲染之前,您将经历严重的口吃。德国77通过防止过度调度音频事件,允许在恢复模拟后获得无缝体验。 未来项目 克雷肯计划正在进行中。盖亚计划开始了。着色器反编译器重写程序Hades正在稳步推进。如果它继续这样,它将在内存回收器之前释放。正如您在本文中所看到的,bunnei在实现内核更改的过程中继续受到影响。 就这些人!像往常一样,谢谢你一直读到最后,下次再见!
进度报告2021年1月【百度机翻】 欢迎yuz-ers,参加2021年第一次进度报告!我们为您准备了很多东西:从内核和CPU仿真改进到另一个主要的图形重写。以下是一月份最重要的变化。 缓冲区缓存重写 当我们有一个专门的文章详细介绍了缓冲区缓存重写的改进(BCR) ,罗德里戈并没有坐视不动,继续改进缓冲区缓存。这些新的变化和改进值得关注。对于完整的上下文,我们建议在继续之前阅读专门的文章。 BCR提供性能和渲染改进(Xenoblade编年史最终版) Vulkan需要一些改进才能与BCR兼容。尤其是内存分配器进行了彻底的检修,改进了它的功能。 Vulkan中影响Intel GPU的性能瓶颈通过使用时间轴信号量而不是旋转等待。 前期工作已经完成让计算加速纹理解码器在不久的将来工作。 程序集着色器非常有限,很难使用,因为它们古老的起源BCR开发过程中面临的一个问题是,在为Nvidia用户提供着色器构建时间优势的同时,保持与它们的兼容性罗德里戈试图利用interops,允许从另一个图形API调用函数的功能。在这个特殊的例子中,他在OpenGL上下文中使用了Vulkan的新内存分配器。虽然在Windows 10和Linux中的结果令人满意,但这有一些局限性: 由于内存管理中断,Windows 7不稳定。一个已知的问题,在这个现已停止使用的操作系统的生命周期内从未修复过。 费米时代的gpu(主要是400和500系列)不得不跳过组件着色器,因为Nvidia从未添加Vulkan支持。 因此,作为目前的解决办法,旧的pre-BCR方法目前已经到位。由于与更新的GLSL实现相比,此方法在某些游戏中可能较慢,因此当Rodrigo处理不同的实现时,默认情况下禁用程序集着色器。如果您在游戏中获得可玩性能,请随意重新启用此设置。你可以在Emulation > Configure… > Graphics > Advanced tab Vulkan用户被建议将他们的GPU驱动程序更新到最新版本,因为BCR进行了扩展VK_EXT_robustness2AMD公司现在可能需要一个可选的AMD公司的最新版本的NVIDI驱动程序的更新,而不是以前的AMD公司提供的最新版本的驱动程序可选驱动程序下载支持,以获得相应的驱动程序版本以访问这个有价值的Vulkan扩展(在编写本文时)。 几款游戏现在更喜欢HighGPU精度超过默认值正常值。用户可以在播放时通过转到Emulation > Configure… > Graphics > Advanced tab > Accuracy level。我们建议用户使用此设置以找到最佳性能,但要避免极端目前的价值,因为它要么会导致非常低的性能(预期的结果),要么完全崩溃的游戏(不是故意的,正在调查)。虽然整个系统都有很大的改进,但这张图显示了集成gpu不断与CPU争夺RAM资源的局限性。拥有自己的快速专用车载VRAM对性能非常重要。 分析时间。如果将此图与BCR artricle,你会注意到一个小的综合织女星设法击败了一个专门的北极星卡Fire Emblem: Three Houses这是因为新的GPU架构提供了对交换机仿真有用的特性。光线追踪不是镇上唯一酷的孩子! 任天堂交换机中的tegrax1 SoC提供了对FP16的本地支持,性能比为2:1,允许游戏在进行浮点运算时比普通的FP32性能提高一倍。一种在有限的硬件上实现更高帧速率的简单方法。Vega(GCN 5.0)、Turing、Gen 9 Intel Graphics及更高版本都提供了对FP16的本地支持,也就是AMD称之为“快速打包的数学”(Rapid Packet Math)。像Polaris(GCN 4.0)、Pascal和更老版本的系列可能会在驱动程序中提供支持,但不会提供性能优势,对于Pascal来说,它大大降低了性能(比FP32慢64倍),在这种情况下,FP32被用来模拟FP16,显然不会带来性能的提高。 这是我们硬件要求将Gen9.5、Vega和Turing卡列为推荐的GPU。Maxwell v2、Vega、Gen9及更高版本系列也提供conservative rasterization,这是yuzu将来可以利用的一个非常有用的特性。 一般错误修复和改进 让我们从好消息开始吧,冠军利昂不能再默认获胜了!多亏了奥格尼克的工作,正在注销已注册的事件,游戏如Pokémon Let’s Go Eevee/Pikachu和神奇宝贝宝剑/盾牌当游戏要求播放视频时不会软锁。一定要打败他们,是吗?让我们战斗吧,这次是真的!(神奇宝贝宝剑) 生活质量的改善,虽然看起来很小,但仍然需要多方面的考虑。变形制造的停靠模式默认选项,旨在为用户提供最高的游戏质量,并消除用户在游戏中体验到的闪烁Super Mario Odyssey在未固定模式下运行启用程序集着色器的游戏时。具有集成、慢速和/或旧GPU的用户应考虑使用未固定模式,因为降低的分辨率和细节级别有助于避免性能瓶颈。 德国77解决了用户在玩游戏时遇到的一个最常见的问题Super Smash Bros. Ultimate ,如果创建了多个用户配置文件,则无法启动游戏。由于此修复,用户不再被迫使用列表中的顶级配置文件玩游戏。 toastUnlimited继续他在Linux上的工作AppImages现在是玉祖的AppImage内部版本可以更新,将下载大小减少到9MB左右if you use AppImageUpdate. 通过改进nvflinger,任天堂交换机的显示服务,bunnei制造的Katana ZERO又可以玩了 意外又来了修复数据竞争最近的一次内核变化,epicboy同时也修复了之前造成模拟器崩溃的无限FPS mods。 通过正在修复无效的缓冲区索引错误,变形能够解决启动过程中的各种故障Super Mario Maker 2由于文件系统问题而发生的。 在声音发展的永恒折磨中,ogniK实施FlushAudioOutBuffers ,使魔鬼可能会哭系列可播放看看图片,这就是你知道的,它的真正意义(恶魔可能会哭2) 其他图形改进 我们有三个公共服务公告,每个GPU供应商一个: 首先,一个消息给AMD的用户RX 5000系列显卡VK_EXT_extended_dynamic_state在Windows上所有基于RDNA1的gpu上的Vulkan扩展。当时的驱动程序在使用这个扩展时不稳定,导致yuzu崩溃到桌面上。此块已被删除通过罗德里戈,但请记住,用户需要运行20.12.1或更新的驱动程序版本。“Navi”用户可以期待几个图形修复感谢这一变化。 该蓝队了。关于黑名单的话题,罗德里戈不得不禁用Intel Windows Vulkan驱动程序的FP16数学支持解决影响稳定的问题Astral Chain。目前,半浮点运算将使用FP32数学模拟。如果游戏能够充分利用GPU的计算能力,这将导致性能下降。然而,在当前的英特尔图形中,光栅化(简单地说,就是GPU的原始功率)通常是性能瓶颈的第一个因素,甚至在受到上述操作影响之前也是如此。 多亏了这一变化和英特尔本地的ASTC纹理解码支持,英特尔显卡现在在这一特定游戏中拥有最好的渲染质量。我们正在等待一个驱动程序修复程序,以便一如既往地更新您的驱动程序!星光链集成GPU,达到每秒30帧(停靠模式) 最后,关于Nvidia。如果着色器缓存存储在Nvidia自己提供的目录中,则会施加200MB的文件夹总大小限制。BSoD发现,如果使用其他着色器密集型程序,比如Adobe的软件套件,那么这样的限制很容易超过。罗德里戈绕过了这个问题通过将缓存移动到yuzu自己的目录中,而不是使用驱动程序提供的默认目录。 使用此更改,我们建议在启用程序集着色器的情况下构建缓存,但一旦缓存完成或接近完成,请切换到常规GLSL(禁用程序集着色器)。这样(在启动时经过长时间的着色器编译后),将完全避免结巴Exzap从Cemu帮帮忙! 我们的鲨鱼,ogniK,实现了缺失的服务Stereo Vision ,任天堂交换机的虚拟现实实现任天堂Labo“耳机”。游戏如The Legend of Zelda: Breath of the Wild ,超级马里奥奥德赛 ,Super Smash Bros. Ultimate,和蟾蜍船长:寻宝者现在可以为双眼渲染 虽然这还没有为兼容PC的耳机提供完全的虚拟现实支持,但它允许用户像谷歌一样制作自己的硬纸板耳机,只要它们是手工制作的。Pro提示,流到手机或平板电脑上。如果你想在大屏幕上使用它,你需要大量的纸板(塞尔达传说:野性气息) 通过修正常量缓冲区的大小计算 ,Undertale现在可以在OpenGL中运行,同时禁用程序集着色器,允许游戏在Intel和AMD gpu上运行。罗德里戈将不再拥有时间不好 缓冲缓存重写有助于揭示游戏中的新问题,例如几何爆炸Zombie Panic in Wonderland DX .罗德里戈修正了这个正在刷新CopyBlock上的目标缓冲区。需要做更多的工作,使这个游戏看起来正确(僵尸恐慌在仙境DX) 纹理缓存重写的一个重要附加功能是支持Format Views不幸的是,AMD和Intel的Windows驱动程序有一个损坏的实现,格式视图必须被禁用以修复渲染问题。蘑菇黑暗世界?(超级马里奥奥德赛) 我们很久以前就向这两家供应商报告过这个问题,但在Windows上OpenGL似乎不是一个优先考虑的问题。另一方面,Linux mesa团队,有好极了响应时间任何API的错误报告。 在Linux方面,最近的变化使Vulkan Intel驱动程序anv不兼容。由删除非关键要求(目前),以及正在修复初始化,罗德里戈恢复功能 由于它经常使用相当大尺寸的ASTC纹理(远大于任天堂开关的显示分辨率),Astral Chain是测试yuzu软件ASTC解码器稳定性的一个很好的例子。由于读写越界,游戏崩溃很常见,罗德里戈通过以下方式修复此问题提高了解码器的鲁棒性。 尤凯,兔子和朋友们 MerryMage最近对Dynarmic这提高了一些游戏的性能。 我们从一种PR,它引入一个设置来从JITed代码中删除一些NaN检查。这必然会导致这些值和其他特殊值的表示精度降低,这就是此设置的原因unsafe。但是,这也提高了大量使用NaN值的游戏的性能,例如路易吉的豪宅3(尤其是在basement 2和12楼以前性能会大幅下降的区域)。可以在中找到此设置Emulation > Configure > CPU > Unsafe作为切换选项,NaN处理不准确 . 路易吉的豪宅3,新的和旧的。由于这一公关,游戏的总体性能大大提高。 在任何数字系统中,所有的数字都是以二进制为基础来存储和进行运算的。当然,数字的数量和表示它们的精度是有限制的,更不用说一个数字可以用多种方式来表达,只要声明它是一个不同的类型(例如整数,浮点同样地,也有许多数学元素本身不是数字,而是由数学运算产生的特殊情况。例如,想想负数的平方根:尽管这个运算的结果是有效的复数,它不是一个定义的类型(即计算机可以理解的数字),因此,它变成别的什么或者考虑将任何数字除以零:这个数学运算是未定义的,因此它会产生类似的结果。 这些类型的不确定性定义为一个特殊的浮点值,称为NaN-任天堂交换机的CPU架构(手臂)处理这些NaN值的方式不同于任何计算机CPU所使用的体系结构(AMD64)。例如,在手臂,它总是在AMD64。这些NaN值也可能是安静的或signaling-一种特性,它决定CPU是在操作结束时,还是在中间步骤(根据程序的不同,可以暂停或不停止)中检测到一个NaN值。Dynarmic负责将游戏代码从手臂将体系结构转换为指令AMD64架构。这包括确保这些NaN值被正确表示。然而,通过切换此优化,为了提高性能,dynarmic现在跳过了许多检查。原因很简单:大多数软件,包括游戏,都忽略这些值的符号和有效载荷,因此忽略它们是安全的。 MerryMage也提交了在执行ISB指令时防止刷新缓存的PR,修复了一系列以1-2fps运行的游戏,例如Cobra Kai,Megadimension Neptunia VII ,Super Robot Wars series ,风行以及其他许多人Megadimension Neptunia VII 为了更快地处理指令,现代CPU从内存中读取程序代码并将其存储在高速缓存中,因为这样访问时间要快得多。但是处理这些指令并不是一个即时的任务。首先,从缓存中取出一条指令,解码、执行,然后将结果写回寄存器或内存中这个过程效率更高,CPU对每一步都有一个专用的电路,它们同时为不同的指令执行这些任务指令流水线 . 这个ARM体系结构有各种特殊的指令(称为内存屏障指令)这样CPU就可以更好地控制指令是如何写入程序内存的ISB,它代表“指令同步屏障”,用于刷新CPU管道和缓存,以便所有遵循ISB指令是从内存中引用的。通常,这在运行自修改程序时很有用,因为有新代码被写入可执行内存(程序存储在那里),刷新排队的指令可确保不会运行旧代码。因此,当dynamic执行ISB指令时,整个缓存都是在假设它已经过时的情况下被刷新的,这导致yuzu不断地刷新和重新编译缓存,这意味着某些游戏的速度严重减慢和性能下降。 现在,这里有一个问题。任天堂交换机是一个平台,除了一些例外,不允许重写可执行代码。所以,永远不会有yuzu需要这样刷新缓存的情况,因为游戏无法覆盖内存中的代码。这个PR改变了dynarmic的行为,所以每当有ISB指令,它执行NOP(无操作)相反-一个什么也不做的特殊指令。这样,性能不再受到影响,因为yuzu不需要重建缓存,因为它安全地忽略了这些ISB说明 另一方面,bunnei一直在继续他在内核上的工作。上个月引入的第一个变化是PR重写线程以更精确。虽然由于更改的低级性质,对用户没有太多明显的好处,但它有助于修复许多较小的错误,包括Animal Crossing: New Horizons在场景之间转换时我们不评判你,伊莎贝尔(动物穿越:新视野) Originally, yuzu started as a fork ofCitra当然,还有一部分代码是在Citra上使用的,后来被修改为适用于任天堂交换机的代码。虽然它完全可以正常工作,但还远远不够准确。KThread裕祖的实施计算线程,这一变化旨在使其尽可能与真正的任天堂交换机内核的线程实现相匹配。 上个月引入的第二个变化是Refactoring of KEvent/KReadableEvent/KWritableEvent.A.公司Kernel Event是一个内核原语,通常用于跨进程“发送事件信号”。这是用于通信不同线程的最简单机制之一:一个线程发出事件信号,然后另一个线程等待它KReadableEvent和KWritableEvent属性只是用来进一步增强进程间同步的抽象,因此这三个对象被用来表示单个的“信号事件”。 例如,当游戏需要播放声音时,这些机制会产生声音KEvent当它准备好接收来自游戏的更多音频数据时,它会发出“信号”,这将与音频线程通信,这样数据就可以根据需要通过使用这些来提交和请求KReadableEvent和KWritableEvent属性 与以往一样,这些重写的主要好处是准确性。这些变化也将使任天堂在其内核上添加未来更新的代码变得更容易,因为这种实现的行为将更接近硬件,而现有代码不需要太多的更改来适应它。 还有更多的增加和改进的空间,所以请继续关注这个领域的更多工作。 在一段时间的不活动之后,FernandoS27带着公关回来了优化时钟计算通过引入一种新方法从cpu的本机时钟计算时间值,如纳秒、微秒、毫秒以及来宾时钟和cpu周期。这是一个相对较小的更改,但由于这些计算经常执行,所有优化都有助于减少这些转换所花费的时间。 输入更改 有什么比你在看到之前不知道自己想要的生活质量改变更好的呢?德国77这就给了我们设置控制器输入设置图像的动画你可以自己看到结果: 我喜欢移动它,移动它! 动画将突出显示当前正在按下的按钮。模拟杆还有第二个动画,使死区和范围的校准更直观。你的控制器在游戏中的行为将如设置中的动画所示,因此如果你认为你的输入有任何问题,最好检查一下它是否按这里的预期工作。 输入滞后,竞争性游戏的最大敌人…以及德国77来营救,通过防止过度调度事件 Pokémon Let’s Go Eevee/Pikachu可能会断开模拟控制器的连接,或无法识别连接对此过程应用延迟 ,德国77提高了此系列游戏的输入模拟的稳定性。玩此游戏仍然需要手持或单Joy Con输入模式,请务必在中检查您的输入设置Emulation > Configure… > Controls. 例如,将默认的Pro控制器切换到手持设备。 用户发现有些游戏可能会继续发送振动信号,这是由于游戏从未发送过0振幅信号。变形通过为任何振动增加1秒的最长时间。 在双连击中,变形和德国77打我们与手持模式有关的修复。处理了有关玩家1的错误行为,这通常会导致输入更改无法保存,尤其是在手持模式下。添加了一个检查以确保已连接手持模式只有在正确的npad_index价值观 按住按钮有时会结巴,导致行为不稳定。变形添加一个新方法来检查按下或按住按钮的持续时间,导致行为稳定 未来项目 缓冲区缓存重写的合并将为路线图上的一些改进和修复打开道路,epicboy将有一些有趣的东西来展示。变形是在做什么。德国77有什么事。奥格尼克有什么事。bunnei继续遭受内核重写的困扰。Rodrigo正在对Hades项目进行第一次测试,同时还计划对Vulkan和视频内存管理进行一些改进。 就这些人!非常感谢你和我们在一起。二月报告见! 记住孩子们,赢家会把他们的GPU驱动程序更新到最新版本!
【yuzu】【机翻】2020年12月进度报告 新年快乐,亲爱的尤兹人! 2020年终于过去了,那么有什么比进度报告更好的2021年开始方式了?关注我们,了解zuzu在2020年的最新变化,并简要预览未来的变化。这次我们为您提供内核更改,新的输入和用户界面添加,以及为完成“缓冲区高速缓存重写”而应用的第一个更改。常规改进和错误修复epicboy一直在忙于压缩bug,在这种情况下,一次PR杀死了两个。在某些情况下,我们试图从nvflinger缓冲区中读取数据甚至还不存在。通过添加针对此问题的支票,Yoshi的Crafted World现在可以启动,尽管有一些图形故障。此PR还修复了如何访问缓冲区,因此现在首次启动了多个游戏。例如:Katana ZERO,DELTARUNE第1章,Dragon Ball FighterZ和Wonder Boy:龙的陷阱。 现在启动!现在启动!我们的英特尔图形用户的PSA。随着Windows驱动程序版本27.20.100.9126的发布,英特尔不仅增加了对急需的VK_EXT_robustness2的支持,还增加了对VK_EXT_custom_border_color的支持,从而通过以前的扩展来提高性能和稳定性,并解决《塞尔达传说:狂野的呼吸》中的渲染问题。后者。对于运行Vulkan的集成图形人员而言,没有什么比免费改进更好的了。最新最好!对于我们的穿着燕尾服的用户,Linux发行版兼容性以及随之而来的依赖性问题一直是一个长期存在的问题……直到现在。感谢toastUnlimited,我们现在提供AppImage构建,从而大大简化了安装过程。 AppImages消除了可怕的依赖关系问题,并恢复了对Ubuntu 18.04,Debian Buster,CentOS 8和许多较早发行版的支持。将来,Early Access最终将能够像这样预编译分发,这是我们的承诺。由于减少了源代码编译工作时间,CPU Union批准了此更改。在早期访问中使用纹理缓存重写的过程中,修复了一些回归问题。其中一个臭名昭著的故事与《塞尔达传说:荒野之息》中的摄影符文有关。 如您在Rodrigo的……艺术中可以清楚地看到的那样,该游戏为同一个纹理提供了两个不同的尺寸值,分别称为间距和宽度,因此yuzu并未在它们之间传递所需的信息,因为它认为它们是不同的纹理。通过更改此行为,相机现在可以正确注册动物,花朵,敌人等实体。托尼,抱抱巨石(《塞尔达传说:荒野之息》)托尼,抱抱巨石(《塞尔达传说:荒野之息》)托尼,抱抱巨石(《塞尔达传说:荒野之息》)退出柚木时,发生了一些与遥测过程有关的崩溃。 Tobi从Citra移植了一个修补程序,该修补程序将AddField的类型更改为字符串,从而减少了一个错误。一个普遍报告的问题是,如果yuzu崩溃,配置更改将丢失。 toastUnlimited更改了此行为,以在启动游戏之前简单地保存当前设置。此更改节省了许多麻烦。Morph实现了Rei放在一起的新OSS字体。这样,用户不再需要转储Switch固件来获取正确的按钮字体。具有Mii相关内容的游戏仍然需要固件转储过程。使用ZL和ZR作为触发按钮要干净得多,不仅仅是字母,您同意吗? (超级马里奥制造商2)使用ZL和ZR作为触发按钮要干净得多,不仅仅是字母,您同意吗? (超级马里奥制造商2)使用ZL和ZR作为触发按钮要干净得多,不仅仅是字母,您同意吗? (超级马里奥制造商2)单独的PR为字体增加了+/-。动漫剑客(Super Smash Bros.Ultimate)动漫剑客(Super Smash Bros.Ultimate)动漫剑客(Super Smash Bros.Ultimate) 在此背后的过程中有一些见识。在此背后的过程中有一些见识。某些游戏在发送振动信号时报告错误的设备手柄,例如NEKOPARA Vol。 3(请勿搜索该系列)。 Morph通过在使用前验证设备手柄来解决此问题。文化人。内核重写yuzu的内核在本月进行了重要的更改,重点是重构代码以进行线程管理和同步。正如先前的进度报告所述,bunnei在两个月前就开始进行这些更改。尽管有些技术问题,但这些修改对于准确的Nintendo Switch仿真至关重要。它们还可以改善yuzu的代码质量,并使其更易于使用。内核中仍计划进行许多更改,因此请继续关注以在不久的将来进行更多改进。首先,yuzu进行了改进,以确保跨线程的安全内存访问。当多个线程同时运行时发生竞争状态,一个线程修改数据而另一个线程访问它。竞态条件可能导致错误或意外的行为:一个线程可以检索部分数据,甚至覆盖另一个线程所做的更改。 yuzu使用一种称为页表的抽象数据结构类型来模拟Nintendo Switch的内部存储器,该结构用作物理存储器和模拟存储器之间的虚拟层。它将这些地址映射到“连续表”中,使程序员可以轻松访问内存,而无需检查实际内存在哪里存储了所有内容。大多数内存管理操作是在实现多核CPU和异步GPU之前编写的。那时只有一个线程,因此没有线程安全内存访问的保护措施。 Bunnei在此PR中引入了一个锁,以缓解竞争状况,即在GPU对内存页进行操作时访问内存页中的数据。bunnei还一直在重写内核调度程序。现代操作系统同时运行许多进程,但是,单个CPU内核在任何给定时间只能处理其中一个进程。调度程序是内核必不可少的部分,因为它负责交换对不同进程的CPU访问权并选择发生的顺序。这将使yuzu的内核与Horizon OS更紧密地匹配。作为此重写的后续措施,Bunnei通过在各自的单独服务线程中分配其调用,对yuzu中实现服务调用的方式进行了重新设计。 Nintendo Switch在后台运行许多服务。他们负责初始化和管理特定任务,例如音频,图形,用户输入,网络等。yuzu通过HLE-高级仿真来仿真这些服务。这意味着,程序员无需从Nintendo Switch转储这些例程的二进制代码并转换其指令以使PC可以运行它们,而是用C ++重新实现这些服务的功能。因此,HLE就像一个“黑匣子”一样工作:只要有游戏请求,这些服务就会被调用,它们会发送(或询问)相应的数据,即使它们在内部可能与最初在Windows中实现该服务的方式有所不同。硬件。但是,只要通过服务请求或发送的信息有效且经过适当处理,就可以正确模拟系统。这些服务流程彼此独立,因此游戏会异步调用它们。但是在此PR之前,所有这些服务都在CoreTiming线程中处理-该线程用于在将来的特定时间(例如,当帧完成渲染时)处理事件。这意味着游戏会调用这些进程,但是直到运行CoreTiming线程,它们才会被处理,从而导致这些请求堆积在队列中,如果队列的清空速度不够快,可能会导致延迟。由于此PR中的更改,这些进程中的每一个都移到了自己的线程中,并且处理速度更快。此更改的直接好处是,加载时间显着缩短,并且输入滞后也减少了。但是另一个重要的优点是,这种实现更精确,因为它类似于Nintendo Switch中服务的行为。 GPU仿真现在也运行在其自己的线程上,该线程在GPU推送和刷新时同步。这意味着异步GPU可以与多核分离,并且这些设置现在可以彼此独立地切换。最后,作为前两个PR的继续,重写了内核同步原语-同步对象,条件变量和地址仲裁器。对这些机制如何工作的深入解释超出了本报告的范围,但从本质上讲,它们是不同进程中的线程用来相互通信并正确同步的工具。这些更改的主要好处是,从Citra继承来的许多代码(以及需要主要的变通方法以使其在多核中正常运行)已经更改,除了使它更适合于yuzu的工作方式之外,还采用了一些机制。更接近Nintendo Switch的Horizon OS的工作方式。为了应对这些同步更改,epicboy引入了PR,为nvdec合并了一个同步点管理器。这利用了前面提到的工具来实现更精确的GPU-CPU同步机制。模拟器在解码视频时执行异步操作时,避免竞争条件至关重要。使用者介面变更最后,非常需要的用户界面更改,这里是语言支持。多亏了Tobi和来自世界各地的许多社区成员所做的工作,我们现在可以为11种不同语言以及不同地区提供支持。 ¡Muchas gracias! 您可以在“仿真”>“配置”>“常规”>“ UI”>“界面语言”中找到它您可以在“仿真”>“配置”>“常规”>“ UI”>“界面语言”中找到它欢迎任何人帮助扩展产品
【yuzu】【机翻】新功能发布-缓冲区高速缓存重写 嘿,yuz-ers!最后是我们之前的大代码重写的后续内容:缓冲区高速缓存重写!这项艰巨的任务不仅可以显着提高性能,而且可以为我们的开发人员简化代码。现在,让我们开始这篇文章!那么,缓冲区高速缓存做什么?顾名思义,Buffer Cache就是缓存(存储)缓冲区。那可能没有多大意义,但这就是它的作用。在图形编程中,要让GPU渲染任何它需要的数据,例如位置,颜色等。通常,此数据由应用程序提供。但是,当我们有处理大量数据的大型应用程序时,不断为GPU提供数据并进行渲染变得越来越困难。因此,引入了缓冲对象。缓冲区对象是将渲染数据存储在GPU内存中的内存对象,从而显着提高了可重用性。绑定有多种类型,通常称为缓冲区类型,例如索引缓冲区,顶点缓冲区和统一缓冲区(以及其他)。由于数据现在可供GPU使用,因此可以提高渲染性能。柚子的缓冲区缓存回到yuzu的案例,yuzu最初继承了一个流缓冲区-最初是由degasus为Citra实现的。流缓冲区以修改/使用周期工作,这意味着您经常更新缓冲区对象并绑定该区域。 Rodrigo和Blinkhawk随后实现了我们现有的缓冲区高速缓存,以与流缓冲区一起使用。天生没有错。实际上,流缓冲区是将数据上传到GPU的最快方法之一。但是,当Rodrigo分析yuzu时,缓存管理和上载副本的速度一直在缓慢增长。问题在于游戏并非一直都在精确地流数据。因此,至少对于Nvidia而言,使用即时上传(在OpenGL上)和更快的缓存所产生的性能要比具有流缓冲区和缓存大资源的性能好得多。经过进一步测试,我们发现这对于OpenGL(AMD,Intel和Mesa)上的非Nvidia驱动程序来说是错误的,因此必须为这些驱动程序中的少量上传添加流缓冲区。现在有什么变化?缓冲区高速缓存重写的技术设计目标与我们的纹理高速缓存重写相同。更清晰的代码:不再需要虚拟函数调用或共享指针,这意味着将来可以更轻松地进行维护。提高效率和性能。在旧的缓冲区高速缓存实现中,解析哪个内存区域中存在哪个缓冲区是非常昂贵的操作。这就是存在流缓冲区的原因-使其更快。新的缓冲区高速缓存大大改进了对其高速缓存的各种缓冲区的跟踪。在新的实现中,当在内存中创建缓冲区时,它们被强制对齐到4K页(4096字节-从零开始)。为了有效地知道哪个缓冲区存在于哪个地址上,高速缓存使用宽度为32 MiB的平面数组从缓冲区存在的当前CPU页转换为缓冲区中存在的缓冲区。例如,如果地址是4096或7000,即第1页,如果地址是8192,即第2页。因此,新的缓冲区高速缓存可以跟踪缓冲区的哪些页面已在页面基础上被修改,而不是二进制州。想象一下,如果缓冲区的大小为524288字节,而游戏仅修改了该缓冲区的1个字节。如前所述,由于缓冲区现在已对齐到4096字节,因此只有那些4096字节被上载到GPU。当GPU尝试使用CPU修改的数据更新缓存时,也会发生同样的事情。通过使用缓冲区中的位阵列来完成此跟踪。每个值代表页面的状态-1被修改,0被清除。将事物保存在位数组中使我们可以使用高效的位操作,例如std :: countr_zero和std :: countr_one(C ++ 20)。这导致更少的指令产生相同的结果(快得多)。好吧,让我们来谈谈性能提升!这项工作的主要重点是提高性能,但是此重写也带来了一些图形上的改进。顶点爆炸不再是OCTOPATH TRAVELER中的问题顶点爆炸不再是OCTOPATH TRAVELER中的问题顶点爆炸不再是OCTOPATH TRAVELER中的问题字体渲染现在可用于Animal Crossing:New Horizons中的所有GPU供应商字体渲染现在可用于Animal Crossing:New Horizons中的所有GPU供应商字体渲染现在可用于Animal Crossing:New Horizons中的所有GPU供应商Xenoblade Chronicles Definitive Edition中的物品掉落停止闪烁顺便说一句,让我们来谈谈性能。当然,指标将根据所使用的硬件和API发生很大变化。以下是在列出的游戏中最苛刻或最常见的区域中进行几次运行后得出的一些示例:在本示例中,以RTX3070表示的Nvidia在OpenGL中的性能提高了84%。 另一方面,AMD代表小型RX550的d表示Vulkan最多提高了55%。 关于英特尔,出现了一个毫不奇怪的问题。 由于驱动程序不成熟,并且缺少Switch仿真的原始功能,因此当前所有发布的产品都会出现瓶颈。 此重写几乎不会导致性能提高。 希望可以通过对yuzu和英特尔未来的驱动程序和硬件版本的未来改进来解决。值得一提的是,基于AMD Vega的集成GPU在折纸之王Paper Mario中的性能提高了223%,达到了与更高水准的专用卡相同的性能水平。Xiǎoxíng RX550 de d biǎoshì Vulkan zuìduō tígāole 55%.
【残疾人】我希望仙剑奇侠传七还是回合制 就这样砍砍砍【即时制】的游戏和手游有什么区别
【外交】switch模拟器吧欢迎你到来 我在这里是个打酱油小吧主,我在switch模拟器吧是个大吧主,yuzu和ryujinx都可以聊 https://tieba.baidu.com/f?kw=switch%E6%A8%A1%E6%8B%9F%E5%99%A8&fr=index&fp=0&ie=utf-8
Ryujinx2020年11.12月进度报告 2021 is finally here, and we spent last year's final months on a compatibility expansion and bug-fixing spree. But before we take a look at all the improvements that finished out the year, we want to take a moment to celebrate and say thank you to everyone who helped us reach our first Patreon goal—Amiibo emulation support—so quickly; we'll be working hard to implement this feature into the emulator ASAP, so stay tuned! Separately, with today's emulator update we have delivered on our promise to list the names of those in the $10 & $20 monthly Patreon tiers in the Help > About section of the emulator; thank you for your support! We've added a couple of new Patreon goals and lowered the threshold for our Vulkan goal. These tasks are already on our to-do list, however meeting the below Patreon goals gives us the resources to immediately tackle each respective feature. (GOAL MET) - Amiibo Emulation In-progress, ETA 3-4 weeks: Allows emulated scans of a selected Amiibo and subsequently unlock exclusive content in games which support this function. $1000/month (almost there!) - User Profile Support ETA once goal is reached: ~1 month: This will allow the creation of multiple user profiles, the option of using a custom name instead of the current default name "Player", and the ability to use a custom profile picture instead of the current hardcoded (and very old) Ryujinx logo. We will also attempt to load the official profile pictures from the installed firmware, and provide them as an additional option. $1250/month - Vulkan GPU Backend ETA once goal is reached: ~6-8 weeks: This one is a biggie. Vulkan will significantly improve performance for and reduce the amount of graphical glitches on AMD GPUs and intel iGPUs. Moreover, SPIR-V (Vulkan shader language) is faster than GLSL (OpenGL shader language) so, even without a disk shader cache, there would be significantly less stutter on first run than on native OpenGL. $1500/month - ARB Shaders ETA once goal is reached: ~3-4 weeks: ARB shaders will further reduce stuttering on first-run by improving the shader compilation speed on NVIDIA GPUs using the OpenGL API. And now the progress report!GPU improvements: Buffer to texture copies size fix A bug on buffer to texture copies caused some Unreal Engine 4 games to crash. This bug was causing the emulator to copy too much data which in turn caused memory corruption, as unrelated data was being overwritten in memory. Fixing this allowed a few Unreal Engine 4 games to boot further, with the tested titles now reaching menus, but they unfortunately still crashed when attempting to start a new game.
分享视频
switch模拟器吧吧主竞选:NO.0001号候选人
yuzu官方中文来了 1257以后开始有中文
yuzu和ryujinx使用教程 http://tieba.baidu.com/mo/q/checkurl?url=https%3A%2F%2Fwww.bilibili.com%2Fvideo%2FBV1Xt4y1U7Mg&urlrefer=29217321765b33da2f091cc4323597d1
进度报告2020年11月【机翻】 敬礼,尤兹人!这是11月的进度报告,它将无限期地为您提供数百个图形化修复、改进的性能、内核更改、输入添加和主要代码清理。 4-JIT,一种4种 bunnei和Blinkhawk一直在研究yuzu的内核实现,寻找可以重构的bug或代码,也就是说,在不改变核心功能的情况下,重写以获得性能或使其更易于阅读。 这个内核重构PR重点介绍如何修改JIT(Just-in-time)编译器(一种模拟任天堂交换机CPU的基本工具)在yuzu中的使用方式。因为用户需要一个巨大的页面设置来减轻这些文件的变化。将默认页面文件大小设置为auto现在应该足够了,虽然有些游戏,比如超级粉碎兄弟终极版,可能仍然需要一个更合理大小的页面文件,因为所分配的资源非常多。用户可能希望将页面文件大小设置为10000MB以覆盖这些最坏的情况。 说到Super Smash Bros. Ultimate,这些变化也修复了一个软锁,这是在DLC角色“英雄”最后粉碎时经常发生的。你现在可以自由地将对手踢出屏幕,而不需要屏住呼吸和交叉手指。 英雄最后一击(超级粉碎兄弟终极) 此外,在许多比赛中出现的口吃已经消失了。这包括那些在Super Smash Bros. Ultimate在世界地图和教程视频播放之前超级马里奥奥德赛(视频播放也更加流畅)。 世界地图在超级马里奥奥德赛,前后(左)的变化,现在结巴免费! 所以,你可能会想,窗帘后面到底发生了什么? 计算机程序,如游戏,通常是用高级编程语言编写的。这些程序基本上由一系列语句组成,这些语句将由处理器按顺序执行,以完成不同的任务。但是,处理器不理解这些高级指令,因此它们被转换成一组更基本的二进制操作,称为机器代码,与系统硬件直接兼容。将源代码转换为机器代码的过程称为compilation,这将生成一个文件,该文件可以加载到内存中并由处理器从那里执行。 任天堂交换机使用了一个基于ARM的4核CPU,因此任何交换机游戏生成的机器代码都将与该架构完全兼容。然而,这就产生了一个问题,因为yuzu被设计为在使用AMD64体系结构的处理器的计算机上运行,而AMD64体系结构无法理解这些指令。因此,它们必须从客户机代码(ARM)解释或翻译为主机代码(AMD64)。有不同的方法来实现这一点,yuzu通过使用Dynarmic动态编译程序MerryMage实时执行这个翻译。这个过程,即所谓的JIT编译,读取内存中的程序块,解码指令,并发出翻译后的代码,以便主机CPU可以运行它。通过调用dynamic,可以将游戏代码重新编译为在主机架构上本机运行的机器代码。 以前,yuzu将为交换机上模拟的每个来宾线程创建一个dynamic实例。这导致同时运行多个JIT实例,如果不是更多的话,可能多达20个实例!结果,很多资源被这样不必要地浪费了。但是随着本PR中引入的更改,yuzu现在只创建了dynamic的四个实例:每个核心一个,这是一个更有效的解决方案。下面的图表比较了在这个PR实施之前和之后一些流行的游戏的内存使用情况;测试是在内部测试阶段进行的,而yuzu是在googlechrome和Discord上运行的。可以看出,内存使用的差异在3 GB到6.4 GB之间,这取决于游戏。在其他标题中也观察到类似的结果。实现4-jit前后的内存使用情况 bunnei仍在进行更多的清理工作,并寻找可以进一步改进的地方,因此预计将来会有更多的更新。 纹理缓存重写 我们已经详细讨论过纹理缓存重写在它的专用文章,所以简而言之Texture Cache Rewrite(这不是着色器缓存更改)由罗德里戈重新实现yuzu使用的旧纹理缓存,它是从Citra.这项工作花费了10000多行代码,修复了许多游戏中的图形错误,并在此过程中提高了性能。 这为将来的重要变化铺平了道路,例如Buffer Cache Rewrite,这不仅可以继续提高渲染精度,而且可以通过优化源代码中GPU部分的“最热门”代码来提高性能。后来,发展哈迪斯计划是有计划的。这是一个重写Shader Cache,其主要目标是提高精度和稳定性,以及在英特尔gpu中提高性能,这些都是当前实现的瓶颈。 很快就会有Compute Texture Decoders它将利用gpu的计算着色器功能来解码任天堂Switch游戏处理的纹理格式。这甚至包括一些难以捉摸的格式,比如ASTC,这是非Intel GPU上非着色器相关结巴的主要原因。 最漂亮的快速旅行(塞尔达传说:野性气息) 这次重写的一个悲哀之处是“Vulkan内存管理器”,现在称为Texture Reaper由于在开发过程中出现了一些技术上的复杂问题,预计将有助于减少Vulkan使用VRAM的时间。在专门的文章中有更详细的信息。 小型PSA,AMD用户应安装20.11.3驱动程序版本或更新版本VK_EXT_robustness2所有缺少的Radeon产品,有助于提高稳定性和精度。 以太计划,或如何从裕祖内部访问裕祖 任天堂交换机游戏有权访问web applet它通常用于在播放时显示教程或指南。我们最初的实现使用QtWebEngine在某些情况下,有一些持续的错误阻碍了游戏的进行,比如第一次启动时的教程Super Smash Bros. Ultimate . 变形重写yuzu的web applet,仍基于QtWebEngine,但已彻底检修。webapplet现在接受控制器输入,而不仅仅是通过鼠标进行触摸模拟,呈现从交换机上的本机操作系统提取的字体,或者使用开源软件回退。超级粉碎兄弟终极工作教程 以前的非渲染小程序现在可以工作了。这包括少数几个由于之前的实现而导致游戏停滞的情况,如Super Smash Bros. Ultimate. 不再需要绕过applet的mod,比如超级马里奥奥德赛 . 拉取请求中列出了一些限制,我们将继续处理这些限制。由于需要将Qt更新到5.14.2或更高版本,预计这一变化将迫使我们的Ubuntu最低版本要求在未来达到20.10。尤祖ception! 一般错误修复和改进 罗德里戈给Xenoblade风扇带来了一个不错的小修理。实施early fragment tests修复了导致暗渲染区域的重影几何体问题。就像白天和黑夜!(Xenoblade编年史最终版) 此修复目前将是Vulkan专用的,以避免使当前OpenGL着色器缓存失效。 更多的瓦肯修复,现在epicboy!他实施了失踪alpha test culling特征解决与透明度相关的渲染错误。这在超级粉碎兄弟终极版或是Tales of Vesperia: Definitive Edition .那些是一些奇怪的植物(维斯佩里亚传说:最终版) 当我们谈论epicboy,他还改进了NVDEC视频解码器的质量对所有帧排队清理代码。这样可以减少跳过的帧数,并极大地改进了在中编码的视频VP9 . 你需要帮忙吗?(超级粉碎兄弟终极版) 游戏中的嵌入式视频示例(超级马里奥奥德赛) 在轻游戏性的世界里已经有了一些进展Super Smash Bros. Ultimate. 主要问题还没有解决,但多亏了bunnei留茬GetAlbumFileList3AaeAruid ,现在用户可以在光的世界里做一个单打独斗,保存,重启yuzu,再做一个。我们正在慢慢地到达那里! 的后续更新Animal Crossing: New Horizons加载失败,但是留茬OLSC Initialize和SetSaveDataBackupSettingEnabled,bunnei再次恢复可玩性。您现在可以享受所有新内容和最新更新添加的活动。 ogniK开始前期工作关于音频模拟的未来修复。这种变化目前提高了游戏的保真度Shovel Knight以及乐高系列。期待更多的音频相关的变化很快。 裕祖在停止仿真时总是不稳定,这有几个原因。bunnei修正了两个不同的案子,什么时候在着色器编译时关闭,关门的时候呢在引导过程的早期生活质量修正总是受欢迎的。 投入改进 你已经问了很久了,而且77德国交付鼠标支持在这里!有了这个功能,用户现在可以随心所欲地设置鼠标,无论是模拟棒、按钮、运动还是触摸屏模拟。带运动支持的控制器仍然是推荐的输入方法,但是鼠标可以在紧要关头省去你的麻烦。 作为对键盘使用者的额外礼物,77德国还添加了对更好的模拟模拟键盘输入。有了这个改变,键盘播放器现在可以“漂移”模拟棒,以获得任何角度,而不仅仅是固定的八个方向,你可以按组合键。You can find this setting in Emulation > Configure... > Controls > Advanced > Emulate Analog with Keyboard Input 77德国还可以使用最多8个不同的UDP服务器。这允许每个玩家进行运动控制。 通过使用NpadStyleSet ,变形现在根据游戏限制可用的输入选项。例如,在Pokémon: Let’s Go,选项现在仅限于手持式、左Joy Con或右Joy Con。不许作弊! 77德国调整了隆隆声的放大功能,使它更线性化,更少攻击性。当使用低强度百分比值时,这将有所帮助。 通过两边都留茬SetNpadCommunicationMode和GetNpadCommunicationMode ,77德国制造的Borderlands: Game of the Year Edition和边疆2:年度游戏版可玩! 沉默的守护者,警惕的保护者 Lioncache,我们严厉但公平的代码评审员拆卸这个global variable accessor从整个项目(链接公关只是最新的部分),工作已经花了几个月。yuzu以前可以运行单个全局系统实例,但是通过这次更改,yuzu现在可以根据需要创建任意多个仿真实例,所有这些实例都是相互独立的。这提供了对仿真系统生命周期的完全控制,允许更快的游戏启动时间,也许更重要的是,迫使开发人员保持更干净的代码,这在将来更容易维护。 未来项目 这个Buffer Cache Rewrite到目前为止进展很快,没有延误,罗德里戈对首发非常热情哈迪斯计划完成后。随着输入的改进,更多的多核变化正在到来。 就这些人!非常感谢您抽出时间阅读本进度报告。下个月见,也许圣诞节会提早到来!
ryujinx吧 https://tieba.baidu.com/f?kw=ryujinx&frs=yqtb
yuzu模拟器吧 https://tieba.baidu.com/f?kw=yuzu%E6%A8%A1%E6%8B%9F%E5%99%A8&fr=home
模拟器教程 http://tieba.baidu.com/mo/q/checkurl?url=https%3A%2F%2Fwww.bilibili.com%2Fvideo%2FBV19p4y1z7dN&urlrefer=4a04537996c659434b6e2aba453be37a
申请吧主
4869
柯哀王道
试试看能不能申请吧主
首页
1
2
下一页