3DMax导入插件的编写(二)

本文详细介绍了如何使用3DMax插件向导创建FileImport类型的导入插件,重点讲解了核心函数AnimationImp::Ext和AnimationImp::DoImport的实现。在DoImport中,通过接口设置动画播放范围、导入文件内容,并对骨骼节点进行一帧一帧的处理,包括创建、命名、矩阵变换和父子关系设定,最后恢复动画播放。整个过程强调了矩阵计算的准确性对导入效果的影响。
摘要由CSDN通过智能技术生成

这是距上次插件向导安装配置完毕以后的插件编写经历,其中遇到了不少问题。由于对3DMAX的接口了解很少,很多资料都是从网上整理的。很多资料需要自己筛检。

1.插件向导安装完毕以后就可以创建3Dmax导入插件的工程了,FileImport类型;其中的主要需要编辑的函数有几个,3DMax会在编译的时候发出提示信息:

其中重要的有const TCHAR *AnimationImp::Ext(int n)是设置导入文件后缀名称的。int AnimationImp::DoImport(const TCHAR *filename,ImpInterface *i, Interface *gi, BOOL suppressPrompts)是导入的实现;

2.接口i是导入接口,可以用它来设置一些动画播放范围等参数,gi是3Dmax的全局接口可以调用很多3Dmax的接口。

3.在DoImport函数里面实现自己的导入:

(1)从filename指向的文件里面按自己的格式读入文件内容。

(2)

//帧数
 unsigned NumFrame;

//每一帧间隔秒数

unsigned SecFrame ;

//骨骼节点数目

unsigned NumBone;
 //帧间隔时间
 TimeValue TimeFrame = SecToTicks(SecFrame);

//设置帧播放范围ticks

 Interval AnimateRange = Interval(0,(NumFrame-1)*TimeFrame);

 i->SetAnimRange(AnimateRange);

包含 for 3DS MAX3 for 3DS MAX4 0 for 3DS MAX4 0+ CS3 1 for 3DS MAX4 2 CS3 2+ or MAX 5 0 for 3DS Max 6 0+ CS4 2 and 3DS Max 7 0 for 3DS Max 8 0 for 3DS Max 9 0 Panda Directx Exporter x64 5 9 67 0 for 3DS Max 9 64 bit Panda Directx Exporter x64 5 2008 67 0 for 3DS Max 2008 64 bit Panda Directx Exporter x64 5 2009 67 0 for 3DS Max 2009 64 bit Panda Directx Exporter x64 6 9 72 0 for 3DS Max 9 64 bit Panda Directx Exporter x64 6 2008 71 0 for 3DS Max 2008 64 bit Panda Directx Exporter x64 6 2009 72 0 for 3DS Max 2009 64 bit Panda Directx Exporter x64 6 2010 72 0 for 3DS Max 2010 64 bit Panda Directx Exporter x64 6 2011 72 0 for 3DS Max 2011 64 bit Panda Directx Exporter x64 6 2012 72 0 for 3DS Max 2012 64 bit Panda Directx Exporter x86 5 8 66 0 for 3DS Max 8 32 bit Panda Directx Exporter x86 5 9 67 0 for 3DS Max 9 32 bit Panda Directx Exporter x86 5 2008 67 0 for 3DS Max 2008 32 bit Panda Directx Exporter x86 5 2009 67 0 for 3DS Max 2009 32 bit Panda Directx Exporter x86 6 9 72 0 for 3DS Max 9 32 bit Panda Directx Exporter x86 6 2008 71 0 for 3DS Max 2008 32 bit Panda Directx Exporter x86 6 2009 72 0 for 3DS Max 2009 32 bit Panda Directx Exporter x86 6 2010 72 0 for 3DS Max 2010 32 bit Panda Directx Exporter x86 6 2011 72 0 for 3DS Max 2011 32 bit Panda Directx Exporter x86 6 2012 72 0 for 3DS Max 2012 32 bit ">包含 for 3DS MAX3 for 3DS MAX4 0 for 3DS MAX4 0+ CS3 1 for 3DS MAX4 2 CS3 2+ or MAX 5 0 for 3DS Max 6 0+ CS4 2 and 3DS Max 7 0 for 3DS Max 8 0 for 3DS Max 9 0 Panda Directx Exporter x64 5 9 67 0 for 3DS Max 9 64 bit Panda Directx Exporter x64 5 2008 67 0 for 3DS Max 2008 64 bit Panda Direc [更多]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值