本节我们使用脚本创建一个NURBS小球。 因为我们刚开始学习编写代码,所以并不知道该如何编写小球的代码,但这并不要紧,可以先学习如何提取代码。
(1)首先用最传统的方式建立一个NURBS小球,执行Create>NURBS Primitives>Sphere (创建>NURBS基本体>球体)菜单命令,如图所示。
(2)打开Script Editor (脚本编辑器)窗口,我们会发现里面多出一~行脚本“sphere -p000-ax01 0 -ssw0 -esw 360 -r1 -d3 -ut0 -tol 0.01 -s8 -nsp 4 -ch 1;objectMoveCommand," ,其实这是2行代码,有用的是第1句,第2句其实就是一一个转换变换操纵工具的指令。把第1句“sphere -p000 -ax010 -swo -esw360 -r1-d3 -ut0 -tol0.01 -s8 -nsp4 -ch 1;”复制到MEL标签下的空白处,分别如图所示。
(3)运行代码,我们会发现可以创建出一个和刚才一模一样的NURBS小球,观察大纲视图,可以看到场景中有了2个小球,一个是执行命令得到的;一个是运行代码得到的,如图所示。
(4)如果需要经常使用这套代码,可以制作一个快捷图标放到工具架。在Script Editor (脚本编辑器)窗口中选择代码,用鼠标中键将其拖曳到工具架中,会形成一个图标,下次只需要直接单击图标就可以执行代码,如图所示。
二、MEL构造
在案例中,我们得到一行代码。
sphere -p000 -ax010 -ssw0 -esw 360-r1 -d3 -ut0 -tol 0.01 -s8 -nsp4 -ch 1;
但是我们并不太清楚其中的含义,在这里可以使用对照的方法来进行分析。
(1)单击Create> NURBS Primitives> Sphere ( 创建> NURBS基本体>球体)菜单命令后面的按钮,可以打开图所示的NURBS球体选项窗口。
(2)修改一些我们能记住的参数值,如777、888之类,做一些随机的修改,并单击Apply (应用)按钮,如图所示。
(3)得到图所示的返回代码。
sphere -p000-ax1 00 -ssW 777 -esw 888 -r 999-d1 -ut0 -tol 0.01 -s 123 -nsp 200 -ch 1;
(4)由此我们可以得到图所示的对应关系。
(5)但是代码中的-p后缀与-ch 1后缀并没有得到解释,如果有写代码比较多的读者应该不难理解,它们分别表示position (坐标)与Channel On (通道打开)。
猜测与尝试。通过分析我们得到了不同属性的不同后缀,所以在这里可以自己拟定一个想法实现它——创建一个坐标在(0, 10, 0)位置的半圆。通过对照,我们可以尝试性地写-些自己需要的后缀。
sphere -p0100-ax1 00-ssw180 -d3-ch 1;
通过运行代码,的确得到了一个在y轴10个单位坐标的半圆,如图所示,成功!
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答在数字创意产业以年增速15%狂奔的今天,美工薪资的地理密码正改写人才流动地图。某招聘平台最新数据撕开残酷现实:北上广深美工月薪......
在Steam每日上线30款新游戏的修罗场里,游戏建模师的成长轨迹正被加速成速通模式。某独立工作室的数据令人心惊:零基础到接单的......
在好莱坞渲染农场的轰鸣声里,中国某新锐动画团队却因角色"面瘫"被网友做成表情包疯传。这尴尬现状撕开了全球动画行业的共同伤疤——......
在三维建模的深夜战场上,3ds Max用户的噩梦总是伴随着风扇的嘶吼和刺眼的报错弹窗。某动画工作室的崩溃日志显示,每个复杂场景......
在游戏引擎的进化竞赛中,虚幻引擎5的Nanite和Lumen技术就像两颗核弹,炸开了次世代创作的大门。某独立工作室的血泪账本显......
在知识付费的狂欢派对上,"速成大师"的霓虹灯牌晃得人眼花。某监管机构却泼来冷水:速成班学员三个月后还在待业的超过七成,而系统培......