用户名 密    码

Maya Mel教程:基础知识教程(3)

来源:school.cnd8.com 作者:XiaoYu 发布时间:2010-08-10 09:32:42 网友评论 0


        为了把一个脚本程序作为源文件: 
        1--从脚本语言编辑器中选择File > Open Script。出现一个文件浏览器。 
        2--选择要打开的脚本文件。 
        把一个脚本程序作为源文件之后,该文件里的所有MEL指令会执行。该脚本程序中的所有全局过程会被声明,但并不被执行。 
        MEL指令是按照它们出现在文件中的顺序执行的,并且应当没有错误。如果产生了一个错误,执行会中断并不再装载更多的程序。 
        当你把一个MEL脚本程序作为源文件之后,不声明或者不执行局部过程。 
        但是,如果你是通过在脚本编辑器或指令行里输入而声明了一个局部过程,该过程会被声明为全局过程,你可以在任何时候执行它。 
        执行一个程序可以通过执行一个MEL指令实现。当你想把一个脚本程序作为源文件,并具有执行该文件中的程序的作用时,这是很有用的。 
        为了这样做,要首先声明该程序,然后声明通过一个文件浏览器执行该程序的指令。 
        4、保存脚本文字 
        使用File > Save Selected指令从脚本编辑器保存脚本文字。可以从指令输入(底部)将文字高亮化, 
        也可以通过脚本编辑器的状态信息(顶部)部分。Maya 将会把高亮的文字部分保存到你说明的目录里的一个 .mel 文件中。 
        5、执行一个脚本程序 
        当你想执行一个预先已经源化了的脚本程序时,可以在脚本编辑器的指令输入栏(底部)输入该程序的名字,然后进行下面工作中的一种: 
        按 Ctrl + Enter 键;或者按数字键盘的 Enter 键;或者从脚本编辑器里选择 Edit > Execute。 
        也可以使用这些指令执行一个在脚本编辑器里已经打开了的脚本程序的定义。如果MEL脚本定义没有出现失败,则该定义是从脚本编辑器的底部移到顶部。否则该定义不会移动,并且在顶部会显示出一个错误信息。
提示:可以首先选取MEL script的一部分然后只执行这一部分(Ctrl+Enter)。 它不会删除其它部分。 
        6、清除状态信息 
        要清除状态信息(脚本编辑器的顶部),从脚本编辑器里选择Edit > Clear History。这将会删除掉所有的状态信息文字。 
        使用这个指令时应当小心一些,因为没有办法撤消它。 
        7、清除指令输入 
        要清除指令输入文字(脚本编辑器的顶部), 从脚本编辑器里选择Edit > Clear Input。这将会删除掉所有的指令输入文字。 
        使用这个指令时应当小心一些,因为没有办法撤消它。 
        8、响应一个指令 
        当你用Maya工作时,对应的MEL指令常常出现在脚本编辑器的顶部。缺省情况下,只有那最重要的令才会显示。 
        你可以在脚本编辑器里选择Edit > Echo All Commands ,虚拟地显示与你的Maya作用相关的所有指令。 
        它可以帮助你学习哪些MEL指令触发作用。 
        在你的Maya的作用之间并不是总有一对一的对应关系,这些指令返回响应到脚本编辑器里。 
        如果你使用一个脚本程序去打开属性编辑器,一些MEL指令出现在脚本编辑器里(响应是打开的): 
        buildObjectEdMenu MayaWindow|menu4|menuItem56; 
        editSelected; 
        editMenuUpdate MayaWindow|menu2; 
        但是,只有以下的MEL指令需要引入属性编辑器: 
        editSelected; 
        同时,对于一些作用来说,也不总是会将MEL指令的响应返回到脚本编辑器里。如,当你选择了一个属性编辑器时, 
        脚本编辑器的顶部没有返回任何信息。 
        要关闭返回信息,从脚本编辑器里再次选择 Edit > Echo All Commands。 
        9、显示程序中的语句行号 
        如果你在执行一个长的程序时由于错误而出现了问题,可以打开脚本程序的行号,你就可以更容易地找到错误。 
        要显示错误指令的行号,从脚本编辑器里选择Edit > Show Line Numbers。当你打开了Show Line Numbers选项, 
        Maya 在脚本编辑器状态信息框(顶部)的旁边显示脚本程序的行号。 
        要关掉行号,在脚本编辑器菜单里再次选择Edit > Show Line Numbers。 
        Maya将显示行号的设置保存下来作为以后使用。如果打开了行号,当下一次你运行Maya时它们会出现在脚本编辑器里。 
        10、显示堆栈跟踪 
        如果你用埋入的脚本程序文件执行一个脚本程序时出现了问题,打开堆栈跟踪选项显示文件结构中的脚本程序错误。 
        要显示一个脚本文件的堆栈跟踪,在脚本编辑器里选择Edit > Show Stack Trace。Maya会在一个窗口里显示堆栈跟踪, 
        在脚本编辑器里显示一个错误信息。
        使用脚本语言结点 
        一个脚本语言结点是一个包括了一个 MEL脚本语言程序的结点。 
        当该结点产生或者当该结点被破坏时,该程序被执行,它取决于脚本结点的类型。 
        本章包括以下内容:
        1、了解脚本语言结点;
        2、产生脚本语言结点;
        3、测试脚本语言;
        4、编辑脚本语言结点; 
        5、设立脚本语言结点的执行;
        6、删除脚本语言结点。
        1、了解脚本语言结点 
        脚本语言结点是把一个MEL脚本语言程序存储到一个Maya场景文件中的一种方法。 
        脚本语言结点也包含了用于产生用户界面的所有MEL指令,并被用MAYA文件保存。 
        你可以用不同的方法执行脚本语言程序。可以指明一个脚本程序结点执行它的程序: 
        当该结点是从一个文件中读出的; 
        在渲染一桢图像的之前或者之后; 
        在渲染一个动画的之前或者之后。 
        当一个文件关闭着时使用File > Open或者File > New 
        一个脚本语言程序结点有三个属性: 
        Before、After和Type。决定于脚本程序的类型,当执行该程序时,说明Before和After属性。 
        2、产生脚本语言结点 
        可以使用表达式编辑器产生脚本语言结点。 
        为了产生一个脚本语言结点: 
        1--选择Window > Expression Editor。 
        2--在Expression Editor中选择Select Filter > By Script Node Name。 
        任何现存的Script Nodes显示在Script Nodes表中。 
        3--在Expression Editor的Script window中输入脚本程序。 
        4--在Script Node Name框中输入一个名字。 
        5--定义你想要使脚本成为一个之前或者之后的脚本程序。 
        6--点击Create键。 
        这产生脚本结点。现在你可以定义它的类型。 
        7--从Execute On 下拉菜单里选择以下的一个脚本程序结点类型: 
        Demand 
        当你使用scriptNode指令,隐含地需求它时,运行脚本文件(看在线指令文件的scriptNode指令的信息)。 
        忽略这种类型的脚本文件的之前和之后的属性。 
        Open/Close 
        如果你已经指定了该脚本文件作为之前的脚本文件,当以批处理模式读文件时脚本被执行。如果你把它
作为之后的脚本文件,当文件被关闭或者没有以图示用户界面模式提供,或者当该结点被删除时,它被执行。 
        GUI Open/Close 
        如果你已经指定了该脚本文件作为之前的脚本文件,当以图示用户界面模式运行MAYA,在读文件时脚本文件 
        被执行。如果你把它作为之后的脚本文件,当文件被关闭,或者没有以图示用户界面模式提供,或者当该结 点被删除时,它被执行。 
        UI Configuration (内部) 
        之前的脚本文件包括了用户界面设置的信息。它是由Maya或者一个plug-in为了保存面板排列和编辑状态信息 而自动的产生的。当你打开一个文件时,这个脚本结点执行它的脚本文件。在执行之后,该结点被删除掉。之 后的脚本是不会运行的。如果一个文件被提供或被输入,这个结点将会不存在。 
        软件渲染 
        如果你选派好脚本作为之前的脚本,脚本的执行在一个动画之前被渲染。如果你选派好脚本作为之后的脚本, 脚本的执行在一个动画之后被渲染。 
        软件桢渲染 
        如果你选派好脚本作为之前的脚本,脚本的执行在一个桢之前被渲染。如果你选派好脚本作为之后的脚本,脚 本的执行在一个桢之后被渲染。 
        8--点击Edit键给脚本结点赋类型。 
        9--如果你想增加另外一个脚本结点,点击New Script Node键。 
        Script窗口和Script Node Name框被清除,你可以输入一个新的脚本结点。
        一个脚本语言结点是一个包括了一个 MEL脚本语言程序的结点。 
        当该结点产生或者当该结点被破坏时,该程序被执行,它取决于脚本结点的类型。

搜索栏目