When replacing textures, the process is fairly similar on both Wii U/Cemu and Switch. The main difference is the presence of Tex1 and Tex2 which are combined as a single Tex file on the switch.
Replacing The Textures
- Open Switch Toolbox and find the texture you're looking for. Use IDs List to find the bfres name.
- Drag the Tex1 (or Tex if Switch) into Switch Toolbox. These can mostly be found in
content/Model, though some are in
content/Pack/TitleBG.pack//Model. If Wii U, make sure the Tex2 is in the same directory as the Tex1 (so that Switch Toolbox can load/save its contents properly)
- Click the + icon next to the file, and then on textures folder.
- Find the texture you're looking to replace and right-click, replace. Please note when replacing textures sometimes sRGB won't be automatically selected. If it's an albedo (_Alb), then it will glow in-game without sRGB.
- Save the file and say Yes to yaz0-compression if it asks. If you're on Wii U, it will ask where to save the Tex2: save it in the same spot the Tex2 would belong for that model (probably in the same place as the Tex1) and yaz0-compress it as well.
- If the file size increased it's recommended that you install with BCML to handle metadata files.
Congratulations! You replaced the texture! If you're on CEMU, create a graphics pack and try it out, otherwise follow the normal steps for mods on Switch / Wii U to see it in action.
- Make sure your texture formats match the originals that you're replacing. With the texture selected, the format is listed on the right side. It'll be something like
- Make sure your mipmaps were generated correctly. If toolbox throws an error when you try to use the Mip Level selector above the texture preview, or it claims there are not X mip levels (where the size of the longer side of your texture is 2^X, for example 256 is 2^8 so a 256x256 texture should have 8 mip levels) then the mipmaps were not generated correctly. If you imported a PNG, delete it from the bfres, save, close toolbox, open toolbox, and try reimporting it again. If you imported a DDS, then it likely didn't have any mip levels stored in it, and you would need to export the file from your texture editor with mipmaps baked in.
The game cannot find the texture it expects with the name it expects. Make sure your texture has the same name as the texture you replaced. If it is the same name, see Patchwork/color-splotchy textures.
The game cannot gracefully handle too many resources loaded at once, so too many large textures will cause the game to be unable to allocate memory for a resource, return a null pointer, and crash. Only replace textures with new textures of the same size or smaller unless the loss of detail is unacceptable.