Editing Shader caches

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
:''This page contains Shader Cache sets to download for specific games''
+
Modern consoles and their games make heavy use of precompiled shaders specific to their GPUs, and these shaders can't be run natively on PC hardware, so they need to be translated or recompiled. The simplest way to do this is to recompile them at runtime, but that's slow and can cause stuttering every time a new shader is loaded in the game. A mitigation to this stuttering is to compile the shaders asynchronously to the emulator, but this has its own drawback in that in the time it takes to compile the shader, the effect in-game that relies on it won't be shown. Another approach is to cache the system's raw shader pipeline and then compile the shaders before the game even starts. The only drawback here is that someone has to play through the game once to 'build' a cache that can be used by others.
 
 
A '''shader cache''' is  a collection of GPU specific programs known as shaders that get stored in your computer's auxiliary memory for quick retrieval (as you play your game).
 
 
 
Modern consoles and their games make heavy use of precompiled shaders specific to their GPUs, and these shaders can't be run natively on PC hardware, so they need to be translated or recompiled. The simplest way to do this is to recompile them at runtime, but that's slow and can cause stuttering every time a new shader is loaded in the game. A mitigation to this stuttering is to compile the shaders asynchronously to the emulator, but this has its own drawback in that in the time it takes to compile the shader, the effect in-game that relies on it won't be shown.  
 
 
 
Another approach is to cache the system's raw shader pipeline and then compile the shaders before the game even starts. The only drawback here is that someone has to play through the game atleast once to 'build' a cache that can be used by others. This page provides files to pre-built caches for seamless use while playing your games.
 
  
 
When an emulator updates the way it handles shaders, it may break compatibility with previous shader caches; for this reason, the shader version is listed below.
 
When an emulator updates the way it handles shaders, it may break compatibility with previous shader caches; for this reason, the shader version is listed below.
  
'''Note: Please compress your shader caches with 7-Zip or WinRAR before uploading them.'''
+
Note: Please compress your shader caches with 7-Zip or WinRAR before uploading them.
  
 
==[[Cemu]]==
 
==[[Cemu]]==
Line 176: Line 170:
 
Put the raw and pipeline folders in <code><RPCS3Folder>\cache\<gameSerial>\ppu-<hash>-EBOOT.BIN\shaders_cache\</code>
 
Put the raw and pipeline folders in <code><RPCS3Folder>\cache\<gameSerial>\ppu-<hash>-EBOOT.BIN\shaders_cache\</code>
  
Current shader version is v1.94 (2022/12/11)<ref>[https://github.com/RPCS3/rpcs3/blob/master/rpcs3/Emu/RSX/VK/VKGSRender.cpp#L714 RPCS3's shader version source on Github]</ref>
+
Current shader version is v1.94 (2022/12/11)<ref>[https://github.com/RPCS3/rpcs3/blob/master/rpcs3/Emu/RSX/VK/VKGSRender.cpp#L704 RPCS3's shader version source on Github]</ref>
  
 
{| class="wikitable" style="text-align:center;"
 
{| class="wikitable" style="text-align:center;"
Line 187: Line 181:
 
! scope="col"|'''Renderer'''
 
! scope="col"|'''Renderer'''
 
! scope="col"|'''Notes'''
 
! scope="col"|'''Notes'''
|-
 
|God of War III
 
|[https://www.mediafire.com/file/2dg1c4yws75zcge/God_of_War_III_%252801.03%2529.7z/file Download]
 
|v1.94
 
|9330
 
|Vulkan
 
|
 
|-
 
|Guitar Hero 5
 
|[https://www.mediafire.com/file/noozx9rv6l94piy/GH5+RPCS3+Shaders.zip/file Download]
 
|v1.94
 
|1485
 
|Vulkan
 
|
 
|-
 
|Guitar Hero: Warriors of Rock
 
|[https://www.mediafire.com/file/tdwdnyu9e7t38ox/GHWOR+RPCS3+Shaders.zip/file Download]
 
|v1.94
 
|1953
 
|Vulkan
 
|
 
 
|-
 
|-
 
|Ratchet and Clank: A Crack in Time
 
|Ratchet and Clank: A Crack in Time
Line 220: Line 193:
 
|v1.93
 
|v1.93
 
|1150
 
|1150
|Vulkan
 
|
 
|-
 
|Rock Band 3 Deluxe
 
|[https://www.mediafire.com/file/sig1mxr0fh3tjnq/RB3DX_RPCS3_Shaders.zip/file Download]
 
|v1.94
 
|1280
 
 
|Vulkan
 
|Vulkan
 
|
 
|
Line 234: Line 200:
 
|v1.94
 
|v1.94
 
|2831
 
|2831
|Vulkan
 
|
 
|-
 
|The Beatles: Rock Band
 
|[https://www.mediafire.com/file/0q22va8k29mx1vw/TBRB_RPCS3_Shaders.zip/file Download]
 
|v1.94
 
|721
 
 
|Vulkan
 
|Vulkan
 
|}
 
|}
Line 356: Line 315:
  
 
==[[Ryujinx]]==
 
==[[Ryujinx]]==
Right click the game in Ryujinx's game list, Cache Management > Open Shader Cache Directory, and extract the zip there.
+
Right click the game in Ryujinx's game list, Cache Management > Open Shader Cache Directory and extract the zip there.
  
 
To share: Right click the game in Ryujinx's game list, Cache Management > Open Shader Cache Directory and zip all the files named "guest" and "shared". Use the title ID as filename (check the file path for a folder with a name that resembles 010015100b514000).
 
To share: Right click the game in Ryujinx's game list, Cache Management > Open Shader Cache Directory and zip all the files named "guest" and "shared". Use the title ID as filename (check the file path for a folder with a name that resembles 010015100b514000).
  
 
* '''Don't upload shaders if you used mods.'''
 
* '''Don't upload shaders if you used mods.'''
* '''Vendors seem to matter, so if your card is AMD and there's only an NVIDIA shader cache available, add another entry, and vice-versa. Don't just replace caches from different vendors.'''
+
* '''Vendors seem to matter, so if your card is AMD and there's only a Nvidia shader cache available, add another entry, and vice-versa. Don't just replace caches from different vendors.'''
  
 
Current shader version is 1.1 (2023/10/23)<ref>[https://github.com/Ryujinx/Ryujinx/blob/b1f8f868f6fdec87bd3342ac379594bd695cbbfd/src/Ryujinx.Graphics.Gpu/Shader/DiskCache/DiskCacheGuestStorage.cs#L12 Ryujinx's shader version source on Github]</ref>
 
Current shader version is 1.1 (2023/10/23)<ref>[https://github.com/Ryujinx/Ryujinx/blob/b1f8f868f6fdec87bd3342ac379594bd695cbbfd/src/Ryujinx.Graphics.Gpu/Shader/DiskCache/DiskCacheGuestStorage.cs#L12 Ryujinx's shader version source on Github]</ref>
Line 392: Line 351:
 
|784
 
|784
 
|-
 
|-
|Donkey Kong Country: Tropical Freeze
+
|Mario Kart 8
|[https://www.mediafire.com/file/2iupnuvaih9uc0r/DKCTF_Vulkan.zip/file Download]
+
|[https://www.mediafire.com/file/uzrrsa9dlgkhrr4/0100152000022000.zip/file Download]
 
|1.1
 
|1.1
|NVIDIA
+
|Nvidia
|796
+
|4213
|-
 
|Kirby and the Forgotten Land
 
|[https://www.mediafire.com/file/fpt6dsvtizxcxs7/01004d300c5ae000.zip/file Download]
 
|1.1
 
|NVIDIA
 
|6774
 
|-
 
|Mario Kart 8 Deluxe
 
|[https://drive.google.com/uc?export=download&id=1CaDEA4h5jaqwTF5JuDgaoRKjBkJP-YHJ Download]
 
|1.1
 
|NVIDIA
 
|5934
 
|-
 
|Mario Kart 8 Deluxe
 
|[https://drive.google.com/uc?export=download&id=1QPULxBDTiTq3Tq_cVza1WZzx2vFroEKQ Download]
 
|1.1
 
|AMD
 
|5921
 
 
|-
 
|-
 
|Metroid Dread
 
|Metroid Dread
 
|[https://www.mediafire.com/file/pjrf5zlt8o3u1yv/010093801237C000.zip/file Download]
 
|[https://www.mediafire.com/file/pjrf5zlt8o3u1yv/010093801237C000.zip/file Download]
 
|1.1
 
|1.1
|NVIDIA
+
|Nvidia
 
|401
 
|401
 
|-
 
|-
Line 431: Line 372:
 
|[https://www.mediafire.com/file/wisclvjbc2rglk1/010015100b514000.7z/file Download]
 
|[https://www.mediafire.com/file/wisclvjbc2rglk1/010015100b514000.7z/file Download]
 
|1.1
 
|1.1
|NVIDIA
+
|Nvidia
 
|4169
 
|4169
 
|-
 
|-
 
|Super Mario Bros. Wonder
 
|Super Mario Bros. Wonder
|[https://www.mediafire.com/file/9l3q6ndy5y4j1ex/010015100b514000.zip/file Download]
+
|[https://www.mediafire.com/file/x6ddcd3m12gla4r/010015100b514000.zip/file/file Download]
 
|1.1
 
|1.1
 
|AMD
 
|AMD
|4119
+
|3795
 
|-
 
|-
 
|Super Mario Bros. Wonder
 
|Super Mario Bros. Wonder
Line 449: Line 390:
 
|[https://www.mediafire.com/file/2k8s0hrn5yexd02/0100000000010000.zip/file Download]
 
|[https://www.mediafire.com/file/2k8s0hrn5yexd02/0100000000010000.zip/file Download]
 
|1.1
 
|1.1
|NVIDIA
+
|Nvidia
 
|14040
 
|14040
 
|-
 
|-
Line 457: Line 398:
 
|Apple
 
|Apple
 
|822
 
|822
|-
 
|Super Smash Bros. Ultimate
 
|[https://www.mediafire.com/file/oi3et9c0ofn9v3n/SSBU_Shader_Cache.zip/file Download]
 
|1.1
 
|NVIDIA
 
|19485
 
 
|-
 
|-
 
|Master Detective Archives: Rain Code
 
|Master Detective Archives: Rain Code
Line 473: Line 408:
 
|[https://www.mediafire.com/file/hetrwsxsa37se7s/0100e95004038000.rar/file Download]
 
|[https://www.mediafire.com/file/hetrwsxsa37se7s/0100e95004038000.rar/file Download]
 
|1.1
 
|1.1
|NVIDIA
+
|Nvidia
 
|4517
 
|4517
 
|}
 
|}
  
'''Dump from defunct RyuSAK servers. Have in mind that some shaders might be broken (such as Mario Kart 8).'''
+
<s>'''[https://github.com/Ecks1337/RyuSAK/releases Ryusak] is a tool to automatically download and share shader caches for Ryujinx.'''</s>
 
 
Avoid re-uploading these shaders to the list above.
 
 
 
*[https://www.mediafire.com/file/vpyvasmyelkv8m9/Shaders.zip.001/file Download Part 1]
 
  
*[https://www.mediafire.com/file/qyv600io6sczyna/Shaders.zip.002/file Download Part 2]
+
Note: Ryusak is no longer being maintained, and is no longer functional.
  
==[[Yuzu]]==
+
==[[yuzu]]==
NOTE: Yuzu is no longer being maintained and shutdown their services (including all repositories) [[History_of_emulation#Lawsuits|because of legal troubles]].
+
NOTE: Yuzu is not being maintained and shutdowned services because of legal troubles.
 +
Right click the game in yuzu's game list and click <code>Open Transferable Pipeline Cache</code> and copy/paste the .bin file.
  
Right click the game in Yuzu's game list and click <code>Open Transferable Pipeline Cache</code> and copy/paste the .bin file.
+
Current shader version is '''11''' (2024/1/27). Use version 1659 and below to get shader version '''10'''<ref>yuzu [https://github.com/yuzu-emu/yuzu/blob/master/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp#L57 Vulkan] and [https://github.com/yuzu-emu/yuzu/blob/master/src/video_core/renderer_opengl/gl_shader_cache.cpp#L54 OpenGL] shader version source on Github</ref>
 
 
Current shader version is '''11''' (2024/1/27). Use version 1659 and below to get shader version '''10'''<ref>yuzu [https://github.com/yuzu-emu/yuzu/blob/master/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp#L57 Vulkan] and [https://github.com/yuzu-emu/yuzu/blob/master/src/video_core/renderer_opengl/gl_shader_cache.cpp#L54 OpenGL] shader version source on GitHub</ref>
 
  
 
{| class="wikitable" style="text-align:center;"
 
{| class="wikitable" style="text-align:center;"
Line 570: Line 500:
 
|-
 
|-
 
|Pokemon Legends: Arceus
 
|Pokemon Legends: Arceus
|
+
|[https://www.mediafire.com/file/ruvjjjwmcehz08i/Pok%25C3%25A9mon_Legends_-_Arceus.7z/file Vulkan]
 
|10
 
|10
 
|5752
 
|5752
Line 609: Line 539:
 
|-
 
|-
 
|The Legend of Zelda: Skyward Sword HD
 
|The Legend of Zelda: Skyward Sword HD
|
+
|[https://www.mediafire.com/file/mfy3t55k8wtqg3g/The_Legend_of_Zelda_-_Skyward_Sword.7z/file Vulkan]
 
|10
 
|10
 
|337
 
|337
 
|-
 
|-
 
|The Legend of Zelda: Tears of the Kingdom
 
|The Legend of Zelda: Tears of the Kingdom
|[https://www.mediafire.com/file/f0yekhllc1t7jnd/0100f2c0115b6000.7z/file Vulkan]
+
|[https://www.mediafire.com/file/n1vjrw4h1h1586p/0100f2c0115b6000.7z/file Vulkan]
|11
+
|10
|54945
+
|53665
 
|-
 
|-
 
|Xenoblade Chronicles 2: Torna
 
|Xenoblade Chronicles 2: Torna

Please note that all contributions to Emulation General Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Emulation General Wiki:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Template used on this page: