Files
KKBP_Importer/extras/resetmaterials.py
小煜 5d9e09e9c3 feat: Add KoikatsuBlenderPipeline addon with import/export functionality
- Add core addon files (__init__.py, KKPanel.py, preferences.py, common.py)
- Add import pipeline with armature, mesh, and material modification modules
- Add export pipeline with material baking and FBX preparation utilities
- Add material combiner tool for texture atlas generation and optimization
- Add extras utilities for animation, rigging, and asset management
- Add bone orientation data from better_fbx for accurate skeletal structure
- Add comprehensive documentation and wiki with multi-language support (EN, JP, ZH)
- Add animation library retargeting lists for ARP and Rokoko motion capture
- Add Rigify integration scripts for advanced rigging workflows
- Add shader file (KK Shader V8.0.blend) for material rendering
- Add manifest and license files for addon distribution
- Add changelog documenting version history and improvements
- Initialize complete Blender addon project for Koikatsu character import/export
2025-12-06 15:26:19 +08:00

19 lines
799 B
Python

import bpy
from ..interface.dictionary_en import t
from .. import common as c
class reset_materials(bpy.types.Operator):
bl_idname = "kkbp.resetmaterials"
bl_label = "Reset KKBP materials"
bl_description = t('reset_mats_tt')
bl_options = {'REGISTER', 'UNDO'}
def execute(self, context):
#setup materials for the combiner script
for obj in [o for o in bpy.data.collections[c.get_name()].all_objects if not o.hide_get() and o.type == 'MESH']:
for mat in [mat_slot.material for mat_slot in obj.material_slots if mat_slot.material.get('simple')]:
if bpy.data.materials.get(mat.name + '-ORG'):
org_mat = bpy.data.materials.get(mat.name + '-ORG')
mat.user_remap(org_mat)
return {'FINISHED'}