CN112190937A - 游戏中的光照处理方法、装置、设备及存储介质 - Google Patents
游戏中的光照处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112190937A CN112190937A CN202011081638.4A CN202011081638A CN112190937A CN 112190937 A CN112190937 A CN 112190937A CN 202011081638 A CN202011081638 A CN 202011081638A CN 112190937 A CN112190937 A CN 112190937A
- Authority
- CN
- China
- Prior art keywords
- target
- game
- target object
- shader
- illumination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000005286 illumination Methods 0.000 title claims abstract description 80
- 238000003672 processing method Methods 0.000 title abstract description 19
- 239000000463 material Substances 0.000 claims abstract description 71
- 238000000034 method Methods 0.000 claims abstract description 67
- 238000004364 calculation method Methods 0.000 claims abstract description 33
- 238000009877 rendering Methods 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims description 40
- 230000004044 response Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000011161 development Methods 0.000 description 5
- 239000000523 sample Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/66—Methods for processing data by generating or executing the game program for rendering three dimensional images
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Image Generation (AREA)
Abstract
本申请提供一种游戏中的光照处理方法、装置、设备及存储介质,涉及场景配置技术领域。该方法包括:响应于游戏运行操作,获取游戏场景中处于暗部的目标物件;获取所述目标物件的材质所对应的目标着色器,所述目标着色器中不包含光照计算;通过所述目标着色器对所述目标物件进行渲染。相对于现有技术,避免了暗部的场景整体处于直接光的阴影中,如果也对这些场景确定直接光,会增加游戏的运行消耗的问题。
Description
技术领域
本申请涉及场景配置技术领域,具体而言,涉及一种游戏中的光照处理方法、装置、设备及存储介质。
背景技术
在开放世界类游戏,或者室内场景会有室外自然光射入的场景里。通常会使用一盏方向光来模拟太阳,方向光也作为整个场景的主光源。由于场景中大部分烘焙是不烘焙主光源投影的,而是烘焙间接光,随后通过shadowmask实现不同距离的不同精度实时投影运算。
现有光照方案是游戏场景内全局接受方向光照射,随后通过运算确定亮部和暗部。光照贴图(Lightmap)只采集间接光照,直接光为通过实时的方向光计算确定的。对于游戏场景里比较小的物件,一般不产生光照贴图,直接接受光照探针(light probe)的影响,使其能够和周围环境获得同样的间接光信息,再确定直接光。
但是,由于游戏实际制作中,经常有大面积处于室内暗部的场景,这部分场景内的物件整体处于直接光的阴影中,如果按照现有技术也确定直接光,会增加游戏的运行消耗。
发明内容
本申请的目的在于,针对上述现有技术中的不足,提供一种游戏中的光照处理方法、装置、设备及存储介质,以解决现有技术中暗部的场景整体处于直接光的阴影中,如果也对这些场景确定直接光,会增加游戏的运行消耗的问题。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请一实施例提供了一种游戏中的光照处理方法,所述方法包括:
响应于游戏运行操作,获取游戏场景中处于暗部的目标物件;
获取所述目标物件的材质所对应的目标着色器,所述目标着色器中不包含光照计算;
通过所述目标着色器对所述目标物件进行渲染。
可选地,所述处于暗部的目标物件为所述游戏场景中预设空物件的子物件,所述预设空物件位于所述游戏场景空间坐标系的原点位置。
可选地,所述获取所述目标物件的材质所对应的目标着色器之前,还包括:
获取并复制所述目标物件的材质;
所述通过所述目标着色器对所述目标物件进行渲染,包括:
通过所述目标着色器对复制的所述目标物件的材质进行渲染。
可选地,所述响应于游戏运行操作,获取游戏场景中处于暗部的目标物件,包括:
响应于游戏运行操作,获取所述场景中的所有物件;
查找属于所述预设空物件中的所述目标物件。
第二方面,本申请另一实施例提供了一种游戏中的光照处理方法,所述方法包括:
获取游戏场景中处于暗部的目标物件;
获取所述目标物件的材质对应的目标着色器;
将所述目标着色器中的光照计算删除。
可选地,所述方法还包括:
在所述游戏场景中构建预设空物件,将所述目标物件作为所述空物件的子物件。
可选地,所述获取所述目标物件的材质对应的目标着色器,包括:
获取所述空物件下所有子物件的材质对应的目标着色器。
所述将所述目标着色器中的光照计算删除,包括:
将获取的所述空物件下所有子物件的材质对应的目标着色器中的光照计算删除。
可选地,所述在所述游戏场景中构建预设空物件,将所述目标物件作为所述空物件的子物件之后,所述方法还包括:
将所述预设空物件的位置信息归零。
第三方面,本申请另一实施例提供了一种游戏中的光照处理装置,所述装置包括:获取模块和渲染模块,其中:
所述获取模块,用于响应于游戏运行操作,获取游戏场景中处于暗部的目标物件;获取所述目标物件的材质所对应的目标着色器,所述目标着色器中不包含光照计算;
所述渲染模块,用于通过所述目标着色器对所述目标物件进行渲染。
可选地,所述获取模块,具体用于获取并复制所述目标物件的材质;
所述渲染模块,具体用于通过所述目标着色器对复制的所述目标物件的材质进行渲染。
可选地,所述装置还包括:查找模块,其中:
所述获取模块,具体用于响应于游戏运行操作,获取所述场景中的所有物件;
所述查找模块,用于查找属于所述预设空物件中的所述目标物件。
第四方面,本申请另一实施例提供了一种游戏中的光照处理装置,所述装置包括:获取模块和删除模块,其中:
所述获取模块,用于获取游戏场景中处于暗部的目标物件;获取所述目标物件的材质对应的目标着色器;
所述删除模块,用于将所述目标着色器中的光照计算删除。
可选地,所述装置还包括:构建模块,用于在所述游戏场景中构建预设空物件,将所述目标物件作为所述空物件的子物件。
可选地,所述获取模块,具体用于获取所述空物件下所有子物件的材质对应的目标着色器;
所述删除模块,具体用于将获取的所述空物件下所有子物件的材质对应的目标着色器中的光照计算删除。
第五方面,本申请另一实施例提供了一种游戏中的光照处理设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当游戏中的光照处理设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如上述第一方面或第二方面任一所述方法的步骤。
第六方面,本申请另一实施例提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述第一方面或第二方面任一所述方法的步骤。
本申请的有益效果是:采用本申请提供的游戏中的光照处理方法,由于在对目标物件进行渲染之前,需要先获取场景中处于暗部的目标物件,由于这些目标物件完全处于暗部,因此采用着色器对场景内的各物件进行渲染时,目标物件的目标着色器中不包含光照计算,渲染过程中仅需计算场景中除目标物件以外其他物件的直接光信息,并根据其他物件对应的着色器对其他物件进行渲染,这样的计算方式由于削减了暗部中物件的直接光信息的运算,所以在不影响美术效果且不增加工作成本的前提下,降低了运行消耗。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请一实施例提供的游戏中的光照处理方法的流程示意图;
图2为本申请另一实施例提供的游戏中的光照处理方法的流程示意图;
图3为本申请另一实施例提供的游戏中的光照处理方法的流程示意图;
图4为本申请另一实施例提供的游戏中的光照处理方法的流程示意图;
图5为本申请另一实施例提供的游戏中的光照处理方法的流程示意图;
图6为本申请另一实施例提供的游戏中的光照处理方法的流程示意图;
图7为本申请一实施例提供的游戏中的光照处理装置的结构示意图;
图8为本申请另一实施例提供的游戏中的光照处理装置的结构示意图;
图9为本申请另一实施例提供的游戏中的光照处理装置的结构示意图;
图10为本申请另一实施例提供的游戏中的光照处理装置的结构示意图;
图11为本申请一实施例提供的游戏中的光照处理设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
另外,本申请中使用的流程图示出了根据本申请的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本申请内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
为使本申请方案更容易被理解,下述对本申请中涉及的部分名词做出解释:
方向光Directional Light:游戏引擎中用来模拟太阳的平行光光源。
实时投影:游戏引擎中实时运算的投影,相对于烘焙投影而言,实时投影精度较高,但是消耗较大。一般使用shadowmask进行实时投影的运算,按具体远近来分级使用实时投影。
灯光探头Light probe:Unity中使用一套插值算法,用来采集多个点的光照信息,从而生成一个光照信息矩阵,所有处于此矩阵中的动态物件,都会利用其周围最近的插值运算得出一个平均的光照值,从而影响此动态物件的明暗及颜色,使其能融入光照环境中。
Shadowmask:unity中投影处理方案,由于实时投影消耗较大,如果使用烘焙投影,想要达到同等质量需要非常高精度的光照贴图,对内存压力较大。所以unity提供了shadowmask解决方案,烘焙得出一个精度相对较低的遮罩范围。然后利用灯光的距离细分,从最近使用高精度实时投影,逐渐跟进距离降低精度,直至使用shadowmask低精度的遮罩显示投影效果。能较好的优化投影效率。
layer:unity中物件分类功能,可以给物件定义一个layer层,通过分层来管理资源,并能通过layer分层实现程序判别。
着色器(Shader):Shader在图形渲染中定义了显卡渲染图形的算法,存储的是GPU的执行代码,用于告知GPU如何绘制目标像素的颜色,广泛应用于三维图形领域。通过shader代码,可以获得各种三维图形效果。
直接光(Direct light):从光源出发直接照射到物件身上的光称为直接光。
间接光(Indirect light):在真实的世界中,物件能够被间接光照所照亮。间接光照指的是,光线通常会在多个物件之间反射,最后进入摄像机,也就是说在光线进入摄像机之前,经过了不止一次的物件反射。
为了使得本领域技术人员能够使用本申请内容,可以应用于各种游戏场景内的光照处理,即先采集当前游戏场景图像,再结合本申请提供的处理方法,对场景内的各物件进行光照处理。可选地,如下结合特定应用场景:游戏中的光照处理场景为例,给出以下实施方式。本申请所涉及的游戏可以为:第一人称射击游戏(First-person shooting game,FPS)、第三人称设计游戏(Third-Personal Shooting,TPS)、生活模拟游戏(SimulationGame,SIM)或角色扮演游戏(Role-playing Game,RPG),也可以为其他类型游戏。需要说明的是,本申请实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
值得注意的是,在本申请提出之前,现有的游戏中的光照处理方法一般是使用一盏方向光来模拟太阳,方向光也作为整个场景的主光源,场景内全局的所有物件接受方向光的照射,随后再根据灯光探头对各物件的影响和方向光,通过shadowmask计算各物件对应的直接光,从而实现不同距离的不同精度的实时投影运算,但是这样的处理方式由于游戏场景内经常有大面积处于室内暗部的场景,对于这部分场景内的物件,其整体处于方向光的阴影中,即没有受到方向光的照射,因此如果按照现有技术的计算方式,对于这类处于室内暗部的物件,仍然根据方向光和灯光探头的影响共同确定该物件对应的直接光,会增加游戏的运行消耗。
为解决上述问题,现有技术还尝试使用layer来区分剔除光照对物件产生的影响,但是实际操作中,由于很多程序功能都是依赖layer来做判断的。所以Layer的设置具有唯一性,无法同时满足多个功能,所以这样的设置方式会存在多功能相互重叠的问题。
为了解决现有技术中存在的问题,本申请提供了一种游戏中的光照处理方法,可以在游戏运行后,获取场景中完全处于暗部的各目标物件,随后在计算直接光信息时,仅采用着色器对场景中除目标物件以外其他物件的直接光信息进行计算,从而削减了暗部中物件的直接光信息的运算,所以降低了运行消耗。
如下结合多个具体的应用示例,对本申请实施例所提供的一种游戏中的光照处理方法进行解释说明。图1为本申请一实施例提供的一种游戏中的光照处理方法的流程示意图,该方法应用于终端设备,例如可以为:移动手机、平板电脑、掌上电脑或可穿戴智能设备能等任意可以运行游戏应用程序的终端设备,下述方法应用于游戏运行过程中,如图1所示,该方法包括:
S101:响应于游戏运行操作,获取场景中处于暗部的目标物件。
其中,当前场景中所有完全处于暗部的物件,即完全不会受到全局方向光影响的物件,例如在生活模拟游戏中,完全处于暗部的物件可能可以为:电影院、或没有窗户的室内等;在角色扮演游戏中,完全处于暗部的物件可能可以为:幽暗的洞穴、井底、山洞、或完全封闭的密室等;不同游戏对应的预设空物件不同,在本申请的一个实施例中,预设空物件中可以包括:完全处于暗部的物件的标识。
可选地,在本申请的一个实施例中,可以通过各物件的标识来获取当前游戏场景中处于暗部的目标物件,例如可以选择各物件在游戏场景中的坐标信息为各物件对应的标识,也可以选择各物件在游戏开发过程中的唯一编号为各物件对应的标识,具体物件的标识的确定方式和包括的具体内容可以根据用户需要灵活调整,本申请在此不做任何限制。
S102:获取目标物件的材质所对应的目标着色器。
其中,目标着色器中不包含光照计算;其中,光照计算例如可以包括方向光实时光影计算等,由于目标物件是完全处于暗部的物件,不会受到全局方向光的照射,且计算直接光信息后在游戏场景中的表现和不计算直接光信息的效果基本相同,因此对此类物件不需要进行直接光信息的计算,只需对其他物件的直接光信息进行计算,从而达到减少消耗,提高性价比的效果。
示例地,在本申请的一个实施例中,例如可以通过预设脚本来获取目标物件的材质对应的目标着色器,预设脚本为研发人员预先配置好的,添加在预设空物件下的脚本,用于在检测到游戏运行操作后,剔除着色器中目标物件的方向光实时光影运算。即可以通过运行预设脚本,对目标物件的材质对应的着色器文件的材质参数进行修改,从而剔除方向光实时光影运算,并将剔除光照计算后的着色器作为该目标物件的材质对应的目标着色器。
其中,预设脚本例如可以为InShadowObject,用于剔除场景中属于预设空物件中的物件的方向光实时光影运算。在本申请的一个实施例中,预设脚本还用于复制属于预设空物件中的物件的材质。
示例地,在本申请的一个实施例中,运行预设脚本的过程中,可以先复制属于预设空物件中的物件的材质文件,随后对各目标物件对应的复制的材质文件部分进行剔除方向光实时光影运算的操作。这样的实施方式可以使得剔除操作仅针对复制后的材质信息进行修改,避免了对目标物件的材质进行修改后,影响到其他场景内的物件,造成当前游戏场景内其他物件的光照受到影响的问题,保证了修改的指向性。
这样的方式,由于在计算游戏场景中各物件的光照计算之前,先通过运行预设脚本的方式,对目标物件着色器中目标物件的方向光实时光影运算进行了剔除,使得后续光照计算的过程中,仅对场景中目标物件外的其他物件的光照进行计算,避免了目标物件的光照计算,从而避免了游戏运行的消耗。
S103:通过目标着色器对目标物件进行渲染。
通过不包含光照计算的目标着色器对目标物件进行渲染,在不影响美术效果且不增加工作成本的前提下,降低了运行消耗。
采用本申请提供的游戏中的光照处理方法,由于在对目标物件进行渲染之前,需要先获取场景中处于暗部的目标物件,由于这些目标物件完全处于暗部,因此采用着色器对场景内的各物件进行渲染时,目标物件的目标着色器中不包含光照计算,渲染过程中仅需计算场景中除目标物件以外其他物件的直接光信息,并根据其他物件对应的着色器对其他物件进行渲染,这样的计算方式由于削减了暗部中物件的直接光信息的运算,所以在不影响美术效果且不增加工作成本的前提下,降低了运行消耗。
可选地,在本申请的一个实施例中,处于暗部的目标物件为游戏场景中预设空物件的子物件,预设空物件位于游戏场景空间坐标系的原点位置。
可选地,在上述实施例的基础上,本申请实施例还可提供一种游戏中的光照处理方法,如下结合附图对上述方法进行示例说明。图2为本申请另一实施例提供的一种游戏中的光照处理方法的流程示意图,如图2所示,S102之前,该方法可包括:
S104:获取并复制目标物件的材质。
其中,由于目标物件的材质信息中可能包括共享材质信息,直接对各目标物件的材质信息进行修改,可能会造成共享材质信息也被修改,导致当前游戏场景中其他不在暗部,但也使用了该共享材质信息的物件受到影响,因此需要预设脚本需要先复制预设空物件中的各目标物件的材质信息,再对复制后的材质对应的着色器文件的材质参数进行修改,并将修改后的材质信息作为各对应目标物件的材质信息,这样的修改方式就保证了此次修改仅针对目标物件,不会影响场景中的其他物件。
示例地,在一些可能的实施例中,预设脚本还可以对预设空物件中各物件的材质信息进行检查,检查各目标物件的材质信息中是否包括共享材质信息,若包括共享材质信息,则仅对共享材质信息部分进行复制,再对复制后的共享材质对应的着色器文件的材质参数进行修改,并将修改后的材质信息作为各对应目标物件的材质信息;对于不属于共享材质信息部分的材质信息,可以直接对其对应的着色器文件的材质参数进行修改,这样的修改方式也可以保证修改仅针对目标物件,不影响场景中的其他物件。具体复制操作仅针对共享材质信息部分,还是复制整个目标物件对应的材质信息,可以根据用户的需要灵活调整,本申请对此不做任何限制。
获取各目标物件对应的材质信息并进行复制后,再对复制后的材质信息进行修改,避免了对目标物件的材质进行修改后,影响到其他场景内的物件,造成当前游戏场景内其他物件的光照受到影响的问题,从而保证了修改的指向性。
对应的,S103可包括:
S105:通过目标着色器对复制的目标物件的材质进行渲染。
可选地,在上述实施例的基础上,本申请实施例还可提供一种游戏中的光照处理方法,如下结合附图对上述方法中如何获取场景中属于预设空物件中的目标物件进行示例说明。图3为本申请另一实施例提供的一种游戏中的光照处理方法的流程示意图,如图3所示,S101可包括:
S106:响应于游戏运行操作,获取场景中的所有物件。
其中,游戏的运行操作可以为用户打开游戏应用就触发的运行操作,或用户打开游戏应用且登陆成功后才触发的运行操作,具体运行操作的确定方式可以根据需要灵活调整,并不以上述实施例给出的为限。
S107:查找属于预设空物件中的目标物件。
示例地,在本申请的一个实施例中,可以响应于游戏运行操作,触发预设脚本运行,查找预设空物件,并采集预设空物件中的各目标物件。
采用本申请提供的游戏中的光照处理方法,由于在响应到游戏的运行操作后,计算游戏场景中各物件的直接光信息之前,先通过运行预设脚本的方式,获取并复制当前游戏场景中各目标物件的材质信息,随后对复制的各目标物件的材质信息的光照计算进行了删除,不但保证了此次删除操作仅针对目标物件,不会影响游戏场景中的其他物件,并且使得后续对光照进行计算的过程中,仅对游戏场景中目标物件外的其他物件的直接光信息计算,避免了计算目标物件的直接光信息,从而在不影响美术效果且不增加工作成本的前提下,降低了游戏运行的消耗。
图4为本申请一实施例提供的一种游戏中的光照处理方法的流程示意图,该方法的执行主体为服务器或终端设备,应用于游戏开发过程中,在下述实施例中,均以执行主体为服务器进行说明,如图4所示,该方法可包括:
S201:获取游戏场景中处于暗部的目标物件。
可选地,在本申请的一个实施例中,可以根据各物件的标识,获取游戏场景中处于暗部的目标物件,例如可以为选择各物件在游戏场景中的坐标信息为各物件对应的标识,也可以选择各物件在游戏开发过程中的唯一编号为各物件对应的标识,具体物件的标识的确定方式和内容可以根据用户需要灵活调整,本申请在此不做任何限制。
S202:获取目标物件的材质对应的目标着色器。
S203:将目标着色器中的光照计算删除。
可选地,在上述实施例的基础上,本申请实施例还可提供一种游戏中的光照处理方法,如下结合附图对上述方法进行进一步说明。图5为本申请一实施例提供的一种游戏中的光照处理方法的流程示意图,如图5所示,S203之后,该方法还包括:
S204:在游戏场景中构建预设空物件,将目标物件作为空物件的子物件。
其中,一个游戏场景可以对应一个预设空物件,例如可以为:当前游戏A中包括多个游戏场景,如:主线场景和探险场景,则预设空物件可以分别为主线场景对应的预设主线空物件,和探险场景对应的预设探险空物件;也可以为整个游戏A场景仅对应一个预设空物件,该预设空物件中包括主线场景和探险场景中所有的目标物件;具体预设空物件和游戏场景的对应关系可以根据用户需要灵活设计,并不以上述实施例给出的为限。
可选地,在本申请的一个实施例中,构建完当前游戏场景对应的预设空物件后,更改该预设空物件的命名,例如可以为:更改该预设空物件的命名为inshadow,具体预设空物件的命名可以灵活调整,只需可以根据该命名在当前场景中唯一确定该预设空物件即可,本申请在此不做任何限制。
示例地,在一些可能的实施例中,将当前游戏场景中完全处于暗部的物件移动至同一预设空物件的方式可以为:可以在游戏开发的过程中,根据开发人员的拖拽动作,将当前游戏场景中完全处于暗部的所有目标物件拖拽至预设空物件中;也可以在开发过程中提供一个选择面板,选择面板上展示有当前游戏场景中的所有物件,通过获取用户在选择面板上的选择操作,确定所有被选中的物件为目标物件,并将被选中的目标物件加入至预设空物件中,具体将完全处于暗部的物件的标识移动至预设空物件的方式可以根据用户需要灵活调整,并不以上述实施例给出的为限。
其中,预设空物件用于指示不计算直接光信息的物件。将当前游戏场景中完全处于暗部的物件的标识统一移动至预设空物件中,可以使得后续直接获取该预设空物件,就可以获取到当前场景中的所有完全处于暗部的物件,无需在游戏场景中的所有物件中逐一筛选并确定完全处于暗部的物件,从而提高了处理效率。
可选地,在上述实施例的基础上,本申请实施例还可提供一种游戏中的光照处理方法,如下结合附图对上述方法进行进一步说明。图6为本申请一实施例提供的一种游戏中的光照处理方法的流程示意图,如图6所示,S203之后,该方法还包括:
S205:将预设空物件的位置信息归零。
其中,将预设空物件的位置信息归零后,不会影响预设空物件中各目标物件的本身坐标信息,开发人员可以随时对预设空物件中各物件的位置进行查看和管理;当然预设空物件的坐标也可以不归零,不归零的预设空物件不会影响使用,仅会影响预设空物件中各目标物件的坐标,造成后续不方便查看的问题,具体预设空物件的位置信息的设置方式可以根据用户需要设计,本申请在此不做任何限制。
上述方法带来的有益效果与图1-图4提供的方法的有益效果相同,在此不再赘述。
图7为本申请一实施例提供的游戏中的光照处理装置的结构示意图,如图7所示,该装置包括:获取模块301和渲染模块302,其中:
获取模块301,用于响应于游戏运行操作,获取游戏场景中处于暗部的目标物件;获取目标物件的材质所对应的目标着色器,目标着色器中不包含光照计算。
渲染模块302,用于通过目标着色器对目标物件进行渲染。
可选地,获取模块301,具体用于获取并复制目标物件的材质。
渲染模块302,具体用于通过目标着色器对复制的目标物件的材质进行渲染。
图8为本申请一实施例提供的游戏中的光照处理装置的结构示意图,如图8所示,该装置还包括:查找模块303,其中:
获取模块301,具体用于响应于游戏运行操作,获取场景中的所有物件。
查找模块303,用于查找属于预设空物件中的目标物件。
图9为本申请一实施例提供的游戏中的光照处理装置的结构示意图,如图9所示,该装置包括:获取模块401和删除模块402,其中:
获取模块401,用于获取游戏场景中处于暗部的目标物件;获取目标物件的材质对应的目标着色器;
删除模块402,用于将目标着色器中的光照计算删除。
图10为本申请一实施例提供的游戏中的光照处理装置的结构示意图,如图10所示,该装置还包括:构建模块403,用于在游戏场景中构建预设空物件,将目标物件作为空物件的子物件。
可选地,获取模块401,具体用获取空物件下所有子物件的材质对应的目标着色器。
删除模块402,具体用于将获取的空物件下所有子物件的材质对应的目标着色器中的光照计算删除。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上***(system-on-a-chip,简称SOC)的形式实现。
图11为本申请一实施例提供的游戏中的光照处理设备的结构示意图,该游戏中的光照处理设备可以集成于终端设备或者终端设备的芯片。
该游戏中的光照处理设备包括:处理器501、存储介质502和总线503。
处理器501用于存储程序,处理器501调用存储介质502存储的程序,以执行上述图1-图6对应的方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本申请还提供一种程序产品,例如存储介质,该存储介质上存储有计算机程序,包括程序,该程序在被处理器运行时执行上述方法对应的实施例。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (12)
1.一种游戏中的光照处理方法,其特征在于,所述方法包括:
响应于游戏运行操作,获取游戏场景中处于暗部的目标物件;
获取所述目标物件的材质所对应的目标着色器,所述目标着色器中不包含光照计算;
通过所述目标着色器对所述目标物件进行渲染。
2.如权利要求1所述的方法,其特征在于,所述处于暗部的目标物件为所述游戏场景中预设空物件的子物件,所述预设空物件位于所述游戏场景空间坐标系的原点位置。
3.如权利要求2所述的方法,其特征在于,所述获取所述目标物件的材质所对应的目标着色器之前,还包括:
获取并复制所述目标物件的材质;
所述通过所述目标着色器对所述目标物件进行渲染,包括:
通过所述目标着色器对复制的所述目标物件的材质进行渲染。
4.如权利要求2所述的方法,其特征在于,所述响应于游戏运行操作,获取游戏场景中处于暗部的目标物件,包括:
响应于游戏运行操作,获取所述游戏场景中的所有物件;
从所述游戏场景中的所有物件中查找属于所述预设空物件中的所述目标物件。
5.一种游戏中的光照处理方法,其特征在于,所述方法包括:
获取游戏场景中处于暗部的目标物件;
获取所述目标物件的材质对应的目标着色器;
将所述目标着色器中的光照计算删除。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
在所述游戏场景中构建空物件,将所述目标物件作为所述空物件的子物件。
7.如权利要求6所述的方法,其特征在于,所述获取所述目标物件的材质对应的目标着色器,包括:
获取所述空物件下所有子物件的材质对应的目标着色器;
所述将所述目标着色器中的光照计算删除,包括:
将获取的所述空物件下所有子物件的材质对应的目标着色器中的光照计算删除。
8.如权利要求6所述的方法,其特征在于,所述在所述游戏场景中构建空物件,将所述目标物件作为所述空物件的子物件之后,所述方法还包括:
将所述空物件的位置信息归零。
9.一种游戏中的光照处理装置,其特征在于,所述装置包括获取模块和渲染模块,其中:
所述获取模块,用于响应于游戏运行操作,获取游戏场景中处于暗部的目标物件;获取所述目标物件的材质所对应的目标着色器,所述目标着色器中不包含光照计算;
所述渲染模块,用于通过所述目标着色器对所述目标物件进行渲染。
10.一种游戏中的光照处理装置,其特征在于,所述装置包括:获取模块和删除模块,其中:
所述获取模块,用于获取游戏场景中处于暗部的目标物件;获取所述目标物件的材质对应的目标着色器;
所述删除模块,用于将所述目标着色器中的光照计算删除。
11.一种游戏中的光照处理设备,其特征在于,所述设备包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述游戏中的光照处理设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行上述权利要求1-4或5-8任一项所述的方法。
12.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述权利要求1-4或5-8任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011081638.4A CN112190937A (zh) | 2020-10-10 | 2020-10-10 | 游戏中的光照处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011081638.4A CN112190937A (zh) | 2020-10-10 | 2020-10-10 | 游戏中的光照处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112190937A true CN112190937A (zh) | 2021-01-08 |
Family
ID=74014330
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011081638.4A Pending CN112190937A (zh) | 2020-10-10 | 2020-10-10 | 游戏中的光照处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112190937A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113262480A (zh) * | 2021-05-13 | 2021-08-17 | 网易(杭州)网络有限公司 | 三维场景的烘焙方法和装置 |
CN113313622A (zh) * | 2021-04-26 | 2021-08-27 | 广州三七互娱科技有限公司 | 虚拟场景中的光照模拟方法、装置及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009117691A2 (en) * | 2008-03-21 | 2009-09-24 | Caustic Graphics, Inc | Architectures for parallelized intersection testing and shading for ray-tracing rendering |
WO2018028669A1 (zh) * | 2016-08-12 | 2018-02-15 | 腾讯科技(深圳)有限公司 | 3d场景中的光照处理方法、终端、服务器及存储介质 |
CN110443877A (zh) * | 2019-08-06 | 2019-11-12 | 网易(杭州)网络有限公司 | 模型渲染的方法、装置、终端设备和存储介质 |
CN110473282A (zh) * | 2019-08-22 | 2019-11-19 | 腾讯科技(深圳)有限公司 | 物体模型的染色处理方法、装置、计算机设备和存储介质 |
-
2020
- 2020-10-10 CN CN202011081638.4A patent/CN112190937A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009117691A2 (en) * | 2008-03-21 | 2009-09-24 | Caustic Graphics, Inc | Architectures for parallelized intersection testing and shading for ray-tracing rendering |
WO2018028669A1 (zh) * | 2016-08-12 | 2018-02-15 | 腾讯科技(深圳)有限公司 | 3d场景中的光照处理方法、终端、服务器及存储介质 |
CN110443877A (zh) * | 2019-08-06 | 2019-11-12 | 网易(杭州)网络有限公司 | 模型渲染的方法、装置、终端设备和存储介质 |
CN110473282A (zh) * | 2019-08-22 | 2019-11-19 | 腾讯科技(深圳)有限公司 | 物体模型的染色处理方法、装置、计算机设备和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113313622A (zh) * | 2021-04-26 | 2021-08-27 | 广州三七互娱科技有限公司 | 虚拟场景中的光照模拟方法、装置及电子设备 |
CN113262480A (zh) * | 2021-05-13 | 2021-08-17 | 网易(杭州)网络有限公司 | 三维场景的烘焙方法和装置 |
CN113262480B (zh) * | 2021-05-13 | 2024-06-21 | 网易(杭州)网络有限公司 | 三维场景的烘焙方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109603155B (zh) | 合并贴图的获取方法、装置、存储介质、处理器及终端 | |
US20210042991A1 (en) | Object loading method and apparatus, storage medium, and electronic device | |
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
CN112933597B (zh) | 图像处理方法、装置、计算机设备及存储介质 | |
CN110533755B (zh) | 一种场景渲染的方法以及相关装置 | |
CN112755535B (zh) | 光照渲染方法、装置、存储介质及计算机设备 | |
CN113674389B (zh) | 场景渲染方法、装置、电子设备及存储介质 | |
CN112169324A (zh) | 游戏场景的渲染方法、装置及设备 | |
WO2023185262A1 (zh) | 光照渲染方法、装置、计算机设备和存储介质 | |
CN112884874B (zh) | 在虚拟模型上贴花的方法、装置、设备及介质 | |
CN109087369A (zh) | 虚拟对象显示方法、装置、电子装置及存储介质 | |
CN112190937A (zh) | 游戏中的光照处理方法、装置、设备及存储介质 | |
CN116310061B (zh) | 一种数据的处理方法、装置以及存储介质 | |
CN111784817B (zh) | 阴影的展示方法和装置、存储介质、电子装置 | |
WO2023098358A1 (zh) | 一种模型渲染方法、装置、计算机设备及存储介质 | |
CN112587921A (zh) | 模型处理方法和装置、电子设备和存储介质 | |
CN111340926A (zh) | 一种渲染方法及装置 | |
CN114742931A (zh) | 渲染图像的方法、装置、电子设备及存储介质 | |
CN109544671B (zh) | 一种基于屏幕空间的视频在三维场景中投影映射方法 | |
CN117218273A (zh) | 图像渲染方法以及装置 | |
CN111950057A (zh) | 一种建筑信息模型bim的加载方法及装置 | |
CN116402931A (zh) | 体积渲染方法、装置、计算机设备和计算机可读存储介质 | |
CN112473135B (zh) | 移动游戏的实时光照模拟方法、装置、设备及存储介质 | |
CN114832375A (zh) | 环境光遮蔽处理方法、装置及设备 | |
CN110827400B (zh) | 三维场景中对象的模型生成方法、装置以及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |