3D MAX导出插件编写I

想想研究3D MAX 的SDK已经有了不短的时间,真正算起来也有两个月了吧,但是讲到收获,确实不大。作为一个3D MAX二次开发的学习者,我首先学习了导出插件的编写,网上有很多参考资料,写的都差不多,可是都是写到关键的地方或者说比较模糊的地方就说不清楚了,今天我就结合自己所做的工作来讲讲3D MAX导出插件的编写心得。
     首先,需要做好如下的准备工作:
     1. 安装一个完整版本的3D MAX与Visual Stdio。
        我安装的是3D MAX 2009,最好是找一个完整的版本,因为完整的版本中有很多的学习资料与sdk供学习,很省事。3D MAX的二次开发对VS的要求是有一个对应关系的,在SDK文档中可以找到,3D MAX 2009对应的VS开发版本应该是VS 2005,确保电脑上已经安装了VS 2005。
     2.定制3D MAX plug-in向导。
        a.找到安装目录的3dsmaxPluginWizard

文件夹(我的安装目录是C:\Program Files\Autodesk\3ds Max 9 SDK

\maxsdk\howto\3dsmaxPluginWizard

),
          b.打开此目录下的MaxPluginWizard.vsz 文件,编辑ABSOLUTE  PATH参数为:

Param="ABSOLUTE_PATH=C:\Program Files\Autodesk\3ds Max 9\SDK\maxsdk\howto\3dsmaxPluginWizard"

c.将3dsmaxPluginWizard文件夹下的三个文件3dsmaxPluginWizard.ico、3dsmaxPluginWizard.vsdir、3dsmaxPluginWizard.vsz拷贝到VS 2005安装目录的 VC Projects目录下,我电脑上的目录是C:\Program Files\Microsoft Visual Studio 8\VC\vcprojects。
          d.启动VS 2005,File-New Project,选择Visual C++就可以看到3ds max Plugin Wizard选项,说明定制成功。
      以上只是开发前的一些准备工作,都可以直接在3D MAX SDK的文档中直接找到,不过文档可都是英文的哦,要耐心的读下去
     在以上准备工作做好以后,就可以开始开发一个插件了,由简单到复杂,先做一个简单的插件程序。插件程序的编写有两种方法,一是用插件向导,就是刚才上面所说的;另一种是通过手工创建一个插件项目,在这里暂时只讨论用插件向导来开发,比较便捷,手工开发以后在补上。
     1.第一步,生成一个插件程序的工程,具体如下:
       a. 打开File —>New Project —>选择3ds max Plugin Wizard,输入project名字,如“MyExport”。
       b. 进入Welcome to the 3ds max Plugin Wizard 画面,选择plugin type如图所示:
          
      c.这里显示各种插件类型,目前要做的是一个文件的导出插件,所以选择FileExport类型。
      d.下一步,再出现一个对话框

不用去管这些Plugin Detail,会有默认路径的,。     
      e.再下一步,设置一些路径,具体见图及注明。
              
      
    注明:

Enter your MAXSDK path指的是3D MAX SDK的安装目录

Enter your Plugin output path 指的是生成插件文件.dll存放的目录,可以自己设置

Enter your 3dsmax.exe path指的是3D MAX的安装目录

2.项目生成以后,在MyExport.cpp文件中找到Ext(int n)函数,改为return _T("MY3D"), "MY3D"是根据自己的要求来添加的;
        找到ShortDesc()函数,改为return _T ("MyExportPlugin");

找到DoExport(const TCHAR *name,ExpInterface *ei,Interface *i, BOOL suppressPrompts, DWORD options)内添加:

AllocConsole();

_cprintf( "Export Begin\n" );//记得#include <conio.h>

3. 生成并调试你的插件,系统会执行3dsmax.exe以启动3ds Max,然后选择“文件”->”导出”,如果能看到"MyExportPlugin(*.My3D)"
                说明导出成功,然后定义一个导出文件的名称即可.这样一个空的导出插件就编写成功了!接下来请看: 3D MAX导出插件编写II

分类:  杂项
好文要顶  关注我  收藏该文   

Bigcoder
关注 - 0
粉丝 - 102

+加关注

3
0
(请您对文章做出评价)

« 上一篇: 两种加载BMP纹理图像的方法
» 下一篇: 3D MAX导出插件编写II

posted @  2009-09-01 22:45  Bigcoder 阅读( 3640) 评论( 0)  编辑  收藏

3D MAX导出插件编写I相关推荐

  1. 3D MAX导出插件编写

    文章版权归博客园 BigCoder所有,转载请于明显位置标明原文作者及出处,以示尊重!! 原文出处:http://www.cnblogs.com/csyisong/archive/2009/09/01 ...

  2. 3ds max sdk导出插件编写的心得

    3ds max sdk导出插件编写的心得 作者:yhchinabest 来自:CG先生-3D图形插件开发网http://www.cgsir.com 写在前面 为什么要写这个心得?去年11月份的时候我写 ...

  3. 3DsMax导出插件编写(一)——vs2010和3dsmax2011(64位)的配置方法

    作为3D开发人员,特别是3D引擎开发人员,经常会接触到各种三维模型的数据.虽然说3dsmax已经可以导出很多格式的模型,不过总是不一定合适自己用.所以总有一种想自己写一个导出插件,让3dmax导出自己 ...

  4. 关于Max导出插件的七七八八

    介绍几个东西,如何在Max插件里使用.net来做界面,怎么为插件增加maxScript的脚本接口以及命令行参数来直接测试导出插件. 先说第一个,首先是visualstudio的项目设置里开启clr的支 ...

  5. 3DsMax导出插件编写(三)——使用IGame收集模型信息

    之前介绍过用SDK的常规方法来获取模型的网格信息.这里再介绍另外一种方法. MaxSdk里面带了一个叫做IGame的包,里面包含有很多方便我们获取模型信息的方法.在sdk的自带例子里面,同样也有这个I ...

  6. VS2010插件编写学习总结

    VS2010 Addins 外接程序(插件)开发 http://www.cnblogs.com/Leo_wl/archive/2013/03/21/2973886.html 简单做了一个添加文件头注视 ...

  7. 使用Axe_free_v2.2.5_max2018.dle插件从3d max中导出.x文件

    怎么说呢,先前一直在网上搜导出x文件的插件和使用方法,但是搜到的大多都是panda插件,而panda插件呢又只有2012的好像,后面就没有了,所以没有办法,然后找到了AxeFree 这个插件.下载网站 ...

  8. 三维建模软件的插件安装教程——3D Max

    大家在使用三维建模软件3D Max的时候一定遇到过插件不知道如何安装的情况,今天我将把常用插件的类型和扩展名罗列如下方便大家安装收集也算抛砖引玉望各位高手查漏补缺不吝赐教. 3DSMAX的插件名后缀主 ...

  9. 3DMAX导出插件的编写

    原文链接: http://liweizhaolili.blog.163.com/blog/static/162307442013117731953/ 作为3D开发人员,特别是3D引擎开发人员,经常会接 ...

最新文章

  1. python解释器工作原理_Python解释器执行原理
  2. Android开发--多媒体应用开发(一)--MediaPlayer的使用介绍
  3. python 静态方法与类方法
  4. 《深入解析Android 虚拟机》——第1章,第1.3节编译Android源码
  5. c字符串截取一部分字符串_Python如何截取一段字符串?
  6. int 取值范围_一定范围内的随机数
  7. 渗透测试面试题汇总(全)
  8. C#中Panel控件的使用
  9. 2021-09-27 win10 IPV6连接:无网络访问权限 怎么解决
  10. 梁宁——产品的场景(阅读总结)
  11. CRISPR-Cas9实验常见问题及解决方案
  12. 【Gitee + Hexo】从0开始搭建自己的博客网站
  13. java游戏暗金装备_暗黑2装备升级公式图解(暗金装备升级一览表)
  14. Flutter (仿微信通讯录)按字母分组列表
  15. C/S和B/S平滑模糊的时代----推荐:云计算时代的生命周期(吕建伟)
  16. Execl操作基础——自动填充空白单元格
  17. android sqlite 分词,SQLite 之FTS5全文检索
  18. shell 函数详解
  19. 日本金融监管机构发布ICO风险提示
  20. lisp 河道水面线计算_天然河道水面线计算表

热门文章

  1. python链表库_[转]为什么python标准库没有实现链表
  2. 最小费用最大流问题详解
  3. Linux环境下应用生成图片中出现乱码的问题处理
  4. @Autowire注入了bean(A)在当前类,但其他类需要调用这个A,报null异常,使用get获取bean为解决方案
  5. 小学老师 音乐 计算机,小学音乐教师个人工作总结(通用10篇)
  6. 初中计算机新课标培训心得,初中数学新课标学习心得
  7. 国考计算机辅助的题目,国考行测五大模块“蒙”题大法来了!
  8. 椭圆曲线加密——椭圆曲线的动态展示python代码分享
  9. 人工智能机器人实现教学自动化的方法
  10. kmem_cache的alias问题导致lvm在线扩容crash问题分析