生成眼睛图像的方法和装置与流程

文档序号:11262359阅读:402来源:国知局
生成眼睛图像的方法和装置与流程

本发明涉及图像领域,具体而言,涉及一种生成眼睛图像的方法和装置。



背景技术:

在高端单机游戏中,通过庞大的渲染技术、大量的模型面数和复杂的程序算法等来实现眼部的逼真效果,采用实体单根的模型插片方式来制作睫毛效果,采用实时演算来实现眼球的环境反射以及呈现高光,采用实体模型制作泪腺以及分泌物。

在大型网络游戏中,采用以上高端单机游戏中的眼睛实现技术成本很高,并且由于普通网游玩家的电脑配置的局限,电脑的承载能力有限,导致高端单机游戏中的眼球实现技术无法在大型网络游戏中使用。大型网络游戏中角色的眼睛表现粗糙,不够生动和逼真。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种生成眼睛图像的方法和装置,以至少解决网络游戏中角色的眼睛不生动逼真的技术问题。

根据本发明实施例的一个方面,提供了一种生成眼睛图像的方法,包括:获取用于生成眼睛图像的眼睛模型,其中,所述眼睛模型包括用于表达眼睛中眼球的眼球部分;对所述眼睛模型中所述眼球部分的眼球表面进行贴图,其中,所述贴图用于模拟眼睛中眼膜表面的凹凸质感;对贴图后的眼睛模型进行渲染,得到所述眼睛图像。

根据本发明实施例的另一方面,还提供了一种生成眼睛图像的装置,包括:第一获取单元,用于获取用于生成眼睛图像的眼睛模型,其中,所述眼睛模型包括用于表达眼睛中眼球的眼球部分;贴图单元,用于对所述眼睛模型中所述眼球部分的眼球表面进行贴图,其中,所述贴图用于模拟眼睛中眼膜表面的凹凸质感;渲染单元,用于对贴图后的眼睛模型进行渲染,得到所述眼睛图像。

在本发明实施例中,获取用于生成眼睛图像的眼睛模型,其中,所述眼睛模型包括用于表达眼睛中眼球的眼球部分;对所述眼睛模型中所述眼球部分的眼球表面进行贴图,其中,所述贴图用于模拟眼睛中眼膜表面的凹凸质感;对贴图后的眼睛模型进行渲染,得到所述眼睛图像。通过对眼睛模型的眼球表面进行贴图来模拟眼睛中眼膜表面的凹凸质感,对贴图后的眼睛模型进行渲染,得到的眼睛图像既包括眼球的图像,又包括眼膜的图像,使眼睛图像更接近真实的眼睛的效果,更加生动逼真。同时,由于生成眼睛的图像不需要大量的模型面数和复杂的程序算法,从而在终端上展示眼睛图像时,缓解了终端的运行和计算压力,提高了展示眼睛图像的效率,从而实现了使眼睛图像更接近真实的眼睛,更加生动逼真的技术效果,进而解决了网络游戏中角色的眼睛不生动逼真的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的硬件结构的架构图;

图2是根据本发明实施例的生成眼睛图像的方法的流程图;

图3是根据本发明实施例的眼膜贴图的示意图;

图4-1根据本发明实施例的眼睛模型的效果图;

图4-2是对图4-1中的眼睛模型中眼球部分的眼球表面进行贴图之后得到的眼睛模型的效果图;

图4-3是对图4-2中的眼睛模型附加睫毛模型之后得到的眼睛模型的效果图;

图4-4是对图4-3中的眼睛模型附加眼部阴影模型之后得到的眼睛模型的效果图;

图4-5是对图4-4中的眼睛模型增加泪腺和分泌物模型之后得到的眼睛模型的效果图;

图5是根据本发明实施例的生成眼睛图像的装置的示意图;以及

图6是根据本发明实施例的服务器的硬件结构图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例1

根据本发明实施例,提供了一种生成眼睛图像的方法。

可选地,在本实施例中,上述的生成眼睛图像的方法可以应用于如图1所示的服务器104和终端102所构成的硬件环境中。图1是根据本发明实施例的硬件结构的架构图,如图1所示,服务器104通过网络与终端102进行连接,上述网络包括但不限于:广域网、城域网或局域网,终端102并不限定于计算机、手机、平板电脑等。

图2是根据本发明实施例的生成眼睛图像的方法的流程图。如图2所示,该生成眼睛图像的方法包括:

步骤s202,获取用于生成眼睛图像的眼睛模型,其中,眼睛模型包括用于表达眼睛中眼球的眼球部分。

步骤s204,对眼睛模型中眼球部分的眼球表面进行贴图,其中,贴图用于模拟眼睛中眼膜表面的凹凸质感。

人的眼睛包括眼球和眼膜。图3是根据本发明实施例的眼膜贴图的示意图,如图3所示,眼膜是一个膜状体,眼膜是不太光滑的,眼膜上具有细微的纹路,眼膜是凹凸不平的,具有凹凸质感。

本申请实施例中用贴图来模拟眼膜的凹凸质感。贴图可以是预先手绘或者通过用于绘制图形的应用程序制作的。

步骤s206,对贴图后的眼睛模型进行渲染,得到眼睛图像。

对贴图后的眼睛模型进行渲染之后,得到眼睛图像,这个眼睛图像既包括眼球,又包括具有凹凸质感的眼膜。

通过对眼睛模型的眼球表面进行贴图来模拟眼睛中眼膜表面的凹凸质感,对贴图后的眼睛模型进行渲染,得到的眼睛图像既包括眼球的图像,又包括眼膜的图像,使眼睛图像更接近真实的眼睛的效果,更加生动逼真。同时,由于生成眼睛的图像不需要大量的模型面数和复杂的程序算法,从 而在终端上展示眼睛图像时,缓解了终端的运行和计算压力,提高了展示眼睛图像的效率。

在一个具体的例子中,使用上述生成眼睛图像的方法生成的眼睛图像可以应用在网络游戏、动漫中。例如,生成的眼睛图像应用在网络游戏《天涯明月刀》中,在《天涯明月刀》的人物上显示生成的眼睛图像。生成的图像表现了大量的眼睛细节,生动逼真地展现了游戏中人物的眼睛,眼睛图像所模拟的眼睛更接近真实的眼睛,在游戏界面上展示了逼真的效果,给游戏的用户带来了良好的体验。而用在动漫中的眼睛图像,使得动漫中人物或者动物的眼睛更加灵动。

可选地,对眼睛模型中眼球部分的眼球表面进行贴图包括:将贴图覆盖在眼睛模型中的眼球部分。

在生成眼睛的图像的过程中,通过贴图来表现眼球上的眼膜。将用于模拟眼膜的贴图覆盖在眼睛模型的眼球部分,使得眼睛模型表现出眼膜的质感。

可选地,对贴图后的眼睛模型进行渲染包括:获取用于生成眼睛图像上反射光的光照模型,其中,光照模型用于输出眼睛模型中眼球的反射光和眼膜的反射光;根据光照模型输出的眼球的反射光和眼膜的反射光生成用于表示眼球的反射光的眼球反射光图像和用于表示眼膜的反射光的眼膜反射光图像,其中,眼球反射光图像包括眼球的漫反射光图像和眼球的镜面反射光图像,眼膜反射光图像包括眼膜的漫反射光图像和眼膜的镜面反射光图像。

本申请实施例中,对贴图后的眼睛模型进行渲染的过程是这样的:获取光照模型,该光照模型是基于多层材质的光照模型,可以输出眼睛模型中眼球的反射光和眼膜的反射光。根据光照模型输出的眼球的反射光和眼膜的反射光生成眼球反射光图像和眼膜反射光图像,其中,眼球反射光图像表示眼球的反射光,眼膜反射光图像表示眼膜的反射光。由于反射光包括漫反射光和镜面反射光,因此,生成的眼球反射光图像包括两种图像, 分别为眼球的漫反射光图像和眼球的镜面反射光图像。同样,眼膜反射光图像包括两种图像,分别为眼膜的漫反射光图像和眼膜的镜面反射光图像。

在现有技术中,对眼睛模型进行渲染的过程中,光照模型输出眼睛模型中眼球的反射光,根据光照模型输出的眼球的反射光生成用于表示眼球的反射光的眼球反射光图像,由于在现有技术中眼睛模型是不包含眼膜部分的,因此光照模型不能输出眼膜的反射光,更无法根据眼膜的反射光生成眼膜反射光图像。而真实的眼睛包括眼球和眼膜的结构会导致眼球和眼膜都有反射光,因此,在本申请实施例中,对眼睛模型中眼球部分的眼球表面进行贴图模拟具有凹凸质感的眼膜,光照模型不仅输出眼球的反射光,还输出眼膜的反射光,并且根据光照模型输出的眼球的反射光和眼膜的反射光生成眼球反射光图像和眼膜反射光图像,更接近真实的眼睛的眼球和眼膜所表现出的反射光,使得生成的眼睛图像更加生动。

可选地,根据光照模型输出的眼球的反射光和眼膜的反射光生成用于表示眼球的反射光的眼球反射光图像和用于表示眼膜的反射光的眼膜反射光图像包括:接收用于调整光照模型输出的眼球的反射光和眼膜的反射光的指令,其中,指令用于指示以下至少之一:调整眼球的反射光中漫反射光的光通量随着眼球的反射光中镜面反射光的光通量的增大而增大、调整眼膜的反射光中漫反射光的光通量随着眼膜的反射光中镜面反射光的光通量的增大而增大、调整眼球的反射光中漫反射光的光通量随着眼球的反射光中镜面反射光的光通量的减少而减少,及调整眼膜的反射光中漫反射光的光通量随着眼膜的反射光中镜面反射光的光通量的减少而减少;根据调整后的眼球的反射光生成眼球反射光图像,根据调整后的眼膜的反射光生成眼膜的反射光图像。

根据光照模型输出的眼球的反射光和眼膜的反射光生成眼球反射光图像和眼膜反射光图像的过程是这样的:

接收指令,该指令用于调整光照模型输出的眼球的反射光和眼膜的反射光,指令用于指示以下至少之一:调整眼球的反射光中漫反射光的光通 量与眼球的反射光中镜面反射光的光通量同向变化;调整眼膜的反射光中漫反射光的光通量与眼膜的反射光中镜面反射光的光通量同向变化。

在现有技术中,网络游戏中角色的眼球的反射光中漫反射光的光通量与眼球的反射光中镜面反射光的光通量是反向变化的,即一方的光通量增大时,另一方的光通量减小,两方的光通量之和守恒(即两方的光通量之和为一个守恒量)。这样容易产生的问题是:当两方的光通量变化时,一方的光通量增大,另一方的光通量必然减小,两方的光通量的差值/比值增大,导致在视觉上不太容易感受到光通量较小的那一方。在极端情况下,有可能会出现一方的光通量接近守恒量,而另一方的光通量接近零,导致在视觉上难以感受到光通量接近零的一方。例如,假设眼球的反射光中镜面反射光的光通量为t1,眼球的反射光中漫反射光的光通量为t2,t1与t2之和为t0(即上述守恒量)。当t1=0.9t0时,t2=0.1t0,t1为t2的9倍,即眼球的反射光中镜面反射光的光通量为眼球的反射光中漫反射光的光通量的9倍,这种情况下,在视觉上很难感受到眼球的反射光中的漫反射光,影响了网络游戏中角色的眼睛的真实性。

在本申请实施例中,为了使眼睛图像既表现出反射光中的漫反射光,又表现出反射光中的镜面反射光,调节漫反射光的光通量,使得漫反射光也能明显的表现在眼睛图像中,使得镜面反射光的光通量比较大时,也不至于掩盖漫反射光的表现。从而生成的眼睛图像保证了视觉上既能感受到眼球和眼膜的反射光中漫反射光,又能感受到眼球和眼膜的反射光中镜面反射光,与真实的眼球和眼膜的反射光的情况贴近。这就增加了网络游戏中角色的眼睛的真实性。

可选地,在根据接收到的指令对光照模型输出的眼球的反射光和眼膜的反射光进行调整之后,根据调整后的眼球的反射光生成眼球反射光图像,根据调整后的眼膜的反射光生成眼膜的反射光图像。

具体地,眼睛的反射光为眼睛的漫反射光与眼睛的镜面反射光之和,可以使用以下公式(1)计算漫反射光,使用以下公式(2)计算镜面反射 光。

公式(1):∫ωl(l)(n·l)dl

公式(2):

其中,l为各个方向的光,l为角度,n为法线方向,f为菲涅尔部分,g为有凹凸感的表面的模型分量,h为视线和光的方向的中线,v为视线的角度,d为分布分量,用于表示不太光滑的表面的亮度分布,4(n·l)为角度算子,ω为角度范围。

在利用上述公式(1)和公式(2)计算得到漫反射光和镜面反射光之后,既能表现镜面反射光,又能表现漫反射光。

可选地,在对贴图后的眼睛模型进行渲染之前,本申请实施例所提供的生成眼睛图像的方法还包括:获取用于表现眼睛图像附加模型,其中,附加模型用于与眼睛模型进行组合,以表现眼睛的结构;将附加模型与眼睛模型进行组合。附加模型用来表现眼睛的细节部分,例如睫毛和泪腺等。利用附加模型和眼睛模型的组合来生成眼睛图像,使得眼睛图像中眼睛的细节表现更加丰富,更能体现真实眼睛的细节,增加了眼睛图像的真实性和生动感。附加模型可以是预先手绘或者通过用于绘制图形的应用程序制作的。

可选地,附加模型至少包括:睫毛模型、眼部阴影模型以及泪腺和分泌物模型。睫毛模型用于在眼睛模型上增加睫毛的效果,使得生成的眼睛图像具有睫毛;眼部阴影模型用于在眼睛模型增加眼睛阴影的效果,模拟眼睛中眼白的阴影;泪腺和分泌物模型用于在眼睛模型增加泪腺和分泌物,使得生成的眼睛图像带有泪腺和分泌物。

同一个附加模型可以用来制作不同人物的眼睛图像,在制作不同人物的眼睛图像时,同一个附加模型可以被重复调用。不同人物的眼睛图像也可以使用不同的附加模型来制作。作为一种可选的实施例,根据游戏中人物的性别、年龄、性格的特点,使用不同的附加模型来制作眼睛图像,这 样游戏中人物的眼睛图像不仅生动逼真,而且能表现人物自身的特点,从而能够真实地模拟现实世界中人物的眼睛。

如图4-1至图4-5所示,在对贴图后的眼睛模型进行渲染之前,获取附加模型,附加模型可以为睫毛模型、眼部阴影模型以及泪腺和分泌物模型等,将附加模型和眼睛模型进行组合,以表现眼睛的结构。

图4-1根据本发明实施例的眼睛模型的效果图。

图4-2是对图4-1中的眼睛模型中眼球部分的眼球表面进行贴图之后得到的眼睛模型的效果图。可以看出来,对眼睛模型中眼球部分的眼球表面进行贴图之后,眼白和眼膜都有反射光图像,使得眼睛变亮,更有神采,眼球更加灵动真实。

图4-3是对图4-2中的眼睛模型附加睫毛模型之后得到的眼睛模型的效果图。采用整块面片配合细致的透明贴图实现自然的睫毛效果,使睫毛看上去很真实。附加睫毛模型之后,角色眼睛的逼真程度有了很大提高。

图4-4是对图4-3中的眼睛模型附加眼部阴影模型之后得到的眼睛模型的效果图。与图4-3相比,图4-4中角色的眼白部分有一些细微的阴影,眼白不再是纯白一片,眼白看上去更加真实。

图4-5是对图4-4中的眼睛模型增加泪腺和分泌物模型之后得到的眼睛模型的效果图。与图4-4相比,图4-5中角色的眼睛的底部多了一条白线,这是对分泌物的模拟,使得眼睛看上去非常逼真灵动。采用在眼球外增加一层眼壳的方式做出眼部阴影以及泪腺及其分泌物的效果。

本申请实施例所提供的生成眼睛图像的方法生成的眼睛图像应用在网络游戏的角色中,既能够使角色的眼睛看上去非常逼真生动,又充分考虑到了程序的渲染运算以及客户端的承载能力,使得客户端在运行网络游戏时更加流畅。

需要注意的是,以上举出的实施例是一步步地在眼睛模型中对眼球表面进行贴图、添加睫毛模型、添加眼部阴影模型、添加泪腺和分泌物模型 这个顺序对眼睛模型进行处理的。在具体实施中,并不局限于此种顺序,也不局限于以上提到的几种附加模型。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

根据本发明实施例,还提供了一种用于实施上述生成眼睛图像的方法的生成眼睛图像的装置,图5是根据本发明实施例的生成眼睛图像的装置的示意图,如图5所示,该装置包括第一获取单元52、贴图单元54和渲染单元56。

第一获取单元52用于获取用于生成眼睛图像的眼睛模型,其中,眼睛模型包括用于表达眼睛中眼球的眼球部分。

贴图单元54用于对眼睛模型中眼球部分的眼球表面进行贴图,其中,贴图用于模拟眼睛中眼膜表面的凹凸质感。

人的眼睛包括眼球和眼膜。图3是根据本发明实施例的眼膜贴图的示意图,如图3所示,眼膜是一个膜状体,眼膜是不太光滑的,眼膜上具有 细微的纹路,眼膜是凹凸不平的,具有凹凸质感。

本申请实施例中用贴图来模拟眼膜的凹凸质感。贴图可以是预先手绘或者通过用于绘制图形的应用程序制作的。

渲染单元56用于对贴图后的眼睛模型进行渲染,得到眼睛图像。

对贴图后的眼睛模型进行渲染之后,得到眼睛图像,这个眼睛图像既包括眼球,又包括具有凹凸质感的眼膜。

通过对眼睛模型的眼球表面进行贴图来模拟眼睛中眼膜表面的凹凸质感,对贴图后的眼睛模型进行渲染,得到的眼睛图像既包括眼球的图像,又包括眼膜的图像,使眼睛图像更接近真实的眼睛的效果,更加生动逼真。同时,由于生成眼睛的图像不需要大量的模型面数和复杂的程序算法,从而在终端上展示眼睛图像时,缓解了终端的运行和计算压力,提高了展示眼睛图像的效率。

在一个具体的例子中,使用上述生成眼睛图像的装置生成的眼睛图像可以应用在网络游戏、动漫中。例如,生成的眼睛图像应用在网络游戏《天涯明月刀》中,在《天涯明月刀》的人物上显示生成的眼睛图像。生成的图像表现了大量的眼睛细节,生动逼真地展现了游戏中人物的眼睛,眼睛图像所模拟的眼睛更接近真实的眼睛,在游戏界面上展示了逼真的效果,给游戏的用户带来了良好的体验。而用在动漫中的眼睛图像,使得动漫中人物或者动物的眼睛更加灵动。

可选地,贴图单元54包括贴图子单元。贴图子单元用于将贴图覆盖在眼睛模型中的眼球部分。

在生成眼睛的图像的过程中,通过贴图来表现眼球上的眼膜。将用于模拟眼膜的贴图覆盖在眼睛模型的眼球部分,使得眼睛模型表现出眼膜的质感。

可选地,渲染单元56包括获取子单元和生成子单元。获取子单元用于获取用于生成眼睛图像上反射光的光照模型,其中,光照模型用于输出 眼睛模型中眼球的反射光和眼膜的反射光。生成子单元用于根据光照模型输出的眼球的反射光和眼膜的反射光生成用于表示眼球的反射光的眼球反射光图像和用于表示眼膜的反射光的眼膜反射光图像,其中,眼球反射光图像包括眼球的漫反射光图像和眼球的镜面反射光图像,眼膜反射光图像包括眼膜的漫反射光图像和眼膜的镜面反射光图像。

本申请实施例中,对贴图后的眼睛模型进行渲染的过程是这样的:获取光照模型,该光照模型是基于多层材质的光照模型,可以输出眼睛模型中眼球的反射光和眼膜的反射光。根据光照模型输出的眼球的反射光和眼膜的反射光生成眼球反射光图像和眼膜反射光图像,其中,眼球反射光图像表示眼球的反射光,眼膜反射光图像表示眼膜的反射光。由于反射光包括漫反射光和镜面反射光,因此,生成的眼球反射光图像包括两种图像,分别为眼球的漫反射光图像和眼球的镜面反射光图像。同样,眼膜反射光图像包括两种图像,分别为眼膜的漫反射光图像和眼膜的镜面反射光图像。

在现有技术中,对眼睛模型进行渲染的过程中,光照模型输出眼睛模型中眼球的反射光,根据光照模型输出的眼球的反射光生成用于表示眼球的反射光的眼球反射光图像,由于在现有技术中眼睛模型是不包含眼膜部分的,因此光照模型不能输出眼膜的反射光,更无法根据眼膜的反射光生成眼膜反射光图像。而真实的眼睛包括眼球和眼膜的结构会导致眼球和眼膜都有反射光,因此,在本申请实施例中,对眼睛模型中眼球部分的眼球表面进行贴图模拟具有凹凸质感的眼膜,光照模型不仅输出眼球的反射光,还输出眼膜的反射光,并且根据光照模型输出的眼球的反射光和眼膜的反射光生成眼球反射光图像和眼膜反射光图像,更接近真实的眼睛的眼球和眼膜所表现出的反射光,使得生成的眼睛图像更加生动。

可选地,生成子单元包括接收模块和调整模块。接收模块用于接收用于调整光照模型输出的眼球的反射光和眼膜的反射光的指令,其中,指令用于指示以下至少之一:调整眼球的反射光中漫反射光的光通量随着眼球的反射光中镜面反射光的光通量的增大而增大、调整眼膜的反射光中漫反 射光的光通量随着眼膜的反射光中镜面反射光的光通量的增大而增大、调整眼球的反射光中漫反射光的光通量随着眼球的反射光中镜面反射光的光通量的减少而减少,及调整眼膜的反射光中漫反射光的光通量随着眼膜的反射光中镜面反射光的光通量的减少而减少。调整模块用于根据调整后的眼球的反射光生成眼球反射光图像,根据调整后的眼膜的反射光生成眼膜的反射光图像。

根据光照模型输出的眼球的反射光和眼膜的反射光生成眼球反射光图像和眼膜反射光图像的过程是这样的:

接收指令,该指令用于调整光照模型输出的眼球的反射光和眼膜的反射光,指令用于指示以下至少之一:调整眼球的反射光中漫反射光的光通量与眼球的反射光中镜面反射光的光通量同向变化;调整眼膜的反射光中漫反射光的光通量与眼膜的反射光中镜面反射光的光通量同向变化。

在现有技术中,网络游戏中角色的眼球的反射光中漫反射光的光通量与眼球的反射光中镜面反射光的光通量是反向变化的,即一方的光通量增大时,另一方的光通量减小,两方的光通量之和守恒(即两方的光通量之和为一个守恒量)。这样容易产生的问题是:当两方的光通量变化时,一方的光通量增大,另一方的光通量必然减小,两方的光通量的差值/比值增大,导致在视觉上不太容易感受到光通量较小的那一方。在极端情况下,有可能会出现一方的光通量接近守恒量,而另一方的光通量接近零,导致在视觉上难以感受到光通量接近零的一方。例如,假设眼球的反射光中镜面反射光的光通量为t1,眼球的反射光中漫反射光的光通量为t2,t1与t2之和为t0(即上述守恒量)。当t1=0.9t0时,t2=0.1t0,t1为t2的9倍,即眼球的反射光中镜面反射光的光通量为眼球的反射光中漫反射光的光通量的9倍,这种情况下,在视觉上很难感受到眼球的反射光中的漫反射光,影响了网络游戏中角色的眼睛的真实性。

在本申请实施例中,为了使眼睛图像既表现出反射光中的漫反射光,又表现出反射光中的镜面反射光,调节漫反射光的光通量,使得漫反射光 也能明显的表现在眼睛图像中,使得镜面反射光的光通量比较大时,也不至于掩盖漫反射光的表现。从而生成的眼睛图像保证了视觉上既能感受到眼球和眼膜的反射光中漫反射光,又能感受到眼球和眼膜的反射光中镜面反射光,与真实的眼球和眼膜的反射光的情况贴近。这就增加了网络游戏中角色的眼睛的真实性。

可选地,在根据接收到的指令对光照模型输出的眼球的反射光和眼膜的反射光进行调整之后,根据调整后的眼球的反射光生成眼球反射光图像,根据调整后的眼膜的反射光生成眼膜的反射光图像。

具体地,眼睛的反射光为眼睛的漫反射光与眼睛的镜面反射光之和,可以使用以下公式(1)计算漫反射光,使用以下公式(2)计算镜面反射光。

公式(1):∫ωl(l)(n·l)dl

公式(2):

其中,l为各个方向的光,l为角度,n为法线方向,f为菲涅尔部分,g为有凹凸感的表面的模型分量,h为视线和光的方向的中线,v为视线的角度,d为分布分量,用于表示不太光滑的表面的亮度分布,4(n·l)为角度算子,ω为角度范围。

在利用上述公式(1)和公式(2)计算得到漫反射光和镜面反射光之后,既能表现镜面反射光,又能表现漫反射光。

可选地,在渲染单元对贴图后的眼睛模型进行渲染之前,本申请实施例所提供的生成眼睛图像的装置还包括第二获取单元和组合单元。第二获取单元用于获取用于表现眼睛图像附加模型,其中,附加模型用于与眼睛模型进行组合,以表现眼睛的结构。组合单元用于将附加模型与眼睛模型进行组合。附加模型用来表现眼睛的细节部分,例如睫毛和泪腺等。利用附加模型和眼睛模型的组合来生成眼睛图像,使得眼睛图像中眼睛的细节表现更加丰富,更能体现真实眼睛的细节,增加了眼睛图像的真实性和生 动感。附加模型可以是预先手绘或者通过用于绘制图形的应用程序制作的。

可选地,附加模型至少包括:睫毛模型、眼部阴影模型以及泪腺和分泌物模型。睫毛模型用于在眼睛模型上增加睫毛的效果,使得生成的眼睛图像具有睫毛;眼部阴影模型用于在眼睛模型增加眼睛阴影的效果,模拟眼睛中眼白的阴影;泪腺和分泌物模型用于在眼睛模型增加泪腺和分泌物,使得生成的眼睛图像带有泪腺和分泌物。

同一个附加模型可以用来制作不同人物的眼睛图像,在制作不同人物的眼睛图像时,同一个附加模型可以被重复调用。不同人物的眼睛图像也可以使用不同的附加模型来制作。作为一种可选的实施例,根据游戏中人物的性别、年龄、性格的特点,使用不同的附加模型来制作眼睛图像,这样游戏中人物的眼睛图像不仅生动逼真,而且能表现人物自身的特点,从而能够真实地模拟现实世界中人物的眼睛。

如图4-1至图4-5所示,在对贴图后的眼睛模型进行渲染之前,获取附加模型,附加模型可以为睫毛模型、眼部阴影模型以及泪腺和分泌物模型等,将附加模型和眼睛模型进行组合,以表现眼睛的结构。

图4-1根据本发明实施例的眼睛模型的效果图。

图4-2是对图4-1中的眼睛模型中眼球部分的眼球表面进行贴图之后得到的眼睛模型的效果图。可以看出来,对眼睛模型中眼球部分的眼球表面进行贴图之后,眼白和眼膜都有反射光图像,使得眼睛变亮,更有神采,眼球更加灵动真实。

图4-3是对图4-2中的眼睛模型附加睫毛模型之后得到的眼睛模型的效果图。采用整块面片配合细致的透明贴图实现自然的睫毛效果,使睫毛看上去很真实。附加睫毛模型之后,角色眼睛的逼真程度有了很大提高。

图4-4是对图4-3中的眼睛模型附加眼部阴影模型之后得到的眼睛模型的效果图。与图4-3相比,图4-4中角色的眼白部分有一些细微的阴影,眼白不再是纯白一片,眼白看上去更加真实。

图4-5是对图4-4中的眼睛模型增加泪腺和分泌物模型之后得到的眼睛模型的效果图。与图4-4相比,图4-5中角色的眼睛的底部多了一条白线,这是对分泌物的模拟,使得眼睛看上去非常逼真灵动。采用在眼球外增加一层眼壳的方式做出眼部阴影以及泪腺及其分泌物的效果。

本申请实施例所提供的生成眼睛图像的装置生成的眼睛图像应用在网络游戏的角色中,既能够使角色的眼睛看上去非常逼真生动,又充分考虑到了程序的渲染运算以及客户端的承载能力,使得客户端在运行网络游戏时更加流畅。

需要注意的是,以上举出的实施例是一步步地在眼睛模型中对眼球表面进行贴图、添加睫毛模型、添加眼部阴影模型、添加泪腺和分泌物模型这个顺序对眼睛模型进行处理的。在具体实施中,并不局限于此种顺序,也不局限于以上提到的几种附加模型。

实施例3

根据本发明实施例,还提供了一种用于实施上述生成眼睛图像的方法的服务器,图6是根据本发明实施例的服务器的硬件结构图,如图6所示,该服务器主要包括处理器601、显示器602、数据接口603、存储器604和网络接口605,其中:

显示器602主要用于显示游戏界面,其中,该游戏界面显示通过上述实施例的生成眼睛图像的方法所生成的人物的眼睛。

数据接口603则主要通过数据传输的方式将用户输入的控制指令传输给处理器601,为生成眼睛图像提供数据支持。

存储器604主要用于存储游戏中的人物角色、人物眼睛图像、用户输入的控制指令,以及游戏进度等信息。

网络接口605主要用于与外界进行网络通信,为生成眼睛图像提供数据支持,并将生成的眼睛图像传输给其他服务器。

处理器601主要用于执行如下操作:

获取用于生成眼睛图像的眼睛模型,其中,眼睛模型包括用于表达眼睛中眼球的眼球部分;对眼睛模型中眼球部分的眼球表面进行贴图,其中,贴图用于模拟眼睛中眼膜表面的凹凸质感;对贴图后的眼睛模型进行渲染,得到眼睛图像。

处理器601还用于将贴图覆盖在眼睛模型中的眼球部分。

处理器601还用于获取用于生成眼睛图像上反射光的光照模型,其中,光照模型用于输出眼睛模型中眼球的反射光和眼膜的反射光;根据光照模型输出的眼球的反射光和眼膜的反射光生成用于表示眼球的反射光的眼球反射光图像和用于表示眼膜的反射光的眼膜反射光图像,其中,眼球反射光图像包括眼球的漫反射光图像和眼球的镜面反射光图像,眼膜反射光图像包括眼膜的漫反射光图像和眼膜的镜面反射光图像。

处理器601还用于接收用于调整光照模型输出的眼球的反射光和眼膜的反射光的指令,其中,指令用于指示以下至少之一:调整眼球的反射光中漫反射光的光通量随着眼球的反射光中镜面反射光的光通量的增大而增大、调整眼膜的反射光中漫反射光的光通量随着眼膜的反射光中镜面反射光的光通量的增大而增大、调整眼球的反射光中漫反射光的光通量随着眼球的反射光中镜面反射光的光通量的减少而减少和调整眼膜的反射光中漫反射光的光通量随着眼膜的反射光中镜面反射光的光通量的减少而减少;根据调整后的眼球的反射光生成眼球反射光图像,根据调整后的眼膜的反射光生成眼膜的反射光图像。

处理器601还用于获取用于表现眼睛图像附加模型,其中,附加模型用于与眼睛模型进行组合,以表现眼睛的结构;将附加模型与眼睛模型进行组合。附加模型至少包括:睫毛模型、眼部阴影模型以及泪腺和分泌物模型。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中 所描述的示例,本实施例在此不再赘述。

实施例4

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于存储本发明实施例的生成眼睛图像的方法的程序代码。

可选地,在本实施例中,上述存储介质可以位于移动通信网络、广域网、城域网或局域网的网络中的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

s1,获取用于生成眼睛图像的眼睛模型,其中,眼睛模型包括用于表达眼睛中眼球的眼球部分;

s2,对眼睛模型中眼球部分的眼球表面进行贴图,其中,贴图用于模拟眼睛中眼膜表面的凹凸质感;

s3,对贴图后的眼睛模型进行渲染,得到眼睛图像。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计 算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1