CN108236783B - 游戏场景中模拟光照的方法、装置、终端设备及存储介质 - Google Patents
游戏场景中模拟光照的方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN108236783B CN108236783B CN201810017609.8A CN201810017609A CN108236783B CN 108236783 B CN108236783 B CN 108236783B CN 201810017609 A CN201810017609 A CN 201810017609A CN 108236783 B CN108236783 B CN 108236783B
- Authority
- CN
- China
- Prior art keywords
- illumination
- texture map
- area
- light source
- illumination information
- 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.)
- Active
Links
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
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
-
- 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
-
- 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
- A63F2300/6692—Methods for processing data by generating or executing the game program for rendering three dimensional images using special effects, generally involving post-processing, e.g. blooming
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种游戏场景中模拟光照的方法,包括以下步骤:对游戏场景进行划分,得到包含至少两个子区域的区域信息表;根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表;根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图;根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。本发明还公开了一种游戏场景中模拟光照的装置、终端设备及存储介质,可以解决在固定视角的游戏场景中无法实现光线遮挡的问题,灵活模拟手电筒灯光在复杂场景中的光照方向和场景遮挡,提高用户的体验感。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种游戏场景中模拟光照的方法、装置、终端设备及存储介质。
背景技术
模拟光照是计算机图形学中非常重要的研究内容,并且涉及很多领域,比如动画、虚拟现实、游戏等领域。在游戏领域中,随着游戏行业的发展,游戏玩家对于游戏画面的要求与日俱增,因此模拟不同的光照效果是提升游戏画面品质、增强游戏代入感的重要组成部分。具体地,在现有技术中,模拟手电灯光的方式一般是使用聚光灯,通过记录聚光灯的位置、方向、颜色等信息,根据这些信息改变贴图的颜色来达到类似灯光照亮的效果。
然而,发明人在实施本发明的过程中发现,在游戏中的地图上,通常会有很多遮挡物,而利用聚光灯模拟手电电灯的方式无法实现光线遮挡,墙体后的物体也会被照亮,这种情况在3D游戏中由于游戏玩家视角原因不易被发现。但在固定视角的游戏中,由于通常使用上帝视角,因此容易被游戏玩家所发觉,降低了游戏玩家的体验感。
发明内容
针对上述问题,本发明的目的在于提供一种游戏场景中模拟光照的方法、装置、终端设备及存储介质,可以解决在固定视角的游戏中无法实现光线遮挡的问题,灵活模拟手电光在复杂场景中的光照方向和场景遮挡。
第一方面,本发明实施例提供了一种游戏场景中模拟光照的方法,包括以下步骤:
对游戏场景进行划分,得到包含至少两个子区域的区域信息表;
根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表;
根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图;
根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。
在第一方面的第一种实现方式中,所述对游戏场景进行划分,得到包含至少两个子区域的区域信息表,具体包括:
根据光源在游戏场景中的位置,确定当前的检测区域;
根据预设的区域划分规则,对所述检测区域进行划分,以生成包含至少两个子区域的区域信息表;其中,所述光源位于所述检测区域的中心位置,且所述光源对应的子区域为中心区域。
根据第一方面的第一种实现方式,在第一方面的第二种实现方式中,所述根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表,具体包括:
根据所述光源的照射范围,对所述区域信息表的预定范围内的子区域进行碰撞检测;
根据各个子区域的碰撞检测结果,生成光照区域表。
在第一方面的第三种实现方式中,所述根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图,具体包括:
根据所述光源移动后的当前位置和所述光源的初始位置,计算得到所述光源的偏移量;
根据所述偏移量和所述光照区域表,生成目标光照信息纹理图。
根据第一方面的第三种实现方式,在第一方面的第四种实现方式中,所述根据所述偏移量和所述光照区域表,生成目标光照信息纹理图,具体包括:
根据所述偏移量,对所述光照区域表进行缩放处理,得到第一光照信息纹理图;
利用移动后的所述光源的照射范围对所述第一光照信息纹理图进行视野修正,得到第二光照信息纹理图;
对所述第二光照信息纹理图进行高斯模糊处理,得到第三光照信息纹理图;
对所述第三光照信息纹理图进行边缘锐化,得到第四光照信息纹理图;
将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图。
根据第一方面的第四种实现方式,在第一方面的第五种实现方式中,当N为1的时候,所述将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图,具体包括:
根据预设的融合率f,将前一帧目标光照信息纹理图与所述第四光照信息纹理图进行亮度值插值融合;其中,融合后的目标光照信息纹理图上的每一个像素点的纹理亮度值c表示为:
c=fa+(1-f)b;
a为所述前一帧目标光照信息纹理图的对应像素点的纹理亮度值,b为融合前的所述第四光照信息纹理图的对应像素点的纹理亮度值。
在第一方面的第六种实现方式中,所述根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧,具体包括:
计算待着色的顶点所在的纹理位置;
对所述目标光照信息纹理图进行纹理采样;
在渲染时,根据纹理采样得到的alpha值改变所述纹理位置处的顶点的像素颜色,生成用于显示的画面帧。
根据上述的任一种实现方式,在第一方面的第七种实现方式中,还包括:
在每更新光照区域表后,重置计时;
当根据计时判断达到预设的时间阈值时,根据所述光源的当前位置更新光照区域表。
第二方面,本发明实施例还提供了一种游戏场景中模拟光照的方法的装置,包括:
区域划分模块,用于对游戏场景进行划分,得到包含至少两个子区域的区域信息表;
光照检测模块,用于根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表;
纹理图生成模块,用于根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图;
纹理图渲染模块,用于根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。
在第二方面的第一种实现方式中,所述区域划分模块,具体包括:
区域确定单元,用于根据光源在所述游戏场景中的位置,确定当前的检测区域;
区域划分单元,用于根据预设的区域划分规则,对所述检测区域进行划分,以生成包含至少两个子区域的区域信息表;其中,所述光源位于所述检测区域的中心位置,且所述光源对应的子区域为中心区域。
根据第二方面的第一种实现方式,在第二方面的第二种实现方式中,所述光照检测模块,具体包括:
碰撞检测单元,用于根据所述光源的照射范围,对所述区域信息表的预定范围内的子区域进行碰撞检测;
区域表生成单元,用于根据各个子区域的碰撞检测结果,生成光照区域表。
在第二方面的第三种实现方式中,所述纹理图生成模块,具体包括:
偏移量计算单元,用于根据所述光源移动后的当前位置和所述光源的初始位置,计算得到所述光源的偏移量;
纹理图生成单元,用于根据所述偏移量和所述光照区域表,生成目标光照信息纹理图。
根据第二方面的第三种实现方式,在第二方面的第四种实现方式中,所述纹理图生成单元,具体包括:
偏移缩放单元,用于根据所述偏移量,对所述光照区域表进行缩放处理,得到第一光照信息纹理图;
视野修正单元,用于利用移动后的所述光源的照射范围对所述第一光照信息纹理图进行视野修正,得到第二光照信息纹理图;
高斯模糊单元,用于对所述第二光照信息纹理图进行高斯模糊处理,得到第三光照信息纹理图;
边缘锐化单元,用于对所述第三光照信息纹理图进行边缘锐化,得到第四光照信息纹理图;
插值融合单元,用于将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图。
根据第二方面的第四种实现方式,在第二方面的第五种实现方式中,当N为1的时候,所述插值融合单元,具体包括:
融合计算单元,用于根据预设的融合率f,将前一帧目标光照信息纹理图与所述第四光照信息纹理图进行亮度值插值融合;其中,融合后的目标光照信息纹理图上的每一个像素点的纹理亮度值c表示为:
c=fa+(1-f)b;
a为所述前一帧目标光照信息纹理图的对应像素点的纹理亮度值,b为融合前的所述第四光照信息纹理图的对应像素点的纹理亮度值。
在第二方面的第六种实现方式中,所述纹理图渲染模块,具体包括:
纹理位置计算单元,用于计算待着色的顶点所在的纹理位置;
纹理采样单元,用于对所述目标光照信息纹理图进行纹理采样;
渲染单元,用于在渲染时,根据纹理采样得到的alpha值改变所述纹理位置处的顶点的像素颜色,生成用于显示的画面帧。
根据上述的任一种实现方式,在第二方面的第七种实现方式中,还包括:
计时模块,用于在每更新光照区域表后,重置计时;
更新模块,用于当根据计时判断达到预设的时间阈值时,根据所述光源的当前位置更新光照区域表。
第三方面,本发明实施例还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项所述的游戏场景中模拟光照的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任意一项所述的游戏场景中模拟光照的方法。
上述技术方案的一个技术方案具有如下优点:利用光照区域表生成光照信息纹理图,可以灵活简单地进行调整,有选择性地改变光照信息;通过更新光照区域表,可以实现当场景破坏、物体位置变化时光照遮挡的效果,具有实时性;通过对所述光照信息纹理图进行渲染,可以在固定视角的游戏场景中模拟光照方向和光线阻挡的效果,提高了用户的体验感。当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的游戏场景中模拟光照的方法的流程示意图。
图2是本发明第一实施例提供的游戏场景中模拟光照的方法的区域信息表的示意图。
图3是本发明第一实施例提供的游戏场景中模拟光照的方法的一种运行线程时序图。
图4是本发明第二实施例提供的游戏场景中模拟光照的方法的光照区域表的示意图。
图5是本发明第三实施例提供的游戏场景中模拟光照的方法的一种运行线程时序图。
图6是本发明第四实施例提供的游戏场景中模拟光照的方法的目标光照信息纹理图的生成流程图。
图7是本发明第五实施例提供的游戏场景中模拟光照的装置的一种结构示意图。
图8是本发明第五实施例提供的游戏场景中模拟光照的装置的另一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明第一实施例提供了一种游戏场景中模拟光照的方法,其可以在终端设备上执行,并包括以下步骤:
S10,对游戏场景进行划分,得到包含至少两个子区域的区域信息表。
在本实施例中,所述终端设备可以为平板电脑、个人计算机、多媒体播放器等电子终端,所述终端设备上配置有游戏引擎,所述游戏引擎是指一些已编写好的可编辑电脑游戏系统或者一些交互式实时图像应用程序的核心组件,以供使用者在此基础上开发游戏,其中所述游戏引擎包括了声音、图形、物理、人工智能等多种开发功能。
在本实施例中,可以利用游戏引擎模拟游戏场景的光照现象,例如,在固定视角的游戏场景中模拟手电筒灯光在复杂场景中的光照方向和场景遮挡等。作为示例,在固定视角的游戏场景中,由于通常使用上帝视角,因此游戏场景中的高度信息并不重要,所以只需要对游戏场景的平面进行划分。
在一种实现方式中,可通过如下步骤来划分以获得区域信息表:
对整个游戏场景根据预设的区域划分规则进行划分,从而获得包含至少两个子区域的区域信息表;其中,所述区域划分规则规定每个子区域的长和宽等区域信息。
可以理解的是,所述区域信息表是一个二维表,对应于被划分为多个子区域的游戏场景。
在另一种实现方式中,可通过如下步骤来获得区域信息表:
根据光源在游戏场景中的位置,确定当前的检测区域;
根据预设的区域划分规则,对所述检测区域进行划分,以生成包含至少两个子区域的区域信息表;其中,所述光源位于所述检测区域的中心位置,且所述光源对应的子区域为中心区域。
具体地,作为示例,在游戏场景中定位光源所在的位置,根据所述光源的位置,确定需要进行检测的区域范围。在此之前,需要预先设定区域划分规则,所述区域划分规则包括每个子区域的边长,中心区域的信息,区域信息表的大小等。作为示例,以光源的位置为中心确定当前需要进行处理的检测区域,确定子区域的边长,根据所述边长对所述检测区域进行划分,可以生成一个带有中心位置信息的空的区域信息表,如图2所示,其中,所述光源对应的子区域刚好为所述区域信息表的中心区域。可以理解的是,所述区域信息表是一个二维表,对应于被划分为多个子区域的游戏场景。当然,在本实施例中,也可以设定所述区域信息表的边长长度,例如所述边长长度=(光照距离/子区域的边长)*2,其中光照距离可以由用户根据游戏需求来自定义。
S20,根据所述光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表。
在本实施例中,当生成所述区域信息表之后,需要对所述区域信息表进行填写,进而生成一个光照区域表,其中所述光照区域表可以清楚地确定可见区域和不可见区域,即可以确定光线遮挡的区域。在本实施例中,作为示例,根据所述光源的位置,确定所述光源的照射方向和照射范围,根据所述照射范围确定所述区域信息表的预定范围,其中,所述预定范围为需要进行光照检测的范围;根据所述照射方向和所述照射范围,对所述预定范围内的每个子区域都进行光照检测,并将每个检测结果标记在对应的子区域内,例如,当所述子区域对应的地图位置上无任何遮挡物,则将对应的所述子区域的内容标记为可见区域(如用1表示);当所述子区域对应的地图位置上存在不能透光的遮挡物例如地图中的墙壁、载具等,则将对应的所述子区域的内容标记为不可见区域(如用0表示)。
S30,根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图。
在本实施例中,在游戏中,光源的位置通常不是固定不动的,比如由手电筒发出的光,游戏玩家可以控制手电筒在地图上移动,每次移动之后的光照方向和光线遮挡都会有所改变,因此每移动一次都需要生成新的光照信息纹理图。本实施例中,根据所述光源的移动以及所述光照区域表,可以生成目标光照信息纹理图。作为示例,当检测到所述光源移动到新的位置时,例如游戏中的游戏人物持手电筒进行移动,根据原来的光照区域表、所述光源的移动方向和移动距离,可以生成新的光照区域表,将所述新的光照区域表进行渲染和处理,可以生成与移动后的所述光源的位置相对应的目标光照信息纹理图。
在本实施例中,要模拟类似光照的效果,只需要对光照信息纹理进行调整,因此,所述目标光照信息纹理图可以只包含alpha值的信息,用于表示所述目标光照信息纹理图的亮度值信息,从而减少渲染压力。
S40,根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。
在本实施例中,当生成目标光照信息纹理图之后,需要对所述目标光照信息纹理图进行渲染,从而达到类似光照的效果。作为示例,将所述目标光照信息纹理图传递给Shader(着色器),根据游戏地图中需要接受灯光光照影响的物件,对所述目标光照信息纹理图上对应的区域的像素亮度进行调整,从而生成用于显示的画面。
在本实施例中,Shader Model就是“优化渲染引擎模式”。事实上,Shader(着色器)是一段能够针对游戏对象进行操作、并被GPU所执行的程序。通过这些程序,程序员就能够获得绝大部分想要的图形效果。在一个游戏场景中,一般包含多个Shader。这些Shader中有的负责对游戏对象表面进行处理,有的负责对游戏对象的纹理进行处理。早在微软发布DirectX 8时,Shader Model的概念就出现在其中了,并根据操作对象的不同被分为对顶点进行各种操作的Vertex Shader(顶点渲染引擎)和对像素进行各种操作的Pixel Shader(像素渲染引擎)。
在本发明实施例中,具体地,所述根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧,具体包括:
计算待着色的顶点所在的纹理位置;
对所述目标光照信息纹理图进行纹理采样;
根据纹理采样得到的alpha值改变所述纹理位置处的顶点的像素颜色,达到光照模拟效果。
在本实施例中,将包含光照信息的所述目标光照信息纹理图传递给Shader,并由Shader负责光照效果。对于在游戏地图中需要接受光照影响和光照遮挡的物件,需要对所述物件的Shader进行一些修改,通过采集所述目标光照信息纹理图的纹理信息,根据该纹理信息来调整像素亮度以达到类似光照的效果。作为示例,修改方法为在Vertex Shader上计算顶点所在的纹理位置,接着在Pixel Shader上进行纹理采样,并且根据采样得到的alpha值来改变对应的像素颜色,达到类似光照的效果,生成用于显示的画面帧。
在本实施例中,在游戏地图中模拟光照的渲染过程可以采用多线程的方式进行渲染。作为示例,请参阅图3,图3描述了本实施例的线程分布情况,其中主要描述了物理线程、主线程、渲染线程的工作时序状态。首先将生成区域信息表从而得到光照区域表的过程即步骤S10和步骤S20放在物理线程中进行,当游戏地图中的场景发生破坏、载具位置发生变化时,可以及时的更新光照信息。在这里,利用物理线程生成光照区域表,一方面避免了物理更新与光照信息生成不同步,另一方面也减少了主线程的计算压力。接着,在主线程即工作线程中,利用最近生成的光照区域表,对其进行处理和渲染,生成目标光照信息纹理图,即在主线程中进行步骤S30。最后,由渲染线程获取来自主线程的所述目标光照信息纹理图,并且传递给Shader进行渲染,从而生成用于显示的画面帧,即在渲染线程中进行步骤S40。
综上所述,本实施例提供了一种游戏场景中模拟光照的方法,利用光照区域表生成光照信息纹理图,可以灵活简单地进行调整,有选择性地改变光照信息;在物理线程中生成光照区域表,避免了物理更新与光照信息生成不同步,也减少了主线程的计算压力,同时提高了渲染的效率;通过对所述光照信息纹理图进行渲染,可以在游戏场景中模拟光照方向和光线阻挡的效果,增强了游戏的真实性,提高了用户的体验感。
第二个实施例:
在第一个实施例的基础上,所述根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表,具体包括:
根据所述光源的照射范围,对所述区域信息表的预定范围内的子区域进行碰撞检测;
根据各个子区域的碰撞检测结果,生成光照区域表。
在本实施例中,可以通过碰撞检测的方式对所述区域信息表进行填写,从而生成一个光照区域表,其中所述光照区域表可以清楚地确定可见区域和不可见区域,即可以确定光线遮挡的区域。在本实施例中,需要说明的是由于所述区域信息表的总范围可能超出光源的照射范围,因此可以根据光源的照射范围进行优化,超过照射范围的区域不在预定范围内则不必进行碰撞检测。作为示例,假设光源的位置在区域信息表的中心区域,从光源位置往目标位置做碰撞检测,其中,所述目标位置为预定范围内的每个子区域中心的地标位置,因此可以利用光源通过物理引擎的射线检测功能与每个目标位置进行碰撞检测,检测是否发生碰撞;当没有发生碰撞时,即对应的目标区域内没有任何阻挡物,则将所述区域信息表上与之对应的区域的内容标记为1,否则标记为0;当所述区域信息表的预定范围内的每个子区域的内容都进行标记后,就可以得到一张光照区域表,如图4所示,当然,所述光照区域表也是一张二维表。可以理解的是,物理引擎可以为bullet或physx等物理模拟计算引擎,一般3D游戏引擎中都会配置。
在本实施例中,将所述碰撞检测的过程放在物理线程中进行,不会给主线程带来太大的计算压力,通过碰撞检测生成的光照区域表是一种二维表,用户可以根据游戏需求可以简单灵活地进行调整,有选择性的改变光照信息。
通过上述方式,通过碰撞检测实时生成光照区域表,可以实现当场景破坏、载具位置变化时光照遮挡的效果,具有实时性;本方案的主要消耗是碰撞检测,对渲染的压力很少,同时将碰撞检测过程放在物理线程去进行的,不会给主线程带来太大的压力,提高了主线程的处理效率。
本发明第三实施例:
在第一个实施例的基础上,所述根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图,具体包括:
根据所述光源移动后的当前位置和所述光源的初始位置,计算得到所述光源的偏移量;
根据所述偏移量和所述光照区域表,生成目标光照信息纹理图。
在本实施例中,为了减少计算压力,可以适当减低光照信息的生成频率,当检测到光源的位置发生变化时,无需根据新的光源位置进行碰撞检测生成新的光照区域表。在本实施例中,具体地,当检测到光源的位置发生变化时,获取移动后的所述光源的当前位置和所述光源的初始位置,在这里,所述光源的初始位置为现有的光照区域表的中心位置,由此可以计算得到所述光源移动后的偏移量。在本实施例中,可以根据所述偏移量,对现有的光照区域表进行缩放处理,生成新的、更细粒度的、与所述光源的当前位置相对应的初步光照信息纹理图,通过对所述初步光照信息纹理图进行渲染和处理,可以生成与所述光源的当前位置相对应的目标光照纹理图。
在本实施例中,还包括:
在每更新光照区域表后,重置计时;
当根据计时判断达到预设的时间阈值时,根据所述光源的当前位置更新光照区域表。
在本实施例中,用户可以预先设定一个时间阈值,在达到所述时间阈值之前,当检测到光源的位置发生变化时,无需在物理线程重新生成新的光照区域表中。作为示例,可以设置一个计时器来进行计时,在每次更新光照区域表之后,即每次在物理线程中生成光照区域表之后,将所述计时器上的计时置0,然后重新开始计时。例如,如图5所示,当在物理线程中新生成一个光照区域表时,将所述计时器从0开始计时;在一段预设的时间(即所述时间阈值)内,当检测到光源的位置发生变化时,在主线程中,根据所述光源的每一次移动及所述光照区域表,生成所述光源的每一次移动对应的目标光照信息纹理图,并将每一次的目标光线信息纹理图从所述主线程传递给渲染线程进行处理;当所述计时器上的计时超过预设的时间,即达到预设的时间阈值时,则根据所述光源的当前位置,在所述物理线程中及时更新光照区域表。在本实施例中,也可以通过预先设定一个偏移阈值,当所述光源移动的偏移量达到所述偏移阈值时,则根据光源的当前位置更新光照区域表。
通过上述方式,当光源位置发生变化时,根据所述光源位置的偏移量和现有的光照区域表,可以生成所述光源移动后对应的目标光照纹理图,从而减少生成光照区域表的次数;通过适当地降低光照信息的生成频率,无需进行多次光照检测,可以降低主线程的计算压力,并且提高了渲染效率。
本发明第四实施例:
在第三个实施例的基础上,所述根据所述偏移量和所述光照区域表,生成目标光照信息纹理图,具体包括:
根据所述偏移量,对所述光照区域表进行缩放处理,得到第一光照信息纹理图;
利用移动后的所述光源的照射范围对所述第一光照信息纹理图进行视野修正,得到第二光照信息纹理图;
对所述第二光照信息纹理图进行高斯模糊处理,得到第三光照信息纹理图;
对所述第三光照信息纹理图进行边缘锐化,得到第四光照信息纹理图;
将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图。
请参阅图6,图6是目标光照信息纹理图的生成流程图。
在本实施例中,可以根据所述偏移量,对现有的光照区域表进行缩放处理,生成新的、更细粒度的、与所述光源的当前位置相对应的第一光照信息纹理图。需要所说明的是,所述第一光照信息纹理图只包含alpha值的信息,用于表示所述第一光照信息纹理图的亮度值。
在本实施例中,由于经过缩放处理后的光照区域表的范围与光源的照射范围会有所不同,有可能导致最终得到的光照信息纹理图的纹理信息不准确,因此需要根据光源的照射范围对所述第一光照信息纹理图进行视野区域修正,生成第二光照信息纹理图。
在本实施例中,由于在游戏场景的图像中,受分辨的制约,光照信息纹理图的边缘总会或多或少出现锯齿,例如呈现出三角形的锯齿,因此需要对所述第二光照信息纹理图的边缘进行柔化处理,使所述第二光照信息纹理图的边缘看起来更加平滑圆润,降低了图像的失真度。在本实施例中,可以采用高斯模糊的方式对所述第二光照信息纹理图进行处理,得到第三光照信息纹理图。
在本实施例中,经过高斯模糊处理过的所述第三光照信息纹理图会引起所述第三光照信息纹理图的边缘模糊的现象,因此需要对所述第三光照信息纹理图的边缘进行锐化处理。作为示例,由于本实施例中的光照信息纹理图只包含alpha值即亮度值,因此可以利用亮度值映射公式对所述第三光照信息纹理图中的各个像素点都做一次亮度值映射,以突出边缘,消除高斯模糊后引起的边缘模糊的现象,从而生成第四光照信息纹理图。在本实施例中,边缘锐化的映射公式比较灵活,作为示例,本映射公式为m=s+kn,其中,s为锐化偏移值,可由用户自定义一个合理的值;k为锐度,可由用户自定义一个合理的值;n为锐化前所述第三光照信息纹理图的纹理亮度值;m为锐化后的所述第四光照信息纹理图的纹理亮度值。通过上述公式,根据所述光照信息纹理图的每个像素点锐化前的纹理亮度值n,映射成锐化后对应像素点的纹理亮度值m,实现对所述光照信息纹理图的边缘锐化。
在本实施例中,为了保证游戏体验良好,当游戏玩家移动地图时,需要使得地图画面切换过渡自然,在本实施例中,可以将经过上述边缘锐化过程处理得到的所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,目的是为了消除光源移动过程中纹理图的光照信息突变引起的闪烁感。作为示例,可以根据游戏需求由用户自定义所述N的值,比如前两帧、前三帧等等,根据提取到的前N帧的目标光照信息纹理图,与所述第四信息纹理图进行亮度值插值融合,融合出新的当前时候的目标光照信息纹理图。
在本实施例中,具体地,当N为1的时候,所述将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图,具体包括:
根据预设的融合率f,将前一帧目标光照信息纹理图与所述第四光照信息纹理图进行亮度值插值融合;其中,融合后的目标光照信息纹理图上的每一个像素点的纹理亮度值c表示为:
c=fa+(1-f)b;
a为所述前一帧目标光照信息纹理图的对应像素点的纹理亮度值,b为融合前的所述第四光照信息纹理图的对应像素点的纹理亮度值。
利用上述公式,由用户预先设定好融合率f,其中,所述f为自定义的0~1的值。根据所述前一帧目标光照信息纹理图的每一个像素点的纹理亮度值a和融合前所述第四光照信息纹理图的对应像素点的纹理亮度值b,融合得到当前时候的目标光照信息纹理图上的对应像素点的纹理亮度值c,从而生成当前时候的目标光照信息纹理图。
通过上述方式,对光照区域表进行缩放、视野区域修正、高斯模糊处理以及边缘锐化,可以使得生成的目标光照信息纹理图的边缘更加圆润平滑并且使得图像清晰、边缘界限分明;利用插值融合,能够消除光源在移动过程中由于光照信息突变引起的闪烁感,避免了画面过渡不自然的问题,提高了用户的体验感。
请参阅图7,本发明第五实施例还提供了一种游戏场景中模拟光照的装置,包括:
区域划分模块10,用于对游戏场景进行划分,得到包含至少两个子区域的区域信息表;
光照检测模块20,用于根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表;
纹理图生成模块30,用于根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图;
纹理图渲染模块40,用于根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。
优选地,所述区域划分模块10,具体包括:
区域确定单元,用于根据光源在所述游戏场景中的位置,确定当前的检测区域;
区域划分单元,用于根据预设的区域划分规则,对所述检测区域进行划分,以生成包含至少两个子区域的区域信息表;其中,所述光源位于所述检测区域的中心位置,且所述光源对应的子区域为中心区域。
进一步地,所述光照检测模块20,具体包括:
碰撞检测单元,用于根据所述光源的照射范围,对所述区域信息表的预定范围内的子区域进行碰撞检测;
区域表生成单元,用于根据各个子区域的碰撞检测结果,生成光照区域表。
优选地,所述纹理图生成模块30,具体包括:
偏移量计算单元,用于根据所述光源移动后的当前位置和所述光源的初始位置,计算得到所述光源的偏移量;
纹理图生成单元,用于根据所述偏移量和所述光照区域表,生成目标光照信息纹理图。
进一步地,所述纹理图生成单元,具体包括:
偏移缩放单元,用于根据所述偏移量,对所述光照区域表进行缩放处理,得到第一光照信息纹理图;
视野修正单元,用于利用移动后的所述光源的照射范围对所述第一光照信息纹理图进行视野修正,得到第二光照信息纹理图;
高斯模糊单元,用于对所述第二光照信息纹理图进行高斯模糊处理,得到第三光照信息纹理图;
边缘锐化单元,用于对所述第三光照信息纹理图进行边缘锐化,得到第四光照信息纹理图;
插值融合单元,用于将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图。
进一步地,当N为1的时候,所述插值融合单元,具体包括:
融合计算单元,用于根据预设的融合率f,将前一帧目标光照信息纹理图与所述第四光照信息纹理图进行亮度值插值融合;其中,融合后的目标光照信息纹理图上的每一个像素点的纹理亮度值c表示为:
c=fa+(1-f)b;
a为所述前一帧目标光照信息纹理图的对应像素点的纹理亮度值,b为融合前的所述第四光照信息纹理图的对应像素点的纹理亮度值。
优选地,所述纹理图渲染模块40,具体包括:
纹理位置计算单元,用于计算待着色的顶点所在的纹理位置;
纹理采样单元,用于对所述目标光照信息纹理图进行纹理采样;
渲染单元,用于在渲染时,根据纹理采样得到的alpha值改变所述纹理位置处的顶点的像素颜色,生成用于显示的画面帧。
请参阅图8,进一步地,还包括:
计时模块50,用于在每更新光照区域表后,重置计时;
更新模块60,用于当根据计时判断达到预设的时间阈值时,根据所述光源的当前位置更新光照区域表。
本发明第六实施例还提供了一种游戏场景中模拟光照的终端设备。该实施例的游戏场景中模拟光照的终端设备包括:处理器、显示器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如游戏场景中模拟光照的程序。所述处理器执行所述计算机程序时实现上述各个游戏场景中模拟光照的方法的实施例中的步骤,例如图1所示的步骤S10。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各单元的功能,例如图7所示的区域划分模块10。
示例性的,所述计算机程序可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述游戏场景中模拟光照的终端设备中的执行过程。
所述游戏场景中模拟光照的终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述游戏场景中模拟光照的终端设备可包括,但不仅限于,处理器、存储器、显示器。本领域技术人员可以理解,所述示意图仅仅是游戏场景中模拟光照的终端设备的示例,并不构成对游戏场景中模拟光照的终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述游戏场景中模拟光照的终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述游戏场景中模拟光照的终端设备的控制中心,利用各种接口和线路连接整个所述游戏场景中模拟光照的终端设备的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述游戏场景中模拟光照的终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、文字转换功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、文字消息数据等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述游戏场景中模拟光照的终端设备集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一个计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (18)
1.一种游戏场景中模拟光照的方法,其特征在于,包括:
对游戏场景进行划分,得到包含至少两个子区域的区域信息表;
根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表;
根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图;
根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。
2.根据权利要求1所述的游戏场景中模拟光照的方法,其特征在于,所述对游戏场景进行划分,得到包含至少两个子区域的区域信息表,具体包括:
根据光源在游戏场景中的位置,确定当前的检测区域;
根据预设的区域划分规则,对所述检测区域进行划分,以生成包含至少两个子区域的区域信息表;其中,所述光源位于所述检测区域的中心位置,且所述光源对应的子区域为中心区域。
3.根据权利要求1所述的游戏场景中模拟光照的方法,其特征在于,所述根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表,具体包括:
根据所述光源的照射范围,对所述区域信息表的预定范围内的子区域进行碰撞检测;
根据各个子区域的碰撞检测结果,生成光照区域表。
4.根据权利要求1所述的游戏场景中模拟光照的方法,其特征在于,所述根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图,具体包括:
根据所述光源移动后的当前位置和所述光源的初始位置,计算得到所述光源的偏移量;
根据所述偏移量和所述光照区域表,生成目标光照信息纹理图。
5.根据权利要求4所述的游戏场景中模拟光照的方法,其特征在于,所述根据所述偏移量和所述光照区域表,生成目标光照信息纹理图,具体包括:
根据所述偏移量,对所述光照区域表进行缩放处理,得到第一光照信息纹理图;
利用移动后的所述光源的照射范围对所述第一光照信息纹理图进行视野修正,得到第二光照信息纹理图;
对所述第二光照信息纹理图进行高斯模糊处理,得到第三光照信息纹理图;
对所述第三光照信息纹理图进行边缘锐化,得到第四光照信息纹理图;
将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图。
6.根据权利要求5所述的游戏场景中模拟光照的方法,其特征在于,当N为1的时候,所述将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图,具体包括:
根据预设的融合率f,将前一帧目标光照信息纹理图与所述第四光照信息纹理图进行亮度值插值融合;其中,融合后的目标光照信息纹理图上的每一个像素点的纹理亮度值c表示为:
c=fa+(1-f)b;
a为所述前一帧目标光照信息纹理图的对应像素点的纹理亮度值,b为融合前的所述第四光照信息纹理图的对应像素点的纹理亮度值。
7.根据权利要求1所述的游戏场景中模拟光照的方法,其特征在于,所述根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧,具体包括:
计算待着色的顶点所在的纹理位置;
对所述目标光照信息纹理图进行纹理采样;
在渲染时,根据纹理采样得到的alpha值改变所述纹理位置处的顶点的像素颜色,生成用于显示的画面帧。
8.根据权利要求1至7任意一项所述的游戏场景中模拟光照的方法,其特征在于,还包括:
在每更新光照区域表后,重置计时;
当根据计时判断达到预设的时间阈值时,根据所述光源的当前位置更新光照区域表。
9.一种游戏场景中模拟光照的装置,其特征在于,包括:
区域划分模块,用于对游戏场景进行划分,得到包含至少两个子区域的区域信息表;
光照检测模块,用于根据光源在所述游戏场景中的位置对所述区域信息表的预定范围内的子区域进行光照检测,生成光照区域表;
纹理图生成模块,用于根据所述光源的移动及所述光照区域表,生成目标光照信息纹理图;
纹理图渲染模块,用于根据所述目标光照信息纹理图进行渲染,生成用于显示的画面帧。
10.根据权利要求9所述的游戏场景中模拟光照的装置,其特征在于,所述区域划分模块,具体包括:
区域确定单元,用于根据光源在所述游戏场景中的位置,确定当前的检测区域;
区域划分单元,用于根据预设的区域划分规则,对所述检测区域进行划分,以生成包含至少两个子区域的区域信息表;其中,所述光源位于所述检测区域的中心位置,且所述光源对应的子区域为中心区域。
11.根据权利要求10所述的游戏场景中模拟光照的装置,其特征在于,所述光照检测模块,具体包括:
碰撞检测单元,用于根据所述光源的照射范围,对所述区域信息表的预定范围内的子区域进行碰撞检测;
区域表生成单元,用于根据各个子区域的碰撞检测结果,生成光照区域表。
12.根据权利要求9所述的游戏场景中模拟光照的装置,其特征在于,所述纹理图生成模块,具体包括:
偏移量计算单元,用于根据所述光源移动后的当前位置和所述光源的初始位置,计算得到所述光源的偏移量;
纹理图生成单元,用于根据所述偏移量和所述光照区域表,生成目标光照信息纹理图。
13.根据权利要求12所述的游戏场景中模拟光照的装置,其特征在于,所述纹理图生成单元,具体包括:
偏移缩放单元,用于根据所述偏移量,对所述光照区域表进行缩放处理,得到第一光照信息纹理图;
视野修正单元,用于利用移动后的所述光源的照射范围对所述第一光照信息纹理图进行视野修正,得到第二光照信息纹理图;
高斯模糊单元,用于对所述第二光照信息纹理图进行高斯模糊处理,得到第三光照信息纹理图;
边缘锐化单元,用于对所述第三光照信息纹理图进行边缘锐化,得到第四光照信息纹理图;
插值融合单元,用于将所述第四光照信息纹理图与前N帧的目标光照信息纹理图进行插值融合,生成当前时候的目标光照信息纹理图。
14.根据权利要求13所述的游戏场景中模拟光照的装置,其特征在于,当N为1的时候,所述插值融合单元,具体包括:
融合计算单元,用于根据预设的融合率f,将前一帧目标光照信息纹理图与所述第四光照信息纹理图进行亮度值插值融合;其中,融合后的目标光照信息纹理图上的每一个像素点的纹理亮度值c表示为:
c=fa+(1-f)b;
a为所述前一帧目标光照信息纹理图的对应像素点的纹理亮度值,b为融合前的所述第四光照信息纹理图的对应像素点的纹理亮度值。
15.根据权利要求9所述的游戏场景中模拟光照的装置,其特征在于,所述纹理图渲染模块,具体包括:
纹理位置计算单元,用于计算待着色的顶点所在的纹理位置;
纹理采样单元,用于对所述目标光照信息纹理图进行纹理采样;
渲染单元,用于在渲染时,根据纹理采样得到的alpha值改变所述纹理位置处的顶点的像素颜色,生成用于显示的画面帧。
16.根据权利要求9至15任意一项所述的游戏场景中模拟光照的装置,其特征在于,还包括:
计时模块,用于在每更新光照区域表后,重置计时;
更新模块,用于当根据计时判断达到预设的时间阈值时,根据所述光源的当前位置更新光照区域表。
17.一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至8中任意一项所述的游戏场景中模拟光照的方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至8中任意一项所述的游戏场景中模拟光照的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810017609.8A CN108236783B (zh) | 2018-01-09 | 2018-01-09 | 游戏场景中模拟光照的方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810017609.8A CN108236783B (zh) | 2018-01-09 | 2018-01-09 | 游戏场景中模拟光照的方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108236783A CN108236783A (zh) | 2018-07-03 |
CN108236783B true CN108236783B (zh) | 2020-10-23 |
Family
ID=62699344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810017609.8A Active CN108236783B (zh) | 2018-01-09 | 2018-01-09 | 游戏场景中模拟光照的方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108236783B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109658360B (zh) * | 2018-12-25 | 2021-06-22 | 北京旷视科技有限公司 | 图像处理的方法、装置、电子设备和计算机存储介质 |
CN111260766B (zh) * | 2020-01-17 | 2024-03-15 | 网易(杭州)网络有限公司 | 虚拟光源处理方法、装置、介质及电子设备 |
CN111744199B (zh) * | 2020-06-28 | 2024-05-10 | 网易(杭州)网络有限公司 | 图像处理方法及装置、计算机可读存储介质、电子设备 |
CN111744183B (zh) * | 2020-07-02 | 2024-02-09 | 网易(杭州)网络有限公司 | 游戏中的光照采样方法、装置以及计算机设备 |
CN112215938B (zh) * | 2020-10-14 | 2024-02-23 | 网易(杭州)网络有限公司 | 游戏中反射光照数据的生成方法、装置以及计算机设备 |
CN112562051B (zh) * | 2020-11-30 | 2023-06-27 | 腾讯科技(深圳)有限公司 | 虚拟对象显示方法、装置、设备及存储介质 |
CN112546626B (zh) * | 2020-12-09 | 2024-03-26 | 杭州电魂网络科技股份有限公司 | 结合灯光的物体显示方法、装置、电子设备和存储介质 |
CN112755535B (zh) * | 2021-02-05 | 2022-07-26 | 腾讯科技(深圳)有限公司 | 光照渲染方法、装置、存储介质及计算机设备 |
CN112957731B (zh) * | 2021-03-26 | 2021-11-26 | 深圳市凉屋游戏科技有限公司 | 画面渲染方法、画面渲染装置及存储介质 |
CN113117334B (zh) * | 2021-04-14 | 2023-06-20 | 广州虎牙科技有限公司 | 目标点的可见区域的确定方法及相关装置 |
CN113313622A (zh) * | 2021-04-26 | 2021-08-27 | 广州三七互娱科技有限公司 | 虚拟场景中的光照模拟方法、装置及电子设备 |
CN114419240B (zh) * | 2022-04-01 | 2022-06-17 | 腾讯科技(深圳)有限公司 | 光照渲染方法、装置、计算机设备和存储介质 |
CN115526977B (zh) * | 2022-10-20 | 2023-07-21 | 北京畅游创想软件技术有限公司 | 游戏画面渲染方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103955590A (zh) * | 2014-05-19 | 2014-07-30 | 联钢精密科技(苏州)有限公司 | 一种多区域背光照明网点的设计方法 |
CN105005467A (zh) * | 2015-02-15 | 2015-10-28 | 北京乐动卓越信息技术有限公司 | 一种游戏引擎在移动端上显示3d动态光照的方法及系统 |
US9349214B2 (en) * | 2008-08-20 | 2016-05-24 | Take-Two Interactive Software, Inc. | Systems and methods for reproduction of shadows from multiple incident light sources |
CN106504292A (zh) * | 2016-11-03 | 2017-03-15 | 浙江大学 | 基于成像本质属性的立体颜色校正方法 |
CN106780707A (zh) * | 2016-11-17 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 模拟场景中全局光照的方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077552B (zh) * | 2012-12-27 | 2016-01-13 | 浙江大学 | 一种基于多视点视频的三维展示方法 |
CN106504315B (zh) * | 2016-11-17 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 模拟全局光照的方法和装置 |
-
2018
- 2018-01-09 CN CN201810017609.8A patent/CN108236783B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9349214B2 (en) * | 2008-08-20 | 2016-05-24 | Take-Two Interactive Software, Inc. | Systems and methods for reproduction of shadows from multiple incident light sources |
CN103955590A (zh) * | 2014-05-19 | 2014-07-30 | 联钢精密科技(苏州)有限公司 | 一种多区域背光照明网点的设计方法 |
CN105005467A (zh) * | 2015-02-15 | 2015-10-28 | 北京乐动卓越信息技术有限公司 | 一种游戏引擎在移动端上显示3d动态光照的方法及系统 |
CN106504292A (zh) * | 2016-11-03 | 2017-03-15 | 浙江大学 | 基于成像本质属性的立体颜色校正方法 |
CN106780707A (zh) * | 2016-11-17 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 模拟场景中全局光照的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108236783A (zh) | 2018-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108236783B (zh) | 游戏场景中模拟光照的方法、装置、终端设备及存储介质 | |
CN107306332B (zh) | 闭塞直接视图增强现实系统、计算设备及方法 | |
JP5531093B2 (ja) | コンピュータグラフィックスでオブジェクトにシャドウを付ける方法 | |
US20150310660A1 (en) | Computer graphics with enhanced depth effect | |
US9164723B2 (en) | Virtual lens-rendering for augmented reality lens | |
US9684997B2 (en) | Efficient rendering of volumetric elements | |
JP2010033296A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
US10891796B2 (en) | Systems and methods for augmented reality applications | |
CN109985384B (zh) | 贴图动态调整方法及装置 | |
US7508390B1 (en) | Method and system for implementing real time soft shadows using penumbra maps and occluder maps | |
CN106447756B (zh) | 用于生成用户定制的计算机生成动画的方法和系统 | |
CN111739142A (zh) | 场景渲染方法、装置、电子设备及计算机可读存储介质 | |
CN112233214B (zh) | 一种大场景的雪景渲染方法、装置、设备及存储介质 | |
US20030193496A1 (en) | Image processing system, image processing method, semiconductor device, computer program, and recording medium | |
CN112184873A (zh) | 分形图形创建方法、装置、电子设备和存储介质 | |
US8411089B2 (en) | Computer graphics method for creating differing fog effects in lighted and shadowed areas | |
CN111968214A (zh) | 一种体积云渲染方法、装置、电子设备及存储介质 | |
CN113648655B (zh) | 虚拟模型的渲染方法、装置、存储介质和电子设备 | |
EP1412922A1 (en) | A method of rendering a graphics image | |
KR102108244B1 (ko) | 이미지 처리 방법 및 장치 | |
CN113230659A (zh) | 一种游戏的显示控制方法及装置 | |
CN111260767B (zh) | 游戏中的渲染方法、渲染装置、电子设备及可读存储介质 | |
JP4513423B2 (ja) | 仮想三次元座標ポリゴンによるオブジェクト画像の表示制御方法及びこれを用いた画像表示装置 | |
CN116912387A (zh) | 纹理贴图的处理方法及装置、电子设备、存储介质 | |
CN115970275A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |