Home - nosklo/cemu_utils GitHub Wiki

Welcome to the cemu_utils wiki!

This will list the different utilities in this repository and describe them.

shaderutils.py

This is a utility to manage cemu transferable shader caches. Thanks to Exzap for providing the insight on the internal shader cache file format.

You can see it in action in this nice video by BSoD Gaming.

Features

  • optimize: This utility will automatically remove gaps and reorganize the shader caches in contiguous format. The file will be smaller but that probably won't affect game performance since the files are only read on load.
  • merge: Use the merge button to merge two or more shader caches in one. That way the file will contain the unique shaders from both files. Duplicates will be discarded.
  • unpack: The unpack button will unpack all the shaders inside the file to a folder with the same name of the original file. Each file will be a valid shader cache with exactly one shader. You can then delete the files you don't want from the folder and "repack" by using the "open" button and choosing all remaining files, or just merge them with any other cache of your choice.
    • Remember that unpacking/repacking many shaders can take a while as your OS deals with so many files. Just wait and the processing will be over.

Download:

  • On linux you can just run the .py file, it works in python 2 and 3.
  • On windows if you don't want to install python you can download executable here

Screenshots:

open shader optimization merge 01 merge 02