3dsMax 按物体分离材质
2015-09-24 13:15
465 查看
fn converMat obj =(
colorSrc=color 200 200 200
try(
colorSrc=obj.Material.Generic_Color
)
catch()
try(
colorSrc=obj.Material.Concrete_Color
)
catch()
try(
colorSrc=obj.Material.Wall_Paint_Color
)
catch()
try(
colorSrc=obj.Material.Ceramic_Color
)
catch()
try(
colorSrc=obj.Material.diff_color
)
catch()
try(
colorSrc=obj.Material.Masonry_Color
)
catch()
try(
colorSrc=obj.Material.Metallic_Paint_Color
)
catch()
print colorSrc
obj.Material=Standardmaterial ()
obj.Material.Ambient =colorSrc
obj.Material.Diffuse = colorSrc
)
for obj in selection do
(
print obj.material
if (obj.Material != undefined and Classof obj.Material == StandardMaterial)then
(
colorDiffuse=obj.Material.Diffuse
colorambient=obj.Material.ambient
colorSpecular=obj.Material.Specular
opacity=obj.Material.opacity
diffuseMapSrc=obj.Material.diffuseMap
obj.Material=Standardmaterial ()
obj.Material.Diffuse=colorDiffuse
obj.Material.ambient=colorambient
obj.Material.Specular=colorSpecular
obj.Material.opacity=opacity
obj.Material.diffuseMap=diffuseMapSrc
obj.Material.bumpMap=diffuseMapSrc
)
else if(obj.Material != undefined and Classof obj.Material == MultiMaterial)then
(
num=1
for subMat in obj.Material do(
if(Classof subMat==Autodesk_Material) then (
colorSrc=color 200 200 200
try(
colorSrc=subMat.Generic_Color
)
catch()
try(
colorSrc=subMat.Concrete_Color
)
catch()
try(
colorSrc=subMat.Wall_Paint_Color
)
catch()
try(
colorSrc=subMat.Ceramic_Color
)
catch()
try(
colorSrc=subMat.diff_color
)
catch()
try(
colorSrc=subMat.Masonry_Color
)
catch()
try(
colorSrc=subMat.Metallic_Paint_Color
)
catch()
print colorSrc
obj.Material[num]=Standardmaterial ()
obj.Material[num].Ambient =colorSrc
obj.Material[num].Diffuse = colorSrc
)
num=num+1
)
)
else if(obj.Material != undefined and Classof obj.Material==Autodesk_Material)then
(
converMat(obj)
)
)
colorSrc=color 200 200 200
try(
colorSrc=obj.Material.Generic_Color
)
catch()
try(
colorSrc=obj.Material.Concrete_Color
)
catch()
try(
colorSrc=obj.Material.Wall_Paint_Color
)
catch()
try(
colorSrc=obj.Material.Ceramic_Color
)
catch()
try(
colorSrc=obj.Material.diff_color
)
catch()
try(
colorSrc=obj.Material.Masonry_Color
)
catch()
try(
colorSrc=obj.Material.Metallic_Paint_Color
)
catch()
print colorSrc
obj.Material=Standardmaterial ()
obj.Material.Ambient =colorSrc
obj.Material.Diffuse = colorSrc
)
for obj in selection do
(
print obj.material
if (obj.Material != undefined and Classof obj.Material == StandardMaterial)then
(
colorDiffuse=obj.Material.Diffuse
colorambient=obj.Material.ambient
colorSpecular=obj.Material.Specular
opacity=obj.Material.opacity
diffuseMapSrc=obj.Material.diffuseMap
obj.Material=Standardmaterial ()
obj.Material.Diffuse=colorDiffuse
obj.Material.ambient=colorambient
obj.Material.Specular=colorSpecular
obj.Material.opacity=opacity
obj.Material.diffuseMap=diffuseMapSrc
obj.Material.bumpMap=diffuseMapSrc
)
else if(obj.Material != undefined and Classof obj.Material == MultiMaterial)then
(
num=1
for subMat in obj.Material do(
if(Classof subMat==Autodesk_Material) then (
colorSrc=color 200 200 200
try(
colorSrc=subMat.Generic_Color
)
catch()
try(
colorSrc=subMat.Concrete_Color
)
catch()
try(
colorSrc=subMat.Wall_Paint_Color
)
catch()
try(
colorSrc=subMat.Ceramic_Color
)
catch()
try(
colorSrc=subMat.diff_color
)
catch()
try(
colorSrc=subMat.Masonry_Color
)
catch()
try(
colorSrc=subMat.Metallic_Paint_Color
)
catch()
print colorSrc
obj.Material[num]=Standardmaterial ()
obj.Material[num].Ambient =colorSrc
obj.Material[num].Diffuse = colorSrc
)
num=num+1
)
)
else if(obj.Material != undefined and Classof obj.Material==Autodesk_Material)then
(
converMat(obj)
)
)
相关文章推荐
- Alfred工具使用<1>
- onNewIntent
- POI按Excel模版导出数据
- 将NSString转换成UTF8编码的NSString
- 2015年10个重大突破性技术
- Linux各种企业客户操作系统平台
- iOS:网络编程解析协议一:HTTP超文本传输协议
- oracle 函数
- eclipse 导包
- 某网站提供的香港空间,美国空间,国内空间测速结果
- [TopCoder SRM420 Div1 500pt RedIsGood]【数学期望】【动态规划】
- Java - What is difference between HashMap and Hashtable?
- 【iOS】The filename 未命名.ipa in the package contains an invalid character(s)
- Go语言简单实现FTP协议.
- 3dsmax模型改名程序
- 关于“交换学生(Foreign Exchange, UVa 10391)”的讨论
- 安卓APP打包成APK
- Zentech.Zencrack.v7.9.3 1CD3D高级裂纹扩展行为分析
- Openwrt下logitech-pro9000摄像头使用
- 解决方案配置