一种图形处理方法及系统技术方案

技术编号:2946902 阅读:206 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及图形处理领域,尤其涉及一种图形处理方法及系统。该方法将图形划分为骨骼部分和皮肤部分,形成角色骨骼数据、角色皮肤数据和角色运动数据,所述角色运动数据标识骨骼运动轨迹,所述的角色皮肤数据与所述的角色骨骼数据相关联,当显示图形时,将所述的角色骨骼数据、角色皮肤数据和角色运动数据加载到运动场景中,产生图形画面。本发明专利技术方案由于目标对象是三维软件制作的模型,所以其适用对象的范围广,可操作性高。该技术将模型角色的动画和模型数据相分离,所以对模型动画或者模型本身的修改和添加比较方便。

【技术实现步骤摘要】

本专利技术涉及图形处理领域,尤其涉及一种图形处理方法及系统
技术介绍
在计算机图形和模型动画设计中,包括2D游戏和3D游戏的相关动画设计。在2D游戏中,角色的图形显示,是通过将角色按照身体部位划分为不同的部分,并赋予各部分运动数据,将这些数据按照建好的模型,加载到运动场景中,从而实现图形的显示。比如一个角色的贴图有四张头,身子,腿和装备,通过对这四个部分赋予运动数据,并加载到运动场景中,就实现了图形的显示。在3D游戏中,也采用类似的思路进行图形显示。在图形处理中,角色的换装是一个较难实现技术点(游戏中为了丰富玩家的表现,提供很多模型部件,比如不同的衣服,装备和角色动画,来让玩家对其进行自由组合以达到让每一个玩家都有独特的表现效果),在2D游戏中,角色的换装实现是通过替换添加或删除角色在场景中的部件贴图来实现的,比如一个角色的贴图有四张头,身子,腿和装备,通过替换腿的贴图就能实现角色的裤子的改变。由于2D游戏中的角色换装完全通过贴图的更换来实现,所以实现丰富的换装系统就需要一个庞大的角色部件贴图,这样的代价是比较大的。目前为了表现更真实的环境效果和更丰富的角色,更多的游戏开始采用三维图形引擎进行游戏的场景表现,其中角色换装已经成为了游戏中的一个重要组成部分。在目前流行的大型网络游戏中魔兽世界的角色模型就已经达到了一万多套。在3D游戏中目前采用的模型换装主要采用下面两种模式。一种是针对某一类型的模型将其可能出现的模型部件都施加在一个模型上,同时将动画信息直接绑定在这些模型上,通过实现这些模型部件的消隐来达到角色变化的目的。魔兽世界采用的是这一种方法,这种方法适合于模型骨骼变化较大的模型。另一种是通过将角色的各个部分进行分解,分别对每个分解部分的动画进行设定。再在场景中将这些模型部件进行组合形成一个完整的模型,例如对角色模型的头,身子,腿进行分别建模和动画的设定,在场景中只要将目标模型部件取出后连接,然后对这些部件施加同一类型的动画就可以实现一个完整的角色动画,在换装的时候只要进行模型部件的更换就可以达到目的。对于第一种角色换装的实现方法,其缺点是模型数据的冗余比较大,如果一个角色身上可有的部件有1000种,那么模型的数据将会相当的大,同时模型的动画是针对模型本身的,所以即使是同一类型的动画,不同的模型也需要一一建立,比如一个跑的动作在魔兽世界的角色上就要制作一万多个。对于第二种方法,由于将模型的部件进行分离,所以单个模型数据量就比较小,但是这种方法对模型制作的要求比较高,就是对于同一个动画各个模型部件的运动配合要一致。这对于各个模型部件分开来制作的制作人员来说是一个比较高的要求。由此可见,现有技术中图形显示的不足之处是不够灵活,数据处理量大。而且不能方便灵活地完成角色换装的实现。
技术实现思路
本专利技术提供一种图形处理方法,用以解决现有技术中存在的图形显示的不足之处是不够灵活,数据处理量大的问题。本专利技术方法包括一种图形处理方法,将图形划分为骨骼部分和皮肤部分,形成角色骨骼数据、角色皮肤数据和角色运动数据,所述角色运动数据标识骨骼运动轨迹,所述的角色皮肤数据与所述的角色骨骼数据相关联,当显示图形时,将所述的角色骨骼数据、角色皮肤数据和角色运动数据加载到运动场景中,产生图形画面。所述的角色皮肤数据,分为多个部分,形成多个角色皮肤模型片。所述的角色皮肤数据,包括角色头部数据、角色身体数据、角色腿部数据。所述的皮肤数据与骨骼数据的关联,是通过将所述的角色骨骼与角色皮肤模型片进行绑定而完成的。所述的角色骨骼与角色皮肤模型片进行绑定,是将所述的角色骨骼数据赋予角色皮肤模型片的顶点。所述的方法,当所述的角色需要换装时,是将新的角色皮肤数据与角色骨骼数据相关联。所述的角色运动数据,包括角色走、跳或跑动作的数据。所述的方法,还包括形成角色时间数据,所述的角色时间数据,用于标识所述的角色在时间上的图形信息。将所述的角色骨骼数据、角色皮肤数据和角色运动数据加载到运动场景中,是将所述的角色骨骼数据、角色皮肤数据和角色运动数据,与角色时间数据相结合,根据角色在各时间点上的角色骨骼数据、角色皮肤数据和角色运动数据的组合,形成角色的运动图形画面。所述的方法,将所述的角色骨骼数据、角色皮肤数据和角色运动数据加载到运动场景中,可以通过3DMax或MAYA等程序完成。本专利技术系统包括一种图形处理系统,包括数据加载单元,还包括骨骼数据存储单元,用于存储角色骨骼数据;皮肤数据存储单元,用于存储角色皮肤数据;皮肤数据与骨骼数据关联信息存储单元,用于存储角色皮肤数据和角色骨骼数据之间的关联关系; 运动数据存储单元,用于存储角色运动数据;所述数据加载单元,从上述各存储单元中获取数据,并加载到运动场景中,产生图形画面。所述的系统,还包括角色时间数据存储单元,用于存储角色时间数据。所述的皮肤数据存储单元,进一步包括角色头部数据存储单元,用于存储角色头部数据;角色身体数据存储单元,用于存储角色身体数据;角色腿部数据存储单元,用于存储角色腿部数据。所述的数据加载单元,可以为3DMax程序单元或MAYA程序单元。本专利技术有益效果如下1、由于该技术的目标对象是三维软件制作的模型所以其适用对象的范围广,可操作性高。2、该技术将模型角色的动画和模型数据相分离,所以对模型动画或者模型本身的修改和添加比较方便。3、该方法制作的模型运用范围广泛,同一模块可以应用于别的游戏或者有着三维环境的程序。4、由于该角色可以是模型制作的,因此可以通过DirectX9的shader技术给模型施加不同的渲染方法使模型的表现更加真实。附图说明图1为本专利技术实施例1的流程示意图;图2为本专利技术实施例2的流程示意图;图3为本专利技术的系统结构示意图;图4为本专利技术角色皮肤数据存储单元的细化结构图。具体实施例方式下面结合来说明本专利技术的具体实施方式。本专利技术实现的角色图形显示,通过将角色模型分为角色皮肤和角色骨骼部分,并与此相对应形成角色骨骼数据、角色皮肤数据。本专利技术上述模型中还要形成角色运动数据和角色时间数据,所述角色运动数据标识骨骼运动轨迹,所述角色时间数据用于标识角色在时间点上的图形信息。上述角色皮肤是指角色在场景中的表现,例如角色的服装、角色的装备等。一个完整的角色,其角色皮肤可以分成若干部分,包括角色的头、身体和腿等。角色皮肤直接和角色骨骼相关联,其显示过程中的位置变化和变形是直接来自于角色骨骼运动。角色骨骼可以是指角色图形所控制的模型部分,角色骨骼在模型中可以并不直接表现出来,其通过控制依附其上的角色皮肤来达到角色皮肤的运动从而实现运动图形显示。角色运动是该角色的动作信息,包括跑,走,跳等动作,角色运动是针对骨骼数据来说的,它和角色皮肤可以没有关系。在具体的角色数据确定时首先根据需要确定一个角色的角色骨骼数据,下面所有的角色皮肤都根据该角色骨骼进行制作。其次在确定了角色骨骼以后确定一个基本的角色皮肤,并按照需要将该角色皮肤分解成若干部分,其中每个角色皮肤的模型片需要和角色骨骼进行绑定。该绑定的方式有多种,只要能将所述的角色皮肤模型片与角色骨骼数据建立起一一对应关系即可,例如可以在角色皮肤模型片上保存角色骨骼的索引,在具体使用时,角色皮肤模型片可以根据角色骨骼的索引找到角色骨骼节点,从而将角本文档来自技高网
...

【技术保护点】
一种图形处理方法,其特征在于,将图形划分为骨骼部分和皮肤部分,形成角色骨骼数据、角色皮肤数据和角色运动数据,所述角色运动数据标识骨骼运动轨迹,所述的角色皮肤数据与所述的角色骨骼数据相关联,当显示图形时,将所述的角色骨骼数据、角色皮肤数据和角色运动数据加载到运动场景中,产生图形画面。

【技术特征摘要】

【专利技术属性】
技术研发人员:陆楠杨津龙
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1