sorry for the thrashing, turns out this dir is not used for modules, it could be...
[blender-addons-contrib.git] / io_directx_bel / bel / material.py
1 import bpy
2
3 '''
4 given name < 21
5 if material name exists :
6 naming_method = 0   blender default (increment name)
7 naming_method = 1   do nothing, abort creation and use existing
8 naming_method = 2   create new, rename existing, 
9 naming_method = 3   create new, replace existing
10 '''
11
12 def new(name, naming_method=0) :
13     if name not in bpy.data.materials or naming_method == 0:
14         return bpy.data.materials.new(name=name)
15     
16     elif naming_method == 1 :
17         return bpy.data.materials[name]
18     
19     mat = bpy.data.materials.new(name=name)
20     
21     if naming_method == 2 :
22         mat.name = name
23         return mat
24     
25     # naming_method = 3 : replace 
26     prevmat = bpy.data.materials[name]
27     for ob in bpy.data.objects :
28         for matslot in ob.material_slots :
29             if matslot.material == prevmat :
30                 matslot.material = mat
31     bpy.data.materials.remove(prevmat)
32     return mat