Maya插件开发入门
     这里笔者给出一个创建简单的MAYA C++插件的流程。
     笔者给出MEL和C++插件两个版本,实现了同样的功能。
这个插件的背景是这样的,大多人听说MAYA8.5问世之后,都是欣喜万分,终于可以感受新版本的MAYA了。唯独方老板听到这个消息后,一筹莫展,并怨恨交加。下面的MEL和C++插件都是实现这样的一个想法。
MEL版:
float $maya_version = 8.5;
string $boss = "bossFang";
string $person = "bossFang";
if($maya_version == 8.5 && $person != $boss){
print ("happy : ) Enjoy maya 8.5 /n");
}

if($maya_version == 8.5 && $person == $boss){
print (" : ( xxx! xxx! sign,why now? /n");
}

输入脚本编辑器并执行,结果如图。

图   执行MEL

C++ plug-in for maya7.0 版:
在.NET中执行文件 | 新建 | 项目,如图。

图   新建项目

在Visual C++项目中选择MayaPlugInWizard,如图,然后选择文件路径并给定名称,这里笔者使用boss为名。

图   选择MayaPlugInWizard

单击确定后,Maya Plug-in Wizard会自动进入Plug-in setup(插件设置)窗口,如图,选择Maya7.0,即可为Maya7.0创建插件,下面还要选择MAYA的安装路径,并填写作者名称。

图   插件设置

单击左侧的Plug-in Type(插件类型),选择MEL Command,即可创建MEL命令型插件,输入插件名,这里笔者设为boss,将来在命令行输入boss,即可执行该插件了。

图 输入插件名

最后,单击左侧的Included Libraries(包含的库),可以设定该插件包含哪些库文件。对于我们要创建的简单插件来说,默认的库就够了,单击Finish(完成)。

图   选择默认的库

这样,在Maya Plug-in Wizard的指导下,我们成功创建了所需的cpp文件,如图,在doIt函数中插入代码即可。

图   在doIt函数中插入代码

如图,在文件顶部包含所需的maya头文件
#include <maya/MGlobal.h>
#include <maya/MString.h>
并在doIt中加入自定义的代码。

图   添加maya头文件和代码

最后,在.NET中执行生成 | 生成解决方案,即可得到.mll文件了,如图。关于插件的加载和使用,将在下面一招加载和使用插件里介绍。

图   得到.mll文件

下面是该插件所有的代码:

// Copyright (C) lizhihao
// File: bossCmd.cpp
// MEL Command: boss
// Author: Maya Plug-in Wizard 2.0
//
#include <maya/MSimple.h>
#include <maya/MGlobal.h>
#include <maya/MString.h>

DeclareSimpleCommand( boss, "lizhihao", "7.0");

MStatus boss::doIt( const MArgList& args )
            
{
     MStatus stat = MS::kSuccess;

MString info;

MString   boss("BossFang");
                 MString   person("BossFang");
                 double maya_version = 8.5;
                 if(maya_version == 8.5 && person == boss){
                       info = MString(": ( Fuck! Fuck! sign,why now? /n");
                   }

if(maya_version == 8.5 && person != boss){
                       info = MString("happy : ) Enjoy maya 8.5   /n");
                   }

//显示字符串,相当于MEL中的print
MGlobal::displayInfo(info);

setResult( "boss command executed!/n" );

return stat;
}

Maya插件开发入门相关推荐

  1. Maya基础入门学习教程

    Maya基础入门学习教程 视频:.MKV, 1280x720, 共57节课 时长 4小时25分钟,3GB 语言:英语+中文字幕(根据原英文字幕机译更准确)+原英文字幕 指导老师:Shane Whitt ...

  2. 【直播回顾】蚂蚁金服高级开发工程师萧恺:IDEA 插件开发入门教程

    主讲人:萧恺(蚂蚁金服-支付宝事业群-高级开发工程师) 本名:肖汉松 讲师介绍: 热爱阅读,喜欢挑战,热衷尝试新的技术,关注技术背后的原理. 关注领域:Java 服务端开发,分布式系统 关注语言:Ja ...

  3. xposed模块编写教程_Xposed插件开发入门详解,

    Xposed插件开发入门详解, 前言 Xposed的用处不必言说,能hook任意java写的代码,修改替换apk内部的资源文件. 至于如何开发一个XPosed的插件,官方给出的答案如下: https: ...

  4. 视频教程-FastAdmin插件开发入门-PHP

    FastAdmin插件开发入门 2009年4月创办 淄博日诺网络科技有限公司 法人总经理 2016年负责 中国传媒大学凤凰学院 网站开发 项目负责人 2017年 参与负责 用友软件理财项目开发 郭孟涛 ...

  5. 0001 零基础Maya插件开发——Python+Qtdesigner环境搭建

    000 零基础Maya插件开发汇总 一.查看Maya中Python版本 我这里用的是Maya2018, 操作系统Win10 import sys print(sys.version) 输出 2.7.1 ...

  6. 基于jquery插件开发入门教程

    鉴于最近要使用大量的jquery,所以总有一种捣鼓文字来抒发一下情绪的冲动.思前想后就来篇jquery插件开发入门教程吧,毕竟如果不想开发插件,那自己无论用别人的插件多牛逼,最多只是js的使用者,作为 ...

  7. carbide.c++ 插件开发入门(转)

    carbide.c++ 插件开发入门(仅仅入门) 热10已有 229 次阅读  2010-07-25 20:39   标签:  carbide  入门  插件  开发 symbian开发,最不爽的就是 ...

  8. QT浏览器插件开发入门

    QT浏览器插件开发入门_百度文库 http://wenku.baidu.com/view/427755d13186bceb19e8bbbf.html

  9. virtualxposed使用教程_Xposed 插件开发入门教程(一)

    其实网上已经有很多 Xposed 插件开发的入门教程了,我写的这篇与其说是教程,不如说是参考,为了防止以后忘了开发步骤,这里就写篇博客记录一下. 要使用 Xposed 插件,首先要 root 手机并安 ...

最新文章

  1. Android Volley 库通过网络获取 JSON 数据
  2. 推荐7个冷门逆天的网站,每一款都是精品!
  3. python tqdm包_python tqdm库的使用
  4. boost::spirit模块实现将由某个分隔符分隔的任意键/值对解析为 std::map的测试程序
  5. 自编码器及其相关模型
  6. linux 内核驱动的名字,Linux内核驱动的的platform机制
  7. 数据库范式5nf_第四范式(4NF)| 数据库管理系统
  8. 人工智能AI常见的经典K-means聚类算法原理和工作过程
  9. 大数据“重磅炸弹”:实时计算框架 Flink
  10. nginx的源码编译及相关文件配置
  11. windows10和安装linux双系统安装教程(超简单)
  12. 【蓝桥杯】大臣的旅费(C++) (DSF+树的最大直径)
  13. swot分析法案例_型男收割机之SWOT分析法——大龄剩女脱单攻略
  14. 2022全球C++及系统软件技术大会将于9月上海隆重召开,豪华嘉宾阵容揭晓
  15. android 华为摄像头权限_Android踩坑日记(一):android7.0动态相机权限
  16. 中移物联网采购4G行车记录仪
  17. 阿里云的认证是不是最好的?考起来难不难?
  18. Mongodb stop: Unknown instance报错
  19. UBER司机奖励政策
  20. 微信在线客服功能开发问题记录

热门文章

  1. 学校计算机教学演示,浅析计算机教学的方法
  2. 欧尼酱讲JVM(08)——字节码中方法内部结构的剖析
  3. 中兴C300主控升级到V2.1.0要谨慎,(针对ONU光猫生产企业)
  4. 第四章:WPF依赖/附加属性,数据绑定(一)
  5. c语言 原子操作,原子操作
  6. 数据结构第二版(朱昌杰版)习题六
  7. retrofit源码,这篇文章可以满足你80%日常工作!重难点整理
  8. Git工具:开发分支拉取主分支最新代码的实现
  9. 解决typeError: init() got an unexpected keyword argument ‘serialized_options’
  10. 湖南hp服务器虚拟化解决方案,HP刀片服务器虚拟化整合解决方案.docx