classof meditMaterials[2].materialList[1] ==MatteShadow
geometry[i].material.materialList.count
-- Type error: array index must be positiv
(classof geometry[2].material)
tempmatnam = geometry[2].material.name
select geometry [2]
DX9ShaderRoll.MFmatarrayname.items
(classof geometry[2].material.diffuseMap == Bitmaptexture) ---判断贴图可以类判断,
(getFiles geometry[2].material.diffuseMap.filename).count >0 -----这个函数好用,把字符装到数组
tempMap= "sfasf\safsdf\asfasf"
getFilenameFile tempMap ---- -----照样得出租入最后一个。这样就不用字符了 要快点,
getFilenamePath tempMap
tempMap = geometry[2].material.diffuseMap.filename
"C:\Users\game-netease\Pictures\T.jpg"
---试验数组。
#("03 - Default", "T27FXaXXhNXXXXXXXX_!!12375520", "T27FXaXXhNXXXXXXXX_!!12375520/02 - Default")
filterString j "**" ----------这是我通过下肢选择的。 这里面还有很多的细节就是 有**的没有**判断, 周
---有多维材质的选择物体的时候一并选择。没有办法。
---因为我们的流程是这样的,在做的时候要手动的合并永远出来不了想我们之前 于梦红说的那样。
kkk=#()
for i in 1 to geometry.count do
(
if isProperty geometry[i].material "name" do ----判断物体是不是有材质的处理方法 isProperty $Box01 "name" 很好用
(
j =DX9ShaderRoll.MFmatarrayname.items [6]
oop =filterString j "/"
---
---从实践中可知,我的阶级层数最多为两级,
---能分开的就去第一个,不能分开的,就用第一个也行
---还有就是,当我进行dx材质的制定后,名称的方式就不一样了。
---这里要注意了。
--当给出dx后,原来顶层材质名就是显示的dx的名字。 原来的标准通道名字改成了。max_dx_shader_renderstyle---并且我看都是一样的。
if geometry[i].material.name ==oop[1] then
append kkk geometry[i]
)
)
select kkk