Max Script|操作材質編輯器

本章記錄Max腳本對材質編輯器中各類顏色及選擇的設置

  • 創建球體、修改球體分段數並給球體賦予標準材質或者將標準材質漫反射顏色修改爲任意color
sphere()
select object()
s = $
s.segs = 32
s.material = standard()                 --給當前obj制定標準材質
s.material = standard diffuse:yellow    --給當前標準材質球制定具體漫反射顏色
  • 高光屬性修改
s.material.specular_level = 70  --修改高光級別
s.material.glossiness = 50      --修改高光光澤度
s.material.soften = 0.5         --修改高光軟化值
  • 自發光屬性修改
s.material.self_illumination = 50   --自發光亮度爲50
s.material.useSelfIllumColor = on   --開啓自發光顏色
s.material.selfillumcolor = color 159 159 159   --自定義自發光顏色
  • 不透明屬性修改
s.material.opacity = 50     --設置不透明度
  • 明暗器基本參數修改
s.material.shadertype = 0 - 7 
0--->Anisotropic        [Anisotropic]
1--->Blinn              [Blinn]
2--->Matal              [金屬]
3--->Multi-Layer        [多層]
4--->Oren-Nayar-Blinn   [Oren-Nayar-Blinn]
5--->Phong              [Phong]
6--->Strauss            [Strauss]
7--->Translucent Shader [半透明]
  • 貼圖通道修改
s.material.maps[2] = checker()      --給通道2【漫反射通道】指定棋盤格貼圖
s.material.diffusemap = marble()    --給通道2【漫反射通道】指定大理石貼圖
showtexturemap a.material on        --在場景中顯示該材質效果
【通道支持索引和具體名稱方式操作貼圖通道,以下索引從1開始。具體名稱不贅述自行查找】
1--->Ambient Color      --環境光顏色
2--->Diffuse Color      ==>漫反射顏色
3--->Specular Color     ==>高光顏色
4--->Specular level     ==>高光級別
5--->Glossiness         ==>光澤度
6--->self-illumination  ==>自發光
7--->Opacity            ==>不透明度
8--->Filter Color       ==>過濾色
9--->Bump               ==>凹凸貼圖
10--->Reflection        ==>反射
11--->Refraction        ==>折射
12--->Displacement      ==>置換
  • 修改材質通道中的子屬性
s.material.maps[2].size = 50        --血管大小
s.material.maps[2].vein_width = 0.3 --血管寬度
s.material.maps[2].color1 = red     --子屬性中的一號顏色
s.material.maps[2].color2 = blue    --子屬性中的二號顏色
s.material.maps[2].coords.tiling = [1.1,2,2]    --瓷磚 point3值類型
s.material.maps[2].coords.offset = [0.1,0,2]    --偏移 point3值類型
s.material.maps[2].coords.angle = [20,0,20]     --角度 point3值類型
  • 修改任意材質球
meditmaterials[3] = inknpaint()     --修改3號材質球爲卡通材質 總共24個材質球 索引從1開始
meditmaterials[2] = multimaterial() --修改2號材質球爲多維材質
meditmaterials[2].materiallist[1-10] = inknpaint  --修改多維材質球中的第一個材質爲卡通材質 索引1-10
meditmaterials[2].materiallist[4].paint_map = checker() --多維中第4材質的子屬性中繪製-亮區屬性中(lighted)添加棋方格圖片
meditmaterials[2].materiallist[4].paint_color = blue--多維中第4材質的子屬性中繪製-亮區顏色修改
meditmaterials[4].materiallist[4].paint_levels = 10 --多維中第4材質的子屬性繪製-級別修改
meditmaterials[4].materiallist[4].ink_on= off       --墨水開關
meditmaterials[4].materiallist[4].out_ink_on = off  --輪廓線
  • 材質球之間的複製
meditmaterials[4] = copy meditmaterials[1]  --將1號材質複製給4號材質
for m=1 to 24 do meditmaterials[m] = standard() --將所有材質球類型改爲標準材質
for m=1 to 24 do meditmaterials[m].diffuse = (random balck white)   --漫反射顏色隨機在黑色與白色之間
for m=1 to 24 do meditmaterials[m].specular_level = 90  --高光級別
for m=1 to 24 do meditmaterials[m].glossiness = 50      --光澤度
  • 統一修改多個材質球類型
for m=1 to 24 do meditmaterials[m] = inknpaint()    
--統一修改24個材質球類型爲卡通材質
for m=1 to 24 do meditmaterials[m].paint_color = (random yellow red)    
--統一修改卡通材質亮區值爲隨黃色與紅色的隨機值
for m=1 to 24 do selection[m].material = meditmaterials[m]  
--統一將所選24個物體的材質球類型設置爲材質框中的24色
for i in selection do showtexturemap i.material on  
--統一將所選材質的貼圖顯示在編輯器視窗中

for i in selection do i.material = meditmaterials[random 1 24]  
--隨機將材質球中1-24號賦予給場景中選中的物體
for i in selection do i.material.diffusemap = bitmaptexture filename:"C:\Users\Public\Pictures\Sample Pictures\考拉.jpg"      
--統一將選中的物體的材質球中的漫反射貼圖,換成一張位圖。位圖位於C盤.....
for m=1 to 24 do meditmaterials[m].diffusemap = bitmaptexture filename:"C:\Users\Public\Pictures\Sample Pictures\考拉.jpg"
--統一將所有材質球中的漫反射貼圖,換成一張位圖。位圖位於C盤.....
for m=1 to 24 do meditmaterials[m].diffusemap.starttime = (random 10 30)
--將所有材質求的漫反射貼圖,播放時間隨機化 10 - 30之間
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章