SimpleMutiAnimation

所属分类:3D图形编程
开发工具:Visual C++
文件大小:1452KB
下载次数:206
上传日期:2007-12-13 17:16:51
上 传 者老ZHANG
说明:  按照D3D SDK下MultiAnimation那个例子提供的方法。基本上是用D3D对多人物运动动画的封装(C++)。 优点是多人物共享同一个蒙皮骨骼模型(包括贴图),减少内存消耗,但同一时间每个人的动作不会雷同。 其他做了的有碰撞地图,摄像机,字体,静态模型。反正都向简单化靠近,最后 希望做出的是和名字一样,是一个简单的多人物动画程序(Simple MutiAnimation)。 DX SDK 版本:07Aug。 (附了运行贴图和可执行文件(Debug版.exe),其他详情请看ReadMe)
(D3D SDK accordance with the examples provided under MultiAnimation method. D3D is basically used for multiple character movement animation package (C++). Advantage of multi-character share the same skin skeleton model (including maps), to reduce memory consumption, but the same time everyone s actions will not be identical. Others have done a collision map, camera, fonts, static model. Anyway, near to the simplistic, the last hope is made by the same name, is a simple multi-character animation program (Simple MutiAnimation). DX SDK version: 07Aug. (With map and run executable files (Debug version. Exe), other details see ReadMe))

文件列表:
SimpleMutiAnimation\SimpleMutiAnimation.sln (922, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation.suo (77824, 2007-12-13)
SimpleMutiAnimation\debug (0, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.vcproj (5954, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\AllocateHierarchy.h (3322, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\AllocateHierarchy.cpp (22682, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Skinnedmesh.cpp (19701, 2007-12-10)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.cpp (6789, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Camera.cpp (2638, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Skinnedmesh.h (1648, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Game.h (1835, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\stdafx.h (1687, 2007-12-11)
SimpleMutiAnimation\SimpleMutiAnimation\Camera.h (877, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Font.cpp (1221, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\stdafx.cpp (224, 2007-12-10)
SimpleMutiAnimation\SimpleMutiAnimation\Game.cpp (10097, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Font.h (628, 2007-12-12)
SimpleMutiAnimation\SimpleMutiAnimation\Room.cpp (5679, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Map.txt (8198, 2007-12-12)
SimpleMutiAnimation\SimpleMutiAnimation\PersonSet.h (3390, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Room.h (1659, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\tiny_4anim.x (2589105, 2007-08-02)
SimpleMutiAnimation\SimpleMutiAnimation\PersonSet.cpp (12785, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Resource.h (769, 2007-12-10)
SimpleMutiAnimation\SimpleMutiAnimation\Tiny_skin.dds (262272, 2007-04-02)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.exe (233472, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.rc (2941, 2007-12-10)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.h (39, 2007-12-10)
SimpleMutiAnimation\SimpleMutiAnimation\small.ico (23558, 2005-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.ico (23558, 2005-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\SimpleMutiAnimation.vcproj.SEI-3D437625A89.zzp.user (1427, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Room\i.bmp (32394, 2007-12-11)
SimpleMutiAnimation\SimpleMutiAnimation\Room\480_tomate.jpg (38070, 2005-03-07)
SimpleMutiAnimation\SimpleMutiAnimation\Room\dimian.bmp (1228856, 2007-12-12)
SimpleMutiAnimation\SimpleMutiAnimation\Room\Maze.X (53056, 2007-12-12)
SimpleMutiAnimation\SimpleMutiAnimation\Room\Thumbs.db (16384, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\Room (0, 2007-12-13)
SimpleMutiAnimation\SimpleMutiAnimation\girlRes\girlnew.X (1895459, 2007-12-11)
... ...

本程序基本上是用D3D对多人物运动动画的封装(C++)。 D3D SDK下MultiAnimation那个例子很不错,不过那些指针指来指去,每个对象 分配、重置、销毁、还用回调函数做声效,加上用Shader绘制就使实现细节太多 乍看起来不习惯,也看不大懂。(我是这么觉得) 这个(D3D SDK的)MultiAnimation例子提供技术最大的优势就是多人物共享同 一个蒙皮骨骼模型(包括贴图),减少内存消耗,但同一时间每个人的动作不会雷 同。 现在做的项目里要用到多人物动画,于是自己封一下,目的一是把全局对象封在 一个类里,方便重用,可以有几组人同时运动(本程序里用了两个模型设了两组 人群),二是简化代码,包括去掉Shader绘制,避开了写fx文件 (当然会写更好,但像我还未学Shader,只能先避开) 因为Tiny可以用Shader绘制,也可以不用,但MAX里导出的蒙皮人物(.X)直接 放到(SDK的)MultiAnimation例子里是绘制不出来的。本程序用的一个少女模 型就是用MAX8+panda导出的,导出时设定了和Tiny的AnimationSet名字相同的 四个动画集。(即Loiter,Walk,Jok,Wave用文本打开tiny_4anim.x搜Animationset 就会看到) 另外(D3D SDK的)MultiAnimation例子是基于DXUT的,看DXUT的话可能又要花 些时间,DXUT整个库也不小吧。所以我就按SDK的Sample里那6个Tutorials的方 式作了一个不带DXUT的程序。 建立骨骼和绘制基本上就拷了MultiAnimation或SkinnedMesh的代码。 绘制时设Skinning Method为Non-Indaxed Skinning比较好,模型不容易变形, 台式机和笔记本显卡不同,有时笔记本跑的好好的,到台式机上模型网格反而 会坏掉。 其他做了的有碰撞地图,摄像机,字体,静态模型。反正都向简单化靠近,最后 希望做出的是和名字一样,是一个简单的多人物动画程序(Simple MutiAnimation) 谈不上是一个游戏,只是自己的点点尝试拿出来和大家分享,希望大家不要见笑。 DX SDK 版本:07Aug。

近期下载者

相关文件


收藏者