游戏开发论坛

 找回密码
 立即注册
搜索
查看: 7389|回复: 15

使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

[复制链接]

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
发表于 2012-8-19 19:01:00 | 显示全部楼层 |阅读模式
在MAX中制作网格变形动画(比如布料动画)需要把每一帧网格顶点的位置信息导出。

我尝试使用以下方式设置MAX的关键帧到50,然后导出这个时刻下网格顶点的位置:
int nSceneTicks = m_pIgame->GetSceneTicks();
m_pIgame->SetStaticFrame(nSceneTicks *50);
但是发现导出来的数据任然是网格初始状态的顶点位置。

我继续尝试在3DMAX中直接拖动动画滑块把关键帧设置到50,然后导出网格顶点数据,这次成功导出了需要的顶点位置。

变形动画的帧数一般比较多不可能手动逐帧导出,想请教使用IGame怎样导出变形动画。

或者能告诉我IGame怎样设置max的关键帧也行。

谢谢!

11

主题

95

帖子

658

积分

高级会员

Rank: 4

积分
658
发表于 2012-8-19 20:53:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

IGame???  DX9.0c中好像没有。  有没有资料?? 同学

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-8-20 15:01:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

getcoreinterface() 返回的接口的 的成员函数 SetTime

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-8-20 15:02:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

他说的是maxSDK的igame

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-8-20 15:04:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

另外,max有个修改器point cache直接可以导出顶点动画成xml
你也可以解析这个xml

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
 楼主| 发表于 2012-8-23 21:18:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

试过用GetCOREInterface()->SetTime()指定时间确实有效,但是还是有问题。

把动画帧数设置为0和1可以正确获得顶点位置,也就是GetCOREInterface()->SetTime(1*160);和GetCOREInterface()->SetTime(2*160);能行。只要帧数更大就不行了,但是少数情况也会正确。

比如我吧帧数设为3:
GetCOREInterface()->SetTime(2*160);
然后获得当前网格的顶点坐标:
Point3 VertexCoordinate = mesh->GetVertex(face->vert[Corner]);
程序在执行mesh->GetVertex(face->vert[Corner])时总是会被异常终止,但是也有少数情况可以获得正确的值。

一直搞不懂这是怎么回事,是不是还有其它什么设置才行??

顺便说说:做插件真是痛苦啊,MAXSDK写的一点也不清晰,也找不到开发插件的论坛,痛苦。

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-8-24 09:53:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

你还是写个解析我说的那个xml文件的程序吧

83

主题

169

帖子

202

积分

中级会员

Rank: 3Rank: 3

积分
202
 楼主| 发表于 2012-8-24 09:59:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

max点缓存修改器确实可以导出一个xml文件,但是同时会生成一个mc文件,顶点变形信息都存放在mc文件中,mc文件是用二进制存放的无法解析。

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-8-24 11:22:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

啊,果然是要实践过才知道啊,我一直以为是存在xml里的

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2012-8-24 11:23:00 | 显示全部楼层

Re:使用IGame接口怎样才能从3DMAX中导出网格变形动画(不是

实在不行,你就用max自己的mesh看看吧,不要用igame了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-2-27 20:10

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表