Visual C++ 2010 Express是微软提供的免费及轻量版的Visual
Studio 2010的c++
版本,它可以编译x86(32位)软件,自然也能编译32位Maya插件,但它不能编译x64(64位)软件。
Maya 和 Visual Studio
你可以在maya的API Guide中的Setting up your build environment中得知当前maya版本是使用哪个Visual Studio版本编译的。如:maya 2012是使用Visual Studio 2008 SP1 编译的。一般来说使用对应的Visual Studio来开发Maya插件是最好的,但并不意味着你就不可以使用更新或旧的版本来进行开发。
为什么不介绍使用Visual C++ 2008 Express sp1
因为使用Visual C++ 2010 Express方法最简单,对于不熟悉Visual Studio的人来说能很容易上手。而且要使Visual C++ 2008 Express支持编译x64(64位)软件,需要更改
注册表,虽然也有人写了一个bat
脚本来完成所有步骤。
让Visual C++ 2010 Express编译x64(64位)软件
它不能编译x64(64位)软件是因为没有x64的编译器,而Windows SDK则为我们提供了x86和x64的编译器。
所以第一步是下载并安装Visual C++ 2010 Express,最好使用sp1,因为sp1修复了使用x86为x64开发时会导致(开发出来的)软件崩溃的bug
然后再安装Windows SDK,需要注意的是Microsoft Windows SDK for Windows 7 and .NET
Framework 3.5 SP1是Visual Studio 2008使用的,所以提供Visual Studio 2008的x86和x64编译器,而Microsoft Windows SDK for Windows 7 and .NET Framework 4才是给Visual Studio 2010使用的
安装完成后可以打开Visual C++ 2010 Express,然后打开maya安装路径下的devkit\plug-ins里面的任意一个插件工程项目,例如:helloCmd.vcproj。
然后在Visual C++ 2010 Express的Solution Explorer里选择helixCmd右键菜单的Property来打开工程项目的属性窗口将Configuration:选为All Configurations(如果你只使用Release也可以设置为Release),选择Configuration 下面的General,然后将右边的Platform Toolset设置为Windows7.1SDK,这里有3个选项,默认v100是Visual C++ 2010,V90是Visual C++ 2008,但如果你没安装Windows SDK就只会有这两个不会有Windows7.1SDK之类的。点击确定来保存设置,你就可以编译64位Maya插件了。
如果你希望其它的机器也能加载你使用Visual C++ 2010 Express编译的插件,则需要安装Microsoft Visual C++ 2010 SP1 Redistributable Package,32位系统装x86版本,64位装x64的版本,而如果你使用的是Visual C++ 2008 Express来编译的x64插件就不需要安装Microsoft Visual C++ 2008 SP1 Redistributable Package,因为Maya是Visual Studio 2008 SP1 编译的,在你安装maya的时候就已经安装了
但Visual C++ 2010 Express新建项目里没有maya的Templates,我更改了一下maya提供的版本使它可以在Visual C++ 2010 Express中能使用。将Maya
PluginWizard拷贝到...\Microsoft Visual Studio 10.0\VC\VCWizards,再将其它3个拷贝到...\Microsoft Visual Studio 10.0\VC\Express\VCProjects,
开启Visual C++ 2010 Express新建项目你就能见到了。
MayaPluginWizard_for_VC2010.zip