Nintendo Switch emulator
Go to file
ReinUsesLisp 92c8d783b3 renderer_vulkan/wrapper: Add Vulakn wrapper and a span helper
The intention behind a Vulkan wrapper is to drop Vulkan-Hpp.

The issues with Vulkan-Hpp are:
- Regular breaks of the API.
- Copy constructors that do the same as the aggregates (fixed recently)
- External dynamic dispatch that is hard to remove
- Alias KHR handles with non-KHR handles making it impossible to use
smart handles on Vulkan 1.0 instances with extensions that were included
on Vulkan 1.1.
- Dynamic dispatchers silently change size depending on preprocessor
definitions. Different files will have different dispatch definitions,
generating all kinds of hard to debug memory issues.

In other words, Vulkan-Hpp is not "production ready" for our needs and
this wrapper aims to replace it without losing RAII and exception
safety.
2020-03-27 03:13:18 -03:00
.ci ci: Disable Vulkan for Windows MinGW builds 2020-01-29 19:44:00 -03: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 shader/transform_feedback: Add host API friendly TFB builder 2020-03-13 18:33:04 -03:00
dist GUI: Togglable graphics settings buttons in status bar 2020-01-28 23:59:30 +01:00
externals microprofile: Silence sign comparison warning 2020-03-18 20:03:19 -03:00
hooks pre-commit: Change comment from citra to yuzu 2018-03-26 21:34:19 +02:00
src renderer_vulkan/wrapper: Add Vulakn wrapper and a span helper 2020-03-27 03:13:18 -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 fix CMake build errors for certain SDL2 installations 2020-02-17 13:01:40 -08: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 Update README.md 2020-03-01 18:03:32 +01: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 also 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.