MultiAnim DX9

原创 2012年03月30日 11:54:48

这个案例比SkinnedMesh多的我觉得只是与骨骼动画更多的接口的认识。

 

MultiAnim主要的知识是:

在D3D中,一个动画控制接口有多个轨道,每个轨道上都独立的控制。我们可以控制轨道是否启用,速度,权重,优先级别。然后同个优先级别的每个轨道的动画会按对应的权重进行混合,最后不同优先级别再度混合。

 

这种独立有条理的结构同时也可以实现一个动画平滑过渡到另一个动画。

 

这些在我上传的d3dx_skinnedmesh.pdf都提及到了,而且系统全面。这里只总结MultiAnim中给我更多的新的知识和体会。

  1. 整个类框架是将骨骼网格存放的CMultiAnim。将控制骨骼的动画信息的ID3DXAnimationController接口包含到CMultiAnimInstance,然后CTiny包含CMultiAnimInstance接口指针,我个人认为将CTiny继承与CMultiAnimInstance非常好,我自己编写的案例就是如此处理的,而且没感觉到有不恰当的地方。
  2. 如果要多个实例,其实就是复制多个ID3DXAnimationController接口,每个接口就相当于一个实例,因为这个接口主要用于保存骨骼动画信息,只要有个骨骼动画信息,我们就能让骨骼运动。
  3. 几乎所有从Get*()接口中获得的指针都需要释放,否则会有内存泄露。
  4. 还有需要再LostDevice时保存动画信息。

其它的很多就是逻辑上的处理,一个动画平滑过渡到另一个动画等等。这些在C++编程中就已经处理过太多次了,就不提了。

NVIDIA详细解读游戏中DX9与DX11差别

10月28日,NVIDIA在日本召开发布会,以《孤岛危机2》和《战地3》为例,详细对比了DX11中新图像技术在游戏上的应用,以及对比DX9取得的进步。 首先是DX11最重要的特征...
  • debugconsole
  • debugconsole
  • 2016年05月22日 21:19
  • 946

DirectX9 示例:绘制正方体

////////////////////////////////////////////////////////////////////////////////////////////////// /...
  • sinat_24229853
  • sinat_24229853
  • 2015年05月02日 22:32
  • 952

<DX9随笔>一.顶点色 光照 纹理

看完Frank D. Luna 所著的《Introduction to 3D Game Programming
  • crazygougou
  • crazygougou
  • 2014年09月01日 11:42
  • 863

DX9学习笔记--着色模式,索引缓存

继续学习DX9。为什么不学DX11呢,因为我想先从过去的一个经典版本学习领悟其中的原理,再来了解新的版本。一贯目标:加深对游戏开发的底层知识的理解。       今天总结下着色模式、索引缓存。  ...
  • huiguimoyu
  • huiguimoyu
  • 2015年04月17日 17:49
  • 1015

DX初学咋练----配置环境及初次运行(vs2010/dx9.0)

纠结了两天了 dx环境配置及运行一个小例子 终于解决了   新建一个 win32项目 选择 “空项目”(如果给建成win32控制台的项目了 那就要更改一些其他的属性 最后说) ...
  • stormbjm
  • stormbjm
  • 2014年03月18日 00:41
  • 1332

windows游戏编程大师技巧源码C++改写DX9改写

额。暂时只是提供了基本表面画线实现其他以后补上。 写完以后顺便改写3D游戏编程大师技巧。 DirectDraw7太老了。 在wind8和wind7老是出现莫名的错误,而且不好调试。 用DX9分装了,就...
  • a65268193
  • a65268193
  • 2013年08月13日 23:23
  • 1822

DirectX9 初始化Direct3D通用框架

初始化Direct3D通用框架 The declaration of IDirect3DDevice9::Clearis: HRESULTIDirect3DDevice9::Clear( DWORD...
  • sinat_24229853
  • sinat_24229853
  • 2015年04月18日 18:49
  • 825

windows游戏编程<八> 绘图基础

本系列文章由jadeshu编写,转载请注明出处。http://blog.csdn.net/jadeshu/article/details/22451353 作者:jadeshu   邮箱: ja...
  • jadeshu
  • jadeshu
  • 2014年03月29日 00:43
  • 799

第二讲 DX9简单框架程序实例

内容 •实现基本过程 •函数讲解 Direct3DCreate9 创建Direct3D接口对象 CreateDevice     创建Direct3D设备接口 Clear 清除后台缓存 ...
  • jadeshu
  • jadeshu
  • 2013年06月08日 19:22
  • 720

通过ID3DXSprite在DirectX9简单实现2D绘图

ID3DXSprite是DriectX 9.0里面的一个简单模块,在DriectX 9.0帮助文档里面对其功能的描术为:“向用户提供一套简单的在屏幕上实现精灵渲染的接口。”何为精灵渲染,说白了就是渲染...
  • natsu1211
  • natsu1211
  • 2014年05月29日 18:43
  • 1749
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MultiAnim DX9
举报原因:
原因补充:

(最多只允许输入30个字)