[发明专利]一种三维投影挂点渲染方法及装置有效
申请号: | 201210033599.X | 申请日: | 2012-02-15 |
公开(公告)号: | CN103258341A | 公开(公告)日: | 2013-08-21 |
发明(设计)人: | 殷观桥;王其 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06T15/00 | 分类号: | G06T15/00 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 518044 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 三维 投影 渲染 方法 装置 | ||
技术领域
本发明涉及三维技术领域,特别涉及一种三维投影挂点渲染方法及装置。
背景技术
2D网络游戏中,需要大量的2D角色动画。这些动画,由于数量庞大,用手工绘制成本非常巨大,效果也不好。目前,比较流行的方式是:采用3D建模技术,在3D环境中建立场景和角色,然后,设置好固定的视角,依次旋转角色到某几个固定的姿势,最后手工导出成单帧静态图片。将导出的单帧静态图片合并成连续播放的动画系列,就可以生成角色的动作动画。
此外,游戏中的角色动画,一般由头,身子,衣服,鞋子,武器,装备等部件组成。为了支持2D角色的更换装备,改变头发和衣服颜色等需求,这些部件需要单独渲染,然后在游戏中实时拼接起来。拼接两张图片需要一个基准点,一般称为挂点。例如,武器挂点决定了武器图片挂接到身体的那个具体像素位置。目前常用的生成挂点信息的方式与生成角色动作图片的方式是类似的,即把挂点当作物件在3D环境中进行投影渲染,渲染的同时把所有其他物件隐藏,从而得到一张背景全黑的挂点的投影图片,称为挂点位图。如果角色身上有多个挂点,则需要进行多次,得到所有挂点的挂点位图。后续进行图片拼接时,以挂点位图中的像素点亮度数据作为挂点位置的判断依据,把亮度最高的像素点确定为挂点的位置。
这种通过三维投影将挂点信息以位图形式输出的过程可称为三维投影挂点渲染。
在游戏的开发过程中,经常需要对角色形象,动作打击感等进行改进,这常常导致所有角色动作的重新渲染,而游戏一般有多个角色,譬如8个主角,平均每个主角有200帧、5个面,即每个角色需要渲染200*5=1000张单帧图片。整个游戏,单主角就需要渲染4000张单帧动作图片,每张单帧动作图片需要对应一个挂点位图,那么总共要制作的位图挂点就有32000张之多。这些工作完全需要靠手工完成,非常繁琐,遇到角色动画修改,重新返工调整也是耗时巨大。
另外,由于挂点输出是靠3D模型的球形挂点投影到平面来生成2D图像,而投影出的挂点不是一个象素点,而是多个像素点组成的,有可能会有多个同样亮度的像素点,这样在读取挂点位图进行拼接的时候,就无法准确判断出哪个象素点是真正的挂点,从而会导致拼接出的图像中,所挂的装备或其他物件发生抖动现象,即挂点的位置突变。过往解决的方法是通过PS手动修改发生抖动的挂点位图,然而大量的挂点位图,使得修改起来困难相当大。
总之,现有的三维投影挂点渲染方法产生的位图形式的挂点位置信息,其数据量巨大,不易更改和维护,且在后续读取挂点位图进行图像拼接时,容易出现挂点位置的误判,造成挂点物件抖动现象。
发明内容
有鉴于此,本发明提供了一种三维投影挂点渲染方法及装置,可以减少产生的挂点信息的数据量,且容易更改和维护,且不易出现由挂点位置误判导致的挂点物件抖动的现象。
为达上述目的,本发明的技术方案具体是这样实现的:
一种三维投影挂点渲染方法,该方法包括:
获取挂点在角色三维模型中的3D坐标,并根据该挂点的3D坐标计算出,在与角色三维模型相同投影方式下投影出的2D图片中该挂点的2D坐标;
对该角色动画系列中每一帧2D投影图片,计算出一个挂点坐标,得到对应该角色动画系列的所有挂点坐标;
对该动画系列中的所有挂点坐标进行判断,修改位置突变的挂点坐标,排除挂点抖动;
以文本方式输出所有挂点坐标,得到对应该角色动画系列的挂点信息文本。
较佳地,所述对该动画系列中的所有挂点坐标进行判断,修改位置突变的挂点坐标,排除挂点抖动包括:
若当前帧的下一帧2D投影图片对应的挂点坐标与当前帧前一帧2D投影图片对应的挂点坐标的差异在预设的范围内,则令当前帧2D投影图片对应的挂点坐标值等于前一帧2D投影图片对应的挂点坐标。
较佳地,所述挂点信息文本包括:
对应该角色动画系列每一帧2D投影图片的所有挂点的挂点坐标,根据不同的挂点名称来区分不同的挂点,同一名称的挂点在角色动画系列中的每一张角色投影静态图片中对应一个挂点坐标。
较佳地,该方法进一步包括:
通过读取挂点信息文本,获取挂点在角色动画系列中的每一张2D投影图片中的坐标,根据该挂点坐标进行图片拼接。
较佳地,所述预设的范围包括:x坐标或者y坐标的偏差在1以内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210033599.X/2.html,转载请声明来源钻瓜专利网。