Tested on Windows, but should work on most OSs that can run Python 3.9+
Python 3.9 - Used everywhere in this suite
Blender - Verified on 3.3.1
img2nutexb - Program required for using img2nutexbGUI
ssbh_data_py - Running MagicModel. You'll need to use the python -m pip install ssbh_data_py
command in command prompt to install
[MatLab] (https://github.com/Ploaj/SSBHLib) - (Not the math software) Running LazyMat
StudioSB - Importing models and creating numdlb files
ssbh_editor - Easily preview models and edit material files
Microsoft Excel - Only for Lazymat, but highly recommended for creating multiple materials
ArcExplorer - Obtaining assets
ssbh_data_json - Converting files to json to edit
nutexb_cli.exe - Program required for using img2nutexbGU with DDS files. Run cargo build on the root of the repo, navigate to target/debug, and there will be the nutexb_cli.exe you'll need. If you want to move this program elsewhere, move the entire debug folder.
rustup used for building nutexb_cli
Grab from the latest releases
The following programs have been updated in the source code, but not the current release:
- Magic Model (LazyNumdlb): Now alphabetically sorts meshes and materials. No longer requires a copy of a .numdlb to be present in the folder, but instead will prompt the user to select a folder that contains the model,mesh and material files
Stage Modding | Character Modding | |
---|---|---|
Blender SSS | ✔️ | ❓ |
LazyMat | ✔️ | ❓ |
LazyConfig | ✔️ | ✔️ |
MagicModel | ✔️ | ❓ |
img2nutexbGUI | ✔️ | ✔️ |
NumatbGUI | ✔️ | ✔️ |
UI Retrieve | ✔️ | ✔️ |
Each folder in the repo has a README.md to look at that serves as a quick overview of the program. Additionally, the wiki will be updated regularly with additional topics on the Blender plugin
Our end goal is to be able to quickly prototype stage designs through the use of Blender and Python. To do this, we'll need to export models, create a list of materials and textures to build a numatb file, and manipulate a numdlb file so that we can automatically assign materials to meshes.
Importing the model:
- Blender SSS - Prepare your models. This blender program can properly separate objects by material, group objects by material without losing UV maps, rename meshes to their material's name, and export a list of material and texture names
- StudioSB - Import your meshes from Blender, export a numdlb and numshb file
SharpSuite.py This is when you can use SharpSuite.py to create a quick prototype to see how your model looks in-game. This would skip steps using img2nutexbGUI and Magic Model. I still recommend using LazyMat if you have access to excel to properly assign shaders to materials.
Creating materials and textures:
- LazyMat - Create a numatb file. You'll use the exported material list to fill this out. This can be customized to keep a list of shaders.
- Img2nutexbGUI - Convert several images at once to nutexb files
- MagicModel - Reassigns meshs' their material label based on that mesh's name, and alphabetically sorts mesh and material files. This only works if Blender SSS was used on the mesh.
Preview:
- CrossMod/SSBH_Editor - After using LazyMat, LazyNumdlb, and StudioSB, preview the model
Finishing:
- LazyConfig - Creates a config.json to be used with file addition
- UI Retrieve - Easily retrieves all relevant UI for your mod so you can replace it when finished
jam1garner - original img2nutexb program
SMG - ssbh_data_py developer, example projects used to help creating LazyNumdlb
Smash Ultimate Research Group - developing tools to help make this possible