by puzzy
http://www.codercorner.com/News.htm
The Flexporter source code has been released.
这个人的网站很不错. 其人也是NOVODEX作者. OPCODE作者.
ODE里用到TRI MESH碰撞库就是OPCODE的.
他这个MAX输出插件功能很全 .一直是他自己用的 .今年才公开代码.
其实MAX输出数据很简单.有3D和C++基础的,
谁有功夫踏实下来花一天看8个小时SDK,就都明白了.
3DSMAX SDK里有ASE EXPORTER的SAMPLE. 基本把MAX里所有的基本数据都输出了.
使用MAX时,选择FILE—-EXPORT,选择输出*.ASE就可以了.都是现成的.
读取ASE的库,NV UTILITY LIB就可以.也是现成的.在NV网站或SDK里.
除了没有SKIN,和PHYSIQUE. PHYSIQUE在3DSMAX里单独有个例子,也很明白.
不输出骨骼,3DSMAX里自己带的ASE EXPORTER就足以满足要求了.
ASE EXPORTER输出的内容:
VERTEX,NORMAL,TEX-COORD,MATERIAL,TRACK ANIMATION,LIGHT,CAMERA,HELP OBJECT,
FACE,SMOOTHGROUP,MATERIAL ID,DEFORM MESH, VERTEX COLOR, ....
另外,MAX7里还单独为GAME整合了一个EXPORTER INTERFACE组件. 就是把游戏
关心的数据都输出了.在3dsmax7\maxsdk\help\IGameHelp.chm , 看看这个帮助
吧.”3ds max Game Export Interface ”
3dsmax7\maxsdk\samples\impexp 下有所有关于IMPORT和EXPORT的例子.
asciiexp目录是ASE EXPORTER的. 输出的是文本文件.
IGameExporter是专门为游戏开发者使用的,不能再方便了. 3DSAMX都给写好了.

by hongshu2000
Max插件开发有好多种类,看一下MaxSDK里的例子知道 下载地址:
http://resource.gameres.com/

我想游戏里用的较多的就是导出插件了.它有两类形式一种是导入/导出插件(.DLE), 一种是特殊用途类插件utilities(.DLU), 只是框架不同代码本质没什么区别.
http://vip.5d.cn/zhangcs/max/pluginst01.htm
http://vip.5d.cn/zhangcs/max/pluginst02.htm

导出的话.主要看maxsdk\samples\impexp\asciiexp MAX的数据以node形式按tree结构存储.

BOOL AsciiExp::nodeEnum(INode* node, int indentLevel) 

大致能说明一点问题,导出时就是recursion所需要的node, Mat and Tex 按MTL形式链式存储. AsciiExp::ExportMaterialList()

俺说的比较简单随意,但总之MAX导出不是太难. ^_^

基础知识
http://www.cyberloonies.com/3dsmax-sdk.html
http://sparks.discreet.com/webboard/wbpx.dll/~maxsdk/guests
辅助资料
http://www.3dlinks.com/oldsite/3dprogramming_max.cfm
开放源代码项目
http://m17design.myetang.com/x3d/www.web3d.org/TaskGroups/source/maxexport.html
http://freexporter.sourceforge.net/index.php?action=home
http://www.codercorner.com/Flexporter.htm
http://sourceforge.net/projects/maxshade
http://cal3d.sourceforge.net/

gdproj/3dsmax.txt · 最后更改: 2009/10/04 13:02 (外部编辑)
到顶部