rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 媒体动画 » Maya

MAYA的汉化方法

1 MAYA全英文界面难到了多少E文盲,其汉化版在网上是几乎找不到的,花了九牛二虎之力终于找到了MAYA的资源,从网上找到一篇相关的介绍,才明白MAYA的工作方式,那就是Mel,它的汉化也是Mel资源,下面给大家介绍一下: 打开 盘号:\\Autodesk\Maya8.5\scripts目录,在scripts目录下,随便打开一个文件夹,可以看到里面都是maya图标的文件。
其实这些文件都是mel文件(*.mel),mel文件都是文本文件,也就是说mel文件都可以在写字板中打开编辑。整个maya的界面差不多都是通过
scripts目录中的mel文件编出来的。 menuItem -l "Copy"
   -annotation "Copy: Copy the selected object(s)"
   -command ("CopySelected") copyItem;
这一行代码就是典型的MAYA MEL资源,呵呵!是“编辑”菜单里的“复制”菜单,
menuItem  英文就是“菜单”的意思,引号内的内容也就是我们需要汉化的内容!
annotation  是注释,也就是MAYA左下角显示的帮助信息,这个也是我们需要汉化的内容,
当然MAYA还有很多其它的资源,这就需要再仔细区分了!command  这一行是不能编辑的,当点击copy时MAYA自动调用MEL脚本CopySelected命令,所以说,在汉化MAYA的过程也是熟悉MAYA脚本MEL的过程!
mel是开放的程序文件,你可以通过对mel文件编辑来定制具有你自己风格的maya。
比如要汉化菜单,用windows搜索文字的功能找一下菜单包含在那个文件下,可能会找到很多,其中一个是你需要的(如图)。打开文件,查找"-l",-l后面的一般都是文字。
你可以直接修改mel文件,也可以用我的软件(iceMelChgLabel)提取资源并把修改结果存入mel文件中。虽然iceMelChgLabel汉化很方便,但还有很多不足,还少不了手工修改,因此你需要对mel了解一下。
下面简单介绍一下mel编写界面的方法。
打开maya,执行菜单Window->General Editors->Script Editor...
把下面两句代码粘贴到Script Editor中并按Ctrl+Enter键,可以看到创建了一个新窗口。
window;
showWindow;
这是编写一个窗口最少的代码,用了两个mel命令,window的意思是创建一个窗口,showWindow是显示窗口,每一句后面要加分号。
执行mel的另外一种方法:把这两句代码选中,用鼠标中键拖放到shelf上,每次点这个shelf按钮就可以新建一个窗口。 if(`window -ex windowName`) deleteUI windowName; //windowName 窗口名称,自己命名
   window -t "窗口" windowName; //-t 窗口标题
   columnLayout; //纵向布局
   //这里加上窗口控件的代码,如button(按钮)、text(文本)、textField(文本框)等。
showWindow windowName; maya的窗口差不多都是这么编出来的,maya的主窗口也不例外。
你可以编一个窗口,在maya主窗口显示之前显示。
打开scripts\startup的initialLayout.mel找到这句代码:showWindow $gMainWindow;
把它删掉,在这个位置插入下面的代码。这时maya启动时就要问你要密码了。
(注意:修改代码时要备份被改动的文件,否则遇到代码错误你可能就要重装maya了)
// maya启动时输入密码的代码,密码是: hellomaya
if(`window -ex mayaPassWd`) deleteUI mayaPassWd;
window -t "窗口" mayaPassWd; //-t 窗口标题
columnLayout -adj true; //纵向布局
   text -l "请输入密码:";
   textField -w 200 passWdField;
   text -l "";
   button -l "确定" -w 100
      -command "$passWd = `textField -q -tx passWdField`;
      if(\"hellomaya\" == $passWd)
       showWindow $gMainWindow;
      else
       textField -e -tx \"密码错误,请重新输入\" passWdField;";
showWindow mayaPassWd; 热盒菜单不都是用mel编的。下载SharedUI.dll覆盖掉\\Autodesk\Maya8.5\bin中的SharedUI.dll就可以解决。
顶一下
(0)
踩一下
(0)