买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:北京像素软件科技股份有限公司
摘要:本发明公开了一种远景平滑淡出的方法及装置。该方法包括:将场景中第一类别模型的颜色值渲染到第一颜色缓冲区,并将场景中第二类别模型的颜色值渲染到第二颜色缓冲区;计算第一类别模型与第二类别模型融合区的颜色值。本发明提供的方法及装置能够将第一类别模型和第二类别模型融合在一起,提高了游戏画面的逼真度,提升游戏体验。
主权项:一种远景平滑淡出的方法,其特征在于,包括:将场景中第一类别模型的颜色值渲染到第一颜色缓冲区,并将场景中第二类别模型的颜色值渲染到第二颜色缓冲区,其中,所述第一类别模型包括不被裁减的模型,所述第二类别模型包括超出可视距离被裁减的模型;计算第一类别模型与第二类别模型融合区的颜色值;其中,计算第一类别模型与第二类别模型融合区的颜色值具体包括:计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别模型;依据所述比例计算所述模型融合区中像素点的颜色值;计算第二类别模型占模型融合区的比例具体包括:依据如下公式计算第二类别模型占模型融合区的比例:F=Xd‑D1‑D其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。
全文数据:一种远景平滑淡出的方法及装置技术领域[0001]本发明涉及计算机图形领域,尤其涉及一种远景平滑淡出的方法及装置。背景技术[0002]在3D网络游戏中,经常需要模拟广阔的大自然场景,比如浩瀚的海洋、大荒漠、大沼泽、热带雨林等,这种庞大的场景包含非常多的物体,如果进行逼真的模拟,就需要渲染大量的物体,但现阶段用户计算机无法承受如此高的渲染量,所以大多数3D游戏中都需要设置可视距离,将可视距离以外的物体裁剪掉,使其不显示,只需渲染半径几百米范围内的物体,这样可以避免渲染量过大导致游戏卡顿。但这会导致一个新的问题,当某个物体模型的一部分处于可视距离之外,此时该物体会被裁剪,只保留可视距离之内的部分,裁剪会导致物体显示不完整,而且颜色上也无法和背景融合,使得游戏的画面逼真度降低。[0003]现有技术中,采用场景雾解决所述问题,添加由近至远、由淡至浓的雾效,将靠近最大视野边缘的物体全部融入雾中,当物体被裁剪时,由于该物体在浓雾中,所以由于裁剪导致的问题也就不存在了。[0004]现有技术的缺点是:现有技术并未从根本上解决问题,只是对问题进行掩饰。另一方面,使用场景雾并非适用于所有场景,比如表现晴朗的大草原场景时,如果设置较浓的场景雾显然是不合适的,但如果设置较淡的场景雾,物体被裁剪的问题就会暴露。发明内容[0005]有鉴于此,本发明提供一种远景平滑淡出的方法及装置,以解决由于裁剪导致远景物体显示不完全,被裁剪物体的边缘颜色无法和背景颜色融合的问题,提高游戏画面的逼真度。[0006]第一方面,本发明提供了一种远景平滑淡出的方法,包括:将场景中第一类别模型的颜色值渲染到第一颜色缓冲区,并将场景中第二类别模型的颜色值渲染到第二颜色缓冲区;计算第一类别模型与第二类别模型融合区的颜色值。[0007]进一步地,计算第一类别模型与第二类别模型融合区的颜色值具体包括:计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别模型;依据所述比例计算所述模型融合区中像素点的颜色值。[0008]进一步地,所述计算第二类别模型占模型融合区的比例具体包括:依据如下公式计算第二类别模型占模型融合区的比例:[0009]F=Xd-D1-D[0010]其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。[0011]进一步地,所述利用所述比例计算模型融合区中像素点的颜色值具体包括:利用如下公式计算模型融合区中任一像素点的颜色值:[0012]C=Xa*l-F+Xb*F[0013]其中,Xa为该像素点在第一颜色缓冲区中的颜色值,Xb为该像素点在第二颜色缓冲区中的颜色值;[0014]重复上述计算,得到模型融合区中每一个像素点的颜色值。[0015]进一步地,第一类别模型包括不被裁减的模型,所述第二类别模型包括超出可视距离被裁减的模型。[0016]第二方面,本发明提供一种远景平滑淡出的装置,包括第一颜色缓冲区模块、第二颜色缓冲区模块和计算模块:所述第一颜色缓冲区模块,用于场景中第一类别模型的颜色值的渲染;所述第二颜色缓冲区模块,用于场景中第二类别模型的颜色值的渲染;计算模块,用于计算第一类别模型与第二类别模型融合区的颜色值。[0017]进一步地,所述计算模块包括第一计算单元和第二计算单元;所述第一计算单元,用于计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别模型;所述第二计算单元,用于依据所述比例计算所述模型融合区中像素点的颜色值。[0018]进一步地,所述第一计算单元具体用于依据如下公式计算第二类别模型占模型融合区的比例:[0019]F=Xd-D1-D[0020]其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。[0021]进一步地,所述第二计算单元具体用于利用如下公式计算模型融合区中任一像素点的颜色值:[0022]C=Xa*l_F+Xb*F[0023]其中,Xa为该像素点在第一颜色缓冲区中的颜色值,Xb为该像素点在第二颜色缓冲区中的颜色值;[0024]重复上述计算,得到模型融合区中每一个像素点的颜色值。[0025]进一步地,所述第一类别模型包括不被裁减的模型,所述第二类别模型包括超出可视距离被裁减的模型。[0026]本发明提供的一种远景平滑淡出的方法及装置,通过将场景中不被裁剪的模型的颜色值渲染到第一颜色缓冲区,并将场景中超出视距被裁剪的模型的颜色值渲染到第二颜色缓冲区;计算不被裁剪的模型与超出视距被裁剪的模型融合区的颜色值。将处于远景中的不被裁剪的模型的颜色与超出视距被裁剪的模型的颜色融合在一起,以提高游戏画面的逼真度,提升游戏体验。附图说明[0027]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显;[0028]图1是本发明实施例一提供的一种远景平滑淡出的方法流程图;[0029]图2a是现有技术中的远景淡出效果图;[0030]图2b是使用本发明之后的远景淡出效果图;[0031]图3是本发明实施例二提供一种远景平滑淡出的装置图。具体实施方式[0032]下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。[0033]实施例一[0034]本发明实施例一提供一种远景平滑淡出的方法。图1是本发明实施例一提供的一种远景平滑淡出的方法流程图。如图1所示,所述方法包括:[0035]步骤110、将场景中第一类别模型的颜色值渲染到第一颜色缓冲区,并将场景中第二类别模型的颜色值渲染到第二颜色缓冲区;[0036]在本步骤中,所述第一类别模型包括不被裁减的模型,具体来说在3D游戏中都需要设置可视距离,当模型处于可视距离之外就会被裁剪掉,但是有些模型如天空盒、星体贴图等背景层物体就不会被裁剪,它们会跟随玩家所控制的角色移动,可以始终保持在可视距离之内。所述第二类别模型包括超出可视距离被裁减的模型,例如巨型建筑物、植被等物体,它们不会跟随玩家所控制的角色移动,它们超出可视距离则会被裁剪。模型是指场景中的物体或者景色等。[0037]所述颜色缓冲区是二维2D颜色缓冲区,3D游戏通常会将场景中的模型数据通过多种数学计算,将模型的颜色信息渲染到2D颜色缓冲区中,该颜色缓冲区有X*Y个元素,X和Y相当于屏幕分辨率例如1024*768。[0038]步骤120、计算第一类别模型与第二类别模型融合区的颜色值。[0039]计算第一类别模型与第二类别模型融合区的颜色值具体包括两部分;[0040]第一、计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别模型。[0041]计算超出可视距离被裁剪的模型占不被裁剪模型和超出可视距离被裁剪的模型融合区的比例具体为依据如下公式计算第二类别模型占模型融合区的比例:[0042]F=Xd-D1-D[0043]其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。Xd可以从场景深度图中得到。所述深度图中的数值表示场景中任一像素点到相机的距离。[0044]在此,模型融合区是指场景中第一类别模型和第二类型模型融合的区域,具体来说是指靠近最大视野边缘的会被裁剪的物体与场景的背景融合在一起的区域,本领域技术人贝也可以理解为远景平滑淡出的区域。3D网络游戏中的相机一般用来控制当前游戏场景中的视角。相机绑定在玩家主角的身上。一般情况下,3D网络游戏世界中有以下三种矩阵:世界矩阵worldmatrix,其用于控制对象在游戏场景中的位置或者姿态,视相机矩阵viewmatrix其用于控制相机在游戏场景中的位置和姿态,进而决定游戏场景中哪些物体是可见的,哪些物体是不可见的;投影矩阵projectmatrix,其用于控制可见物体在屏幕上如何显示。[0045]第二、依据所述比例计算所述模型融合区中像素点的颜色值。[0046]所述利用所述比例计算模型融合区中像素点的颜色值具体为利用如下公式计算模型融合区中任一像素点的颜色值:[0047]C=Xa*l-F+Xb*F[0048]其中,Xa为该像素点在第一颜色缓冲区中的颜色值,Xb为该像素点在第二颜色缓冲区中的颜色值;[0049]重复上述计算,得到模型融合区中每一个像素点的颜色值。[0050]在得到模型融合区中所有的像素点的颜色值之后,显卡会将这些颜色信息显示在显示屏上。[0051]图2a是现有技术中的远景淡出效果图,图2b是使用本发明之后的远景淡出效果图。现结合图2a和图2b具体说明本实施例。图2a中地面建筑物超过了预设的可视距离,因此地面建筑物的一部分被裁剪掉了,在图中可以很明显的看出地面建筑物被裁剪了,这样使得游戏画面的视觉效果不真实。图2b中地面建筑物虽然也被裁剪过,但是在利用本发明之后它和天空很自然的融合在一起,肉眼很难看出是否真的被裁剪过,这样游戏画面看起来比较真实,提高了游戏画面的逼真度。[0052]本发明的具体做法是将地面建筑物的颜色值渲染到第二颜色缓冲区中,将天空的颜色值渲染到第一颜色缓冲区中,计算被裁剪的地面建筑物和天空融合在一起的颜色值,再将颜色值通过显卡显示出来就可得到如图2b所示的效果图。[0053]本发明提供的一种远景平滑淡出的方法及装置,通过将场景中不被裁剪的模型的颜色值渲染到第一颜色缓冲区,并将场景中超出视距被裁剪的模型的颜色值渲染到第二颜色缓冲区;计算不被裁剪的模型与超出视距被裁剪的模型融合区的颜色值。将处于远景中的不被裁剪的模型的颜色与超出视距被裁剪的模型的颜色融合在一起,以提高游戏画面的逼真度,提升游戏体验。[0054]实施例二[0055]本发明实施例二提供一种远景平滑淡出的装置,图3是本发明实施例二提供一种远景平滑淡出的装置图,如图3所示,所述装置包括第一颜色缓冲区模块210、第二颜色缓冲区模块220和计算模块230;所述第一颜色缓冲区模块210,用于场景中第一类别模型的颜色值的渲染;所述第二颜色缓冲区模块220,用于场景中第二类别模型的颜色值的渲染;计算模块230,用于计算第一类别模型与第二类别模型融合区的颜色值。[0056]在此,所述计算模块230包括第一计算单元和第二计算单元;所述第一计算单元,用于计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别模型。所述第一类别模型包括不被裁减的模型,所述第二类别模型包括超出可视距离被裁减的模型[0057]所述第一计算单元具体用于:依据如下公式计算第二类别模型占模型融合区的比例:[0058]F=Xd-D1-D[0059]其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。[0060]所述第二计算单元,用于依据所述比例计算所述模型融合区中像素点的颜色值。所述第二计算单元具体用于:利用如下公式计算模型融合区中任一像素点的颜色值:[0061]c=Xa*1-F+Xb*F[0062]其中,Xa为该像素点在第一颜色缓冲区中的颜色值,Xb为该像素点在第二颜色缓冲区中的颜色值;[0063]重复上述计算,得到模型融合区中每一个像素点的颜色值。[0064]本发明实施例提供的一种远景平滑淡出的装置,利用第一颜色缓冲区模块210、第二颜色缓冲区模块220和计算模块230得到模型融合区的颜色值,再通过显卡将模型融合区的颜色值显示在显示屏上,本发明提供的装置能够将裁剪后的模型与不被裁剪的模型融合在一起,使得游戏画面比较真实,提高游戏体验。[0065]本发明实施例提供的一种远景平滑淡出的装置可执行本发明实施例一提供的一种远景平滑淡出的方法,具备执行方法相应的功能模块和有益效果。[0066]注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
权利要求:1.一种远景平滑淡出的方法,其特征在于,包括:将场景中第一类别模型的颜色值渲染到第一颜色缓冲区,并将场景中第二类别模型的颜色值渲染到第二颜色缓冲区,其中,所述第一类别模型包括不被裁减的模型,所述第二类别模型包括超出可视距离被裁减的模型;计算第一类别模型与第二类别模型融合区的颜色值;其中,计算第一类别模型与第二类别模型融合区的颜色值具体包括:计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别検型;依据所述比例计算所述模型融合区中像素点的颜色值;计算第二类别模型占模型融合区的比例具体包括:依据如下公式计算第二类别模型占模型融合区的比例:F=Xd-D1-D其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。2.根据权利要求1所述的方法,其特征在于,所述利用所述比例计算模型融合区中像素点的颜色值具体包括:利用如下公式计算模型融合区中任一像素点的颜色值:C=Xa*Q-F+Xb*F其中,Xa为该像素点在第一颜色缓冲区中的颜色值,Xb为该像素点在第二颜色缓冲区中的颜色值;重复上述计算,得到模型融合区中每一个像素点的颜色值。3.—种远景平滑淡出的装置,其特征在于,包括第一颜色缓冲区模块、第二颜色缓冲区模块和计算模块:所述第一颜色缓冲区模块,用于场景中第一类别模型的颜色值的渲染;所述第二颜色缓冲区模块,用于场景中第二类别模型的颜色值的渲染;所述计算模块,用于计算第一类别模型与第二类别模型融合区的颜色值;其中,所述第一类别模型包括不被裁减的模型,所述第二类别模型包括超出可视距离被裁减的模型;所述计算模块包括第一计算单元和第二计算单元;所述第一计算单元,用于计算第二类别模型占模型融合区的比例,其中模型融合区包括第一类别模型和第二类别模型;所述第二计算单元,用于依据所述比例计算所述模型融合区中像素点的颜色值;所述第一计算单元具体用于依据如下公式计算第二类别模型占模型融合区的比例:F=Xd-D1-D其中,Xd为模型融合区中任一像素点到相机的距离,D为模型融合区的起始像素点到相机的距离。4.根据权利要求3所述的装置,其特征在于,所述第二计算单元具体用于:利用如下公式计算模型融合区中任一像素点的颜色值:C=Xa*1-F+Xb*F其中,Xa为该像素点在第一颜色缓冲区中的颜色值,Xb为该像素点在第二颜色缓冲区中的颜色值;重复上述计算,得到模型融合区中每一个像素点的颜色值。
百度查询: 北京像素软件科技股份有限公司 一种远景平滑淡出的方法及装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。