DirectX游戏开发之3D角色动起来(上)
由于自己本身对DirectX的研究终究是不够深入的,对于顶点缓存,索引缓存,纹理映射这些重中之重的东西,我应该是不具有太过突出的发言权的,写出来也估计是不能比别人的写得好。不如就不误人子弟了吧!
哈哈,当然,等我自觉能力够了,定当不吝分享的啦!
所以呢,我这次要讲的直接就是多动作模型的使用。为什么自觉渣渣的我还是要出来说这个呢?因为网上的教程大多数都是只涉及包含一个骨骼动画的动画模型的使用,很少有写多动作切换的教程。对于制作一个3D游戏来说,你能忍受你的人物角色只能有一个动作么?你能忍受你的人物只是傻傻的呆在哪?想必是肯定不行的啦!
其实呢!官方的Multianimation这个例子是真真很不错,很厉害的哟。我这里讲到的只是它其中的一部分,希望有能力的读者去阅读下它的源码。
第一步,导出.x动作人物模型文件
很容易就想到,如果是直接用顶点缓存+索引缓存设计一个人物模型,额,还要会有动作的,绝对是噩梦。
官方支持的3D模型格式是.x文件格式。这个格式实话说比较尴尬,估计很多人都会挺陌生的。从3Dmax中导出它的插件真的不多。 PandaDirectXMaxExporter算一个,额,我没成功过,我用kw X-Port这个插件。使用办法如下.
- 下载插件,解压到3Dmax插件文件夹plugsin,重启3Dmax
打开带有动画的骨骼模型
打开看看,还是挺帅的嘛!
- 通过移动底下的帧数来确定各个动作的其实帧数和动画的长度
- 导出-)导出指定对象
- 按着步骤来,是可以导出以后用到滴,好有用的3D模型的啦!
- 估计导出会是很多人的头疼之处,不行的好大家可以多交流多讨论呀!
下节预告:实实在在上代码,征服多动作动画!!!