多维子材质命名测试

多维子材质命名测试
 1 rollout multiname "Multi/Sub Material" width:260 height:214
 2 (
 3     button yijian "A U T O  N A M I N G" align:#center width:150 height:32
 4     checkbox isnormalbump "Normal Bump"  checked:true align:#center
 5     --label lbl2 "①基于模型命名,请先确认模型名" align:#left width:230 height:19
 6     --label lbl3 "②子材质基础名为:主材质_字母(a、b、c...)" align:#left width:230 height:32
 7     --label lbl4 "③子材质贴图名为:主材质_序列(01、02、03...)" align:#left width:230 height:32
 8     --label lbl5 "④子材质贴图后缀为:_d、_m、_n" align:#left width:230 height:18
 9     --label lbl6 "⑤目前最大支持9个子材质,不建议超过此数,不要有空材质球" align:#left width:230 height:32
10     ---------------------------
11     global sel = getCurrentSelection()
12     global xulie = #("01","02","03","04","05","06","07","08","09")
13     global abc = #("a","b","c","d","e","f","g","h","i")
14     -------------------------
15 
16     on yijian pressed do
17     (
18         for i=1 to sel.count do 
19         (
20             for j=1 to sel[i].material.numsubs do
21         (
22             if sel[i].material.name != sel[i].name + "_mat" 
23                 then sel[i].material.name = sel[i].name + "_mat"
24             --------------材质球命名
25             if sel[i].material.materiallist [j] != undefined 
26                 then sel[i].material.materiallist [j].name = sel[i].name + "_" + abc[j] + "_mat"
27             ----------------子材质球命名
28             if sel[i].material.materiallist [j] != undefined and sel[i].material.materiallist [i].diffusemap != undefined
29                 then sel[i].material.materiallist [j].diffusemap.name = sel[i].name + "_" + xulie[j] + "_d"
30             if sel[i].material.materiallist [j] != undefined and sel[i].material.materiallist [i].SpecularLevelMap != undefined
31                 then sel[i].material.materiallist [j].SpecularLevelMap.name = sel[i].name + "_"  + xulie[j] + "_m"
32             ----------------------------
33             try
34                 (
35             if isnormalbump.checked == false and sel[i].material.materiallist [j].BumpMap == undefined then print 1
36             )
37             catch()
38             if isnormalbump.checked == false and sel[i].material.materiallist [j].BumpMap != undefined then 
39                 sel[i].material.materiallist [i].Bump_Map.name = sel[i].name + "_" + xulie[j] + "_n"
40 
41             if isnormalbump.checked == true and sel[i].material.materiallist [j].BumpMap != undefined then 
42             (
43                 sel[i].material.materiallist [j].BumpMap.name = sel[i].name + "_" + xulie[j] + "_n_mat"
44                 sel[i].material.materiallist [j].BumpMap.normal_map.name = sel[i].name + "_" + xulie[j] + "_n"
45             )
46         )
47         )
48     )
49 )
50 createdialog multiname

 

posted @ 2017-09-15 10:12  zolin7  阅读(231)  评论(0编辑  收藏  举报