MCPcopy Index your code
hub / github.com/Grim-es/material-combiner-addon

github.com/Grim-es/material-combiner-addon @2.1.2.9

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.1.2.9 ↗ · + Follow
288 symbols 722 edges 31 files 13 documented · 5% updated 7mo ago2.1.2.9 · 2023-11-20★ 70017 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

material-combiner-addon

An addon for Blender that allows to get lower draw calls in game engines by combining textures without quality loss and avoiding the problem of uv larger 0-1 bounds.

If you like an addon, you can support my work on Patreon or Buy me a coffee.

FEATURES

  • Combining multiple materials. (allow applying diffuse colors and choosing each image and atlas sizes)
  • Multicombining. (add layers for each image that are combined into different atlases, allow generating a Normal map, Specular map, etc atlases) (Currently Disabled | Supported in version 2.0.3.3)
  • Packing UV into the selected scale bounds by splitting mesh faces, compatible with rigged models. (Currently Disabled | Supported in version 1.1.6.3)

INSTALLATION

  1. Download an addon: Material-combiner
  2. Go to File > User Preferences > Addons
  3. Click on Install Add-on from File
  4. Choose material-combiner-addon-master.zip archive
  5. Activate Material Combiner

KNOWN ISSUES

After clicking "Save atlas to.." the materials are simply merged or the atlas image does not have all the textures

  • Textures are packaged in a .blend file. You need to save the .blend somewhere and click File > External data > Unpack All Into Files (to any directory of your choice).
  • Your version of Blender is not in English, in this case the nodes will be named differently, their names are strictly written in the script. You need to manually rename the nodes to their own names, or switch the blender version to English and regenerate the nodes by re-importing the model.
  • You are using an unsupported shader (Surface property of material). You can view the file utils/materials.py to see what shaders are supported or what node names should be.

Pillow installation process is repeated

  • Make sure the VPN is not currently active.

  • Windows | Make sure Blender isn't installed from the Windows Store because it's not supported. If you want to install Pillow manually, go to the blender installation folder, navigate to the folder with the blender version name\python\bin and copy this path. Press Win+R on your keyboard and type cmd.exe, press Enter. After that, write this commands to the Windows console: ``` set PythonPath="Your\Copied\Path\To\Python\bin\Folder"

    %PythonPath%\python.exe -m pip install Pillow --user --upgrade ``` Make sure to replace Your\Copied\Path\To\Python\bin\Folder with your copied path.

  • MacOS | Open a Mac Terminal console and write these commands: ``` /Applications/Blender.app/Contents/MacOS/Blender -b --python-expr "import('ensurepip')._bootstrap()"

    /Applications/Blender.app/Contents/MacOS/Blender -b --python-expr "import('pip._internal')._internal.main(['install', '-U', 'pip', 'setuptools', 'wheel'])"

    /Applications/Blender.app/Contents/MacOS/Blender -b --python-expr "import('pip._internal')._internal.main(['install', 'Pillow'])" ``` if you install Blender in a different path, change the first part of each command to the correct path.

No module named 'material-combiner-addon-2'

You have installed the Source code from the Releases, instead install from master branch Material-combiner. But first remove the old installation folder. Default location: C:\Users\YourUserName\AppData\Roaming\Blender Foundation\Blender\BlenderVersion\scripts\addons.

BUGS / SUGGESTIONS

If you have found a bug or have suggestions to improve the tool, you can contact me on Discord: @shotariya

Core symbols most depended-on inside this repo

get_icon_id
called by 19
icons/__init__.py
save_updater_json
called by 11
addon_updater.py
rgb_to_255_scale
called by 8
utils/materials.py
get_update_post
called by 6
addon_updater_ops.py
get_shader_type
called by 6
utils/materials.py
form_repo_url
called by 5
addon_updater.py
get_user_preferences
called by 5
addon_updater_ops.py
get_packed_file
called by 5
utils/images.py

Shape

Method 167
Function 87
Class 33
Route 1

Languages

Python100%

Modules by API surface

addon_updater.py97 symbols
addon_updater_ops.py54 symbols
operators/combiner/combiner_ops.py38 symbols
operators/ui/multicombine_list.py13 symbols
operators/ui/combine_list.py11 symbols
ui/property_menu.py8 symbols
operators/combiner/packer.py8 symbols
icons/__init__.py6 symbols
extend_lists.py6 symbols
utils/materials.py5 symbols
registration.py5 symbols
operators/get_pillow.py5 symbols

For agents

$ claude mcp add material-combiner-addon \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact