Go to file
ReinUsesLisp 5b01f80a12 vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache
The stream buffer before this commit once it was full (no more bytes to
write before looping) waiting for all previous operations to finish.
This was a temporary solution and had a noticeable performance penalty
in performance (from what a profiler showed).

To avoid this mark with fences usages of the stream buffer and once it
loops wait for them to be signaled. On average this will never wait.
Each fence knows where its usage finishes, resulting in a non-paged
stream buffer.

On the other side, the buffer cache is reimplemented using the generic
buffer cache. It makes use of the staging buffer pool and the new
stream buffer.
2020-01-06 18:13:41 -03:00
.ci Add missing CMakeLists.txt from root folder to source upload 2019-12-03 15:35:28 -07:00
.github .github: Create FUNDING.yml 2019-06-08 17:00:32 +02:00
.travis Revert "CMake: Get Git submodule dependencies via CMake (#2474)" 2019-06-29 22:19:47 +02:00
CMakeModules VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders. 2019-10-25 09:01:29 -04:00
dist Updated yuzu icon to thicker version 2019-10-08 23:33:51 -07:00
externals vk_shader_decompiler: Update sirit and implement Texture AOFFI 2019-12-19 01:42:13 -03:00
hooks pre-commit: Change comment from citra to yuzu 2018-03-26 21:34:19 +02:00
src vk_stream_buffer/vk_buffer_cache: Avoid halting and use generic cache 2020-01-06 18:13:41 -03:00
.gitattributes Meta: Add gitattributes file 2018-09-22 23:31:44 +02:00
.gitignore Port #3702 from Citra 2018-07-26 15:35:24 +02:00
.gitmodules externals: Track upstream libzip 2019-10-29 19:52:40 -04:00
.travis.yml travis: Update to using Xcode 10.2 2019-05-07 06:40:30 -04:00
CMakeLists.txt Ignore git-related files in cmake for EA tarballs 2019-12-05 22:48:20 -05:00
CONTRIBUTING.md Update CONTRIBUTING.md 2019-11-12 21:42:43 -05:00
Doxyfile Minor cleanup 2018-01-13 23:56:18 +00:00
license.txt qt_themes: add two colorful themes 2019-09-22 16:42:00 +02:00
README.md Remove AppVeyor status 2019-09-29 22:32:44 +02:00

yuzu emulator

Travis CI Build Status Azure Mainline CI Build Status

yuzu is an experimental open-source emulator for the Nintendo Switch from the creators of Citra.

It is written in C++ with portability in mind, with builds actively maintained for Windows and Linux. The emulator is capable of running several commercial games.

yuzu only emulates a subset of Switch hardware and therefore most commercial games do not run at full speed or are not fully functional.

Do you want to check which games are compatible and which ones are not? Please visit our Compatibility page!

yuzu is licensed under the GPLv2 (or any later version). Refer to the license.txt file included.

Check out our website!

For development discussion, please join us on Discord.

Development

Most of the development happens on GitHub. It's also where our central repository is hosted.

If you want to contribute please take a look at the Contributor's Guide and Developer Information. You should as well contact any of the developers on Discord in order to know about the current state of the emulator.

Building

Support

We happily accept monetary donations or donated games and hardware. Please see our donations page for more information on how you can contribute to yuzu. Any donations received will go towards things like:

  • Switch consoles to explore and reverse-engineer the hardware
  • Switch games for testing, reverse-engineering, and implementing new features
  • Web hosting and infrastructure setup
  • Software licenses (e.g. Visual Studio, IDA Pro, etc.)
  • Additional hardware (e.g. GPUs as-needed to improve rendering support, other peripherals to add support for, etc.)

We also more than gladly accept used Switch consoles, preferably ones with firmware 3.0.0 or lower! If you would like to give yours away, don't hesitate to join our Discord and talk to bunnei. You may also contact: donations@yuzu-emu.org.