全屏渲染方法及装置与流程

文档序号:14390719阅读:218来源:国知局
全屏渲染方法及装置与流程

本发明涉及游戏开发技术领域,具体而言,涉及一种全屏渲染方法及装置。



背景技术:

现有游戏的游戏场景中通常设置有场景相机,游戏客户端通过该场景相机对各个模型进行渲染,并在该场景相机的可视域将渲染后的模型呈现给用户。场景相机通常具有一定的位置和方向,随着场景相机的位置和方向发生改变,用户看到的物体也会发生变化。也即,对于同一个物体模型,一旦场景相机的位置和方向发生改变,用户便无法再看到该物体模型。

然而,在现有的游戏中,在某些情况下,需要用户在任意位置都能看到某个模型,若采用上述方式对该模型进行渲染,将无法实现该模型的全屏显示。



技术实现要素:

有鉴于此,本发明的目的在于提供一种全屏渲染方法及装置,应用于游戏客户端,所述方法包括:

在对待渲染的目标模型进行渲染时,在所述目标模型所在游戏场景中创建用于渲染所述目标模型的目标相机;

获取所述游戏场景的场景相机的可视域的大小,并将所述目标相机的可视域的大小设定为所述场景相机的可视域的大小;

通过所述目标相机对所述目标模型进行渲染。

可选地,在通过所述目标相机对所述目标模型进行渲染之前,所述方法还包括:

根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端当前的游戏窗口的尺寸计算出标准视场角;

将所述目标相机的视场角调整为所述标准视场角,使所述目标相机的可视域内显示的所述目标模型符合标准。

可选地,所述标准比例为所述游戏场景中模型的宽度与高度之比,所述游戏客户端所在显示器的尺寸为所述游戏客户端当前的游戏窗口的宽度与高度之比。

可选地,根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端当前的游戏窗口的尺寸计算出标准视场角,包括:

通过如下计算式计算所述目标相机的视场角fov:

其中,k为所述标准比例,fov0为所述标准比例对应的视场角,h为所述目标相机的可视域的高度,w为所述目标相机的可视域的宽度。

可选地,所述目标模型为特效模型。

本发明实施例还提供一种全屏渲染装置,所述装置包括:

相机创建模块,用于在对待渲染的目标模型进行渲染时,在所述目标模型所在游戏场景中创建用于渲染所述目标模型的目标相机;

可视域设置模块,用于获取所述游戏场景的场景相机的可视域的大小,并将所述目标相机的可视域的大小设定为所述场景相机的可视域的大小;

目标模型渲染模块,用于通过所述目标相机对所述目标模型进行渲染。

可选地,所述装置还包括:

视场角计算模块,用于在所述目标模型渲染模块通过所述目标相机对所述目标模型进行渲染之前,根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端当前的游戏窗口的尺寸计算出标准视场角;

视场角调整模块,用于将所述目标相机的视场角调整为所述标准视场角,使所述目标相机的可视域内显示的所述目标模型符合标准。

可选地,所述标准比例为所述游戏场景中模型的宽度与高度之比,所述游戏客户端当前的游戏窗口的尺寸为所述游戏客户端当前的游戏窗口的宽度与高度之比。

可选地,所述视场角计算模块根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端当前的游戏窗口的尺寸计算出标准视场角的方式,为:

通过如下计算式计算所述目标相机的视场角fov:

其中,k为所述标准比例,fov0为所述标准比例对应的视场角,h为所述目标相机的可视域的高度,w为所述目标相机的可视域的宽度。

可选地,所述目标模型为特效模型。

相对于现有技术而言,本发明实施例具有以下有益效果:

本发明实施例提供一种全屏渲染方法及装置,应用于游戏客户端。方法包括:在对待渲染的目标模型进行渲染时,在该目标模型所在游戏场景中创建用于渲染该目标模型的目标相机;获取该游戏场景的场景相机的可视域的大小,并将目标相机的可视域的大小设定为场景相机的可视域的大小;通过目标相机对目标模型进行渲染。通过上述设计,可以确保用户在游戏场景的任意位置都能看到该目标模型。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图作详细说明。

附图说明

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

图1为本发明实施例提供的一种电子设备的方框示意图;

图2为本发明实施例提供的一种全屏渲染方法的流程示意图;

图3为本发明实施例提供的全屏渲染方法的又一流程示意图;

图4为本发明实施例提供的一种全屏渲染装置的流程示意图。

图标:100-电子设备;110-存储器;120-处理器;130-显示单元;200-游戏客户端;210-全屏渲染装置;211-相机创建模块;212-可视域设置模块;213-目标模型渲染模块;214-视场角计算模块;215-视场角调整模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和展示的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

请参阅图1,是本发明实施例提供的一种电子设备100的方框示意图,所述电子设备100可以是任意具备图像处理功能的设备,如个人计算机(personalcomputer,pc)、服务器等。

所述电子设备100包括游戏客户端200、全屏渲染装置210、存储器110、处理器120及显示单元130。

所述存储器110、处理器120以及显示单元130各元件之间直接或间接地电性连接,以实现数据的传输或交互。其中,所述游戏客户端200及所述全屏渲染装置210均包括至少一个可以软件(software)或固件(firmware)的形式存储在所述存储器110中或固化在所述电子设备100的操作系统(operatingsystem,os)中的软件功能模块。

其中,所述全屏渲染装置210可以是所述游戏客户端200的一个子装置,也可以是独立于所述游戏客户端200并与所述游戏客户端200通信的装置。在本实施例中,以所述全屏渲染装置210是所述游戏客户端200的子装置为例进行说明。

在本实施例中,所述存储器110可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。

所述处理器120可以是一种集成电路芯片,具有信号处理能力。该处理器120也可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、分立门或晶体管逻辑器件、分立硬件组件。其中,通用处理器可以是微处理器或任何常规的处理器。

所述显示单元130用于建立所述电子设备100与用户之间的交互界面,或是用于显示待显示的信息,例如,电子设备100通过所述游戏客户端200解析得到的游戏场景等。需要说明的是,所述显示单元130可以包括用于实现显示所需的硬件,如,显示屏、显卡等。

应当理解,图1所示的结构仅为示意,所述电子设备100可以具有比图1更少或更多的组件,或是具有与图1所示不同的配置。其中,图2所示的各组件可以通过软件、硬件或其组合实现,本实施例对此不做限制。

如图2所示,是本发明实施例提供的一种全屏渲染方法的流程示意图,所述全屏渲染方法应用于图1所示的游戏客户端200。下面对图1所示的具体流程及步骤做详细阐述。

步骤s110,在对待渲染的目标模型进行渲染时,在所述目标模型所在游戏场景中创建用于渲染所述目标模型的目标相机。

经发明人研究发现,现有的游戏通常是通过场景相机对游戏场景中的各个模型进行渲染,所述各个模型通过所述场景相机的可视域呈现给用户。因此,当所述场景相机的方向和位置改变时,用户将无法看到原本能够看到的模型(如,树木模型、房屋模型等)。

在这一情形下,若需要设置一个目标模型,让用户在所述游戏场景的任意位置都能看到该目标模型,则无法实现。

因而,发明人设计在所述游戏场景中创建用于渲染目标模型的目标相机,从而可以通过所述目标相机对所述目标模型进行渲染。其中,所述目标模型是指希望用户在所述游戏场景的任意位置都能够看到的模型。

步骤s120,获取所述游戏客户端200当前的游戏窗口的大小,并将所述目标相机的可视域的大小设定为所述游戏客户端200当前的游戏窗口的大小。

实施时,将所述目标相机的可视域的大小设定为所述游戏客户端200当前的游戏窗口的大小。

由于用户在游戏过程中操作的是场景相机,并不会改变目标相机的方向和位置,因此,所述目标模型始终在所述目标相机的可视域内。而目标相机的可视域的大小与所述游戏客户端200当前的游戏窗口的大小一致,也就是说,无论场景相机的方向和位置如何变动,都是位于所述目标相机的可视域中的。

因此,若通过所述目标相机对所述目标模型进行渲染,可以确保用户在所述游戏场景的任意位置都能够看到所述目标模型。

此外,基于上述分析可以得知,如果所述目标相机的可视域的尺寸小于所述游戏客户端200当前的游戏窗口的尺寸,则当所述场景相机移动到所述目标相机的可视域外时,会导致用户无法看到所述目标模型。

步骤s130,通过所述目标相机对所述目标模型进行渲染。

因而,通过所述目标相机对所述目标模型进行渲染,可以确保用户在所述游戏场景的任意位置都可以看到所述目标模型。

由于所述目标相机的可视域的大小与所述游戏客户端200当前的游戏窗口的大小一致。针对不同尺寸的游戏窗口,所述目标相机的可视域大小也有所不同,若不对所述目标相机的视场角做调整,会造成所述目标相机的可视域内的目标模型所呈现的形状不符合要求,例如,可能出现左右边缘有缝隙或是出现较大的切边等。

可选地,如图3所示,在步骤s130之前,所述方法还可以包括步骤s140及步骤s150两个步骤。

步骤s140,根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端200当前的游戏窗口的尺寸计算出标准视场角。

其中,所述标准比例可以为所述游戏场景中模型的宽度与高度之比,所述游戏客户端200当前的游戏窗口的尺寸可以为所述游戏客户端200当前的游戏窗口的宽度与高度之比。

详细地,所述步骤s140可以通过如下子步骤实现:

也即,所述目标相机的视场角fov可以通过如下计算式计算得到:

其中,k为所述标准比例,也即,所述游戏场景中模型的宽度与高度之比的标准值;fov0为所述标准比例对应的视场角,h为所述目标相机的可视域的高度,w为所述目标相机的可视域的宽度。

步骤s150,将所述目标相机的视场角调整为所述标准视场角,使所述目标相机的可视域内显示的所述目标模型符合标准。

通过上述设计,可以在确保用户能够在所述游戏场景的任意位置看到所述目标模型的基础上,确保用户看到的所述目标模型不变形。

可选地,在本实施例中,所述目标模型可以是,但不限于,特效模型。

在实际应用中,特效通常是需要在所述游戏场景的任意位置都能够被用户看到,例如,当某个玩家的角色受重伤导致血量不足时,需要该玩家的角色持续发出红光特效,这一特效就需要用户在所述游戏场景的任意位置都能够看到。

如图4所示,是本发明实施例提供的一种全屏渲染装置210,所述全屏渲染装置210应用于图1所示的游戏客户端200。所述全屏渲染装置210包括相机创建模块211、可视域设置模块212及目标模型渲染模块213。

其中,所述相机创建模块211用于在对待渲染的目标模型进行渲染时,在所述目标模型所在游戏场景中创建用于渲染所述目标模型的目标相机。

可选地,所述目标模型可以是,但不限于,特效模型。

在本实施例中,关于所述相机创建模块211的描述具体可参考对图2所示步骤s110的详细描述,也即,所述步骤s110可以由所述相机创建模块211执行。

所述可视域设置模块212用于获取所述游戏场景的场景相机的可视域的大小,并将所述目标相机的可视域的大小设定为所述场景相机的可视域的大小。

在本实施例中,关于所述可视域设置模块212的描述具体可参考对图2所示步骤s120的详细描述,也即,所述步骤s120可以由所述可视域设置模块212执行。

所述目标模型渲染模块213用于通过所述目标相机对所述目标模型进行渲染。

在本实施例中,关于所述目标模型渲染模块213的描述具体可参考对图2所示步骤s130的详细描述,也即,所述步骤s130可以由所述目标模型渲染模块213执行。

可选地,所述全屏渲染装置210还可以包括视场角计算模块214及视场角调整模块215。

其中,所述视场角计算模块214用于在所述目标模型渲染模块213通过所述目标相机对所述目标模型进行渲染之前,根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端200当前的游戏窗口的尺寸计算出标准视场角。

可选地,所述标准比例可以为所述游戏场景中模型的宽度与高度之比,所述游戏客户端200当前的游戏窗口的尺寸可以为所述游戏客户端200当前的游戏窗口的宽度与高度之比。

在本实施例中,关于所述视场角计算模块214的描述具体可参考对图3所示步骤s140的详细描述,也即,所述步骤s140可以由所述视场角计算模块214执行。

可选地,所述视场角计算模块214根据设定的所述游戏场景中模型的标准比例、所述标准比例对应的视场角以及所述游戏客户端200当前的游戏窗口的尺寸计算出标准视场角的方式,可以为:

通过如下计算式计算所述目标相机的视场角fov:

其中,k为所述标准比例,fov0为所述标准比例对应的视场角,h为所述目标相机的可视域的高度,w为所述目标相机的可视域的宽度。

所述视场角调整模块215用于将所述目标相机的视场角调整为所述标准视场角,使所述目标相机的可视域内显示的所述目标模型符合标准。

综上所述,本发明实施例提供一种全屏渲染方法及装置,游戏客户端200在对待渲染的目标模型进行渲染时,在该目标模型所在游戏场景中创建用于渲染该目标模型的目标相机。通过获取该游戏场景的场景相机的可视域的大小,将目标相机的可视域的大小设定为场景相机的可视域的大小。在渲染时,通过目标相机对目标模型进行渲染。通过上述设计,可以确保用户在游戏场景的任意位置都能看到该目标模型。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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