[笔记] 在3DSMAX里使用MAXScript做足球

第一次使用3DSMAX的MAXScript,感觉还不错。


-- 重置场景
resetmaxfile #noprompt
-- 新建Hedra,Dodec/Icos家族,半径20,P值为0.33(五边形和六边形)
x=hedra family:2 scaler:100 scalep:100 scaleq:100 p:0.33 radius:20
-- 转换为Eidtable Mesh
converttomesh x
-- 设置第一个材质为白色
meditmaterials[1].ambient=color 255 255 255
meditmaterials[1].diffuse=color 255 255 255
-- 给整个Hedra白色材质
x.material=meditmaterials[1]
-- 新建一个数组
f=#()
-- 把面积在56到57之间的三角面找出来,然后加上这些三角面两边的三角面组成所有五边形面
for i=1 to x.numfaces do (
	tmp=meshop.getFaceArea x #{i};
	if (if tmp>56 then tmp else 99)<57 do (
		append f (i-1);
		append f i;
		append f (i+1);
	)
)
-- 选择编辑面的模式
max modify mode
select x
subobjectlevel=3
-- 选择所有五边形面
select x.faces[f]
-- 设置并赋予黑色材质
meditmaterials[2].ambient=color 0 0 0
meditmaterials[2].diffuse=color 0 0 0
x.material=meditmaterials[2]
-- 取消选择
deselect x
-- 让整个物体光滑成球体
addmodifier x (meshsmooth())
-- 渲染
max quick render


最终效果:

你可能感兴趣的:(3DMax)