一种基于智能手机平台的3d图形骨骼动画绘制算法的制作方法

文档序号:6565037阅读:755来源:国知局
专利名称:一种基于智能手机平台的3d图形骨骼动画绘制算法的制作方法
技术领域
本发明涉及智能手机平台的3D图形骨骼动画绘制算法,尤其是基于智能手机平 台的3D图形骨骼动画绘制算法。
背景技术
现有的3D游戏和应用程序主要是家用电脑平台的。而以苹果的iphone, ipad, ipad2以及android智能手机为代表的新型客户应用平台正在全球范围内井喷增长。传统 的3D骨骼动画算法在手机平台上效率低下,无法满足正常的3D应用及3D游戏的图形描O发明内容
本发明的目的在于针对现有智能手机平台上3D图形动画描绘的空白,提供一种 基于便携式移动设备平台的3D图形骨骼动画绘制算法,具有效率高,方便使用并且易于普 及的优点。
为了实现上述目的,本发明的技术方案是一种基于智能手机平台的3D图形骨骼 动画绘制算法,其特征在于该算法包括制作骨骼动画,所述骨骼动画包括基本骨骼和复合 骨骼;将上述骨骼动画信息导成文本格式动画信息文件,在导出时,将复合骨骼及基本骨骼 将以4个一组为单位排列,而每个顶点信息中将会分配一个骨骼的编组号码及4个权重信 息,将所述文本格式动画信息文件转换成游戏用二进制格式文件;底层描绘端读取分析所 述二进制格式动画文件,根据权重乘骨骼矩阵列表,获得顶点位置,实现最终顶点的渲染。
本发明提供一种基于智能手机平台的3D图形骨骼动画绘制算法,包括3D设计 软件Maya,3dMax的动画制作后的导出插件,数据转换打包工具,以及骨骼信息在底层描 绘端的读取方法与实现方式。由所述3D软件(Maya,3dMax)导出插件将动画信息导成文 本格式动画信息文件,所述数据转换打包工具将所述文本格式动画信息文件转换成专用的 游戏专用二进制格式文件,根据所述智能手机平台的特点动画信息的复合骨骼及基本骨骼 将以4个一组为单位排列。而每个顶点信息中将会分配一个骨骼的编组号码及4个权重信 息。所述底层描绘端读取分析所述二进制格式动画文件,将每组骨骼权重通过动画矩阵列 表实现最终顶点的渲染。使用本发明的算法可以在智能手机平台实现手机3D网络游戏的 开发,或者3D设计软件等3D应用程序的开发,优化了手机平台的骨骼运算,提高了实时演 算的3D动画速度,还加强数据的安全性。具有可靠性高,方便使用,易于普及等优点。
具体实施方式
一种基于智能手机平台的3D图形骨骼动画绘制算法,其特征在于该算法包括利 用3D设计软件制作骨骼动画,所述骨骼动画包括基本骨骼和复合骨骼;利用3D设计软件 导出插件将上述骨骼动画信息导成文本格式动画信息文件,在导出时,将复合骨骼及基本 骨骼将以4个一组为单位排列,而每个顶点信息中将会分配一个骨骼的编组号码及4个权重信息;利用数据转换打包工具将所述文本格式动画信息文件转换成游戏用二进制格式文 件;底层描绘端读取分析所述二进制格式动画文件,根据权重乘骨骼矩阵列表,获得顶点位 置,实现最终顶点的渲染。上述所有算法都在手机用户终端进行,分组,排列,和权重分配是 在导出插件时进行,并且加密保存。然后在描绘时进行解码并实现描绘。
所述3D设计软件包括Maya, 3dMax,以及softimage, AutoCad等其他3D设计软 件。所述智能手机用户终端为苹果的iPhone系列手机。优选地,所述智能手机用户终端为 使用谷歌Android2.2以上系统的智能安卓手机。优选地,所述智能手机用户终端还包括苹 果的ipad, ipad2系列平板电脑。优选地,所述智能手机用户终端为使用谷歌Android2. 2 以上系统的智能安卓平板电脑。
所述3D软件导出插件用于将制作好的动画文件导成文本格式动画信息文件,导 出骨骼列表是会以4个为一组,并以权重形式保存在顶点的一个32位内存块内,而同属一 个骨骼组的顶点将被打包到同一内存块内,这样加速了绘制时的导出效率。
传统的骨骼动画算法将骨骼编号及相对应矩阵数据打包生成数据文件,在实时绘 制时通过编号索引出实用矩阵再乘以复合骨的权重信息,获得最终骨骼位置。但这种算法 在手机平台上存在运算效率低下,无法实用化的问题。本发明通过对基本骨骼和复合骨骼 进行排序+分组+编号整理,并将骨骼分组后的编号信息通过32位二进制数进行权重保 存。基本骨骼将以4个一组为单位排列,而每个顶点信息中将会分配一个骨骼的编组号码 及4个权重信息。即骨骼的编号将以4个一组存成32位二进制数,其中每8个二进制数 代表一个骨骼的编号,如=OxffOOOOOO表示使用所述组内的第3号骨骼,并且权重为1.0, 0x00008080表示使用所述组内的第0,I号骨骼,并且权重均为O. 5。
而作为3D运算模块,底层描绘端读取分析所述二进制格式动画文件,将每个顶点 的骨骼权重信息除以255转换成浮点数,然后通过乘以编排好的矩阵分组列表,获得最终 的矩阵。再将顶点座标乘以最终矩阵得到顶点的最终座标位置,实现最终顶点的渲染。
如图所示,假设动作矩阵列表中以四个基本骨骼为一组,表示为MtxOO,MtxOl, Mtx02,Mtx03。则骨骼权重计算时,编号0x00008080:矩阵=Mtx00*0. 5+Mtx01*0. 5+ Mtx02*0. 0+Mtx03*0. 0。即每个顶点用一个 32 位的二进制数 据表示,同时指定4个骨骼的权重,每8位表示所在位置的骨骼权重,将骨骼权重乘以相对 应的每一帧的骨骼运动空间矩阵,就得到了该顶点在每一帧时的运动座标。
所述打包转换工具均为现有技术,根据本发明的一个实施例,打包转换工具可以 采用 maya2010, 3dmax 的内置插件 iPad3dTo_NPF3. mel。将 iPad3dTo_NPF3. me I 安装到 maya2010的系统插件目录下,进入maya2010,打开做好的3D模型场景或3D模型角色,点击 “iPad3dToNPF3”按钮,插件将自动计算出模型的顶点,贴图,骨骼已经动画等信息,然后自 动生成文本式的npf3文件。而maya2010, 3dmax的内置工具Npf3ToWJT. exe,通过它将上述 的npf3文件转换成各种平台所需的bin文件,供游戏中使用。
根据本发明的一个实施例,一个角色由10个基本骨骼,O号 9号骨骼组成,并且 角色的总顶点数为1000个。将10根基本骨骼按4个一组分组,如(0,1,2,3)—组,(4,5, 6,7 ) —组,(8,9 ) 一组。则为每个顶点可以被指定一组骨骼,如指定(O,I,2,3 )为500号顶 点的骨骼组,分配一个32位的数据信息,每8位表示所在位置的骨骼权重,则顶点可以同时 指定4个骨骼的权重。如(0x00001010)就表示该顶点是一一(O号骨* 50%) + (I号骨* 50%) + (2号骨* 0%) + (3号骨* 0%)。再将骨骼权重乘以相对应的每一帧的骨骼运动空间矩阵,就得到了该顶点在每一帧时的运动座标。最后通过其他的镜头,投影转换将顶点画到屏幕上。
根据本发明的一个实施例,npf3文件结构由以下内容构成1.文件头信息---文件的开头保存头信息。头信息中包含了文件大小,贴图数量,模型数量等基本信息。
2.模型头信息---每个模型构成一个模型内容,并且在模型内容的开头保存一个模型头信息。模型头信息包含了顶点总数,贴图索引,骨骼结构,动画格式等基本信息。
3.模型信息---紧跟模型头信息后面是模型的具体数据。包含了顶点数据序列,顶点序列中包括了每个顶点的基本座标值,法线向量,贴图座标,绑定的骨骼号,骨骼权重等。
4.动画头信息---包含了骨骼序列号,总的动画帧数,关键帧编号等信息。
5.动画信息---紧跟动画头信息后面是动画的具体数据。包含了动画数据序列,动画数据序列中包括了每一帧每个骨骼空间运动矩阵。
权利要求
1.一种基于智能手机平台的3D图形骨骼动画绘制算法,其特征在于该算法包括制作骨骼动画,所述骨骼动画包括基本骨骼和复合骨骼;将上述骨骼动画信息导成文本格式动画信息文件,在导出时,将复合骨骼及基本骨骼将以4个一组为单位排列,而每个顶点信息中将会分配一个骨骼的编组号码及4个权重信息,将所述文本格式动画信息文件转换成游戏用二进制格式文件;底层描绘端读取分析所述二进制格式动画文件,根据权重乘骨骼矩阵列表,获得顶点位置,实现最终顶点的渲染。
2.根据权利要求1所述的3D图形骨骼动画绘制算法,其特征在于每个顶点用一个32位的二进制数据表示,同时指定4个骨骼的权重,每8位表示所在位置的骨骼权重,将骨骼权重乘以相对应的每一帧的骨骼运动空间矩阵,就得到了该顶点在每一帧时的运动座标。
3.根据权利要求1或2所述的3D图形骨骼动画绘制算法,其特征在于所述3D设计软件包括 Maya, 3dMax, softimage 或 AutoCacL
4.根据权利要求1或2所述的3D图形骨骼动画绘制算法,其特征在于所述智能手机用户终端为苹果的iphone系列手机、使用谷歌Android2. 2以上系统的智能安卓手机、苹果的ipad,ipad2系列平板电脑或者使用谷歌Android2. 2以上系统的智能安卓平板电脑。
全文摘要
本发明提供了一种基于智能手机平台的3D图形骨骼动画绘制算法,由3D软件导出插件将动画信息导成文本格式动画信息文件,数据转换打包工具将所述文本格式动画信息文件转换成专用的游戏专用二进制格式文件,将复合骨骼及基本骨骼将以4个一组为单位排列。而每个顶点信息中将会分配一个骨骼的编组号码及4个权重信息。底层描绘端读取分析所述二进制格式动画文件,将每组骨骼权重通过动画矩阵列表实现最终顶点的渲染。使用本发明的算法可以在智能手机平台实现手机3D网络游戏的开发,或3D设计软件等3D应用程序的开发,优化了手机平台的骨骼运算,提高了实时演算的3D动画速度,还加强数据的安全性。具有可靠性高,方便使用,易于普及等优点。
文档编号G06T13/40GK102999935SQ20111027074
公开日2013年3月27日 申请日期2011年9月14日 优先权日2011年9月14日
发明者毛春华 申请人:恩嘉壹(上海)网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1