Fix links

This commit is contained in:
Exverge 2024-03-14 21:13:39 -04:00
parent 00a958459b
commit 6831b1baa4
61 changed files with 148 additions and 148 deletions

View file

@ -49,7 +49,7 @@ timeout = 300000
name = "Profile" name = "Profile"
weight = 7 weight = 7
identifier = "profile" identifier = "profile"
url = "https://profile.yuzu-emu.org" url = "https://profile.yuzu-mirror.github.io"
[Params] [Params]
Tenant = "yuzu" Tenant = "yuzu"

View file

@ -16,7 +16,7 @@ Your generous donation will go directly toward providing these to our team. Prev
We will more than gladly accept a donation! __In particular, donations of Nintendo Switch Hardware that are firmware 3.0.0 or lower are of particular use to the team.__ We will more than gladly accept a donation! __In particular, donations of Nintendo Switch Hardware that are firmware 3.0.0 or lower are of particular use to the team.__
If youd like to donate, please contact: [donations@yuzu-emu.org](mailto:donations@yuzu-emu.org) If youd like to donate, please contact: [donations@yuzu-mirror.github.io](mailto:donations@yuzu-mirror.github.io)
Alternatively, you can become a Patreon supporter at our [Patreon page](https://www.patreon.com/yuzuteam). Alternatively, you can become a Patreon supporter at our [Patreon page](https://www.patreon.com/yuzuteam).

View file

@ -18,7 +18,7 @@ Please download and install the dependency from below.</p>
The installer will allow you to download your preferred release channel. The installer will allow you to download your preferred release channel.
If you are a Patreon subscriber, the "Early Access" channel will be available to you, and will provide early access to exciting experimental changes on top of what is available in the main channel. Please follow our [Early Access guide](https://yuzu-emu.org/help/early-access/) for assistance linking your Patreon account. If you are a Patreon subscriber, the "Early Access" channel will be available to you, and will provide early access to exciting experimental changes on top of what is available in the main channel. Please follow our [Early Access guide](https://yuzu-mirror.github.io/help/early-access/) for assistance linking your Patreon account.
Intel and AMD users are strongly recommended to switch to Vulkan by going to `Emulation > Configure > Graphics > API`. Latest GPU drivers are recommended. Intel and AMD users are strongly recommended to switch to Vulkan by going to `Emulation > Configure > Graphics > API`. Latest GPU drivers are recommended.
</div> </div>

View file

@ -12,7 +12,7 @@ A major milestone in yuzu has been reached, as it can now boot a handful of the
{{< youtube 1VzyIHMTA2Q >}} {{< youtube 1VzyIHMTA2Q >}}
</div> </div>
These changes are now available in the latest [yuzu canary builds](https://yuzu-emu.org/downloads/)! These changes are now available in the latest [yuzu canary builds](https://yuzu-mirror.github.io/downloads/)!
Currently, only a few games are confirmed to boot, including: Currently, only a few games are confirmed to boot, including:

View file

@ -47,7 +47,7 @@ We will be working to polish this feature and make this available to the Mainlin
<article class="message has-text-weight-semibold"><div class="message-body"><p> <article class="message has-text-weight-semibold"><div class="message-body"><p>
If you're using the yuzu installer, you'll automatically be updated to the latest build.<br> If you're using the yuzu installer, you'll automatically be updated to the latest build.<br>
If you're <b>not</b> using the yuzu installer, please download it from our <a href= https://yuzu-emu.org/downloads/>Download</a> page. <br> If you're <b>not</b> using the yuzu installer, please download it from our <a href= https://yuzu-mirror.github.io/downloads/>Download</a> page. <br>
<br> <br>
We highly recommend using our installer to always stay up to date on both Mainline and Early Access builds. We highly recommend using our installer to always stay up to date on both Mainline and Early Access builds.
</p></div></article> </p></div></article>
@ -97,7 +97,7 @@ Please respect the `Preferred Game` listed in publicly hosted rooms, as even unr
You can use these rooms for LAN mode games as well — instead of ZeroTier or Hamachi.</b> You can use these rooms for LAN mode games as well — instead of ZeroTier or Hamachi.</b>
</p></div></article> </p></div></article>
Please visit [our multiplayer guide](https://yuzu-emu.org/help/feature/multiplayer/) for further help with Hosting, Port Forwarding, Authentication, and Moderation of your publicly hosted rooms. Please visit [our multiplayer guide](https://yuzu-mirror.github.io/help/feature/multiplayer/) for further help with Hosting, Port Forwarding, Authentication, and Moderation of your publicly hosted rooms.
## Development ## Development

View file

@ -278,7 +278,7 @@ The Button and Stick placements can be adjusted here as well.
# Setup guide # Setup guide
If you need help setting up yuzu, our [Quickstart Guide](https://yuzu-emu.org/help/quickstart/) will provide all the steps required to get up and running. If you need help setting up yuzu, our [Quickstart Guide](https://yuzu-mirror.github.io/help/quickstart/) will provide all the steps required to get up and running.
All the same requirements apply, including having a PC and the mandatory hacked Nintendo Switch. All the same requirements apply, including having a PC and the mandatory hacked Nintendo Switch.
The yuzu on Android onboarding process will have you select the location of your `prod.keys` file. The yuzu on Android onboarding process will have you select the location of your `prod.keys` file.

View file

@ -97,7 +97,7 @@ The error applet is used by games to crash and report back error codes to the us
# Fin # Fin
Both the new keyboard applet and the controller friendly error applet are now available in the [latest Early Access build](https://yuzu-emu.org/help/early-access/). Both the new keyboard applet and the controller friendly error applet are now available in the [latest Early Access build](https://yuzu-mirror.github.io/help/early-access/).
Since these are currently still under development, we would like to hear more about your experiences and any bugs/issues you might encounter. Since these are currently still under development, we would like to hear more about your experiences and any bugs/issues you might encounter.
Please don't hesitate to reach out to us on our Discord server's Patreon support channels to report any findings. Please don't hesitate to reach out to us on our Discord server's Patreon support channels to report any findings.
That's all we have for today but, we're sure to be back with more exciting news soon! That's all we have for today but, we're sure to be back with more exciting news soon!

View file

@ -49,7 +49,7 @@ This approach was necessary, because of how yuzu was initially designed.
Originally, yuzu's memory reads were `reactive` — meaning textures were downloaded only when games tried to read them and hence it wasn't possible to know which textures were going to be downloaded. Originally, yuzu's memory reads were `reactive` — meaning textures were downloaded only when games tried to read them and hence it wasn't possible to know which textures were going to be downloaded.
Although these memory reads were fixed a few months later, the Scaler still needed changes to be made to the management of uniform buffers, so that it would be supported on drivers other than Nvidia. Although these memory reads were fixed a few months later, the Scaler still needed changes to be made to the management of uniform buffers, so that it would be supported on drivers other than Nvidia.
However, the planned rewrites of the [**Texture Cache**](https://yuzu-emu.org/entry/yuzu-tcr/), [**Buffer Cache**](https://yuzu-emu.org/entry/yuzu-bcr/), and the massive GPU emulation overhaul with [**Project Hades**](https://yuzu-emu.org/entry/yuzu-hades/) further delayed developers from working on the Scaler, resulting in it never getting merged. However, the planned rewrites of the [**Texture Cache**](https://yuzu-mirror.github.io/entry/yuzu-tcr/), [**Buffer Cache**](https://yuzu-mirror.github.io/entry/yuzu-bcr/), and the massive GPU emulation overhaul with [**Project Hades**](https://yuzu-mirror.github.io/entry/yuzu-hades/) further delayed developers from working on the Scaler, resulting in it never getting merged.
&nbsp; &nbsp;
{{< single-title-imgs {{< single-title-imgs

View file

@ -6,7 +6,7 @@ coauthor = "GoldenX86"
forum = 348059 forum = 348059
+++ +++
Hey there, yuz-ers! The follow-up to our [previous big code rewrite](https://yuzu-emu.org/entry/yuzu-tcr/) is finally here: the Buffer Cache Rewrite! Hey there, yuz-ers! The follow-up to our [previous big code rewrite](https://yuzu-mirror.github.io/entry/yuzu-tcr/) is finally here: the Buffer Cache Rewrite!
This massive undertaking not only improves performance significantly, but also simplifies the code for our developers. This massive undertaking not only improves performance significantly, but also simplifies the code for our developers.
Now let's get this article started! Now let's get this article started!
@ -112,7 +112,7 @@ As a special mention, AMD Vega based integrated GPUs show an up to 223% increase
## Fin ## Fin
With that, we conclude our coverage of the new Buffer Cache Rewrite. With that, we conclude our coverage of the new Buffer Cache Rewrite.
As always, we would like to remind users that the features released in [Early Access](https://yuzu-emu.org/help/early-access/) are still being worked on. As always, we would like to remind users that the features released in [Early Access](https://yuzu-mirror.github.io/help/early-access/) are still being worked on.
If you come across any bugs, issues, performance loss, crashes, or regressions with this new feature, please If you come across any bugs, issues, performance loss, crashes, or regressions with this new feature, please
reach out to us on our [Discord server](https://discord.com/invite/u77vRWY) and share your findings. reach out to us on our [Discord server](https://discord.com/invite/u77vRWY) and share your findings.

View file

@ -36,7 +36,7 @@ By emulating the `BCAT` service at a high-level, yuzu is able to intercept the g
This means that games running on yuzu, will now check for new content on yuzu's servers instead of Nintendo's. This means that games running on yuzu, will now check for new content on yuzu's servers instead of Nintendo's.
This allows us to add new in-game content for games that use this service. This allows us to add new in-game content for games that use this service.
For the inaugural run, our team members have added some cool content across different games which you can check out [here](https://yuzu-emu.org/help/feature/boxcat/). For the inaugural run, our team members have added some cool content across different games which you can check out [here](https://yuzu-mirror.github.io/help/feature/boxcat/).
We will have new events occasionally, so users will have even more fun while playing games on yuzu. We will have new events occasionally, so users will have even more fun while playing games on yuzu.
{{< imgs {{< imgs
@ -54,7 +54,7 @@ For example - Using Patreon funds, several internal bounties have been setup, wh
{{< message "Want more information on Boxcat?" >}} {{< message "Want more information on Boxcat?" >}}
Refer to our help page for Boxcat. Refer to our help page for Boxcat.
https://yuzu-emu.org/help/feature/boxcat/ https://yuzu-mirror.github.io/help/feature/boxcat/
{{< /message >}} {{< /message >}}
### Fin! ### Fin!

View file

@ -39,7 +39,7 @@ Youll still get the same daily yuzu updates, which will include new features
## How do I install yuzu Early Access? ## How do I install yuzu Early Access?
Follow this detailed step-by-step guide, to install yuzu `Early Access` via the Installer. <br> Follow this detailed step-by-step guide, to install yuzu `Early Access` via the Installer. <br>
[**Click here for the guide**](https://yuzu-emu.org/help/early-access/) [**Click here for the guide**](https://yuzu-mirror.github.io/help/early-access/)
## Why did we make this change? ## Why did we make this change?

View file

@ -14,7 +14,7 @@ Let's get started!
<!--more--> <!--more-->
&nbsp; &nbsp;
Project Hades is now available in the latest [yuzu Early Access build](https://yuzu-emu.org/help/early-access/). Project Hades is now available in the latest [yuzu Early Access build](https://yuzu-mirror.github.io/help/early-access/).
As always, we ask that you test various games with these builds and if you encounter any issues, bugs, or crashes, please reach out to us via the [Discord](https://discord.gg/u77vRWY) Patreon channels. As always, we ask that you test various games with these builds and if you encounter any issues, bugs, or crashes, please reach out to us via the [Discord](https://discord.gg/u77vRWY) Patreon channels.
<article class="message is-warning"><div class="message-header"><p>Notice</p></div><div class="message-body"><p style="color:white">The entire shader generation process has been redesigned from the ground up, thus existing shader caches have been invalidated. Users will need to build their shader caches again, from scratch, with Project Hades.</p></div></article> <article class="message is-warning"><div class="message-header"><p>Notice</p></div><div class="message-body"><p style="color:white">The entire shader generation process has been redesigned from the ground up, thus existing shader caches have been invalidated. Users will need to build their shader caches again, from scratch, with Project Hades.</p></div></article>

View file

@ -17,7 +17,7 @@ Let's jump right in!
As we mentioned, the yuzu installer is available for Linux. As we mentioned, the yuzu installer is available for Linux.
The installer will distribute `AppImages` of Mainline and Early Access builds for our Linux users. The installer will distribute `AppImages` of Mainline and Early Access builds for our Linux users.
You can now download the new installer from our [Downloads page](https://yuzu-emu.org/downloads/). You can now download the new installer from our [Downloads page](https://yuzu-mirror.github.io/downloads/).
(Note: Early Access builds require a subscription to our [Patreon](https://www.patreon.com/yuzuteam). We appreciate any and all support!) (Note: Early Access builds require a subscription to our [Patreon](https://www.patreon.com/yuzuteam). We appreciate any and all support!)

View file

@ -66,7 +66,7 @@ That means things like uptime and support are much better than `Travis` or `Appv
It is a single service which can generate builds for all of our platforms, which we didn't have before. It is a single service which can generate builds for all of our platforms, which we didn't have before.
We also get more dedicated resources and therefore builds are generated much faster with Azure. We also get more dedicated resources and therefore builds are generated much faster with Azure.
Starting today, users will be able to get the new and improved yuzu builds via the installer from our [website](https://yuzu-emu.org/downloads/) or our [GitHub](https://github.com/yuzu-emu/yuzu-mainline/releases/). Starting today, users will be able to get the new and improved yuzu builds via the installer from our [website](https://yuzu-mirror.github.io/downloads/) or our [GitHub](https://github.com/yuzu-emu/yuzu-mainline/releases/).
And if you are already using our installer, you will be automatically migrated to the latest yuzu build. And if you are already using our installer, you will be automatically migrated to the latest yuzu build.
{{< imgs {{< imgs

View file

@ -233,7 +233,7 @@ seen so far were getting stuck, either hanging or deadlocking because they were
Apart from the work mentioned above, we have also had minor fixes which helped us boot further in Apart from the work mentioned above, we have also had minor fixes which helped us boot further in
games like Super Mario Odyssey, 1-2-Switch, and The Binding of Issac. games like Super Mario Odyssey, 1-2-Switch, and The Binding of Issac.
***Check out the next part of this report [here](https://yuzu-emu.org/entry/yuzu-progress-report-2018-p2)*** ***Check out the next part of this report [here](https://yuzu-mirror.github.io/entry/yuzu-progress-report-2018-p2)***
<h3 align="center"> <h3 align="center">
<b><a href="https://github.com/yuzu-emu/yuzu/">Contributions are always welcome !</a></b> <b><a href="https://github.com/yuzu-emu/yuzu/">Contributions are always welcome !</a></b>

View file

@ -9,7 +9,7 @@ We bring you part 2 of the extensive coverage on yuzu's tremendous progress. So
exciting ride, cause its gonna blow your mind! exciting ride, cause its gonna blow your mind!
&nbsp; &nbsp;
<h5 style="text-align: center;"> <h5 style="text-align: center;">
***Haven't read the first part yet? Read it [here](https://yuzu-emu.org/entry/yuzu-progress-report-2018-p1)*** ***Haven't read the first part yet? Read it [here](https://yuzu-mirror.github.io/entry/yuzu-progress-report-2018-p1)***
</h5> </h5>
<!--more--> <!--more-->

View file

@ -49,7 +49,7 @@ Recently we have had new features like Joystick Hot-plugging support and Touch I
While Joystick hot-plugging allows us to connect/disconnect controllers on-the-go, without crashing the emulator, Touch Input handling allows us to use a physical touch screen for input, in the place of a mouse. While Joystick hot-plugging allows us to connect/disconnect controllers on-the-go, without crashing the emulator, Touch Input handling allows us to use a physical touch screen for input, in the place of a mouse.
Web Services & Telemetry features are used to gather anonymous user statistics and for other backend stuff like user authentication. Web Services & Telemetry features are used to gather anonymous user statistics and for other backend stuff like user authentication.
We now have a [Compatibility Database](https://yuzu-emu.org/game/) which lists the playability information for various games. We now have a [Compatibility Database](https://yuzu-mirror.github.io/game/) which lists the playability information for various games.
Mind you that this list is a work-in-progress and is community driven. Mind you that this list is a work-in-progress and is community driven.
Play games on yuzu and while playing, go to `Help -> Report Compatibility` and submit info to help improve the database. Play games on yuzu and while playing, go to `Help -> Report Compatibility` and submit info to help improve the database.
`Discord Rich Presence`, a novelty feature, was also added so that yuzu fans could show off in their discord statuses. `Discord Rich Presence`, a novelty feature, was also added so that yuzu fans could show off in their discord statuses.
@ -461,7 +461,7 @@ His other notable works include:
* Added support for `LayeredFS` mods - which brings infinite possibilities for games in yuzu. * Added support for `LayeredFS` mods - which brings infinite possibilities for games in yuzu.
* Added support for packed updates - which are basically `XCI` files with both base game and updates. * Added support for packed updates - which are basically `XCI` files with both base game and updates.
* Implemented DLC loading. * Implemented DLC loading.
* Added support for full key-derivation, so that you don't need 3rd party tools for dumping keys, only our [quickstart](https://yuzu-emu.org/help/quickstart/) guide. * Added support for full key-derivation, so that you don't need 3rd party tools for dumping keys, only our [quickstart](https://yuzu-mirror.github.io/help/quickstart/) guide.
* Added support for loading IPS patches. * Added support for loading IPS patches.
* Added support for the more easier IPSwitch format patches. * Added support for the more easier IPSwitch format patches.
* Implemented save data types - `TemporaryStorage` and `DeviceSaveData`. * Implemented save data types - `TemporaryStorage` and `DeviceSaveData`.

View file

@ -12,7 +12,7 @@ Howdy yuz-ers! Another month gone, another progress report written. From new fir
## Project Eleuthia ## Project Eleuthia
As described in [its own dedicated article](https://yuzu-emu.org/entry/yuzu-applet-overlays/), [Morph](https://github.com/Morph1984) and [Rei](https://github.com/Its-Rei) have been very busy [*rei*mplementing the applets](https://github.com/yuzu-emu/yuzu/pull/6133) yuzu uses. As described in [its own dedicated article](https://yuzu-mirror.github.io/entry/yuzu-applet-overlays/), [Morph](https://github.com/Morph1984) and [Rei](https://github.com/Its-Rei) have been very busy [*rei*mplementing the applets](https://github.com/yuzu-emu/yuzu/pull/6133) yuzu uses.
This first step implements the `On-Screen Keyboard` (or OSK) that games use, and the `Error Display` yuzu uses to alert the user to bugs, missing data, or crashes. This first step implements the `On-Screen Keyboard` (or OSK) that games use, and the `Error Display` yuzu uses to alert the user to bugs, missing data, or crashes.

View file

@ -12,7 +12,7 @@ Hello yuz-ers, the month of April has been amazing! We'll discuss CPU and Kernel
## Saving Princess Peach yet again ## Saving Princess Peach yet again
Continuing his work to better support the [official](https://yuzu-emu.org/entry/yuzu-progress-report-mar-2022/#the-vulkan-emulator) GameCube/Wii and Nintendo 64 emulators (codenamed `Hagi` and `Hovercraft` respectively), [byte[]](https://github.com/liamwhite) has introduced several new PRs to further improve the compatibility of the titles included within `Super Mario 3D All-Stars`. Continuing his work to better support the [official](https://yuzu-mirror.github.io/entry/yuzu-progress-report-mar-2022/#the-vulkan-emulator) GameCube/Wii and Nintendo 64 emulators (codenamed `Hagi` and `Hovercraft` respectively), [byte[]](https://github.com/liamwhite) has introduced several new PRs to further improve the compatibility of the titles included within `Super Mario 3D All-Stars`.
byte[] first implemented support for GLSL in `Super Mario Sunshine`, as not everyone can run Vulkan. byte[] first implemented support for GLSL in `Super Mario Sunshine`, as not everyone can run Vulkan.
This is achieved by adding {{< gh-hovercard "8133" "support for indirect addressing" >}} in OpenGL. This is achieved by adding {{< gh-hovercard "8133" "support for indirect addressing" >}} in OpenGL.
@ -116,7 +116,7 @@ He fixed the reported issues and further cleaned up the code to improve code qua
{{< gh-hovercard "8137" "See the code changes for the NVFlinger rewrite here" >}}. {{< gh-hovercard "8137" "See the code changes for the NVFlinger rewrite here" >}}.
`Xenoblade Chronicles 2` and `Hyrule Warriors: Age of Calamity` would experience interesting issues which were caused by the new `GPU Garbage Collector` introduced as part of `Project Y.F.C.`. `Xenoblade Chronicles 2` and `Hyrule Warriors: Age of Calamity` would experience interesting issues which were caused by the new `GPU Garbage Collector` introduced as part of `Project Y.F.C.`.
We talked about those changes back in [January](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2022/#other-graphical-fixes). We talked about those changes back in [January](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2022/#other-graphical-fixes).
As you can see on the top bar below, `Xenoblade Chronicles 2` would use exorbitant amounts of VRAM in OpenGL (top bar). As you can see on the top bar below, `Xenoblade Chronicles 2` would use exorbitant amounts of VRAM in OpenGL (top bar).
The bottom bar shows the result after the fixes were implemented. The bottom bar shows the result after the fixes were implemented.
@ -142,7 +142,7 @@ Thankfully, Morph added the {{< gh-hovercard "8267" "magic line to the code" >}}
## Skyline framework: Part 3 ## Skyline framework: Part 3
There has been important progress in getting the [Skyline](https://github.com/skyline-dev/skyline) modding framework working. There has been important progress in getting the [Skyline](https://github.com/skyline-dev/skyline) modding framework working.
[Here are](https://yuzu-emu.org/entry/yuzu-progress-report-nov-2021/#skyline-framework-part-1) the [two links](https://yuzu-emu.org/entry/yuzu-progress-report-dec-2021/#skyline-framework-part-2) if you missed our previous progress reports on the subject. [Here are](https://yuzu-mirror.github.io/entry/yuzu-progress-report-nov-2021/#skyline-framework-part-1) the [two links](https://yuzu-mirror.github.io/entry/yuzu-progress-report-dec-2021/#skyline-framework-part-2) if you missed our previous progress reports on the subject.
[tech-ticks](https://github.com/tech-ticks) has been quite busy {{< gh-hovercard "8171" "working on the finishing touches" >}}. [tech-ticks](https://github.com/tech-ticks) has been quite busy {{< gh-hovercard "8171" "working on the finishing touches" >}}.
The latest changes include: The latest changes include:

View file

@ -17,7 +17,7 @@ Poor Melia up there.
And thats exactly what we did. And thats exactly what we did.
A more accurate name for this change would be “a rewrite of the Buffer Cache Rewrite”, {{< gh-hovercard "10084" "perhaps rBCR for short?" >}} A more accurate name for this change would be “a rewrite of the Buffer Cache Rewrite”, {{< gh-hovercard "10084" "perhaps rBCR for short?" >}}
Essentially, Blinkhawk rewrote most of the old buffer cache changes that [Rodrigo](https://github.com/ReinUsesLisp) introduced [two years ago](https://yuzu-emu.org/entry/yuzu-bcr/), taking into account the new demands of recent games and the issues found with the original BCR. Essentially, Blinkhawk rewrote most of the old buffer cache changes that [Rodrigo](https://github.com/ReinUsesLisp) introduced [two years ago](https://yuzu-mirror.github.io/entry/yuzu-bcr/), taking into account the new demands of recent games and the issues found with the original BCR.
Part of the work {{< gh-hovercard "10088" "also involves:" >}} Part of the work {{< gh-hovercard "10088" "also involves:" >}}
@ -89,7 +89,7 @@ For those interested in trying it, the toggle is available in `Emulation > Confi
[vonchenplus](https://github.com/vonchenplus) continues to work on making the {{< gh-hovercard "10008" "code match the information NVIDIA has made public" >}} in their latest documentation. [vonchenplus](https://github.com/vonchenplus) continues to work on making the {{< gh-hovercard "10008" "code match the information NVIDIA has made public" >}} in their latest documentation.
You may remember [Wollnashorn](https://github.com/Wollnashorn) from their role in [overhauling the Vulkan pipeline cache](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2023/#new-challenger-approaching). You may remember [Wollnashorn](https://github.com/Wollnashorn) from their role in [overhauling the Vulkan pipeline cache](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2023/#new-challenger-approaching).
Now, Wollnashorn presents us with a technique to bypass hardware limitations in order to make `The Legend of Zelda: Breath of the Wild` render accurately on non-NVIDIA hardware. Now, Wollnashorn presents us with a technique to bypass hardware limitations in order to make `The Legend of Zelda: Breath of the Wild` render accurately on non-NVIDIA hardware.
Object edges, especially grass blades, had distinct black borders on AMD and Intel GPUs. Object edges, especially grass blades, had distinct black borders on AMD and Intel GPUs.
@ -152,7 +152,7 @@ Fixing this special case solved the depth-of-field rendering issues in `Kirby St
>}} >}}
Still on fire, and with more work to come, Blinkhawk hasnt stopped. Still on fire, and with more work to come, Blinkhawk hasnt stopped.
For something light, he decided to refactor a big part of [Accelerate DMA](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2023/#project-yfc-175) to do {{< gh-hovercard "10082" "texture downloads" >}} through the texture cache instead. For something light, he decided to refactor a big part of [Accelerate DMA](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2023/#project-yfc-175) to do {{< gh-hovercard "10082" "texture downloads" >}} through the texture cache instead.
The result is a return to the performance `Pokémon Sword & Shield` and `Hyrule Warriors: Age of Calamity` had before the old Y.F.C 1.75 changes. The result is a return to the performance `Pokémon Sword & Shield` and `Hyrule Warriors: Age of Calamity` had before the old Y.F.C 1.75 changes.
Add up the gains from Y.F.C 1.90, and you have a winner for low-end systems! Add up the gains from Y.F.C 1.90, and you have a winner for low-end systems!
@ -195,7 +195,7 @@ Properly {{< gh-hovercard "10056" "returning this error as a result" >}} is enou
"./igs.png| Nothing beats the classics (IGS Classic Arcade Collection)" "./igs.png| Nothing beats the classics (IGS Classic Arcade Collection)"
>}} >}}
One of the options made available to our [LDN](https://yuzu-emu.org/entry/ldn-is-here/) users is the ability to [create private rooms](https://yuzu-emu.org/help/feature/multiplayer/), providing hosts with several options to configure their servers as they want. One of the options made available to our [LDN](https://yuzu-mirror.github.io/entry/ldn-is-here/) users is the ability to [create private rooms](https://yuzu-mirror.github.io/help/feature/multiplayer/), providing hosts with several options to configure their servers as they want.
[twitchax](https://github.com/twitchax) knows that for certain server hosts, such as `fly.io`, a {{< gh-hovercard "10068" "custom bind address" >}} is needed. [twitchax](https://github.com/twitchax) knows that for certain server hosts, such as `fly.io`, a {{< gh-hovercard "10068" "custom bind address" >}} is needed.
They implemented the functionality and now users can pass the `--bind-address` argument to the rooms configuration. They implemented the functionality and now users can pass the `--bind-address` argument to the rooms configuration.
@ -298,7 +298,7 @@ You can be sure Ill be nagging our GPU devs until it gets added.
### AMD, delivering on their promises ### AMD, delivering on their promises
[Last month,](https://yuzu-emu.org/entry/yuzu-progress-report-mar-2023/#amd-2332-and-newer-drivers) we mentioned that AMD introduced a regression that caused graphical corruption and crashes with some games. [Last month,](https://yuzu-mirror.github.io/entry/yuzu-progress-report-mar-2023/#amd-2332-and-newer-drivers) we mentioned that AMD introduced a regression that caused graphical corruption and crashes with some games.
Were happy to announce that since driver version 23.4.2 and later the issue is resolved for Vega and newer, allowing Radeon Windows users to fully benefit from the new Vulkan extensions supported by the latest drivers, reducing shader building stuttering to a minimum. Were happy to announce that since driver version 23.4.2 and later the issue is resolved for Vega and newer, allowing Radeon Windows users to fully benefit from the new Vulkan extensions supported by the latest drivers, reducing shader building stuttering to a minimum.
Just as AMD promised, except... Just as AMD promised, except...

View file

@ -71,7 +71,7 @@ byte[] additionally identified a case of the opposite, where a format was suppor
A few GPU changes not related to Xenoblade also made it in this month. A few GPU changes not related to Xenoblade also made it in this month.
After years, since the beginning of our [Vulkan backend](https://yuzu-emu.org/entry/yuzu-vulkan/), yuzu finally added {{< gh-hovercard "8735" "support for VSync in Vulkan" >}} by new contributor [djrobx](https://github.com/djrobx). After years, since the beginning of our [Vulkan backend](https://yuzu-mirror.github.io/entry/yuzu-vulkan/), yuzu finally added {{< gh-hovercard "8735" "support for VSync in Vulkan" >}} by new contributor [djrobx](https://github.com/djrobx).
As described by the pull request adding it, if the emulation and display are very close to precise sync, there can be fits of juddering when the newly generated frames don't decisively fall as next to be displayed. As described by the pull request adding it, if the emulation and display are very close to precise sync, there can be fits of juddering when the newly generated frames don't decisively fall as next to be displayed.
This change allows yuzu to completely synchronize frames with the monitor refresh rate, preventing any juddering. This change allows yuzu to completely synchronize frames with the monitor refresh rate, preventing any juddering.
Thank you very much! Thank you very much!
@ -267,7 +267,7 @@ If any user suffered from this and cant remove the files, open the Command Pr
#### Intel ARC joins the fun #### Intel ARC joins the fun
We received information that early adopters of A380 Intel GPUs had issues running their games using Vulkan. We received information that early adopters of A380 Intel GPUs had issues running their games using Vulkan.
Since this hardware is not globally available yet, its not easy for our developers and testers to get their hands on it, so please [post issues in our GitHub](https://github.com/yuzu-emu/yuzu/issues) including [log files](https://yuzu-emu.org/help/reference/log-files/), or contact us on our [forums](https://community.citra-emu.org/c/yuzu-support/14) or our [Discord server](https://discord.gg/u77vRWY). Since this hardware is not globally available yet, its not easy for our developers and testers to get their hands on it, so please [post issues in our GitHub](https://github.com/yuzu-emu/yuzu/issues) including [log files](https://yuzu-mirror.github.io/help/reference/log-files/), or contact us on our [forums](https://community.citra-emu.org/c/yuzu-support/14) or our [Discord server](https://discord.gg/u77vRWY).
Well ask for more information, if needed, to find the reason for this. Well ask for more information, if needed, to find the reason for this.
Hurray for the early adopter woes. Hurray for the early adopter woes.
@ -319,7 +319,7 @@ Working on the finishing touches for `Project London`, Tobi has not been passive
"./ldn.png| The most fun ever doing internal testing" "./ldn.png| The most fun ever doing internal testing"
>}} >}}
Oh! How could we almost forget? `Project London`, LDN support, is _finally_ out now! More information in [the dedicated article](https://yuzu-emu.org/entry/ldn-is-here/) and [Multiplayer Guide](https://yuzu-emu.org/help/feature/multiplayer/). Oh! How could we almost forget? `Project London`, LDN support, is _finally_ out now! More information in [the dedicated article](https://yuzu-mirror.github.io/entry/ldn-is-here/) and [Multiplayer Guide](https://yuzu-mirror.github.io/help/feature/multiplayer/).
Well recap the release in the next Progress Report. Well recap the release in the next Progress Report.
Thats all folks! Thank you so much for sticking with us, and I hope to see you all next time! Thats all folks! Thank you so much for sticking with us, and I hope to see you all next time!

View file

@ -15,12 +15,12 @@ We keep trying with the time machine, but were running out of bananas to micr
## PSA for NVIDIA users: Part 2 ## PSA for NVIDIA users: Part 2
As mentioned [two months ago](https://yuzu-emu.org/entry/yuzu-progress-report-oct-2021/#psa-for-nvidia-users), NVIDIA users have been experiencing issues when using GLSL due As mentioned [two months ago](https://yuzu-mirror.github.io/entry/yuzu-progress-report-oct-2021/#psa-for-nvidia-users), NVIDIA users have been experiencing issues when using GLSL due
to the changes introduced by NVIDIA dropping support for Kepler cards in the 49X series of drivers. to the changes introduced by NVIDIA dropping support for Kepler cards in the 49X series of drivers.
Were happy to announce that we have a [set of workarounds](https://github.com/yuzu-emu/yuzu/pull/7629) implemented by [epicboy](https://github.com/ameerj) that solve all Were happy to announce that we have a [set of workarounds](https://github.com/yuzu-emu/yuzu/pull/7629) implemented by [epicboy](https://github.com/ameerj) that solve all
known issues. known issues.
These are already available for both Mainline and [Early Access](https://yuzu-emu.org/help/early-access/). These are already available for both Mainline and [Early Access](https://yuzu-mirror.github.io/help/early-access/).
The root of the problem in NVIDIAs drivers seems to be in negation of integer and floating point values, and bitwise conversions of input values. The root of the problem in NVIDIAs drivers seems to be in negation of integer and floating point values, and bitwise conversions of input values.
@ -34,7 +34,7 @@ In our example, `y` would get the value of `0 - x`.
The bitwise conversion issue is more complex, but we talked about it in the past. The bitwise conversion issue is more complex, but we talked about it in the past.
Back in August, Back in August,
[we mentioned how Intel had issues in Vulkan](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2021/#another-terrible-implementation-and-other-graphical-fixes) [we mentioned how Intel had issues in Vulkan](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2021/#another-terrible-implementation-and-other-graphical-fixes)
affecting Marios legendary moustache. affecting Marios legendary moustache.
`GetAttribute` returns a float value, so a conversion is needed when working with integer values. `GetAttribute` returns a float value, so a conversion is needed when working with integer values.
@ -191,7 +191,7 @@ german77 also added support for the `SetNpadJoyAssignmentMode` series of service
This change [also adds support for](https://github.com/yuzu-emu/yuzu/pull/7521) dual Joy-Con pairs with a single Joy-Con connected, which is something that some This change [also adds support for](https://github.com/yuzu-emu/yuzu/pull/7521) dual Joy-Con pairs with a single Joy-Con connected, which is something that some
games seem to do. games seem to do.
After the release of `Project Kraken`, [the input rewrite](https://yuzu-emu.org/entry/yuzu-progress-report-nov-2021#projekt-kraken), analog triggers were accidentally broken. After the release of `Project Kraken`, [the input rewrite](https://yuzu-mirror.github.io/entry/yuzu-progress-report-nov-2021#projekt-kraken), analog triggers were accidentally broken.
A simple bug slipped by, causing them to only work when the joysticks were moved. A simple bug slipped by, causing them to only work when the joysticks were moved.
[Two lines of code were changed](https://github.com/yuzu-emu/yuzu/pull/7583), and the issue was made no more. [Two lines of code were changed](https://github.com/yuzu-emu/yuzu/pull/7583), and the issue was made no more.
@ -210,7 +210,7 @@ Well, [not any more](https://github.com/yuzu-emu/yuzu/pull/7647)! Again thanks t
## Flatpak fixes ## Flatpak fixes
Following up from our previous mention [last month](https://yuzu-emu.org/entry/yuzu-progress-report-nov-2021/#graphical-fixes), [liushuyu](https://github.com/liushuyu) Following up from our previous mention [last month](https://yuzu-mirror.github.io/entry/yuzu-progress-report-nov-2021/#graphical-fixes), [liushuyu](https://github.com/liushuyu)
continues to fight against the weirdness of [Flatpak](https://flatpak.org/). continues to fight against the weirdness of [Flatpak](https://flatpak.org/).
[NVDEC requirements are now more flexible](https://github.com/yuzu-emu/yuzu/pull/7565), the CUDA libraries are no longer mandatory, without actually affecting CUDA [NVDEC requirements are now more flexible](https://github.com/yuzu-emu/yuzu/pull/7565), the CUDA libraries are no longer mandatory, without actually affecting CUDA

View file

@ -76,7 +76,7 @@ But thats not the whole story, so lets elaborate further.
`SMAA`, or enhanced subpixel morphological antialiasing, is an improvement over [MLAA](https://en.wikipedia.org/wiki/Morphological_antialiasing) developed by the Spanish Universidad de Zaragoza and video game studio Crytek, of Crysis fame. `SMAA`, or enhanced subpixel morphological antialiasing, is an improvement over [MLAA](https://en.wikipedia.org/wiki/Morphological_antialiasing) developed by the Spanish Universidad de Zaragoza and video game studio Crytek, of Crysis fame.
[BreadFish](https://github.com/breadfish64) implemented the original OpenGL version, intending to release it as part of the [resolution scaler](https://yuzu-emu.org/entry/yuzu-art/). As it turns out, implementing `SMAA` for Vulkan is no joke, and after being nagged by your writer, byte[] had to work 2 weeks to get it in shape. [BreadFish](https://github.com/breadfish64) implemented the original OpenGL version, intending to release it as part of the [resolution scaler](https://yuzu-mirror.github.io/entry/yuzu-art/). As it turns out, implementing `SMAA` for Vulkan is no joke, and after being nagged by your writer, byte[] had to work 2 weeks to get it in shape.
`SMAA`, being based on `MLAA`, intends to be a post-processing (aka shader-based) option focused on quality over performance by analyzing adjacent pixels, unlike `FXAA` which just blurs the entire screen. `SMAA`, being based on `MLAA`, intends to be a post-processing (aka shader-based) option focused on quality over performance by analyzing adjacent pixels, unlike `FXAA` which just blurs the entire screen.
The `SMAA` filter is implemented using render passes and it produces its best results when combined with FSR filtering. The `SMAA` filter is implemented using render passes and it produces its best results when combined with FSR filtering.

View file

@ -175,7 +175,7 @@ With these changes, AMD users suffering from the Pentelas/DLC vertex explosion b
But you know what would help even more? If epicboy also added more optimizations for the AMD proprietary OpenGL driver. {{< gh-hovercard "12437" "Which is exactly what he did." >}} But you know what would help even more? If epicboy also added more optimizations for the AMD proprietary OpenGL driver. {{< gh-hovercard "12437" "Which is exactly what he did." >}}
With the release of the new OpenGL driver back in [July of 2022](https://yuzu-emu.org/entry/yuzu-progress-report-jul-2022/#amd-opengl-25-years-in-the-making), several unsavoury workarounds that yuzu code had for the red vendor could be removed (and now have been), improving performance. With the release of the new OpenGL driver back in [July of 2022](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jul-2022/#amd-opengl-25-years-in-the-making), several unsavoury workarounds that yuzu code had for the red vendor could be removed (and now have been), improving performance.
## Android adventures, and kernels with benefits ## Android adventures, and kernels with benefits

View file

@ -159,7 +159,7 @@ As it turns out, for some reason the configuration file was not resetting the fr
Previously, yuzu dumped the base `exeFS`, which only includes data from the base game, missing any new addition from updates or DLCs. Previously, yuzu dumped the base `exeFS`, which only includes data from the base game, missing any new addition from updates or DLCs.
Instead, by {{< gh-hovercard "7899" "dumping the patched `exeFS`" >}}, like [EliEron](https://github.com/EliEron) {{< gh-hovercard "4341" "suggested in the past" >}}, users will have access to update files! Instead, by {{< gh-hovercard "7899" "dumping the patched `exeFS`" >}}, like [EliEron](https://github.com/EliEron) {{< gh-hovercard "4341" "suggested in the past" >}}, users will have access to update files!
[toastUnlimited](https://github.com/lat9nq) found out that `Splatoon 2` crashes when accessing the inventory in the [LAN lobby](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2021/#lan-party-time). [toastUnlimited](https://github.com/lat9nq) found out that `Splatoon 2` crashes when accessing the inventory in the [LAN lobby](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2021/#lan-party-time).
{{< gh-hovercard "7887" "Stubbing the `IsUsbFullKeyControllerEnabled` function" >}} is all that was needed. {{< gh-hovercard "7887" "Stubbing the `IsUsbFullKeyControllerEnabled` function" >}} is all that was needed.
Splat your friends with impunity! Splat your friends with impunity!

View file

@ -49,7 +49,7 @@ By getting rid of this undesired behaviour, the `gpu_thread` is back to only con
Even from the shadows, [epicboy](https://github.com/ameerj) still gifts us a handful of new toys. A true Eminence in Shadow. Even from the shadows, [epicboy](https://github.com/ameerj) still gifts us a handful of new toys. A true Eminence in Shadow.
Avid readers may remember that [MSAA image uploads](https://yuzu-emu.org/entry/yuzu-progress-report-dec-2021/) hold a weird spot in Switch emulation. Avid readers may remember that [MSAA image uploads](https://yuzu-mirror.github.io/entry/yuzu-progress-report-dec-2021/) hold a weird spot in Switch emulation.
Theres a conflict between what the Switch can do with its native NVN API, and what our available graphics APIs (OpenGL and Vulkan) allow. Theres a conflict between what the Switch can do with its native NVN API, and what our available graphics APIs (OpenGL and Vulkan) allow.
Both OpenGL and Vulkan are very restrictive regarding {{< gh-hovercard "9746" "MSAA texture" >}} uploads and copies, leaving epicboy with the only remaining tool available. Yep, youre right! Time to use a compute shader! Both OpenGL and Vulkan are very restrictive regarding {{< gh-hovercard "9746" "MSAA texture" >}} uploads and copies, leaving epicboy with the only remaining tool available. Yep, youre right! Time to use a compute shader!
@ -163,7 +163,7 @@ Now instead of pushing the games requests to the services, the services wait
All this processing is done, for the most part, in what would be the emulated `core 3` of the Switch, instead of all over the place with one thread per service. All this processing is done, for the most part, in what would be the emulated `core 3` of the Switch, instead of all over the place with one thread per service.
Games usually only have access to cores 0 to 2, so we're now dedicating the last core for system service processing, just as the actual Switch operating system does! Games usually only have access to cores 0 to 2, so we're now dedicating the last core for system service processing, just as the actual Switch operating system does!
This part of CPU emulation is one of the main reasons we recommend at least 6 cores in our [hardware requirements](https://yuzu-emu.org/help/quickstart/#hardware-requirements), 4 for uninterrupted emulation of the Switchs CPU, and extras for other processes and tasks. Just a 4 core CPU will be usually overburdened. HT/SMT may help, but that will always depend on the workload at any given moment. This part of CPU emulation is one of the main reasons we recommend at least 6 cores in our [hardware requirements](https://yuzu-mirror.github.io/help/quickstart/#hardware-requirements), 4 for uninterrupted emulation of the Switchs CPU, and extras for other processes and tasks. Just a 4 core CPU will be usually overburdened. HT/SMT may help, but that will always depend on the workload at any given moment.
A SMT/HT thread cant improve performance in a significant way if the core is already saturated. A SMT/HT thread cant improve performance in a significant way if the core is already saturated.
[bunnei](https://github.com/bunnei) chimed in too, fixing a mistake in {{< gh-hovercard "9773" "memory mapping." >}} [bunnei](https://github.com/bunnei) chimed in too, fixing a mistake in {{< gh-hovercard "9773" "memory mapping." >}}
@ -187,7 +187,7 @@ This time, the recently released update 1.2.0 wouldnt boot on yuzu. After inv
Some code changes later, and german77 fixed the issue! Now anyone can enjoy the reduced NPC count and lower draw distance. Some code changes later, and german77 fixed the issue! Now anyone can enjoy the reduced NPC count and lower draw distance.
Even [your writer](https://github.com/goldenx86) tried to give a hand (emphasis on tried). Even [your writer](https://github.com/goldenx86) tried to give a hand (emphasis on tried).
[As reported in the past](https://yuzu-emu.org/entry/yuzu-progress-report-dec-2022/#cpu-requirement-changes-with-free-performance), we applied `Link-time Optimization` to all of yuzus subprojects. This meant that every section like audio, input, UI, etc. used LTO at build time, trying to squeeze out every possible bit of performance. [As reported in the past](https://yuzu-mirror.github.io/entry/yuzu-progress-report-dec-2022/#cpu-requirement-changes-with-free-performance), we applied `Link-time Optimization` to all of yuzus subprojects. This meant that every section like audio, input, UI, etc. used LTO at build time, trying to squeeze out every possible bit of performance.
This caused an unexpected problem: RAM consumption while building increased enough to cause our buildbot to cry for help, causing builds on our Azure DevOps CI to randomly run out of memory. This caused an unexpected problem: RAM consumption while building increased enough to cause our buildbot to cry for help, causing builds on our Azure DevOps CI to randomly run out of memory.
byte[] suggested that I instead profile which subprojects would provide the most performance boosts, and to only apply LTO to those. byte[] suggested that I instead profile which subprojects would provide the most performance boosts, and to only apply LTO to those.
@ -229,7 +229,7 @@ The user can adjust the sensitivity of mouse motion with the same setting used f
>}} >}}
But did german77 focus on nothing but `Metroid Prime Remastered`? No. But did german77 focus on nothing but `Metroid Prime Remastered`? No.
Continuing the work started in [December of 2022](https://yuzu-emu.org/entry/yuzu-progress-report-dec-2022/#new-joy-con-driver-and-other-input-improvements), {{< gh-hovercard "9759" "support for Pro Controllers" >}} within the new custom “Joy-Con” driver. Continuing the work started in [December of 2022](https://yuzu-mirror.github.io/entry/yuzu-progress-report-dec-2022/#new-joy-con-driver-and-other-input-improvements), {{< gh-hovercard "9759" "support for Pro Controllers" >}} within the new custom “Joy-Con” driver.
Since the option is experimental, it only works properly on official Switch Pro Controllers and not with third party controllers, so its disabled by default. Since the option is experimental, it only works properly on official Switch Pro Controllers and not with third party controllers, so its disabled by default.
Owners of *real* Pro Controllers are encouraged to enable this option, as it will provide much improved motion and HD Rumble support. Owners of *real* Pro Controllers are encouraged to enable this option, as it will provide much improved motion and HD Rumble support.
@ -290,14 +290,14 @@ A small mistake caused the web applet to lose the ability to redraw and zoom its
Per-game settings are very useful, but also very tricky to get right codewise. Per-game settings are very useful, but also very tricky to get right codewise.
[m-HD](https://github.com/m-HD) greets us by adding a few missing graphical settings to the list, solving conflicting issues when setting the fullscreen mode, resolution scaling, filter, and antialiasing values in the {{< gh-hovercard "9784" "per-game" >}} configuration window. [m-HD](https://github.com/m-HD) greets us by adding a few missing graphical settings to the list, solving conflicting issues when setting the fullscreen mode, resolution scaling, filter, and antialiasing values in the {{< gh-hovercard "9784" "per-game" >}} configuration window.
german77 then properly implemented per-game configuration support for the `Force maximum clocks` {{< gh-hovercard "9863" "setting" >}} AMD GPUs [benefit](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2023/) so much from. german77 then properly implemented per-game configuration support for the `Force maximum clocks` {{< gh-hovercard "9863" "setting" >}} AMD GPUs [benefit](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2023/) so much from.
While we are constantly working to improve the user experience, yuzu sometimes does crash. Thats expected of any first generation emulator, but what shouldnt happen is not saving changes made to the configuration settings after a crash or a force close. While we are constantly working to improve the user experience, yuzu sometimes does crash. Thats expected of any first generation emulator, but what shouldnt happen is not saving changes made to the configuration settings after a crash or a force close.
The problem was in our Qt UI, and german77 worked to properly tell Qt to save and sync the configuration to file, avoiding any {{< gh-hovercard "9817" "configuration change loss" >}} after a force close. The problem was in our Qt UI, and german77 worked to properly tell Qt to save and sync the configuration to file, avoiding any {{< gh-hovercard "9817" "configuration change loss" >}} after a force close.
## General fixes ## General fixes
[MonsterDruide1](https://github.com/MonsterDruide1) continues to do wonders with the [LDN](https://yuzu-emu.org/entry/ldn-is-here/) code. [MonsterDruide1](https://github.com/MonsterDruide1) continues to do wonders with the [LDN](https://yuzu-mirror.github.io/entry/ldn-is-here/) code.
This time, proper error handling. This time, proper error handling.
One of the possible errors when handling TCP connections is `ECONNRESET`, which happens when the other end closes the connection abruptly. One of the possible errors when handling TCP connections is `ECONNRESET`, which happens when the other end closes the connection abruptly.
Old-school gamers call this “rage quitting”. Old-school gamers call this “rage quitting”.
@ -370,7 +370,7 @@ Frustratingly, this isnt a problem with the Mesa Linux drivers, or the old Ge
Ive been kidnapped by our devs, so no leaks this time. I promise more for next month! Ive been kidnapped by our devs, so no leaks this time. I promise more for next month!
There is one thing Im allowed to mention, recent core timing changes have reduced CPU use by 5-20% across the board on Windows depending on the total thread count. This means better performance and reduced power consumption, especially benefiting mobile devices like laptops and handhelds. There is one thing Im allowed to mention, recent core timing changes have reduced CPU use by 5-20% across the board on Windows depending on the total thread count. This means better performance and reduced power consumption, especially benefiting mobile devices like laptops and handhelds.
This change is already in both [Mainline](https://yuzu-emu.org/downloads/) and [Early Access](https://yuzu-emu.org/help/early-access/), but well talk more about it and other nice things next month. This change is already in both [Mainline](https://yuzu-mirror.github.io/downloads/) and [Early Access](https://yuzu-mirror.github.io/help/early-access/), but well talk more about it and other nice things next month.
Thats all folks! Thats all folks!

View file

@ -11,7 +11,7 @@ Welcome yuz-ers, to the first progress report of 2021! We have quite a bit in st
## The Buffer Cache Rewrite ## The Buffer Cache Rewrite
While we have a [dedicated article detailing the improvements from the Buffer Cache Rewrite](https://yuzu-emu.org/entry/yuzu-bcr/) [(BCR)](https://github.com/yuzu-emu/yuzu/pull/5741), [Rodrigo](https://github.com/ReinUsesLisp) didn't sit idle and continued to improve the buffer cache. These new changes and improvements deserve some time in the spotlight. For the full context, we advise reading the dedicated article before continuing. While we have a [dedicated article detailing the improvements from the Buffer Cache Rewrite](https://yuzu-mirror.github.io/entry/yuzu-bcr/) [(BCR)](https://github.com/yuzu-emu/yuzu/pull/5741), [Rodrigo](https://github.com/ReinUsesLisp) didn't sit idle and continued to improve the buffer cache. These new changes and improvements deserve some time in the spotlight. For the full context, we advise reading the dedicated article before continuing.
{{< single-title-imgs {{< single-title-imgs
"The BCR offers performance and rendering improvements (Xenoblade Chronicles Definitive Edition)" "The BCR offers performance and rendering improvements (Xenoblade Chronicles Definitive Edition)"
@ -46,7 +46,7 @@ We recommend users to play with this setting to find the optimal performance, bu
"./bcr.png| While there are big improvements across the board, this graph shows the limitations of integrated GPUs constantly fighting the CPU for RAM resources. Having your own fast dedicated on-board VRAM is very important for performance." "./bcr.png| While there are big improvements across the board, this graph shows the limitations of integrated GPUs constantly fighting the CPU for RAM resources. Having your own fast dedicated on-board VRAM is very important for performance."
>}} >}}
Analysis time. If you compare this graph to the one of the RX550 in the [BCR artricle,](https://yuzu-emu.org/entry/yuzu-bcr/) you will notice that a small integrated Vega manages to beat a dedicated Polaris card in `Fire Emblem: Three Houses` by a few frames. Analysis time. If you compare this graph to the one of the RX550 in the [BCR artricle,](https://yuzu-mirror.github.io/entry/yuzu-bcr/) you will notice that a small integrated Vega manages to beat a dedicated Polaris card in `Fire Emblem: Three Houses` by a few frames.
This is because newer GPU architectures offer features that are useful for Switch emulation. Ray tracing is not the only cool kid in town! This is because newer GPU architectures offer features that are useful for Switch emulation. Ray tracing is not the only cool kid in town!
The Tegra X1 SoC in the Nintendo Switch offers native support for FP16 with a 2:1 performance ratio, allowing games to double their performance over regular FP32 when doing floating point calculations. A simple way to achieve a higher frame rate on limited hardware. The Tegra X1 SoC in the Nintendo Switch offers native support for FP16 with a 2:1 performance ratio, allowing games to double their performance over regular FP32 when doing floating point calculations. A simple way to achieve a higher frame rate on limited hardware.
@ -54,7 +54,7 @@ Vega (GCN 5.0), Turing, Gen 9 Intel Graphics and newer offer native support for
Series like Polaris (GCN 4.0), Pascal and older may offer support in their drivers but dont provide a performance advantage, and in the case of Pascal, it reduces performance considerably (64 times slower than FP32). Series like Polaris (GCN 4.0), Pascal and older may offer support in their drivers but dont provide a performance advantage, and in the case of Pascal, it reduces performance considerably (64 times slower than FP32).
In those cases FP32 is used to emulate FP16, obviously resulting in no performance gains. In those cases FP32 is used to emulate FP16, obviously resulting in no performance gains.
This is the main reason our [Hardware Requirements](https://yuzu-emu.org/help/quickstart/#hardware-requirements) lists Gen 9.5, Vega, and Turing cards, as the recommended GPUs. Maxwell v2, Vega, Gen9 and later series also offer `conservative rasterization`, a very useful feature that yuzu can take advantage of in the future. This is the main reason our [Hardware Requirements](https://yuzu-mirror.github.io/help/quickstart/#hardware-requirements) lists Gen 9.5, Vega, and Turing cards, as the recommended GPUs. Maxwell v2, Vega, Gen9 and later series also offer `conservative rasterization`, a very useful feature that yuzu can take advantage of in the future.
## General bug fixes and improvements ## General bug fixes and improvements

View file

@ -14,7 +14,7 @@ What a month we've had, yuz-ers. This time, we offer you a plethora of kernel ch
[Its not over yet](https://www.youtube.com/watch?v=g02QU-xPV1I). [Its not over yet](https://www.youtube.com/watch?v=g02QU-xPV1I).
[As you know](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2021/#paint-me-like-one-of-your-french-bits), regular NVIDIA desktop and laptop GPUs don't support decoding ASTC textures, so yuzu makes use of the compute capabilities of the GPU to parallelize the process. However, the recent release of the 511.XX drivers introduced an issue that affected our compute shader based accelerated ASTC texture decoding. [As you know](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2021/#paint-me-like-one-of-your-french-bits), regular NVIDIA desktop and laptop GPUs don't support decoding ASTC textures, so yuzu makes use of the compute capabilities of the GPU to parallelize the process. However, the recent release of the 511.XX drivers introduced an issue that affected our compute shader based accelerated ASTC texture decoding.
{{< single-title-imgs-compare {{< single-title-imgs-compare
"Crispy (Super Mario Odyssey)" "Crispy (Super Mario Odyssey)"

View file

@ -101,7 +101,7 @@ Your writer has a stupid idea, and byte[] is the one that ends up listening to m
This routine worked successfully with SMAA for Vulkan, unsuccessfully with increasing the staging buffer size to take advantage of ReBAR, sadly, and this time, it _almost worked_ with `Turbo mode`, or its official/boring name, {{< gh-hovercard "9552" "Force maximum clocks." >}} This routine worked successfully with SMAA for Vulkan, unsuccessfully with increasing the staging buffer size to take advantage of ReBAR, sadly, and this time, it _almost worked_ with `Turbo mode`, or its official/boring name, {{< gh-hovercard "9552" "Force maximum clocks." >}}
You might be able to see where this is going. You might be able to see where this is going.
[A year ago,](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2022/#vulkan-is-the-future) Patreon funding got your writer access to an RX 6500 to help with testing and debugging. [A year ago,](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2022/#vulkan-is-the-future) Patreon funding got your writer access to an RX 6500 to help with testing and debugging.
That card died a horrible, premature death (and no one misses it), but before kicking the bucket, it allowed us to learn that RDNA and RDNA2 hardware from AMD suffer from serious downclocking issues if youre not constantly shoving work to the GPU. That card died a horrible, premature death (and no one misses it), but before kicking the bucket, it allowed us to learn that RDNA and RDNA2 hardware from AMD suffer from serious downclocking issues if youre not constantly shoving work to the GPU.
Thankfully, due to the cryptomining crash, an RX 6600 took its place for no extra cost. Thankfully, due to the cryptomining crash, an RX 6600 took its place for no extra cost.
In your face, miners. In your face, miners.
@ -245,14 +245,14 @@ Baby steps!
## General changes ## General changes
byte[] {{< gh-hovercard "9561" " triggered the scheduled mandatory Dynarmic update," >}} blessing us with [fastmem and page table support](https://yuzu-emu.org/entry/yuzu-fastmem/) for ARM64 devices, boosting performance considerably. byte[] {{< gh-hovercard "9561" " triggered the scheduled mandatory Dynarmic update," >}} blessing us with [fastmem and page table support](https://yuzu-mirror.github.io/entry/yuzu-fastmem/) for ARM64 devices, boosting performance considerably.
Anyone with an ARM64 device running a “normal” GPU (not mobile-tier hardware) interested in testing yuzu, feel free to install our official [Flatpak](https://flathub.org/apps/details/org.yuzu_emu.yuzu). Anyone with an ARM64 device running a “normal” GPU (not mobile-tier hardware) interested in testing yuzu, feel free to install our official [Flatpak](https://flathub.org/apps/details/org.yuzu_emu.yuzu).
[german77](https://github.com/german77) stumbled upon an issue which was causing input threads to randomly crash yuzu for seemingly no reason, but only on shutdown. [german77](https://github.com/german77) stumbled upon an issue which was causing input threads to randomly crash yuzu for seemingly no reason, but only on shutdown.
byte[] found that `CoreTiming` had the same logic issue that he fixed last month in the kernel code when adding `KHardwareTimer`: callbacks could be removed while in-progress, which could cause the input threads to continue using memory after it had been freed. byte[] found that `CoreTiming` had the same logic issue that he fixed last month in the kernel code when adding `KHardwareTimer`: callbacks could be removed while in-progress, which could cause the input threads to continue using memory after it had been freed.
With this code changed to {{< gh-hovercard "9619" "wait until any in-progress callbacks are finished before removal," >}} this issue should be solved for good. With this code changed to {{< gh-hovercard "9619" "wait until any in-progress callbacks are finished before removal," >}} this issue should be solved for good.
After the merge of german77's impressive Joy-Con driver release [last month](https://yuzu-emu.org/entry/yuzu-progress-report-dec-2022/#new-joy-con-driver-and-other-input-improvements), [Morph](https://github.com/Morph1984) noticed that yuzu was often taking a significantly longer amount of time to shutdown, sometimes more than 5 seconds longer than it should have been allowed to. After the merge of german77's impressive Joy-Con driver release [last month](https://yuzu-mirror.github.io/entry/yuzu-progress-report-dec-2022/#new-joy-con-driver-and-other-input-improvements), [Morph](https://github.com/Morph1984) noticed that yuzu was often taking a significantly longer amount of time to shutdown, sometimes more than 5 seconds longer than it should have been allowed to.
He discovered that this was due to sleep calls in the Joy-Con driver to poll for new devices that weren't being cancelled on shutdown, and with help from byte[], he {{< gh-hovercard "9677" "implemented a proper fix" >}} so that they would immediately stop waiting when shutdown was signalled. He discovered that this was due to sleep calls in the Joy-Con driver to poll for new devices that weren't being cancelled on shutdown, and with help from byte[], he {{< gh-hovercard "9677" "implemented a proper fix" >}} so that they would immediately stop waiting when shutdown was signalled.
More battles won for the Shutdown Wars, with seemingly no end in sight! More battles won for the Shutdown Wars, with seemingly no end in sight!

View file

@ -83,7 +83,7 @@ Thanks to help from [gdkchan](https://github.com/gdkchan) and [Blinkhawk](https:
[epicboy](https://github.com/ameerj) is working on [implementing support for GameCube adapters](https://github.com/yuzu-emu/yuzu/pull/4137), allowing players to use original GameCube controllers! Veteran Smash players will surely enjoy it. [epicboy](https://github.com/ameerj) is working on [implementing support for GameCube adapters](https://github.com/yuzu-emu/yuzu/pull/4137), allowing players to use original GameCube controllers! Veteran Smash players will surely enjoy it.
[`Project Prometheus`](https://yuzu-emu.org/entry/yuzu-prometheus/) introduced so many changes that we are still working on reaching feature parity with the original single-core implementation. [ogniK](https://github.com/ogniK5377) [improved the audio timing](https://github.com/yuzu-emu/yuzu/pull/4219), fixing audio bugs that were introduced with the implementation of the new multicore and single-core emulation methods. [`Project Prometheus`](https://yuzu-mirror.github.io/entry/yuzu-prometheus/) introduced so many changes that we are still working on reaching feature parity with the original single-core implementation. [ogniK](https://github.com/ogniK5377) [improved the audio timing](https://github.com/yuzu-emu/yuzu/pull/4219), fixing audio bugs that were introduced with the implementation of the new multicore and single-core emulation methods.
Since its introduction, enabling multicore was the only way to reach stable gameplay on Linux systems, as the single-core option would lead to a crash in every game. Thanks to [comex's report](https://github.com/yuzu-emu/yuzu/issues/4424), [Lioncache](https://github.com/lioncash) fixed it by [using the return value of Lock() in the nvflinger surface compositor](https://github.com/yuzu-emu/yuzu/pull/4426). Thanks to this fix, games that are not yet stable with multicore, like `Luigis Mansion 3`, can now be safely played in the Tux OS (Linux). Since its introduction, enabling multicore was the only way to reach stable gameplay on Linux systems, as the single-core option would lead to a crash in every game. Thanks to [comex's report](https://github.com/yuzu-emu/yuzu/issues/4424), [Lioncache](https://github.com/lioncash) fixed it by [using the return value of Lock() in the nvflinger surface compositor](https://github.com/yuzu-emu/yuzu/pull/4426). Thanks to this fix, games that are not yet stable with multicore, like `Luigis Mansion 3`, can now be safely played in the Tux OS (Linux).

View file

@ -22,11 +22,11 @@ After being in development for six months, and spanning almost 50,000 lines of n
Fixing an innumerable amount of rendering bugs, reducing shader build times, improving compatibility, and increasing performance by over 30% for all GPU vendors, Hades is easily Fixing an innumerable amount of rendering bugs, reducing shader build times, improving compatibility, and increasing performance by over 30% for all GPU vendors, Hades is easily
one of the biggest changes made to yuzu to date. one of the biggest changes made to yuzu to date.
[We have a dedicated article explaining the process in technical detail](https://yuzu-emu.org/entry/yuzu-hades/), so we will be focusing only on the end user changes and some [We have a dedicated article explaining the process in technical detail](https://yuzu-mirror.github.io/entry/yuzu-hades/), so we will be focusing only on the end user changes and some
recommendations to help you get the best experience out of this new feature that both Early Access and Mainline users can enjoy. recommendations to help you get the best experience out of this new feature that both Early Access and Mainline users can enjoy.
While we keep OpenGL as the default graphics API for compatibility reasons (outdated drivers wont affect it as much, and it lets Nvidia Fermi GPU users run yuzu out of the box), we While we keep OpenGL as the default graphics API for compatibility reasons (outdated drivers wont affect it as much, and it lets Nvidia Fermi GPU users run yuzu out of the box), we
strongly recommend testing your games with the Vulkan API first. Vulkan performance and compatibility have improved significantly (especially if paired with the [Texture Reaper](https://yuzu-emu.org/entry/yuzu-progress-report-jun-2021/#project-texture-reaper), the GPU Cache Garbage Collector), additionally, rendering and shader build performance almost always beat OpenGL. strongly recommend testing your games with the Vulkan API first. Vulkan performance and compatibility have improved significantly (especially if paired with the [Texture Reaper](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jun-2021/#project-texture-reaper), the GPU Cache Garbage Collector), additionally, rendering and shader build performance almost always beat OpenGL.
This applies not only for AMD and Intel GPU users, but also Nvidia users. This applies not only for AMD and Intel GPU users, but also Nvidia users.
There is an exception, however. The Intel Linux Vulkan driver is not stable at the moment, but were investigating the cause of the issue. For now, Intel Linux users should There is an exception, however. The Intel Linux Vulkan driver is not stable at the moment, but were investigating the cause of the issue. For now, Intel Linux users should
@ -151,12 +151,12 @@ To avoid confusion with the FPS unlimiter, the old Frame limit was [renamed to S
"./fpscap.png| You can find the new options here" "./fpscap.png| You can find the new options here"
>}} >}}
From before the [release of the texture cache rewrite](https://yuzu-emu.org/entry/yuzu-tcr/), a regression has existed that caused users' screenshots to save in the wrong directory. From before the [release of the texture cache rewrite](https://yuzu-mirror.github.io/entry/yuzu-tcr/), a regression has existed that caused users' screenshots to save in the wrong directory.
Turns out [a single directory separator was missing in the code](https://github.com/yuzu-emu/yuzu/pull/6709). Turns out [a single directory separator was missing in the code](https://github.com/yuzu-emu/yuzu/pull/6709).
Now, screenshots will work correctly by either pressing the `Ctrl + P` hotkey, or via selecting the `Tools > Capture Screenshot…` menu option, and save in the selected folder. Now, screenshots will work correctly by either pressing the `Ctrl + P` hotkey, or via selecting the `Tools > Capture Screenshot…` menu option, and save in the selected folder.
epicboy also [added support for taking screenshots in the Vulkan API](https://github.com/yuzu-emu/yuzu/pull/6720), solving an old issue from way back when epicboy also [added support for taking screenshots in the Vulkan API](https://github.com/yuzu-emu/yuzu/pull/6720), solving an old issue from way back when
[Vulkan was first implemented](https://yuzu-emu.org/entry/yuzu-vulkan/) two years ago. How time flies... [Vulkan was first implemented](https://yuzu-mirror.github.io/entry/yuzu-vulkan/) two years ago. How time flies...
Finally, before being dragged against his will to work on Hades, epicboy was working on improving the performance of our compute shader accelerated ASTC decoder. Finally, before being dragged against his will to work on Hades, epicboy was working on improving the performance of our compute shader accelerated ASTC decoder.
By reducing the size of the workgroup, making some code simplifications, moving some look up tables, and other changes, By reducing the size of the workgroup, making some code simplifications, moving some look up tables, and other changes,
@ -172,7 +172,7 @@ One of the remaining issues with `Hyrule Warriors: Age of Calamity`, `Fire Emble
GPU accuracy when loading specific levels. GPU accuracy when loading specific levels.
In Blinks own words, [a simple fix](https://github.com/yuzu-emu/yuzu/pull/6627), and the problem was solved. In Blinks own words, [a simple fix](https://github.com/yuzu-emu/yuzu/pull/6627), and the problem was solved.
Another old regression introduced by the [Buffer Cache Rewrite](https://yuzu-emu.org/entry/yuzu-bcr/) affected particles in games like `The Legend of Zelda: Breath of the Wild`, the rendering of the BowWow in Another old regression introduced by the [Buffer Cache Rewrite](https://yuzu-mirror.github.io/entry/yuzu-bcr/) affected particles in games like `The Legend of Zelda: Breath of the Wild`, the rendering of the BowWow in
`The Legend of Zelda: Links Awakening` and caused vertex explosions in Unreal Engine 4 games like `Yoshis Crafted World`, `BRAVELY DEFAULT 2` and similar. `The Legend of Zelda: Links Awakening` and caused vertex explosions in Unreal Engine 4 games like `Yoshis Crafted World`, `BRAVELY DEFAULT 2` and similar.
[Tuning how to handle high downloads and not fully waiting for command buffers to finish](https://github.com/yuzu-emu/yuzu/pull/6557) solved these issues. [Tuning how to handle high downloads and not fully waiting for command buffers to finish](https://github.com/yuzu-emu/yuzu/pull/6557) solved these issues.
To make the best out of this change, High GPU accuracy needs to be enabled. To make the best out of this change, High GPU accuracy needs to be enabled.

View file

@ -213,7 +213,7 @@ In order to improve the ridiculous memory usage, byte[] {{< gh-hovercard "8684"
While this doesnt solve the issue entirely, testing shows a 5GB reduction in RAM usage from just a single code line addition. While this doesnt solve the issue entirely, testing shows a 5GB reduction in RAM usage from just a single code line addition.
Lets stay on the subject of GPU emulation for a bit longer. Lets stay on the subject of GPU emulation for a bit longer.
In a past Progress Report, we explained how [toastUnlimited](https://github.com/lat9nq) [implemented a status check system](https://yuzu-emu.org/entry/yuzu-progress-report-may-2022/#vulkan-by-default) to ensure good Vulkan compatibility when opening yuzu for the first time. In a past Progress Report, we explained how [toastUnlimited](https://github.com/lat9nq) [implemented a status check system](https://yuzu-mirror.github.io/entry/yuzu-progress-report-may-2022/#vulkan-by-default) to ensure good Vulkan compatibility when opening yuzu for the first time.
The original implementation worked by running a small Vulkan instance at boot, detecting if it crashed, and saving the result in the configuration file. The original implementation worked by running a small Vulkan instance at boot, detecting if it crashed, and saving the result in the configuration file.
On the next boot after the crash, yuzu informs the user and locks itself to only offer OpenGL. On the next boot after the crash, yuzu informs the user and locks itself to only offer OpenGL.
@ -321,11 +321,11 @@ Have fun ruining Bowsers wedding!
## UI changes ## UI changes
A small regression from the [input rewrite](https://yuzu-emu.org/entry/yuzu-progress-report-nov-2021/#project-kraken) revealed itself just now. A small regression from the [input rewrite](https://yuzu-mirror.github.io/entry/yuzu-progress-report-nov-2021/#project-kraken) revealed itself just now.
The WebApplets input bit was assumed incorrectly, causing user input to be completely ignored. The WebApplets input bit was assumed incorrectly, causing user input to be completely ignored.
Thankfully, Morph {{< gh-hovercard "8536" "found the reason" >}} and implemented the fix. Thankfully, Morph {{< gh-hovercard "8536" "found the reason" >}} and implemented the fix.
Last month, Docteh [renamed](https://yuzu-emu.org/entry/yuzu-progress-report-jun-2022/#ui-changes) the status bars DOCKED status (redundancy, yeah!). Last month, Docteh [renamed](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jun-2022/#ui-changes) the status bars DOCKED status (redundancy, yeah!).
For consistency, [this dumb writer](https://github.com/goldenx86) decided to {{< gh-hovercard "8610" "do the same for the Controls configuration window," >}} for consistency. For consistency, [this dumb writer](https://github.com/goldenx86) decided to {{< gh-hovercard "8610" "do the same for the Controls configuration window," >}} for consistency.
{{< imgs {{< imgs
@ -360,7 +360,7 @@ This is a new section to communicate and discuss new relevant bugs, fixes, and f
#### NVIDIA, missing the perfection that 472.12 was #### NVIDIA, missing the perfection that 472.12 was
[We mentioned last month](https://yuzu-emu.org/entry/yuzu-progress-report-jun-2022/#psa-for-amd-radeon-users-and-nvidia-tags-along) how the 516 series of drivers is detrimental to Maxwell and Pascal users, making Vulkan unstable. [We mentioned last month](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jun-2022/#psa-for-amd-radeon-users-and-nvidia-tags-along) how the 516 series of drivers is detrimental to Maxwell and Pascal users, making Vulkan unstable.
Were still debugging the issue, as it isnt easy to catch, but a possible cause is suspected: GPU accelerated `ASTC` texture decoding. Were still debugging the issue, as it isnt easy to catch, but a possible cause is suspected: GPU accelerated `ASTC` texture decoding.
If you own a Maxwell or Pascal GPU, must remain on the latest driver update, and want to test if you can make Vulkan stable again, try disabling `Accelerate ASTC Texture Decoding` in `Emulation > Configure… > Graphics`. If you own a Maxwell or Pascal GPU, must remain on the latest driver update, and want to test if you can make Vulkan stable again, try disabling `Accelerate ASTC Texture Decoding` in `Emulation > Configure… > Graphics`.
Please report your results on our [forums](https://community.citra-emu.org/c/yuzu-support/14) or [Discord server](https://discord.gg/u77vRWY). Please report your results on our [forums](https://community.citra-emu.org/c/yuzu-support/14) or [Discord server](https://discord.gg/u77vRWY).
@ -424,7 +424,7 @@ As a bonus, while not being very stable, the SPIR-V shader back-end can be used
Another lesson learned from this is that some games, like `Legend of Zelda: Breath of the Wild`, just outright prefer NVIDIA's mature OpenGL driver. Ara ara. Another lesson learned from this is that some games, like `Legend of Zelda: Breath of the Wild`, just outright prefer NVIDIA's mature OpenGL driver. Ara ara.
Lastly, to end this Red Team section. Lastly, to end this Red Team section.
[In the past](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2022/#vulkan-is-the-future), we reported a way to defeat RDNA2s overcorrecting power manager in order to get decent framerates. [In the past](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2022/#vulkan-is-the-future), we reported a way to defeat RDNA2s overcorrecting power manager in order to get decent framerates.
This method, while simple, has a downside: Its an overclock. This method, while simple, has a downside: Its an overclock.
Or at least counts as one. Or at least counts as one.

View file

@ -171,7 +171,7 @@ Free performance is free performance.
### AMD ### AMD
It's July and we have another new AMD GPU driver with yet another extension causing issues. It's July and we have another new AMD GPU driver with yet another extension causing issues.
If you recall from our [June progress report](https://yuzu-emu.org/entry/yuzu-progress-report-jun-2023/#amd), we reported that the latest AMD drivers had broken a Vulkan feature - `extendedDynamicState3ColorBlendEquation`, and we had to temporarily disable usage of it on AMD driver version `23.5.2` and above. If you recall from our [June progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jun-2023/#amd), we reported that the latest AMD drivers had broken a Vulkan feature - `extendedDynamicState3ColorBlendEquation`, and we had to temporarily disable usage of it on AMD driver version `23.5.2` and above.
Fast-forward to July, and it's still broken for some. Fast-forward to July, and it's still broken for some.
Giving credit where due, AMD ***did*** fix this issue with driver version `23.7.2`, but only for `RDNA2` GPUs (RX 6000 series). `GCN4`, also known as `Polaris` (RX 400 and 500 series), are confirmed to still be broken. Giving credit where due, AMD ***did*** fix this issue with driver version `23.7.2`, but only for `RDNA2` GPUs (RX 6000 series). `GCN4`, also known as `Polaris` (RX 400 and 500 series), are confirmed to still be broken.

View file

@ -161,7 +161,7 @@ While rewriting the kernel for Prometheus, [Blinkhawk](https://github.com/Fernan
"./toad.png| Good performance even on low-end hardware!" "./toad.png| Good performance even on low-end hardware!"
>}} >}}
Additionally, the merge of this work into the Master branch also means that Multicore support is now working in Mainline! Thanks [Blinkhawk](https://github.com/FernandoS27) for all your hard work on this! Please refer to our previous [May progress report](https://yuzu-emu.org/entry/yuzu-progress-report-may-2020/) and the dedicated [Project Prometheus article](https://yuzu-emu.org/entry/yuzu-prometheus/) to read more about this crucial new feature. Additionally, the merge of this work into the Master branch also means that Multicore support is now working in Mainline! Thanks [Blinkhawk](https://github.com/FernandoS27) for all your hard work on this! Please refer to our previous [May progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-may-2020/) and the dedicated [Project Prometheus article](https://yuzu-mirror.github.io/entry/yuzu-prometheus/) to read more about this crucial new feature.
## Future projects ## Future projects

View file

@ -13,7 +13,7 @@ tons of kernel changes, UI improvements, and more!
## Project Texture Reaper ## Project Texture Reaper
An old debt we owed since the release of the [Texture Cache Rewrite](https://yuzu-emu.org/entry/yuzu-tcr/) was `Project Texture Reaper`, a `GPU Cache Garbage Collector`, An old debt we owed since the release of the [Texture Cache Rewrite](https://yuzu-mirror.github.io/entry/yuzu-tcr/) was `Project Texture Reaper`, a `GPU Cache Garbage Collector`,
originally started by [Rodrigo](https://github.com/ReinUsesLisp) and finished by [Blinkhawk](https://github.com/FernandoS27) with new and very important optimizations. originally started by [Rodrigo](https://github.com/ReinUsesLisp) and finished by [Blinkhawk](https://github.com/FernandoS27) with new and very important optimizations.
[This garbage collector](https://github.com/yuzu-emu/yuzu/pull/6465) has the task of freeing VRAM space by removing the least used resources (textures and buffers), [This garbage collector](https://github.com/yuzu-emu/yuzu/pull/6465) has the task of freeing VRAM space by removing the least used resources (textures and buffers),
@ -60,7 +60,7 @@ Originally, implementing `fastmem` in yuzu wasn't considered an option as there
However, due to a lack of documentation of this feature (thanks Microsoft), our devs didn't know they could use it. However, due to a lack of documentation of this feature (thanks Microsoft), our devs didn't know they could use it.
We'd like to thank [BreadFish64](https://github.com/BreadFish64/) for informing our devs about this change, and [bylaws](https://github.com/bylaws) for [updating Microsoft's documentation regarding this behaviour](https://github.com/MicrosoftDocs/sdk-api/pull/799). We'd like to thank [BreadFish64](https://github.com/BreadFish64/) for informing our devs about this change, and [bylaws](https://github.com/bylaws) for [updating Microsoft's documentation regarding this behaviour](https://github.com/MicrosoftDocs/sdk-api/pull/799).
As previously mentioned, this feature is incompatible with Windows versions older than 1803. Using an older Windows version will cause yuzu to fallback to the old `MMU` implementation — although this requirement could change in the future. As previously mentioned, this feature is incompatible with Windows versions older than 1803. Using an older Windows version will cause yuzu to fallback to the old `MMU` implementation — although this requirement could change in the future.
If you are interested in a more detailed explanation of how it works and the limitations that prevented its implementation, feel free to read the [dedicated article for fastmem](https://yuzu-emu.org/entry/yuzu-fastmem/). If you are interested in a more detailed explanation of how it works and the limitations that prevented its implementation, feel free to read the [dedicated article for fastmem](https://yuzu-mirror.github.io/entry/yuzu-fastmem/).
{{< single-title-imgs {{< single-title-imgs
"Some of the measured performance gains, in FPS" "Some of the measured performance gains, in FPS"
@ -159,7 +159,7 @@ Some examples of games that have full dynamic FPS support are:
ASTC texture decoding is a complex topic when it comes to emulation, as no desktop graphics card has the required hardware support needed to process these heavily compressed textures. ASTC texture decoding is a complex topic when it comes to emulation, as no desktop graphics card has the required hardware support needed to process these heavily compressed textures.
The only exception is Intel with their integrated HD Graphics and UHD Graphics series. The only exception is Intel with their integrated HD Graphics and UHD Graphics series.
[In the past,](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2021/) epicboy implemented a way to accelerate ASTC texture decoding via the use of `Compute Shaders`, [In the past,](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2021/) epicboy implemented a way to accelerate ASTC texture decoding via the use of `Compute Shaders`,
improving decoding performance considerably thanks to taking advantage of the great computing power of modern GPUs. improving decoding performance considerably thanks to taking advantage of the great computing power of modern GPUs.
The issue is that in some games, `Astral Chain` for example, a synchronization issue caused yuzu to try to access a texture before its decoding was finished, resulting in The issue is that in some games, `Astral Chain` for example, a synchronization issue caused yuzu to try to access a texture before its decoding was finished, resulting in
@ -167,7 +167,7 @@ driver panics and application crashes.
[Implementing various optimizations and enhancements to the GPU accelerated decoder](https://github.com/yuzu-emu/yuzu/pull/6496) solved those crashes, even on a simple GT [Implementing various optimizations and enhancements to the GPU accelerated decoder](https://github.com/yuzu-emu/yuzu/pull/6496) solved those crashes, even on a simple GT
730, a card 41.5x times weaker than an RTX 2080 SUPER in compute performance. 730, a card 41.5x times weaker than an RTX 2080 SUPER in compute performance.
Now that [Project Hades](https://yuzu-emu.org/entry/yuzu-hades/) is finished, there are plans to implement performance optimizations on the ASTC GPU accelerated decoder. Now that [Project Hades](https://yuzu-mirror.github.io/entry/yuzu-hades/) is finished, there are plans to implement performance optimizations on the ASTC GPU accelerated decoder.
Prior to this work, [a toggle to disable the GPU accelerated decoder](https://github.com/yuzu-emu/yuzu/pull/6464) was added for debugging purposes. Prior to this work, [a toggle to disable the GPU accelerated decoder](https://github.com/yuzu-emu/yuzu/pull/6464) was added for debugging purposes.
Its no longer needed, but if anyone is curious about how much of a difference decoding with the CPU makes, the option is in `Emulation > Configure… > Graphics > Its no longer needed, but if anyone is curious about how much of a difference decoding with the CPU makes, the option is in `Emulation > Configure… > Graphics >
@ -295,7 +295,7 @@ Maide [put a stop to this](https://github.com/yuzu-emu/yuzu/pull/6402), improvin
## Future projects ## Future projects
With Project Hades [(our new shader decompiler)](https://yuzu-emu.org/entry/yuzu-hades/), Rodrigo continues with his crazy experiments, bunnei has yet more kernel changes in the oven, and german77 and Morph continue With Project Hades [(our new shader decompiler)](https://yuzu-mirror.github.io/entry/yuzu-hades/), Rodrigo continues with his crazy experiments, bunnei has yet more kernel changes in the oven, and german77 and Morph continue
to work on their top secret projects. to work on their top secret projects.
More GPU related optimizations are underway, and users should keep a keen eye on the horizon. More GPU related optimizations are underway, and users should keep a keen eye on the horizon.

View file

@ -12,7 +12,7 @@ Dear yuz-ers, we had fantastic progress during June! Driver bugs are being squas
## PSA for AMD Radeon users (and NVIDIA tags along) ## PSA for AMD Radeon users (and NVIDIA tags along)
Lets begin with a driver bug we [mentioned last month](https://yuzu-emu.org/entry/yuzu-progress-report-may-2022/#graphical-changes-driver-issues-and-the-nostalgia-bliss-that-is-the-good-old-64). Lets begin with a driver bug we [mentioned last month](https://yuzu-mirror.github.io/entry/yuzu-progress-report-may-2022/#graphical-changes-driver-issues-and-the-nostalgia-bliss-that-is-the-good-old-64).
The Vulkan extension `VK_KHR_push_descriptor` finally arrived for AMD hardware with driver version 22.5.2 for Windows, but it wasnt stable. Radeon users would tell you that any game would crash in Vulkan after updating. The Vulkan extension `VK_KHR_push_descriptor` finally arrived for AMD hardware with driver version 22.5.2 for Windows, but it wasnt stable. Radeon users would tell you that any game would crash in Vulkan after updating.
To mitigate this, [toastUnlimited](https://github.com/lat9nq) implemented an extension block for the specific Vulkan driver version AMD reports for 22.5.2 (and its equivalent Linux AMDVLK package), 2.0.226. To mitigate this, [toastUnlimited](https://github.com/lat9nq) implemented an extension block for the specific Vulkan driver version AMD reports for 22.5.2 (and its equivalent Linux AMDVLK package), 2.0.226.
@ -54,7 +54,7 @@ Now, thanks to this great find by bylaws, the Dovahkiin can finally wake up in t
You can see we have some rendering issues to solve. You can see we have some rendering issues to solve.
One of our recent important rendering changes was the [NVFlinger rewrite](https://yuzu-emu.org/entry/yuzu-progress-report-mar-2022/#graphical-changes-and-optimizations), who would have guessed that coding an implementation closer to the Switch would result in a smoother gaming experience? One of our recent important rendering changes was the [NVFlinger rewrite](https://yuzu-mirror.github.io/entry/yuzu-progress-report-mar-2022/#graphical-changes-and-optimizations), who would have guessed that coding an implementation closer to the Switch would result in a smoother gaming experience?
However, after its release, user reports mentioned timing and frame pacing issues in games like `Super Smash Bros. Ultimate`. However, after its release, user reports mentioned timing and frame pacing issues in games like `Super Smash Bros. Ultimate`.
Match time would pass increasingly slower, around a second longer per minute on Ryzen systems, and exacerbated with Intel Alder Lake CPUs (12th gen). Match time would pass increasingly slower, around a second longer per minute on Ryzen systems, and exacerbated with Intel Alder Lake CPUs (12th gen).
@ -66,7 +66,7 @@ Weird CPU architectures aside, while the issue is solved, Intel Alder Lake users
While still on the topic of NVFlinger goodies, we present a highly requested feature! While still on the topic of NVFlinger goodies, we present a highly requested feature!
Veteran users will remember that during its single threaded days, yuzu would allow control over game speed. Veteran users will remember that during its single threaded days, yuzu would allow control over game speed.
With the arrival of multicore, known at the time as [Project Prometheus](https://yuzu-emu.org/entry/yuzu-prometheus/), this feature was only available in single core mode, to the chagrin of many people. How time flies! With the arrival of multicore, known at the time as [Project Prometheus](https://yuzu-mirror.github.io/entry/yuzu-prometheus/), this feature was only available in single core mode, to the chagrin of many people. How time flies!
{{< gh-hovercard "8508" "yuzu now has control over the frame time calculation," >}} allowing a new method to unlimit the framerate regardless of the CPU emulation mode! {{< gh-hovercard "8508" "yuzu now has control over the frame time calculation," >}} allowing a new method to unlimit the framerate regardless of the CPU emulation mode!
You can find the option in `Emulation > Configure… > General > Limit Speed Percent`. You can find the option in `Emulation > Configure… > General > Limit Speed Percent`.
@ -86,7 +86,7 @@ Unfortunately, he soon ran into more trouble, as it was exceedingly difficult to
The source of the pain was not having any way to use a debugger with the emulated games. The source of the pain was not having any way to use a debugger with the emulated games.
Originally, yuzu inherited a `GDB-compatible debugger interface` from [Citra](https://citra-emu.org), but it was lacking many important features. Originally, yuzu inherited a `GDB-compatible debugger interface` from [Citra](https://citra-emu.org), but it was lacking many important features.
And even that had to be deprecated during [Project Prometheus](https://yuzu-emu.org/entry/yuzu-prometheus/) (multicore emulation) because of its inherent shortcomings. And even that had to be deprecated during [Project Prometheus](https://yuzu-mirror.github.io/entry/yuzu-prometheus/) (multicore emulation) because of its inherent shortcomings.
* It only worked with single core mode * It only worked with single core mode
* It was _slow_ - it could sometimes take 30+ minutes to boot a game, particularly if you had any logging scripts * It was _slow_ - it could sometimes take 30+ minutes to boot a game, particularly if you had any logging scripts
@ -160,7 +160,7 @@ The debugger interface is now thread-stable, edge cases in stepping and pausing
When talking about user interface and experience, you can always count on [Docteh](https://github.com/Docteh). When talking about user interface and experience, you can always count on [Docteh](https://github.com/Docteh).
[In a repeat of what Morph fixed back in February](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2022/#general-bugfixes-and-ui-changes), Docteh found out that after a crash, the yuzu main window may reopen in some kind of borderless fullscreen… *thing*. [In a repeat of what Morph fixed back in February](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2022/#general-bugfixes-and-ui-changes), Docteh found out that after a crash, the yuzu main window may reopen in some kind of borderless fullscreen… *thing*.
The culprit was {{< gh-hovercard "8400" "the `UILayout\geometry` value in yuzus qt-config.ini file." >}} The culprit was {{< gh-hovercard "8400" "the `UILayout\geometry` value in yuzus qt-config.ini file." >}}
A slap in the face and the issue should be gone for good. Ouch. A slap in the face and the issue should be gone for good. Ouch.

View file

@ -432,7 +432,7 @@ If you want to download a previous version, test experimental features, or avoid
## Making CPUs go the opposite of BRRR, AMD edition ## Making CPUs go the opposite of BRRR, AMD edition
[Back in March](https://yuzu-emu.org/entry/yuzu-progress-report-mar-2023/#making-cpus-go-the-opposite-of-brrrr), we explained why Windows is not accurate enough when very high precision timers are required, so in order to improve performance, power consumption, and temperatures on x86_64 CPUs, specific CPU instructions are needed to reduce the time the CPU spends improperly idling. [Back in March](https://yuzu-mirror.github.io/entry/yuzu-progress-report-mar-2023/#making-cpus-go-the-opposite-of-brrrr), we explained why Windows is not accurate enough when very high precision timers are required, so in order to improve performance, power consumption, and temperatures on x86_64 CPUs, specific CPU instructions are needed to reduce the time the CPU spends improperly idling.
We have a big mistake to correct here. We said only Intel offered such instructions starting with Alder Lake, and that AMD didnt offer any. We have a big mistake to correct here. We said only Intel offered such instructions starting with Alder Lake, and that AMD didnt offer any.
Fortunately, we were wrong! AMD does indeed have its own implementation, the `monitorx` and `mwaitx` instructions pair, which have been out since *2015*, predating Ryzen! Fortunately, we were wrong! AMD does indeed have its own implementation, the `monitorx` and `mwaitx` instructions pair, which have been out since *2015*, predating Ryzen!
@ -486,7 +486,7 @@ Thank you!
## Input improvements ## Input improvements
The work to make Amiibos and their Near-Field Communication (NFC) behave the same as on real Switch hardware continues. The work to make Amiibos and their Near-Field Communication (NFC) behave the same as on real Switch hardware continues.
With the proper implementation finished [last month](https://yuzu-emu.org/entry/yuzu-progress-report-may-2023/#input-and-amiibo-improvements), german77 has focused on the last items on the checklist. With the proper implementation finished [last month](https://yuzu-mirror.github.io/entry/yuzu-progress-report-may-2023/#input-and-amiibo-improvements), german77 has focused on the last items on the checklist.
First of all, backup support. First of all, backup support.
On the Switch, Amiibo data is stored in the console every time data is loaded or saved. On the Switch, Amiibo data is stored in the console every time data is loaded or saved.
@ -539,7 +539,7 @@ Thanks!
Yes, theres more progress by byte[] in fixing the current file system implementation while we wait for `Project Gaia`. Yes, theres more progress by byte[] in fixing the current file system implementation while we wait for `Project Gaia`.
The [previously reported](https://yuzu-emu.org/entry/yuzu-progress-report-may-2023/#project-gaia-lite) “algorithmic complexity issue” when loading mods was working like a charm on Linux, but Windows always has to be difficult. The [previously reported](https://yuzu-mirror.github.io/entry/yuzu-progress-report-may-2023/#project-gaia-lite) “algorithmic complexity issue” when loading mods was working like a charm on Linux, but Windows always has to be difficult.
A {{< gh-hovercard "10588" "memory cache" >}} was added to fully realise the load time benefits on Microsofts OS too. A {{< gh-hovercard "10588" "memory cache" >}} was added to fully realise the load time benefits on Microsofts OS too.
In another single-line-of-code revelation, byte[] discovered that {{< gh-hovercard "10718" "increasing the size of the buffer" >}} when copying files can more than triple the installation speed of updates and DLCs. In another single-line-of-code revelation, byte[] discovered that {{< gh-hovercard "10718" "increasing the size of the buffer" >}} when copying files can more than triple the installation speed of updates and DLCs.

View file

@ -88,7 +88,7 @@ As always, these changes make it easier to support any future hardware revisions
Bunnei also fixed [a memory leak](https://github.com/yuzu-emu/yuzu/pull/6036) caused by `dummy threads`. Bunnei also fixed [a memory leak](https://github.com/yuzu-emu/yuzu/pull/6036) caused by `dummy threads`.
These dummies are used by yuzu to interact with our emulated kernel. These dummies are used by yuzu to interact with our emulated kernel.
Every "real" emulated thread has a dummy associated with it. Every "real" emulated thread has a dummy associated with it.
As explained in the [previous progress report](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2021/), yuzu utilizes fibers in order to emulate threads. As explained in the [previous progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2021/), yuzu utilizes fibers in order to emulate threads.
However, these dummy threads don't actually use fibers. However, these dummy threads don't actually use fibers.
With this change, bunnei removed some unnecessary memory overhead by removing the creation of fibers (which would only be needed for "real" emulated threads), thus reducing the memory usage by a bit. With this change, bunnei removed some unnecessary memory overhead by removing the creation of fibers (which would only be needed for "real" emulated threads), thus reducing the memory usage by a bit.

View file

@ -188,7 +188,7 @@ If video playback feels smoother, you now know the reason! Thanks epicboy!
This is a very common issue caused mostly by very outdated GPU drivers installed by Windows Update, or custom slower drivers provided by laptop manufacturers that are used to lie on battery life metrics or keep up with cheapened cooling solutions. This is a very common issue caused mostly by very outdated GPU drivers installed by Windows Update, or custom slower drivers provided by laptop manufacturers that are used to lie on battery life metrics or keep up with cheapened cooling solutions.
This most commonly affects Intel GPUs, but Vega based Radeon GPUs can also suffer from it occasionally. This most commonly affects Intel GPUs, but Vega based Radeon GPUs can also suffer from it occasionally.
Another popular reason for this issue, as mentioned in [previous reports](https://yuzu-emu.org/entry/yuzu-progress-report-dec-2021/#ui-changes), is outdated Vulkan injectors breaking support altogether. Another popular reason for this issue, as mentioned in [previous reports](https://yuzu-mirror.github.io/entry/yuzu-progress-report-dec-2021/#ui-changes), is outdated Vulkan injectors breaking support altogether.
Software like OBS Studio, OBS Streamlabs, Bandicam, Action!, Overwolf, GShade, iCUE, MSI Afterburner, or *anything* with an overlay that injects into Vulkan can completely break rendering if it is outdated, or the developers dont keep up with recent Vulkan releases. Software like OBS Studio, OBS Streamlabs, Bandicam, Action!, Overwolf, GShade, iCUE, MSI Afterburner, or *anything* with an overlay that injects into Vulkan can completely break rendering if it is outdated, or the developers dont keep up with recent Vulkan releases.
{{< gh-hovercard "7986" "toasts fixes solve 2 different scenarios" >}}. {{< gh-hovercard "7986" "toasts fixes solve 2 different scenarios" >}}.

View file

@ -14,7 +14,7 @@ Hi yuz-ers! We've been working hard as usual, and this March saw improvements in
One of the biggest changes this month is the set of improvements in CPU accuracy. One of the biggest changes this month is the set of improvements in CPU accuracy.
This requires some backtracking so lets rewind a little bit. This requires some backtracking so lets rewind a little bit.
Back in [July,](https://yuzu-emu.org/entry/yuzu-progress-report-jul-2022/#core-timing-or-how-to-suffer-so-much-with-a-fix) we explained how `CoreTiming` operates in its current form, using a host timer. Back in [July,](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jul-2022/#core-timing-or-how-to-suffer-so-much-with-a-fix) we explained how `CoreTiming` operates in its current form, using a host timer.
A thread called `HostTiming` is used to process HLE events such as input and audio. A thread called `HostTiming` is used to process HLE events such as input and audio.
However, some of these events, like audio, require a high level of timer precision to behave the way games expect, more than Windows would usually allow. However, some of these events, like audio, require a high level of timer precision to behave the way games expect, more than Windows would usually allow.
@ -106,7 +106,7 @@ With some trial and error, and some big help from the great [bylaws](https://git
"./sosfix.png" "./sosfix.png"
>}} >}}
[epicboy](https://github.com/ameerj) strikes again with his ninja updates. This time he gives some love to the *still thriving* OpenGL gang, bringing all the goodies of {{< gh-hovercard "9913" "AccelerateDMA," >}} which we discussed in the [last report](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2023/#project-yfc-175). [epicboy](https://github.com/ameerj) strikes again with his ninja updates. This time he gives some love to the *still thriving* OpenGL gang, bringing all the goodies of {{< gh-hovercard "9913" "AccelerateDMA," >}} which we discussed in the [last report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2023/#project-yfc-175).
This means that OpenGL users, especially those with Fermi and Kepler GPUs, can enjoy the speed boost of this pseudo-Y.F.C. 2 change, making games such as `Metroid Prime Remastered` run much faster. This means that OpenGL users, especially those with Fermi and Kepler GPUs, can enjoy the speed boost of this pseudo-Y.F.C. 2 change, making games such as `Metroid Prime Remastered` run much faster.
No more waiting for Samus to load her arm cannon. No more waiting for Samus to load her arm cannon.
@ -120,14 +120,14 @@ Your writer observes a 3-5% performance increase in `The Legend of Zelda: Breath
"./botw.png| From 54 to 57 FPS in one of the heaviest spots in the game, OpenGL still has life in it! For now… (The Legend of Zelda: Breath of the Wild)" "./botw.png| From 54 to 57 FPS in one of the heaviest spots in the game, OpenGL still has life in it! For now… (The Legend of Zelda: Breath of the Wild)"
>}} >}}
bylaws came to the rescue again, pointing out that our old Vulkan scheduler implementation had some regressions [back in October](https://yuzu-emu.org/entry/yuzu-progress-report-oct-2022/#graphics-and-general-bug-fixes) of last year, when [byte[]](https://github.com/liamwhite) worked on making homebrew apps work with Vulkan. bylaws came to the rescue again, pointing out that our old Vulkan scheduler implementation had some regressions [back in October](https://yuzu-mirror.github.io/entry/yuzu-progress-report-oct-2022/#graphics-and-general-bug-fixes) of last year, when [byte[]](https://github.com/liamwhite) worked on making homebrew apps work with Vulkan.
This meant that games and homebrew would have to wait for a frame to show up on screen before starting to render, which in some cases is a bad example of feedback looping at its worst. This meant that games and homebrew would have to wait for a frame to show up on screen before starting to render, which in some cases is a bad example of feedback looping at its worst.
By {{< gh-hovercard "9931" "waiting in the background" >}} for the queue to be emptied without having to wait for the frame to be presented, byte[] fixed the regression. By {{< gh-hovercard "9931" "waiting in the background" >}} for the queue to be emptied without having to wait for the frame to be presented, byte[] fixed the regression.
Thanks bylaws! Thanks bylaws!
Remember that lovely game we talked about [last month?](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2023/#other-gpu-and-video-changes) Remember that lovely game we talked about [last month?](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2023/#other-gpu-and-video-changes)
The one for all ages! Totally safe to play with your family. The one for all ages! Totally safe to play with your family.
[vonchenplus](https://github.com/vonchenplus) decided to make it playable, so ~~weebs~~ players around the world could enjoy the amazing gameplay of `Moero Crystal H`, by {{< gh-hovercard "9943" "fixing" >}} some errors in how yuzu processed the inline index and draw texture commands. [vonchenplus](https://github.com/vonchenplus) decided to make it playable, so ~~weebs~~ players around the world could enjoy the amazing gameplay of `Moero Crystal H`, by {{< gh-hovercard "9943" "fixing" >}} some errors in how yuzu processed the inline index and draw texture commands.
@ -163,7 +163,7 @@ We need more information to fully understand the issue, but for now, {{< gh-hove
"./xcfix.png" "./xcfix.png"
>}} >}}
The other long-standing issue affecting the Xenoblade trilogy (well, Definitive Edition and 2 at least) has been plaguing yuzu since the legendary [Texture Cache Rewrite](https://yuzu-emu.org/entry/yuzu-tcr/). The other long-standing issue affecting the Xenoblade trilogy (well, Definitive Edition and 2 at least) has been plaguing yuzu since the legendary [Texture Cache Rewrite](https://yuzu-mirror.github.io/entry/yuzu-tcr/).
It was the random "rainbow mode" that could happen anytime during gameplay, or in a specific late-game cutscene in `Xenoblade Chronicles 2` that I wont spoil for new players. It was the random "rainbow mode" that could happen anytime during gameplay, or in a specific late-game cutscene in `Xenoblade Chronicles 2` that I wont spoil for new players.
If you played it in yuzu, you know which one. If you played it in yuzu, you know which one.
It makes you wonder if youre in [Rapture](https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/Bioshock). It makes you wonder if youre in [Rapture](https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/Bioshock).
@ -179,7 +179,7 @@ Another observed problem was excessive lighting making the whole scene unreadabl
>}} >}}
Maide found that the issue was caused by {{< gh-hovercard "10004" "replacing" >}} fresh guest data with stale host data in the environment lighting cubemaps. Maide found that the issue was caused by {{< gh-hovercard "10004" "replacing" >}} fresh guest data with stale host data in the environment lighting cubemaps.
The solution is to only copy data that has been marked as GPU-modified, following the behaviour of the [Buffer Cache Rewrite](https://yuzu-emu.org/entry/yuzu-bcr/). The solution is to only copy data that has been marked as GPU-modified, following the behaviour of the [Buffer Cache Rewrite](https://yuzu-mirror.github.io/entry/yuzu-bcr/).
{{< single-title-imgs-compare {{< single-title-imgs-compare
"This isnt 2009, we dont need this much bloom, thank you very much (Xenoblade Chronicles: Definitive Edition)" "This isnt 2009, we dont need this much bloom, thank you very much (Xenoblade Chronicles: Definitive Edition)"

View file

@ -14,7 +14,7 @@ stability improvements, bug fixes and graphical corrections.
## The worst kept secret ## The worst kept secret
It has its own [article](https://yuzu-emu.org/entry/yuzu-prometheus/), and it had been guessed to hell and back before the official announcement. It has its own [article](https://yuzu-mirror.github.io/entry/yuzu-prometheus/), and it had been guessed to hell and back before the official announcement.
`Project Prometheus` is a proper multithreaded emulation of the 4 CPU cores the Nintendo Switch offers. `Project Prometheus` is a proper multithreaded emulation of the 4 CPU cores the Nintendo Switch offers.
This brings a massive performance boost to users with CPUs with 4 physical cores or more, but for this to happen, a lot of groundwork was needed. This brings a massive performance boost to users with CPUs with 4 physical cores or more, but for this to happen, a lot of groundwork was needed.
Besides changes previously discussed in past reports, old external libraries (which yuzu needs to operate) needed to be updated, Besides changes previously discussed in past reports, old external libraries (which yuzu needs to operate) needed to be updated,
@ -30,7 +30,7 @@ compared to the previous 2 or 3. You should expect a performance boost in a lot
Now, some clarifications are needed for this change. Multicore support cant be merged into our [Mainline](https://github.com/yuzu-emu/yuzu-mainline) release for now due to incompatibilities between Multicore and the [Master](https://github.com/yuzu-emu/yuzu) branch of yuzu. Work is being done to resolve the conflicts, but please have patience. Now, some clarifications are needed for this change. Multicore support cant be merged into our [Mainline](https://github.com/yuzu-emu/yuzu-mainline) release for now due to incompatibilities between Multicore and the [Master](https://github.com/yuzu-emu/yuzu) branch of yuzu. Work is being done to resolve the conflicts, but please have patience.
Additionally, users with 2 cores, and either 2 or 4 threads, should not enable multicore as it will most likely result in a performance Additionally, users with 2 cores, and either 2 or 4 threads, should not enable multicore as it will most likely result in a performance
loss for them due to the lack of physical cores on their CPUs. Our [hardware recommendations](https://yuzu-emu.org/help/quickstart/#hardware) loss for them due to the lack of physical cores on their CPUs. Our [hardware recommendations](https://yuzu-mirror.github.io/help/quickstart/#hardware)
have been updated accordingly. have been updated accordingly.
## Unreal Engine fixes ## Unreal Engine fixes

View file

@ -15,7 +15,7 @@ We have dozens of changes to discuss: Kernel fixes, input and UI improvements, g
`New Pokémon Snap`s release resulted in tons of work needed to make the game playable. For starters, Snap experienced crashes during gameplay, `New Pokémon Snap`s release resulted in tons of work needed to make the game playable. For starters, Snap experienced crashes during gameplay,
an issue [epicboy](https://github.com/ameerj) was not happy about. an issue [epicboy](https://github.com/ameerj) was not happy about.
The [buffer cache rewrite](https://yuzu-emu.org/entry/yuzu-bcr/) introduced an optimized fast path for `uniform bindings`, but the conditions to take advantage of it are that buffers must be both small and *non-null*. Turns out, The [buffer cache rewrite](https://yuzu-mirror.github.io/entry/yuzu-bcr/) introduced an optimized fast path for `uniform bindings`, but the conditions to take advantage of it are that buffers must be both small and *non-null*. Turns out,
null buffers were not being explicitly checked for, causing instabilities along the way. null buffers were not being explicitly checked for, causing instabilities along the way.
[Properly checking for those zero sized buffers](https://github.com/yuzu-emu/yuzu/pull/6322) fixed the stability issues the new Snap was facing. [Properly checking for those zero sized buffers](https://github.com/yuzu-emu/yuzu/pull/6322) fixed the stability issues the new Snap was facing.
@ -46,7 +46,7 @@ something epicboy had no problem properly implementing for us.
"./blits.png| Heres a beautifully detailed example of the old out-of-bounds incorrect behaviour in red, and the correct result in blue, with the affected area moving to the next row, as it should" "./blits.png| Heres a beautifully detailed example of the old out-of-bounds incorrect behaviour in red, and the correct result in blue, with the affected area moving to the next row, as it should"
>}} >}}
The result is quite noticeable in games that use this blit technique, such as `Shantae` and `Pixel Game Maker Series Werewolf Princess Kaguya`, which we mentioned in the [previous progress report](https://yuzu-emu.org/entry/yuzu-progress-report-apr-2021/). The result is quite noticeable in games that use this blit technique, such as `Shantae` and `Pixel Game Maker Series Werewolf Princess Kaguya`, which we mentioned in the [previous progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-apr-2021/).
{{< single-title-imgs {{< single-title-imgs
"Textures and text rendering correctly, notice the stairstepping on the right side of the left image" "Textures and text rendering correctly, notice the stairstepping on the right side of the left image"
@ -259,7 +259,7 @@ toastUnlimited reluctantly [added the CPU tab to per-game settings.](https://git
While were on this subject, some things need to be clarified about the CPU settings tab. While were on this subject, some things need to be clarified about the CPU settings tab.
Unsafe was originally only intended for CPUs that lacked the FMA instruction set, which causes games to run at very low framerates. Unsafe was originally only intended for CPUs that lacked the FMA instruction set, which causes games to run at very low framerates.
Later on, a fix was discovered that could boost the performance of `Luigis Mansion 3` by reducing precision. This was described in Later on, a fix was discovered that could boost the performance of `Luigis Mansion 3` by reducing precision. This was described in
[Januarys progress report.](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2021/) [Januarys progress report.](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2021/)
As a result, we recommend users of CPUs that do have FMA to stick to `Accurate` and only force `Unsafe` for `Luigis Mansion 3`. As a result, we recommend users of CPUs that do have FMA to stick to `Accurate` and only force `Unsafe` for `Luigis Mansion 3`.
Using `Unsafe` is known to cause precision issues, for example, exaggerating the hitboxes of characters in `Super Smash Bros. Ultimate`. Using `Unsafe` is known to cause precision issues, for example, exaggerating the hitboxes of characters in `Super Smash Bros. Ultimate`.

View file

@ -14,7 +14,7 @@ Greetings yuz-ers. This time around, we're covering small and incremental improv
Lets first address the elephant in the room, shall we? Lets first address the elephant in the room, shall we?
While working on dynarmic and kernel emulation, including improving the compatibility of 4 thread CPU systems, we made changes to [dynarmic](https://github.com/merryhime/dynarmic) and [fastmem](https://yuzu-emu.org/entry/yuzu-fastmem/) that broke support for Windows 10 revision 1803 and older, including Windows 7 and Windows 8/8.1. While working on dynarmic and kernel emulation, including improving the compatibility of 4 thread CPU systems, we made changes to [dynarmic](https://github.com/merryhime/dynarmic) and [fastmem](https://yuzu-mirror.github.io/entry/yuzu-fastmem/) that broke support for Windows 10 revision 1803 and older, including Windows 7 and Windows 8/8.1.
While fastmem was only ever designed to work with newer operating systems, the changes to dynarmic breaking support for older Windows versions was purely accidental. While fastmem was only ever designed to work with newer operating systems, the changes to dynarmic breaking support for older Windows versions was purely accidental.
That being said, it is yet another sign of the times, and that a pre-Windows 10 experience in yuzu will continue to become more subpar. That being said, it is yet another sign of the times, and that a pre-Windows 10 experience in yuzu will continue to become more subpar.
@ -33,7 +33,7 @@ For those that still prefer to not upgrade, [Mainline 990](https://github.com/yu
## Vulkan by default ## Vulkan by default
[As previously discussed](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2022/#vulkan-is-the-future), we have to circumvent issues like OEM-locked drivers (so common on Intel hardware, [it has its own official procedure](https://www.intel.com/content/www/us/en/support/articles/000056629/graphics.html)) and broken third party software limitations (outdated screen recorders are a common cause of broken rendering) in order to provide a smooth experience with Vulkan as the default API. [As previously discussed](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2022/#vulkan-is-the-future), we have to circumvent issues like OEM-locked drivers (so common on Intel hardware, [it has its own official procedure](https://www.intel.com/content/www/us/en/support/articles/000056629/graphics.html)) and broken third party software limitations (outdated screen recorders are a common cause of broken rendering) in order to provide a smooth experience with Vulkan as the default API.
The two main causes for Vulkan related crashes when trying to boot a game or opening yuzus configuration are: The two main causes for Vulkan related crashes when trying to boot a game or opening yuzus configuration are:
@ -83,7 +83,7 @@ This process works by writing the pitch image data into GPU memory accessible by
"./dmafix.png" "./dmafix.png"
>}} >}}
byte[] also improved the way OpenGL interprets face flips depth, [replacing the previously reported fix](https://yuzu-emu.org/entry/yuzu-progress-report-apr-2022/#saving-princess-peach-yet-again). byte[] also improved the way OpenGL interprets face flips depth, [replacing the previously reported fix](https://yuzu-mirror.github.io/entry/yuzu-progress-report-apr-2022/#saving-princess-peach-yet-again).
The face flips used by Super Mario 3D All-Stars and the Nintendo 64 emulation are an uncommon configuration on the GPU. The face flips used by Super Mario 3D All-Stars and the Nintendo 64 emulation are an uncommon configuration on the GPU.
The previous implementation had bad rendering in OpenGL, a complete black screen. The previous implementation had bad rendering in OpenGL, a complete black screen.

View file

@ -37,7 +37,7 @@ Lets begin with the most complex problem the Princess introduced the project
As there isn't a single dedicated desktop or laptop graphics card that supports the native decoding of [ASTC textures](https://en.wikipedia.org/wiki/Adaptive_scalable_texture_compression) (with the exception of Intel iGPUs), yuzu is forced to transcode them on the fly into a safe and lossless format that all GPUs support; in this case, the `RGBA8` format. As there isn't a single dedicated desktop or laptop graphics card that supports the native decoding of [ASTC textures](https://en.wikipedia.org/wiki/Adaptive_scalable_texture_compression) (with the exception of Intel iGPUs), yuzu is forced to transcode them on the fly into a safe and lossless format that all GPUs support; in this case, the `RGBA8` format.
This was perfectly fine until now (even on 2GB GPUs), since `ASTRAL CHAIN` was the only game that made "extensive" use of ASTC textures, shipping with 4K textures on a mobile device intended for 1080p and 720p screen resolutions. This was perfectly fine until now (even on 2GB GPUs), since `ASTRAL CHAIN` was the only game that made "extensive" use of ASTC textures, shipping with 4K textures on a mobile device intended for 1080p and 720p screen resolutions.
Our garbage collector, introduced two years ago with [Project Hades](https://yuzu-emu.org/entry/yuzu-hades/), which our veteran users know as “the memory Reaper”, was tuned for this worst case scenario at the time. Our garbage collector, introduced two years ago with [Project Hades](https://yuzu-mirror.github.io/entry/yuzu-hades/), which our veteran users know as “the memory Reaper”, was tuned for this worst case scenario at the time.
But what happens if a game with many more textures and a teletransportation system that allows the player to reach different regions in-game (and, in turn, load a truckload of new, different textures) releases? But what happens if a game with many more textures and a teletransportation system that allows the player to reach different regions in-game (and, in turn, load a truckload of new, different textures) releases?
What if this hypothetical game made use of dozens and dozens of huge ASTC textures? What if this hypothetical game made use of dozens and dozens of huge ASTC textures?
@ -140,7 +140,7 @@ And for integrated GPU users with 16GB of system RAM or less, such as the Steam
"./astcfix.mp4" "./astcfix.mp4"
>}} >}}
That wraps up the list of changes made to memory management to allow `Tears of the Kingdom` to be playable in at least the components listed in our [hardware requirements](https://yuzu-emu.org/help/quickstart/#hardware-requirements). That wraps up the list of changes made to memory management to allow `Tears of the Kingdom` to be playable in at least the components listed in our [hardware requirements](https://yuzu-mirror.github.io/help/quickstart/#hardware-requirements).
These changes would not be necessary if GPUs just supported ASTC textures. These changes would not be necessary if GPUs just supported ASTC textures.
Wouldn't you like your games to be no bigger than 100GB instead of having software features that ruin image quality, such as frame generation? Wouldn't you like your games to be no bigger than 100GB instead of having software features that ruin image quality, such as frame generation?
@ -255,7 +255,7 @@ Were following one of the most important rules of coding, “Make it work. Ma
As this is a particularly popular game (and for good reason), here are some recommendations that user reports and fixes have taught us. As this is a particularly popular game (and for good reason), here are some recommendations that user reports and fixes have taught us.
- This game is very demanding on hardware. What we list in yuzus `recommended` [hardware requirements](https://yuzu-emu.org/help/quickstart/#hardware-requirements) is the minimum needed to sustain 30 FPS in most areas. A 6-core desktop Zen 2/11th gen Core, 16GB of RAM, and a GPU with at least 6GB of VRAM are the baseline for now. - This game is very demanding on hardware. What we list in yuzus `recommended` [hardware requirements](https://yuzu-mirror.github.io/help/quickstart/#hardware-requirements) is the minimum needed to sustain 30 FPS in most areas. A 6-core desktop Zen 2/11th gen Core, 16GB of RAM, and a GPU with at least 6GB of VRAM are the baseline for now.
- The latest CPUs (Zen 4/13th gen Core, always speaking of desktop products) provide massive improvements in IPC, RAM bandwidth, and cache sizes. Where a Ryzen 7 5800X3D barely manages 55 FPS, a Ryzen 5 7600 reaches 90 FPS. - The latest CPUs (Zen 4/13th gen Core, always speaking of desktop products) provide massive improvements in IPC, RAM bandwidth, and cache sizes. Where a Ryzen 7 5800X3D barely manages 55 FPS, a Ryzen 5 7600 reaches 90 FPS.
- Normal GPU accuracy can be used to improve performance safely. - Normal GPU accuracy can be used to improve performance safely.
- Unsafe CPU accuracy can improve performance at the cost of small inaccuracies. - Unsafe CPU accuracy can improve performance at the cost of small inaccuracies.
@ -274,9 +274,9 @@ As this is a particularly popular game (and for good reason), here are some reco
{{< gh-hovercard "10508" "Bet you didnt expect this." >}} {{< gh-hovercard "10508" "Bet you didnt expect this." >}}
Thats right, with the blessing from Skylines [bylaws](https://github.com/bylaws), help from Dolphins [t895](https://github.com/t895) and Citras [GPUCode](https://github.com/GPUCode), work from yuzus and Citras [flTobi](https://github.com/FearlessTobi), [bunnei](https://github.com/bunnei), [Merry](https://github.com/merryhime), [Flamboyant Ham](https://github.com/Schplee), [german77](https://github.com/german77), and more, yuzu is now [available for Android devices](https://yuzu-emu.org/downloads/#android)! Thats right, with the blessing from Skylines [bylaws](https://github.com/bylaws), help from Dolphins [t895](https://github.com/t895) and Citras [GPUCode](https://github.com/GPUCode), work from yuzus and Citras [flTobi](https://github.com/FearlessTobi), [bunnei](https://github.com/bunnei), [Merry](https://github.com/merryhime), [Flamboyant Ham](https://github.com/Schplee), [german77](https://github.com/german77), and more, yuzu is now [available for Android devices](https://yuzu-mirror.github.io/downloads/#android)!
We recommend that you read the dedicated yuzu on Android article [here](https://yuzu-emu.org/entry/yuzu-android/). We recommend that you read the dedicated yuzu on Android article [here](https://yuzu-mirror.github.io/entry/yuzu-android/).
In this section, we will give you an overview of our future plans, some tips on settings and hardware requirements, and a realistic outlook on what you can expect from yuzu on Android right now. In this section, we will give you an overview of our future plans, some tips on settings and hardware requirements, and a realistic outlook on what you can expect from yuzu on Android right now.
The Android version of yuzu was not an easy feat. It took us almost eight months of hard work to make it happen. The Android version of yuzu was not an easy feat. It took us almost eight months of hard work to make it happen.
@ -422,7 +422,7 @@ It is also compatible with Adreno 600 series hardware, so its a simple global
There have been reports of users not being able to load custom drivers — we are still investigating this, but there's still a lot of work to do. There have been reports of users not being able to load custom drivers — we are still investigating this, but there's still a lot of work to do.
For those interested in playing with the source, we have a work-in-progress build guide [here](https://yuzu-emu.org/wiki/building-for-android/). For those interested in playing with the source, we have a work-in-progress build guide [here](https://yuzu-mirror.github.io/wiki/building-for-android/).
Thats all fo… What do you mean theres still a whole article to write? Thats all fo… What do you mean theres still a whole article to write?
Oh right, we have more to talk about! Oh right, we have more to talk about!
@ -771,7 +771,7 @@ We hope the 16GB version at least comes equipped with GDDR6X VRAM, which would i
### AMD ### AMD
AMD has shown steady progress with each new driver release and, thanks to this, the experience on yuzu is in very good shape for Radeon owners, besides some documented hardware limitations causing graphical issues we've mentioned [in the past](https://yuzu-emu.org/entry/yuzu-progress-report-apr-2023/#amd-delivering-on-their-promises). AMD has shown steady progress with each new driver release and, thanks to this, the experience on yuzu is in very good shape for Radeon owners, besides some documented hardware limitations causing graphical issues we've mentioned [in the past](https://yuzu-mirror.github.io/entry/yuzu-progress-report-apr-2023/#amd-delivering-on-their-promises).
The main exception is a rendering issue affecting `Tears of the Kingdom`, which only happens with RDNA3 hardware, the RX 7000 series. The main exception is a rendering issue affecting `Tears of the Kingdom`, which only happens with RDNA3 hardware, the RX 7000 series.

View file

@ -46,7 +46,7 @@ bunnei is still working on more cleanups and looking for things that can be furt
## The Texture Cache Rewrite ## The Texture Cache Rewrite
Weve already spoken in detail about [the Texture Cache Rewrite](https://github.com/yuzu-emu/yuzu/pull/4967) in its [dedicated article](https://yuzu-emu.org/entry/yuzu-tcr/), so in short, the `Texture Cache Rewrite` (which is not a shader cache change) is work done by [Rodrigo](https://github.com/ReinUsesLisp) to reimplement the old texture cache yuzu used, which was forked from [Citra.](https://github.com/citra-emu/citra) This effort took over 10000 lines of code, fixing graphical bugs in numerous games and improving performance along the way. Weve already spoken in detail about [the Texture Cache Rewrite](https://github.com/yuzu-emu/yuzu/pull/4967) in its [dedicated article](https://yuzu-mirror.github.io/entry/yuzu-tcr/), so in short, the `Texture Cache Rewrite` (which is not a shader cache change) is work done by [Rodrigo](https://github.com/ReinUsesLisp) to reimplement the old texture cache yuzu used, which was forked from [Citra.](https://github.com/citra-emu/citra) This effort took over 10000 lines of code, fixing graphical bugs in numerous games and improving performance along the way.
This paves the way for future important changes, like the `Buffer Cache Rewrite`, which is expected to not only continue to improve render accuracy, but to raise performance by optimizing the “hottest” code in the GPU section of our source, according to profiling. Afterwards, development of `Project Hades` is planned. This is a rewrite of the `Shader Cache`, with its main focus being improved precision and stability, and increased performance in Intel GPUs that are bottlenecked by the current implementation. This paves the way for future important changes, like the `Buffer Cache Rewrite`, which is expected to not only continue to improve render accuracy, but to raise performance by optimizing the “hottest” code in the GPU section of our source, according to profiling. Afterwards, development of `Project Hades` is planned. This is a rewrite of the `Shader Cache`, with its main focus being improved precision and stability, and increased performance in Intel GPUs that are bottlenecked by the current implementation.

View file

@ -111,7 +111,7 @@ There are at least 3 known games using `VP8` at the moment: `TY the Tasmanian Ti
>}} >}}
Textures can be divided on colour or depth formats, but everything changed when the [TCR](https://yuzu-emu.org/entry/yuzu-tcr/) attacked. Textures can be divided on colour or depth formats, but everything changed when the [TCR](https://yuzu-mirror.github.io/entry/yuzu-tcr/) attacked.
In OpenGL, a conversion method was missing for copying “incompatible” texture formats, like colour <-> depth format copies. epicboy In OpenGL, a conversion method was missing for copying “incompatible” texture formats, like colour <-> depth format copies. epicboy
[worked around this limitation](https://github.com/yuzu-emu/yuzu/pull/7349) by using the same method implemented in BGR <-> RGB conversions that we've mentioned in the past. [worked around this limitation](https://github.com/yuzu-emu/yuzu/pull/7349) by using the same method implemented in BGR <-> RGB conversions that we've mentioned in the past.
@ -136,8 +136,8 @@ With the release of `Pokémon Brilliant Diamond/Shining Pearl`, a [Unity](https:
[Unreal Engine 4](https://www.unrealengine.com/) game, we realized how much work needs to be done to solve stability and rendering issues affecting both engines. [Unreal Engine 4](https://www.unrealengine.com/) game, we realized how much work needs to be done to solve stability and rendering issues affecting both engines.
Since we dont have that many GPU developers available (especially in finals months), we can only focus on one thing at a time, so first, Unity. Since we dont have that many GPU developers available (especially in finals months), we can only focus on one thing at a time, so first, Unity.
[Blit detection](https://yuzu-emu.org/entry/yuzu-progress-report-may-2021/#graphical-fixes) suffered some regressions with the introduction of the resolution scaler, [Blit detection](https://yuzu-mirror.github.io/entry/yuzu-progress-report-may-2021/#graphical-fixes) suffered some regressions with the introduction of the resolution scaler,
[Project ART](https://yuzu-emu.org/entry/yuzu-art/). [Project ART](https://yuzu-mirror.github.io/entry/yuzu-art/).
[Blinkhawk](https://github.com/FernandoS27) [fixed them and added texture format](https://github.com/yuzu-emu/yuzu/pull/7368) `D24S8` to `RGBA8` conversions to Vulkan, [Blinkhawk](https://github.com/FernandoS27) [fixed them and added texture format](https://github.com/yuzu-emu/yuzu/pull/7368) `D24S8` to `RGBA8` conversions to Vulkan,
fixing several crashes affecting both APIs in this new Pokémon remake. fixing several crashes affecting both APIs in this new Pokémon remake.
@ -196,8 +196,8 @@ Just your average GNOME, who manages both Flatpak and FlatHub.
liushuyu submitted [two](https://github.com/yuzu-emu/yuzu/pull/7431) [separate](https://github.com/yuzu-emu/yuzu/pull/7467) pull requests addressing this problem, but more liushuyu submitted [two](https://github.com/yuzu-emu/yuzu/pull/7431) [separate](https://github.com/yuzu-emu/yuzu/pull/7467) pull requests addressing this problem, but more
edge cases continue to appear, so the battle isnt over yet. edge cases continue to appear, so the battle isnt over yet.
While we continue to work towards winning this war on Flatpak issues, please stick to using our [AppImages](https://yuzu-emu.org/downloads/#linux), or While we continue to work towards winning this war on Flatpak issues, please stick to using our [AppImages](https://yuzu-mirror.github.io/downloads/#linux), or
[manually building yuzu](https://yuzu-emu.org/wiki/building-for-linux/). [manually building yuzu](https://yuzu-mirror.github.io/wiki/building-for-linux/).
If you prefer to manually build yuzu, make sure that your ffmpeg library is capable of decoding `VP8`, `VP9`, and `H.264` on hardware. If you prefer to manually build yuzu, make sure that your ffmpeg library is capable of decoding `VP8`, `VP9`, and `H.264` on hardware.
It seems like the only way to solve this problem will be to just ship our own ffmpeg instead of Flatpaks default version. It seems like the only way to solve this problem will be to just ship our own ffmpeg instead of Flatpaks default version.

View file

@ -129,7 +129,7 @@ After a few dozen rounds of regression testing, the root cause was found in one
While the NPC vertex explosions are fixed, some geometry pop-up issues remain. Homework for later. While the NPC vertex explosions are fixed, some geometry pop-up issues remain. Homework for later.
Now any vertex related glitch only lasts one frame and should go away once the relevant shader gets cached. Now any vertex related glitch only lasts one frame and should go away once the relevant shader gets cached.
Also, as a bonus, `Pokémon Legends: Arceus` can now be played at `Normal` GPU accuracy without encountering vertex explosions, making good on our [promise to fix it](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2022/#a-new-legend)! Also, as a bonus, `Pokémon Legends: Arceus` can now be played at `Normal` GPU accuracy without encountering vertex explosions, making good on our [promise to fix it](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2022/#a-new-legend)!
This can greatly increase performance on the older Pokémon title. One more thing to scratch off the list. This can greatly increase performance on the older Pokémon title. One more thing to scratch off the list.
That buffer cache rewrite is still needed though. That buffer cache rewrite is still needed though.

View file

@ -25,7 +25,7 @@ Two things needed to be fixed to get this colourful cast into good shape: an aud
>}} >}}
Users immediately noticed how the games background audio was completely muted, detracting a lot from the experience. Users immediately noticed how the games background audio was completely muted, detracting a lot from the experience.
After performing a cross-examination, [with music and all](https://youtu.be/5I443rHIYVk), [byte[]](https://github.com/liamwhite) found out the cause was {{< gh-hovercard "12058" "a leftover" >}} from the Opus rewrite [Maide](https://github.com/Kelebek1) did [back in September](https://yuzu-emu.org/entry/yuzu-progress-report-sep-2023/#audio-changes). After performing a cross-examination, [with music and all](https://youtu.be/5I443rHIYVk), [byte[]](https://github.com/liamwhite) found out the cause was {{< gh-hovercard "12058" "a leftover" >}} from the Opus rewrite [Maide](https://github.com/Kelebek1) did [back in September](https://yuzu-mirror.github.io/entry/yuzu-progress-report-sep-2023/#audio-changes).
With this specific case fixed, the game started playing audio as it should. With this specific case fixed, the game started playing audio as it should.
Meanwhile, [epicboy](https://github.com/ameerj) performed a separate investigation in the shader recompiler for NVIDIAs broken rendering. Meanwhile, [epicboy](https://github.com/ameerj) performed a separate investigation in the shader recompiler for NVIDIAs broken rendering.
@ -235,7 +235,7 @@ The Switch wants exactly 256x256 images, so included as part of the package is a
"./profiles.png| Theyre multiplying!" "./profiles.png| Theyre multiplying!"
>}} >}}
Continuing his [previous work](https://yuzu-emu.org/entry/yuzu-progress-report-jul-2022/#input-improvements) on infrared shenanigans (which thankfully dont involve explosives or self-guidance), german77 finished {{< gh-hovercard "11980" "implementing the" >}} `moment image processor`. Continuing his [previous work](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jul-2022/#input-improvements) on infrared shenanigans (which thankfully dont involve explosives or self-guidance), german77 finished {{< gh-hovercard "11980" "implementing the" >}} `moment image processor`.
This means games like `Trombone Champ`and `WarioWare: Put a lid on it` are now playable with Joy-Cons. This means games like `Trombone Champ`and `WarioWare: Put a lid on it` are now playable with Joy-Cons.
Feel free to crack that volume dial and torture your neighbours to your hearts content. Feel free to crack that volume dial and torture your neighbours to your hearts content.
Heres an example by german77 himself, enjoy: Heres an example by german77 himself, enjoy:
@ -328,7 +328,7 @@ On shutdown, the system calls to clear pending events, even while the timing thr
### AMD, mixing drivers ### AMD, mixing drivers
[Last month](https://yuzu-emu.org/entry/yuzu-progress-report-oct-2023/#amd-giving-a-last-hurrah-to-polaris-and-vega), we reported that AMD is discontinuing driver support for Polaris and Vega products, and speculated how it would affect yuzu. [Last month](https://yuzu-mirror.github.io/entry/yuzu-progress-report-oct-2023/#amd-giving-a-last-hurrah-to-polaris-and-vega), we reported that AMD is discontinuing driver support for Polaris and Vega products, and speculated how it would affect yuzu.
What we didnt consider is what happens to mixed configurations, for example running a Vega iGPU and an RDNA2 dGPU. What we didnt consider is what happens to mixed configurations, for example running a Vega iGPU and an RDNA2 dGPU.
This kind of configuration is quite common, as AMD is still selling new devices with integrated Vega GPUs, and laptop vendors can sell configurations with dedicated RDNA2 or RDNA3 products. This kind of configuration is quite common, as AMD is still selling new devices with integrated Vega GPUs, and laptop vendors can sell configurations with dedicated RDNA2 or RDNA3 products.

View file

@ -35,7 +35,7 @@ With the PSA out of the way, let's get into the good stuff!
Anyway, `Project A.R.T.` is out in the wild! [Blinkhawk](https://github.com/FernandoS27), [BreadFish](https://github.com/breadfish64), [epicboy](https://github.com/ameerj), and Anyway, `Project A.R.T.` is out in the wild! [Blinkhawk](https://github.com/FernandoS27), [BreadFish](https://github.com/breadfish64), [epicboy](https://github.com/ameerj), and
[Rodrigo](https://github.com/reinuseslisp) are to thank for this incredible release. [Rodrigo](https://github.com/reinuseslisp) are to thank for this incredible release.
As explained in its dedicated article [here](https://yuzu-emu.org/entry/yuzu-art/), this is a complete rewrite of our old resolution scaling implementation from 2019. As explained in its dedicated article [here](https://yuzu-mirror.github.io/entry/yuzu-art/), this is a complete rewrite of our old resolution scaling implementation from 2019.
Before we jump into the end-user benefits, let's first cover some terminology. Before we jump into the end-user benefits, let's first cover some terminology.
The correct terms for the scaling process are `Upsampling` and `Supersampling`, which can also be more commonly called `Downsampling`. The correct terms for the scaling process are `Upsampling` and `Supersampling`, which can also be more commonly called `Downsampling`.
In layman's terms, downsampling means taking a big frame and reducing its size to fit a smaller display. Downsampling is rendering the game at a higher resolution than your In layman's terms, downsampling means taking a big frame and reducing its size to fit a smaller display. Downsampling is rendering the game at a higher resolution than your
@ -213,7 +213,7 @@ It should now be safe to set at 16x and forget about it.
One last note, AMD users should ensure that [Radeon Image Sharpening](https://www.youtube.com/watch?v=wTh_O9BZlGc) is disabled before using the scaler, as it can affect the One last note, AMD users should ensure that [Radeon Image Sharpening](https://www.youtube.com/watch?v=wTh_O9BZlGc) is disabled before using the scaler, as it can affect the
quality of some filters, especially FSR which includes its own sharpening already. quality of some filters, especially FSR which includes its own sharpening already.
At the time of writing this article, `Resolution Scaling` remains in [Early Access](https://yuzu-emu.org/help/early-access/) for testing and regression finding, but be sure that it wont take long to be merged into [Mainline](https://yuzu-emu.org/downloads/). At the time of writing this article, `Resolution Scaling` remains in [Early Access](https://yuzu-mirror.github.io/help/early-access/) for testing and regression finding, but be sure that it wont take long to be merged into [Mainline](https://yuzu-mirror.github.io/downloads/).
Check the progress in the pull request previously listed, code review is usually the main reason for delays on merging. Check the progress in the pull request previously listed, code review is usually the main reason for delays on merging.
## Graphical and general bugfixes ## Graphical and general bugfixes
@ -362,7 +362,7 @@ toastUnlimited [properly disabled the screensaver while running yuzu](https://gi
Some users tend to think that NVDEC means that video decoding will only work on NVIDIA GPUs, this is not the case. Some users tend to think that NVDEC means that video decoding will only work on NVIDIA GPUs, this is not the case.
NVDEC is the name of the module in the Nintendo Switch, which uses the Tegra X1, an NVIDIA SoC (System on a Chip). NVDEC is the name of the module in the Nintendo Switch, which uses the Tegra X1, an NVIDIA SoC (System on a Chip).
This SoC uses the NVDEC module to decode videos, and the work yuzu has to do is emulate it to work on any compatible system, including systems without NVIDIA GPUs on them. This SoC uses the NVDEC module to decode videos, and the work yuzu has to do is emulate it to work on any compatible system, including systems without NVIDIA GPUs on them.
We have a full explanation [here](https://yuzu-emu.org/entry/yuzu-nvdec-emulation/). We have a full explanation [here](https://yuzu-mirror.github.io/entry/yuzu-nvdec-emulation/).
So, for the sake of clarity, the options were renamed to better convey the intended result: So, for the sake of clarity, the options were renamed to better convey the intended result:
@ -401,7 +401,7 @@ window.
## Input changes ## Input changes
When [german77](https://github.com/yuzu-emu/yuzu/pull/7142) added When [german77](https://github.com/yuzu-emu/yuzu/pull/7142) added
[auto-centering support all the way back in July](https://yuzu-emu.org/entry/yuzu-progress-report-jul-2021/#input-changes), the range of the new center wasnt considered, [auto-centering support all the way back in July](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jul-2021/#input-changes), the range of the new center wasnt considered,
making the analog sticks overpass 100% in a direction while failing to reach it in the opposite way. making the analog sticks overpass 100% in a direction while failing to reach it in the opposite way.
[Scaling the value of the range depending on the offset applied when centering](https://github.com/yuzu-emu/yuzu/pull/7142) solves this issue. [Scaling the value of the range depending on the offset applied when centering](https://github.com/yuzu-emu/yuzu/pull/7142) solves this issue.

View file

@ -50,7 +50,7 @@ By {{< gh-hovercard "11852" "making vibration calls asynchronous," >}} vibration
Undefined behaviour: the formal way to say “here be dragons”. Undefined behaviour: the formal way to say “here be dragons”.
Its a good practice to avoid dragons ― I mean, undefined behaviour ― in your code, especially when dealing with a complex graphics API like Vulkan. Its a good practice to avoid dragons ― I mean, undefined behaviour ― in your code, especially when dealing with a complex graphics API like Vulkan.
Remember our explanation of `depth stencils` [back in August](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2023/#more-gpu-changes)? You may wish to reread that, as it provides useful context to what we will talk about next. Remember our explanation of `depth stencils` [back in August](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2023/#more-gpu-changes)? You may wish to reread that, as it provides useful context to what we will talk about next.
When a game is using a depth buffer, it is usually drawing into a busy 3D scene while taking advantage of a hardware-accelerated process called depth testing. When a game is using a depth buffer, it is usually drawing into a busy 3D scene while taking advantage of a hardware-accelerated process called depth testing.
@ -224,7 +224,7 @@ Heres the full list!
- t895 moved the {{< gh-hovercard "11915" "game list loading process to a separate thread" >}} to reduce stuttering when opening yuzu. The process still takes a similar amount of time, but the perceived smoothness is very welcome. - t895 moved the {{< gh-hovercard "11915" "game list loading process to a separate thread" >}} to reduce stuttering when opening yuzu. The process still takes a similar amount of time, but the perceived smoothness is very welcome.
- t895 solved an issue that caused the {{< gh-hovercard "11916" "touch buttons overlay to get stuck" >}} while drawing the in-game menu from the left side. - t895 solved an issue that caused the {{< gh-hovercard "11916" "touch buttons overlay to get stuck" >}} while drawing the in-game menu from the left side.
- While waiting for a controller settings menu, t895 fixed a bug that caused {{< gh-hovercard "11925" "all controller input to move to player 2" >}} on some devices, blocking users from playing most games. Devices with integrated controllers should have a much better experience now. - While waiting for a controller settings menu, t895 fixed a bug that caused {{< gh-hovercard "11925" "all controller input to move to player 2" >}} on some devices, blocking users from playing most games. Devices with integrated controllers should have a much better experience now.
- And finally, following the [recent changes](https://yuzu-emu.org/entry/yuzu-progress-report-sep-2023/#of-miis-and-applets) in the desktop version, t895 added a {{< gh-hovercard "11931" "menu to access the currently supported applets," >}} Album and Mii editor, along with the Cabinet applet to manage amiibo data. Wii think you will have fun! - And finally, following the [recent changes](https://yuzu-mirror.github.io/entry/yuzu-progress-report-sep-2023/#of-miis-and-applets) in the desktop version, t895 added a {{< gh-hovercard "11931" "menu to access the currently supported applets," >}} Album and Mii editor, along with the Cabinet applet to manage amiibo data. Wii think you will have fun!
{{< single-title-imgs {{< single-title-imgs
"We hope to expand this selection in the future" "We hope to expand this selection in the future"

View file

@ -60,7 +60,7 @@ It's finally here! After such a long wait, and thanks to the work from [ogniK](h
This is possible by using [FFmpeg.](https://ffmpeg.org/) For now, decoding happens in a single CPU thread, and support for multiple threads and GPU decoding is currently being worked on. This is possible by using [FFmpeg.](https://ffmpeg.org/) For now, decoding happens in a single CPU thread, and support for multiple threads and GPU decoding is currently being worked on.
We have an entire article dedicated to showing how this feature came to be, how it works, its challenges, and current limitations in more detail [here.](https://yuzu-emu.org/entry/yuzu-nvdec-emulation/) Please take your time to read it: it also includes a list of games confirmed working and not-so-working yet. We have an entire article dedicated to showing how this feature came to be, how it works, its challenges, and current limitations in more detail [here.](https://yuzu-mirror.github.io/entry/yuzu-nvdec-emulation/) Please take your time to read it: it also includes a list of games confirmed working and not-so-working yet.
## An emulator inside an emulator ## An emulator inside an emulator
@ -116,9 +116,9 @@ Recent Nvidia Geforce drivers (past the 446.14 version) introduced a performance
"./SSBU-fixed.mp4" "./SSBU-fixed.mp4"
>}} >}}
As mentioned in [July's progress report](https://yuzu-emu.org/entry/yuzu-progress-report-jul-2020/), [toastUnlimited](https://github.com/lat9nq) continued to work on solving crashes only experienced with recent Nvidia Vulkan drivers in Linux. Thanks to work done by DXVK, [toast's current implementation aims to be global](https://github.com/yuzu-emu/yuzu/pull/4724), and so far we haven't got any report on getting the issue or any sort of regression. Please feel free to contact us if you are still affected by this issue. As mentioned in [July's progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jul-2020/), [toastUnlimited](https://github.com/lat9nq) continued to work on solving crashes only experienced with recent Nvidia Vulkan drivers in Linux. Thanks to work done by DXVK, [toast's current implementation aims to be global](https://github.com/yuzu-emu/yuzu/pull/4724), and so far we haven't got any report on getting the issue or any sort of regression. Please feel free to contact us if you are still affected by this issue.
Not a fix in yuzu's code, but in fact a fix AMD implemented in their drivers. As mentioned in the previous [August progress report](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2020/), `VK_EXT_extended_dynamic_state` was giving problems on the AMD Vulkan Windows driver. This has been fixed in the latest 20.9.2 driver version, allowing [yours truly](https://github.com/goldenx86) to [remove the previously needed blacklisting.](https://github.com/yuzu-emu/yuzu/pull/4735) No more nightmares when playing `Super Mario Odyssey`. Not a fix in yuzu's code, but in fact a fix AMD implemented in their drivers. As mentioned in the previous [August progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2020/), `VK_EXT_extended_dynamic_state` was giving problems on the AMD Vulkan Windows driver. This has been fixed in the latest 20.9.2 driver version, allowing [yours truly](https://github.com/goldenx86) to [remove the previously needed blacklisting.](https://github.com/yuzu-emu/yuzu/pull/4735) No more nightmares when playing `Super Mario Odyssey`.
## Future projects ## Future projects

View file

@ -104,7 +104,7 @@ sense to the devastated land of Hyrule.
"./botwfix.png| But not THAT dark! (Hyrule Warriors: Age of Calamity)" "./botwfix.png| But not THAT dark! (Hyrule Warriors: Age of Calamity)"
>}} >}}
Speaking of RGB, [as discussed back in February](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2021/#paint-me-like-one-of-your-french-bits), yuzu has to use compute Speaking of RGB, [as discussed back in February](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2021/#paint-me-like-one-of-your-french-bits), yuzu has to use compute
shaders to convert most BGR texture formats in OpenGL to avoid mismatched colours. shaders to convert most BGR texture formats in OpenGL to avoid mismatched colours.
While this can work fine on most current GPUs, theres a performance cost that can affect older and slower products. While this can work fine on most current GPUs, theres a performance cost that can affect older and slower products.
@ -166,7 +166,7 @@ Both these changes affect `DRAGON QUEST III: The Seeds of Salvation`, fixing the
[MonsterDruide1](https://github.com/MonsterDruide1) has added [TAS support](https://github.com/yuzu-emu/yuzu/pull/6485) to yuzu! [MonsterDruide1](https://github.com/MonsterDruide1) has added [TAS support](https://github.com/yuzu-emu/yuzu/pull/6485) to yuzu!
This means precise input commands can be recorded and replayed in-game. This means precise input commands can be recorded and replayed in-game.
The format used to store them is the one [TAS-nx](https://github.com/hamhub7/TAS-nx/tree/master/scripts) implemented, and we have a guide on The format used to store them is the one [TAS-nx](https://github.com/hamhub7/TAS-nx/tree/master/scripts) implemented, and we have a guide on
[how to enable and use this feature here.](https://yuzu-emu.org/help/feature/tas/) [how to enable and use this feature here.](https://yuzu-mirror.github.io/help/feature/tas/)
You can access TAS configuration by going to `Tools > Configure TAS…` You can access TAS configuration by going to `Tools > Configure TAS…`
@ -194,7 +194,7 @@ Linux kernel drivers for Joy-Cons use a different naming convention than the one
## UI changes ## UI changes
With the release of [Project Hades](https://yuzu-emu.org/entry/yuzu-hades/), yuzu started using a full `Pipeline cache` instead of single stages of the graphics pipeline, both With the release of [Project Hades](https://yuzu-mirror.github.io/entry/yuzu-hades/), yuzu started using a full `Pipeline cache` instead of single stages of the graphics pipeline, both
in Vulkan and OpenGL. in Vulkan and OpenGL.
This means parts of our UI were outdated, so [your degenerate writer](https://github.com/goldenx86) decided to simply This means parts of our UI were outdated, so [your degenerate writer](https://github.com/goldenx86) decided to simply
[update the context menu entries](https://github.com/yuzu-emu/yuzu/pull/6976) from Shader cache to Pipeline cache. [update the context menu entries](https://github.com/yuzu-emu/yuzu/pull/6976) from Shader cache to Pipeline cache.
@ -205,7 +205,7 @@ Following suit, [Moonlacer](https://github.com/Moonlacer) helped [replace `Use d
Later on, Moonlacer [removed the toggle](https://github.com/yuzu-emu/yuzu/pull/7020) for `Enable audio stretching` from the audio settings, as it no longer had any purpose. Later on, Moonlacer [removed the toggle](https://github.com/yuzu-emu/yuzu/pull/7020) for `Enable audio stretching` from the audio settings, as it no longer had any purpose.
As a general rule, the fewer options available, the better. As a general rule, the fewer options available, the better.
Morph decided to [eliminate a 2 year old feature,](https://github.com/yuzu-emu/yuzu/pull/7102) [boxcat](https://yuzu-emu.org/entry/yuzu-boxcat/). Morph decided to [eliminate a 2 year old feature,](https://github.com/yuzu-emu/yuzu/pull/7102) [boxcat](https://yuzu-mirror.github.io/entry/yuzu-boxcat/).
BCAT is a network service used by the Nintendo Switch to add content to its games without needing constant updates. BCAT is a network service used by the Nintendo Switch to add content to its games without needing constant updates.
Our old BCAT implementation only added some “gifts” our developers placed into games that were playable at the time. It was unable to support real use cases, like the game Our old BCAT implementation only added some “gifts” our developers placed into games that were playable at the time. It was unable to support real use cases, like the game
@ -274,7 +274,7 @@ Instead of a separate folder in `%localappdata%`, information is now saved in yu
[toastUnlimited](https://github.com/lat9nq) [toastUnlimited](https://github.com/lat9nq)
[performed his first stubbing surgery with the audio input services `Start`, `RegisterBufferEvent`, and `AppendAudioInBufferAuto`](https://github.com/yuzu-emu/yuzu/pull/7018). [performed his first stubbing surgery with the audio input services `Start`, `RegisterBufferEvent`, and `AppendAudioInBufferAuto`](https://github.com/yuzu-emu/yuzu/pull/7018).
This way, `Splatoon 2` can now be played via [LAN](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2021/#lan-party-time) without requiring the use of auto-stub. Happy This way, `Splatoon 2` can now be played via [LAN](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2021/#lan-party-time) without requiring the use of auto-stub. Happy
splatting! splatting!
german77 [stubbed `SetTouchScreenConfiguration` and implemented `GetNotificationStorageChannelEvent`](https://github.com/yuzu-emu/yuzu/pull/6992) to make `Dr Kawashima's Brain german77 [stubbed `SetTouchScreenConfiguration` and implemented `GetNotificationStorageChannelEvent`](https://github.com/yuzu-emu/yuzu/pull/6992) to make `Dr Kawashima's Brain

View file

@ -12,8 +12,8 @@ Hello yuz-ers! We have so much to talk about this month. From game fixes, input
## Project London: open-source, online Local Wireless emulation ## Project London: open-source, online Local Wireless emulation
As promised in the [previous progress report](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2022/#future-projects), As promised in the [previous progress report](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2022/#future-projects),
and explained in its [dedicated article](https://yuzu-emu.org/entry/ldn-is-here/), {{< gh-hovercard "8876" "LDN support is here and available to all users!" >}} and explained in its [dedicated article](https://yuzu-mirror.github.io/entry/ldn-is-here/), {{< gh-hovercard "8876" "LDN support is here and available to all users!" >}}
Enjoy pwning some noobs in your favourite games. Enjoy pwning some noobs in your favourite games.
But before we explain the how, let's cover some theory. But before we explain the how, let's cover some theory.
@ -24,7 +24,7 @@ But before we explain the how, let's cover some theory.
The Nintendo Switch offers 4 methods for multiplayer gameplay: The Nintendo Switch offers 4 methods for multiplayer gameplay:
- Good, old, couch *local multiplayer*. While this normally only refers to people in the same physical room, the community has been enjoying the benefits of remote access streaming, with services like [Parsec](https://parsec.app/), to play online with the lowest possible latency. - Good, old, couch *local multiplayer*. While this normally only refers to people in the same physical room, the community has been enjoying the benefits of remote access streaming, with services like [Parsec](https://parsec.app/), to play online with the lowest possible latency.
- Local Area Network (LAN) multiplayer. This is when multiple Switches connect to the same local network. This option has been emulated and available in yuzu [for quite a while now](https://yuzu-emu.org/entry/yuzu-progress-report-aug-2021/#lan-party-time). Its limited to very few games, and it doesnt have good tolerance for lag. - Local Area Network (LAN) multiplayer. This is when multiple Switches connect to the same local network. This option has been emulated and available in yuzu [for quite a while now](https://yuzu-mirror.github.io/entry/yuzu-progress-report-aug-2021/#lan-party-time). Its limited to very few games, and it doesnt have good tolerance for lag.
- LDN multiplayer, more commonly known as Local Wireless, the star of this section. This is when one Switch hosts a session over the built-in Switch WiFi hardware while others connect to it as guests. The trick here is that nothing stops emulators from using a server infrastructure to host rooms so users from anywhere in the world, including locally, can join and smash each other. This method is far more supported by games than LAN. - LDN multiplayer, more commonly known as Local Wireless, the star of this section. This is when one Switch hosts a session over the built-in Switch WiFi hardware while others connect to it as guests. The trick here is that nothing stops emulators from using a server infrastructure to host rooms so users from anywhere in the world, including locally, can join and smash each other. This method is far more supported by games than LAN.
- Nintendo Online. This is the paid Nintendo service to play online, which also includes other bonuses such as official emulators to play older titles. We have no plans to offer support for Nintendo Online in the near or far future. - Nintendo Online. This is the paid Nintendo service to play online, which also includes other bonuses such as official emulators to play older titles. We have no plans to offer support for Nintendo Online in the near or far future.
@ -45,7 +45,7 @@ From there, double-clicking a room will allow the user to join it. Keep in mind,
>}} >}}
Speaking of user-hosted rooms, the `Create Room` option in the `Multiplayer` menu allows users to host their own rooms, with custom player limits and optional password security. Speaking of user-hosted rooms, the `Create Room` option in the `Multiplayer` menu allows users to host their own rooms, with custom player limits and optional password security.
Some ports need to be forwarded in the hosts router/modem configuration, so please [follow our guide here](https://yuzu-emu.org/help/feature/multiplayer/). Some ports need to be forwarded in the hosts router/modem configuration, so please [follow our guide here](https://yuzu-mirror.github.io/help/feature/multiplayer/).
{{< imgs {{< imgs
"./create.png| Feel free to host any game you want!" "./create.png| Feel free to host any game you want!"
@ -124,7 +124,7 @@ Some systems, like Steam, don't like yuzu's behaviour of spawning a new process
After three months of regression solving and the usual nasty delays, `Project Y.F.C.` Part 1 is finally merged to Mainline! After three months of regression solving and the usual nasty delays, `Project Y.F.C.` Part 1 is finally merged to Mainline!
You can find more information about it, as well as whats expected in the near future for Part 2 You can find more information about it, as well as whats expected in the near future for Part 2
[here](https://yuzu-emu.org/entry/yuzu-progress-report-jul-2022/#part-1-of-project-yfc). [here](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jul-2022/#part-1-of-project-yfc).
One regression remains, for now. One regression remains, for now.
It affects certain puzzles in the single player mode of `Splatoon 2`. It affects certain puzzles in the single player mode of `Splatoon 2`.

View file

@ -84,7 +84,7 @@ We measured an 8% performance increase in some games with a 5800X3D.
Lower end systems could see bigger gains. Lower end systems could see bigger gains.
GPUCode also fought against the rendering issues affecting `Mortal Kombat 1` and `Sonic Forces` when using Vulkan. GPUCode also fought against the rendering issues affecting `Mortal Kombat 1` and `Sonic Forces` when using Vulkan.
For those deep into the yuzu lore, this is a compute shader implementation of {{< gh-hovercard "11556" "MSAA image copies," >}} similar to what epicboy [did back in February](https://yuzu-emu.org/entry/yuzu-progress-report-feb-2023/#other-gpu-and-video-changes). For those deep into the yuzu lore, this is a compute shader implementation of {{< gh-hovercard "11556" "MSAA image copies," >}} similar to what epicboy [did back in February](https://yuzu-mirror.github.io/entry/yuzu-progress-report-feb-2023/#other-gpu-and-video-changes).
As said back then, compared to OpenGL, Vulkan requires a lot more work. As said back then, compared to OpenGL, Vulkan requires a lot more work.
{{< single-title-imgs-compare {{< single-title-imgs-compare

View file

@ -12,7 +12,7 @@ Hi yuz-ers! Were very excited to offer you one of the biggest code rewrites i
## But what is the TCR? ## But what is the TCR?
yuzu started as a fork of [Citra](https://github.com/citra-emu/citra), so Citra's texture cache (or rasterizer cache, as it was called at the time) was used in the early days of yuzu. However, this cache only supported OpenGL, so one of the first efforts when adding support for [Vulkan](https://yuzu-emu.org/entry/yuzu-vulkan/) was to make the code more generic, helping in GPU emulation. yuzu started as a fork of [Citra](https://github.com/citra-emu/citra), so Citra's texture cache (or rasterizer cache, as it was called at the time) was used in the early days of yuzu. However, this cache only supported OpenGL, so one of the first efforts when adding support for [Vulkan](https://yuzu-mirror.github.io/entry/yuzu-vulkan/) was to make the code more generic, helping in GPU emulation.
When this was being worked on, we were still learning how the Nintendo Switch's GPU worked (we still are, but even more so then). Some design decisions taken at the time stuck with the codebase making things harder to change in the future. It was also easier to break with unrelated changes. When this was being worked on, we were still learning how the Nintendo Switch's GPU worked (we still are, but even more so then). Some design decisions taken at the time stuck with the codebase making things harder to change in the future. It was also easier to break with unrelated changes.

View file

@ -25,7 +25,7 @@ To find out more about it, jump right in!
For the past year, the most awaited and requested feature for yuzu has been the Vulkan Renderer. For the past year, the most awaited and requested feature for yuzu has been the Vulkan Renderer.
Many users, especially those with AMD GPUs, have been patiently waiting for this day. <br> Many users, especially those with AMD GPUs, have been patiently waiting for this day. <br>
Download the latest [Early Access](https://yuzu-emu.org/help/early-access/) build via the installer now to try it out! Download the latest [Early Access](https://yuzu-mirror.github.io/help/early-access/) build via the installer now to try it out!
After you download the build, go to `Emulation -> Configure -> Graphics` and select `Vulkan` in the API dropdown. After you download the build, go to `Emulation -> Configure -> Graphics` and select `Vulkan` in the API dropdown.
{{<imgs {{<imgs

View file

@ -28,7 +28,7 @@ Otherwise, you need to become a Patron at the `Early Access tier.` [**Click here
#### Step 2 #### Step 2
Next, you need to login to your yuzu profile page. Next, you need to login to your yuzu profile page.
Click on the link given below to proceed.<br> Click on the link given below to proceed.<br>
<a href="https://profile.yuzu-emu.org/" target="_blank"><b>yuzu profile page</b></a><br> <a href="https://profile.yuzu-mirror.github.io/" target="_blank"><b>yuzu profile page</b></a><br>
><p style="color:lawngreen;"><b><i>By clicking on the link, a new tab will open, redirecting you to the Citra Community forum. ><p style="color:lawngreen;"><b><i>By clicking on the link, a new tab will open, redirecting you to the Citra Community forum.
As both Citra and yuzu share a common Discourse forum, you'll have to either log in with those credentials or create a new account there. As both Citra and yuzu share a common Discourse forum, you'll have to either log in with those credentials or create a new account there.
@ -60,7 +60,7 @@ Now that your account is linked, copy your login token by highlighting the text
>}} >}}
#### Step 6 #### Step 6
Next, download and run the latest version of the Installer: [**Click here to download.**](https://yuzu-emu.org/downloads/) Next, download and run the latest version of the Installer: [**Click here to download.**](https://yuzu-mirror.github.io/downloads/)
You should see an option to select the `Early Access` release channel. You should see an option to select the `Early Access` release channel.
**Note:** `Early Access` includes all the same features and updates as the regular yuzu, so you dont need to install both! **Note:** `Early Access` includes all the same features and updates as the regular yuzu, so you dont need to install both!

View file

@ -8,7 +8,7 @@ description = "yuzu's multiplayer feature has the ability to emulate local wirel
Unlike single console netplay used in most emulators, users wont have to worry about desyncs, synchronizing saves, or any other issues typical of netplay. Each user is using their instance of *yuzu* as a unique emulated Switch that is communicating with everyone else through a *multiplayer room*, a server that can be hosted by anyone for connected clients to exchange data with each other. Unlike single console netplay used in most emulators, users wont have to worry about desyncs, synchronizing saves, or any other issues typical of netplay. Each user is using their instance of *yuzu* as a unique emulated Switch that is communicating with everyone else through a *multiplayer room*, a server that can be hosted by anyone for connected clients to exchange data with each other.
You can learn more about *yuzu*'s multiplayer features in [this article](https://yuzu-emu.org/entry/ldn-is-here/). You can learn more about *yuzu*'s multiplayer features in [this article](https://yuzu-mirror.github.io/entry/ldn-is-here/).
## Hosting Rooms ## Hosting Rooms
If you just want to play with your friends, **you do not need to create your own room**. You can just pick a room from our Public Room Browser, where plenty of public rooms hosted by us and the community are already available for use. If you just want to play with your friends, **you do not need to create your own room**. You can just pick a room from our Public Room Browser, where plenty of public rooms hosted by us and the community are already available for use.
@ -48,7 +48,7 @@ sudo docker run -d \
--max_members 4 \ --max_members 4 \
--token "<INSERT YUZU ACCOUNT TOKEN HERE>" \ --token "<INSERT YUZU ACCOUNT TOKEN HERE>" \
--enable-yuzu-mods \ --enable-yuzu-mods \
--web-api-url https://api.yuzu-emu.org --web-api-url https://api.yuzu-mirror.github.io
``` ```
Make sure the ports specified in `--publish` matches the port specified in `--port`, so that *Docker* can correctly forward your server's ports to the container. Make sure the ports specified in `--publish` matches the port specified in `--port`, so that *Docker* can correctly forward your server's ports to the container.
@ -59,7 +59,7 @@ If you are on Windows, it is also possible to host rooms using a standalone exec
Steps: Steps:
1. If you do not have a *yuzu* installation yet, install it with the installer from our [official website](https://yuzu-emu.org). 1. If you do not have a *yuzu* installation yet, install it with the installer from our [official website](https://yuzu-mirror.github.io).
1. Navigate to the folder you installed *yuzu* to, and go into `yuzu-windows-msvc` or `yuzu-windows-msvc-early-access`. 1. Navigate to the folder you installed *yuzu* to, and go into `yuzu-windows-msvc` or `yuzu-windows-msvc-early-access`.
* If you cannot recall the installation folder, right clicking on a shortcut and clicking `Open File Location` will directly bring you into the `yuzu-windows-msvc` or `yuzu-windows-msvc-early-access` folder. * If you cannot recall the installation folder, right clicking on a shortcut and clicking `Open File Location` will directly bring you into the `yuzu-windows-msvc` or `yuzu-windows-msvc-early-access` folder.
* Make sure the folder you are in contains the `yuzu-room` executable. * Make sure the folder you are in contains the `yuzu-room` executable.
@ -76,7 +76,7 @@ yuzu-room ^
--max_members 4 ^ --max_members 4 ^
--token "<INSERT YUZU ACCOUNT TOKEN HERE>" ^ --token "<INSERT YUZU ACCOUNT TOKEN HERE>" ^
--enable-yuzu-mods ^ --enable-yuzu-mods ^
--web-api-url https://api.yuzu-emu.org ^ --web-api-url https://api.yuzu-mirror.github.io ^
--ban-list-file "<INSERT BAN LIST FILE PATH HERE>" --ban-list-file "<INSERT BAN LIST FILE PATH HERE>"
pause pause
``` ```
@ -98,7 +98,7 @@ By default, rooms will be hosted Public. If you'd like to host a private one ins
|`--port`|Yes|Port number to host your room on (0-65535). You should use a port that is not already used by other applications (typically a high enough port will work). Though unrecommended due to bandwidth reasons, it is possible to host multiple rooms on a single server provided the ports are distinct. **Remember to configure `Port Forwarding` for the ports!** |`--port`|Yes|Port number to host your room on (0-65535). You should use a port that is not already used by other applications (typically a high enough port will work). Though unrecommended due to bandwidth reasons, it is possible to host multiple rooms on a single server provided the ports are distinct. **Remember to configure `Port Forwarding` for the ports!**
|`--max-members`|Yes|Maximum number of members for your room (2-16). *Note that rooms that are too large may result in slowdowns or even disconnections in certain games.* |`--max-members`|Yes|Maximum number of members for your room (2-16). *Note that rooms that are too large may result in slowdowns or even disconnections in certain games.*
|`--password`|No|An optional password to limit access to your room. |`--password`|No|An optional password to limit access to your room.
|`--token`|Public Rooms|Your *yuzu* Community user token. Do not know your token yet? Get it [here](https://yuzu-emu.org/wiki/yuzu-web-service/). |`--token`|Public Rooms|Your *yuzu* Community user token. Do not know your token yet? Get it [here](https://yuzu-mirror.github.io/wiki/yuzu-web-service/).
|`--web-api-url`|Public Rooms|URL to the *yuzu* Web API. You should not change this. |`--web-api-url`|Public Rooms|URL to the *yuzu* Web API. You should not change this.
|`--ban-list-file`|No|This is a file which yuzu will store ban records in. Banning would still work even if you do not specify this, but the bans will be lost once you shut down the room. |`--ban-list-file`|No|This is a file which yuzu will store ban records in. Banning would still work even if you do not specify this, but the bans will be lost once you shut down the room.
|`--log-file`|No|File path to store the logs. |`--log-file`|No|File path to store the logs.

View file

@ -59,9 +59,9 @@ OpenGL 4.6 or Vulkan 1.1 compatible hardware and drivers are mandatory. Half-flo
- **Minimum for Windows:** NVIDIA GeForce GT 1050 4GB / AMD Radeon RX 550 4GB - **Minimum for Windows:** NVIDIA GeForce GT 1050 4GB / AMD Radeon RX 550 4GB
- **Recommended:** NVIDIA GeForce GTX 1660 6GB / AMD Radeon RX 5500 8GB [(with "Force maximum clocks" enabled)](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2023/turboui.png) - **Recommended:** NVIDIA GeForce GTX 1660 6GB / AMD Radeon RX 5500 8GB [(with "Force maximum clocks" enabled)](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2023/turboui.png)
- **Optimal:** NVIDIA Geforce RTX 3060 12GB / AMD Radeon RX 6700 10GB [(with "Force maximum clocks" enabled)](https://yuzu-emu.org/entry/yuzu-progress-report-jan-2023/turboui.png) - **Optimal:** NVIDIA Geforce RTX 3060 12GB / AMD Radeon RX 6700 10GB [(with "Force maximum clocks" enabled)](https://yuzu-mirror.github.io/entry/yuzu-progress-report-jan-2023/turboui.png)
#### Integrated graphics: #### Integrated graphics:

View file

@ -4,8 +4,8 @@ description: "How to properly ask in our forums or support channel for assistanc
--- ---
### Before starting your support request: ### Before starting your support request:
* **Read the [Quickstart Guide](https://yuzu-emu.org/help/quickstart/).** Watching a YouTube video tutorial or reading a guide elsewhere doesn't count, as the majority of those provides incorrect instructions and quickly get outdated. * **Read the [Quickstart Guide](https://yuzu-mirror.github.io/help/quickstart/).** Watching a YouTube video tutorial or reading a guide elsewhere doesn't count, as the majority of those provides incorrect instructions and quickly get outdated.
* **Check if the problem is already reported in our [game compatibility list](https://yuzu-emu.org/game/)** Someone may be experiencing the same issue as you, or specific settings may be required for the game you are attempting to play. * **Check if the problem is already reported in our [game compatibility list](https://yuzu-mirror.github.io/game/)** Someone may be experiencing the same issue as you, or specific settings may be required for the game you are attempting to play.
* **Reset your config file to defaults** This can resolve many common misconfiguration issues. This can be done by going to Configuration menu, General tab, and selecting "Reset All Settings" * **Reset your config file to defaults** This can resolve many common misconfiguration issues. This can be done by going to Configuration menu, General tab, and selecting "Reset All Settings"
* **Make sure you're using the latest yuzu Mainline build.** We don't provide support for older builds. Make sure you're using the latest Mainline build available, as we always pour new improvements into them. * **Make sure you're using the latest yuzu Mainline build.** We don't provide support for older builds. Make sure you're using the latest Mainline build available, as we always pour new improvements into them.
* **Check if your drivers are up-to-date.** Many issues are simply solved by updating your drivers, mainly GPU. Always make sure your GPU drivers are up-to-date before proceeding. Just using the Windows builtin updater usually is not enough! Always install your GPU drivers through your GPU vendor's website. * **Check if your drivers are up-to-date.** Many issues are simply solved by updating your drivers, mainly GPU. Always make sure your GPU drivers are up-to-date before proceeding. Just using the Windows builtin updater usually is not enough! Always install your GPU drivers through your GPU vendor's website.

View file

@ -56,7 +56,7 @@ This Privacy Policy explains how we collect, use, and protect your anonymized te
9. Contact Us 9. Contact Us
If you have any questions or concerns about this Privacy Policy or our data practices, please contact us at yuzu@yuzu-emu.org. If you have any questions or concerns about this Privacy Policy or our data practices, please contact us at yuzu@yuzu-mirror.github.io.
<br> <br>