CN112973121B - 反射效果生成方法及装置、存储介质、计算机设备 - Google Patents

反射效果生成方法及装置、存储介质、计算机设备 Download PDF

Info

Publication number
CN112973121B
CN112973121B CN202110484112.9A CN202110484112A CN112973121B CN 112973121 B CN112973121 B CN 112973121B CN 202110484112 A CN202110484112 A CN 202110484112A CN 112973121 B CN112973121 B CN 112973121B
Authority
CN
China
Prior art keywords
reflection
point
reflected
value
static
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
Application number
CN202110484112.9A
Other languages
English (en)
Other versions
CN112973121A (zh
Inventor
柴毅哲
殷龙飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Perfect World Network Technology Co Ltd
Original Assignee
Chengdu Perfect World Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Perfect World Network Technology Co Ltd filed Critical Chengdu Perfect World Network Technology Co Ltd
Priority to CN202110484112.9A priority Critical patent/CN112973121B/zh
Publication of CN112973121A publication Critical patent/CN112973121A/zh
Application granted granted Critical
Publication of CN112973121B publication Critical patent/CN112973121B/zh
Priority to PCT/CN2021/133656 priority patent/WO2022227553A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/538Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for performing operations on behalf of the game client, e.g. rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种反射效果生成方法及装置、存储介质、计算机设备,该方法包括:基于反射点的法线方向向量以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;根据所述第一深度值以及所述反射点对应的第二深度值的大小关系,确定所述反射点对应的目标被反射对象类型,并依据所述目标被反射对象类型对应的目标被反射对象的颜色值确定所述反射点的反射结果,其中,被反射对象类型包括静态被反射对象类型和动态被反射对象类型。

Description

反射效果生成方法及装置、存储介质、计算机设备
技术领域
本申请涉及图像处理技术领域,尤其是涉及到一种反射效果生成方法及装置、存储介质、计算机设备。
背景技术
游戏中很多场景都需要反射效果,比如:水面、光滑的地板、锃亮的金属表面、镜子等。现有实现反射效果的方法主要有三种:反射捕获(reflection capture)、平面反射(planar reflection)、屏幕空间反射(screen space reflection)。反射捕获是在一个特定位置捕获一张静态立方体贴图,通过该静态立方体贴图计算出反射效果,该方法预计算,效率高,但是效果不准确,作用于局部,且无法实时计算;平面反射一般只作用于平面物体,效果最好,但是效率也最差,一般不适用手机平台;屏幕空间反射,能实时反射屏幕可见的所有对象,且效果精准,但噪点多,raymarch(光线步进)开销大,只能渲染屏幕可见的对象。目前反射效果计算方法难以适应越来越高的移动化游戏需求。
发明内容
有鉴于此,本申请提供了一种反射效果生成方法及装置、存储介质、计算机设备。
根据本申请的一个方面,提供了一种反射效果生成方法,应用于游戏客户端,包括:
基于反射点的法线方向向量以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;
以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;
根据所述第一深度值以及所述反射点对应的第二深度值的大小关系,确定所述反射点对应的目标被反射对象类型,并依据所述目标被反射对象类型对应的目标被反射对象的颜色值确定所述反射点的反射结果,其中,被反射对象类型包括静态被反射对象类型和动态被反射对象类型。
可选地,所述所述静态被反射对象类型包括与所述反射点所在的反射面之间的高度差大于预设第一阈值的被反射对象,静态被反射对象在所述反射面上的反射结果固定,所述动态被反射对象类型包括与所述反射面之间的高度差小于预设第二阈值的被反射对象。
可选地,所述根据所述第一深度值以及所述反射点对应的第二深度值的大小关系,确定所述反射点对应的目标被反射对象类型,并依据所述目标被反射对象类型对应的被反射对象的颜色值确定所述反射点的反射结果,具体包括:
若所述第一深度值大于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型和所述动态被反射对象类型,获取所述被反射点的颜色值作为动态被反射对象的动态反射值,并对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果。
可选地,所述方法还包括:
若所述第一深度值小于或等于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型,获取所述静态被反射对象的静态反射值作为所述反射点的反射结果。
可选地,所述对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果,具体包括:
依据预设融合系数blendvalue,对所述动态反射值以及所述静态反射值进行融合确定所述反射点的反射结果,其中,所述反射结果=所述动态反射值*blendvalue+所述静态反射值*(1-blendvalue)。
可选地,所述第一深度值依据所述屏幕空间UV值采样游戏场景深度图确定,所述第二深度值依据所述反射点的世界坐标确定,所述被反射点的颜色值依据所述屏幕空间UV值采样游戏场景颜色图确定。
可选地,所述以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点之前,所述方法还包括:
获取所述游戏虚拟相机的视角数据,并依据所述视角数据确定对应的所述预设步进距离。
可选地,所述以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,具体包括:
从所述反射点的世界坐标位置出发,沿所述反射方向步进所述预设步进距离,得到所述被反射点的世界坐标位置;
根据所述被反射点的世界坐标位置以及世界空间到裁剪空间的转换矩阵,计算所述被反射点的裁剪空间坐标位置,并将所述被反射点的裁剪空间坐标位置映射到屏幕空间,确定所述屏幕空间UV值。
根据本申请的另一方面,提供了一种反射效果生成装置,应用于游戏客户端,包括:
反射方向向量确定模块,用于基于反射点的法线方向向量以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;
深度值计算模块,用于以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;
反射结果生成模块,用于根据所述第一深度值以及所述反射点对应的第二深度值的大小关系,确定所述反射点对应的目标被反射对象类型,并依据所述目标被反射对象类型对应的目标被反射对象的颜色值确定所述反射点的反射结果,其中,被反射对象类型包括静态被反射对象类型和动态被反射对象类型。
可选地,所述静态被反射对象类型包括与所述反射点所在的反射面之间的高度差大于预设第一阈值的被反射对象,静态被反射对象在所述反射面上的反射结果固定,所述动态被反射对象类型包括与所述反射面之间的高度差小于预设第二阈值的被反射对象。
可选地,所述反射结果生成模块,具体用于:
若所述第一深度值大于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型和所述动态被反射对象类型,获取所述被反射点的颜色值作为动态被反射对象的动态反射值,并对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果。
可选地,所述反射结果生成模块,还用于:
若所述第一深度值小于或等于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型,获取所述静态被反射对象的静态反射值作为所述反射点的反射结果。
可选地,所述反射结果生成模块,还用于:
依据预设融合系数blendvalue,对所述动态反射值以及所述静态反射值进行融合确定所述反射点的反射结果,其中,所述反射结果=所述动态反射值*blendvalue+所述静态反射值*(1-blendvalue)。
可选地,所述第一深度值依据所述屏幕空间UV值采样游戏场景深度图确定,所述第二深度值依据所述反射点的世界坐标确定,所述被反射点的颜色值依据所述屏幕空间UV值采样游戏场景颜色图确定。
可选地,所述装置还包括:
步进距离确定模块,用于所述以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点之前,获取所述游戏虚拟相机的视角数据,并依据所述视角数据确定对应的所述预设步进距离。
可选地,所述深度值计算模块,具体用于:
从所述反射点的世界坐标位置出发,沿所述反射方向步进所述预设步进距离,得到所述被反射点的世界坐标位置;
根据所述被反射点的世界坐标位置以及世界空间到裁剪空间的转换矩阵,计算所述被反射点的裁剪空间坐标位置,并将所述被反射点的裁剪空间坐标位置映射到屏幕空间,确定所述屏幕空间UV值。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述反射效果生成方法。
依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述反射效果生成方法。
借由上述技术方案,本申请提供的一种反射效果生成方法及装置、存储介质、计算机设备,根据反射点的法线方向向量和相机方向向量确定反射点的反射方向向量,从反射点出发向反射方向上步进定长距离得到被反射点,根据被反射点的位置确定被反射点的屏幕空间UV值,并计算被反射点的第一深度值,从而根据被反射点的第一深度值与反射点的第二深度值的大小,确定虚拟相机视角下反射点对应的被反射对象,进而依据被反射对象的颜色值确定反射点的反射结果。本申请实施例相比于现有技术中多次步进的方式,只做一次步进,结合深度判断确定被反射对象,从而计算反射点对被反射对象的反射结果,反射结果连续、无噪点和栅格、计算消耗降低,能够满足更多游戏终端设备的需求,且反射点对应的被反射对象不再局限于屏幕空间范围内,范围更广,反射效果更加真实、生动。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的一种反射效果生成方法的流程示意图;
图2示出了本申请实施例提供的一种反射效果生成装置的结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种反射效果生成方法,如图1所示,应用于游戏客户端,该方法包括:
步骤102,基于反射点的法线方向向量以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;
步骤104,以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;
步骤106,根据所述第一深度值以及所述反射点对应的第二深度值的大小关系,确定所述反射点对应的目标被反射对象类型,并依据所述目标被反射对象类型对应的目标被反射对象的颜色值确定所述反射点的反射结果,其中,被反射对象类型包括静态被反射对象类型和动态被反射对象类型。
本申请实施例可以应用于游戏客户端中,游戏客户端可以运行游戏程序,游戏中很多场景都需要反射效果,比如,水面、光滑的地板、锃亮的金属表面、镜子等等,游戏运行过程中,在屏幕空间内包括需要展现反射效果的反射面时,可以运行上述方法确定反射结果,以实现游戏中的反射效果,本申请实施例提供的反射效果生成方法可以看做是一种对屏幕空间反射的改进方法。首先,可参照屏幕空间反射方法,基于游戏中虚拟相机所在方向对应的方向向量以及当前像素点(即反射点)的法线方向向量,计算出当前像素点的反射方向向量,以确定反射点的反射方向,其次,从反射点的位置出发沿着反射方向步进定长距离即预设步进距离,得到被反射点的位置,并计算反射点对应的屏幕空间UV值,以及基于该屏幕空间UV值确定被反射点对应的第一深度值,最后,根据被反射点的深度值与反射点的深度值,确定反射点的反射结果,在具体应用场景中,可以通过比较第一深度值与第二深度值的大小关系,确定反射点对应的被反射对象,从而基于被反射对象的颜色值来确定反射点的反射颜色值,也即确定反射点的反射结果,其中,被反射对象具体可以包括反射效果相对固定的静态被反射对象,例如湖面对天空的反射,被反射对象还可以包括反射效果随虚拟相机视角容易产生变化的动态被反射对象,例如湖面对湖面上小船的反射,随虚拟相机视角的变化会呈现出的反射效果变化较大。在实际应用场景中,若反射点只需要展示出对天空的反射效果,则可以直接利用预先确定好的天空的反射结果作为反射点的反射结果,若反射点不仅需要展示对天空的反射效果还需要展示对小船的反射效果,则可以对天空反射颜色值和小船反射颜色值进行混合,以得到反射点的反射结果。该方法只做一次步进,相比于现有技术中屏幕空间反射的多次步进方式,反射结果连续,没有噪点和栅格,反射计算消耗大大减小,并结合深度判断确定被反射对象从而确定反射点对被反射对象的反射结果,使得反射效果不再局限于屏幕空间范围内的对象,反射效果更加真实、生动。
通过应用本实施例的技术方案,根据反射点的法线方向向量和相机方向向量确定反射点的反射方向向量,从反射点出发向反射方向上步进定长距离得到被反射点,根据被反射点的位置确定被反射点的屏幕空间UV值,并计算被反射点的第一深度值,从而根据被反射点的第一深度值与反射点的第二深度值的大小,确定虚拟相机视角下反射点对应的被反射对象,进而依据被反射对象的颜色值确定反射点的反射结果。本申请实施例相比于现有技术中多次步进的方式,只做一次步进,结合深度判断确定被反射对象,从而计算反射点对被反射对象的反射结果,反射结果连续、无噪点和栅格、计算消耗降低,能够满足更多游戏终端设备的需求,且反射点对应的被反射对象不再局限于屏幕空间范围内,范围更广,反射效果更加真实、丰富、生动。
在本申请实施例中,可选地,所述静态被反射对象类型包括与所述反射点所在的反射面之间的高度差大于预设第一阈值的被反射对象,静态被反射对象在所述反射面上的反射结果固定,所述动态被反射对象类型包括与所述反射面之间的高度差小于预设第二阈值的被反射对象。
在该实施例中,静态被反射对象具体可以包括与反射点所在反射面接近平行、且距离大于预设第一阈值的对象,例如反射面为湖面、静态被反射对象为天空,反射面为室内的地面、静态被反射对象为棚顶等等,另外由于静态被反射对象在反射面上的反射效果相对固定,因此可以预先设定好静态被反射对象在反射面上各反射点的反射结果,而动态被反射对象一般为与反射面距离较近的对象,动态被反射对象在反射点的反射结果需要实时计算。
在本申请实施例中,可选地,步骤104具体可以包括:从所述反射点的世界坐标位置出发,沿反射方向步进所述预设步进距离,得到所述被反射点的世界坐标位置;根据所述被反射点的世界坐标位置以及世界空间到裁剪空间的转换矩阵,计算所述被反射点的裁剪空间坐标位置,并将所述被反射点的裁剪空间坐标位置映射到屏幕空间,确定所述屏幕空间UV值。
在上述实施例中,被反射点可以参照传统屏幕空间反射的步进方式来获取,在世界坐标系下,从反射点的世界坐标位置出发,沿反射方向步进一次,步进长度为预设步进距离,得到被反射点的世界坐标位置,然后对被反射点的世界坐标位置进行观察变换,将被反射点的世界坐标位置变化到观察空间中得到观察空间坐标位置,接着基于裁剪矩阵将被反射点从观察空间变化到裁剪空间得到被反射点的裁剪空间坐标位置,最后将被反射点的裁剪空间坐标位置投影到屏幕空间中,得到被反射点在屏幕空间中的二维的坐标位置,并结合屏幕的长宽信息得到被反射点的屏幕空间UV值。进一步,可以根据屏幕空间UV值采样深度图,得到被反射点对应的第一深度值。
在本申请实施例中,可选地,步骤106具体可以包括:
步骤106-1,若所述第一深度值大于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型和所述动态被反射对象类型,获取所述被反射点的颜色值作为动态被反射对象的动态反射值,并对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果;所述被反射点的颜色值依据所述屏幕空间UV值采样游戏场景颜色图确定。
步骤106-2,若所述第一深度值小于或等于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型,获取所述静态被反射对象的静态反射值作为所述反射点的反射结果。
在上述实施例中,通过被反射点对应的第一深度值和反射点对应的第二深度值的大小关系,来确定反射点对应的被反射对象的属性。可选地,所述第一深度值依据所述屏幕空间UV值采样游戏场景深度图确定,所述第二深度值依据所述反射点的世界坐标确定。在真实的反射现象中,反射点所反射的被反射对象应为反射点相对于人眼前方的对象,在被反射点的第一深度值大于反射点的第二深度值时,说明被反射点的深度大于反射点的深度,即被反射点对应的被反射对象相比于反射点来说在相距游戏虚拟相机更远的位置、被反射到的对象在反射点之后,由于被反射点是以反射点为原点步进一次得到的,被反射点对应的被反射对象为距离反射点一定范围之内的动态被反射对象,通过采集被反射点对应的颜色值可以获得该动态被反射对象的颜色值,另外,为使反射效果更加丰富、真实,反射点除了展现动态被反射对象的反射效果外,还可以展现距离反射点较远的静态被反射对象的反射效果,在一些应用场景中,反射点可以为湖面上的一点,静态被反射对象可以为天空,静态被反射对象在反射点上的反射结果是相对固定的,在被反射对象包括静态被反射对象和动态被反射对象的情况下,可以将静态被反射对象与动态被反射对象的反射结果进行混合,得到反射点的反射结果,比如被反射点颜色:color,天空颜色:colorsky,混合系数:blendvalue,那么,混合后颜色即反射点的反射结果retcolor = color*blendvalue +colorsky*(1-blendvalue),其中预设融合系数具体可以依据游戏虚拟相机的视角数据确定。
而在被反射点的第一深度值小于或等于反射点的第二深度值时,说明被反射点的深度小于或等于反射点的深度,即被反射点在游戏虚拟相机和反射点之间,在真实反射中,反射到的对象应是相对于反射点前方的对象,因此该反射点对应的被反射对象不包含动态被反射对象,此时可以将静态被反射对象的反射结果直接作为反射点的反射结果。
在本申请实施例中,可选地,步骤104之前还可以包括:
步骤103,获取所述游戏虚拟相机的视角数据,并依据所述视角数据确定对应的所述预设步进距离。
本申请实施例中的预设步进距离可以根据游戏虚拟相机的视角确定,对于任一游戏场景中的任一视角可以预先设定多个步进距离,分别依据多个步进距离进行步进确定被反射点,并确定反射点的反射效果,根据反射效果选择一个或多个步进距离,从而确定该视角下的预设步进距离,按照相同的方法确定不同游戏场景在不同视角下的预设步进距离。以便在运行本申请实施例的方法时可以直接根据游戏场景、虚拟相机视角数据来选择合适的预设步进距离。
进一步的,作为图1方法的具体实现,本申请实施例提供了一种反射效果生成装置,如图2所示,该装置包括:
反射方向确定模块,用于基于反射点的法线方向以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;
深度值计算模块,用于以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;
反射结果生成模块,用于根据所述第一深度值以及所述反射点对应的第二深度值的大小关系,确定所述反射点对应的目标被反射对象类型,并依据所述目标被反射对象类型对应的目标被反射对象的颜色值确定所述反射点的反射结果,其中,被反射对象类型包括静态被反射对象类型和动态被反射对象类型。
可选地,所述静态被反射对象类型包括与所述反射点所在的反射面之间的高度差大于预设第一阈值的被反射对象,静态被反射对象在所述反射面上的反射结果固定,所述动态被反射对象类型包括与所述反射面之间的高度差小于预设第二阈值的被反射对象。
可选地,所述反射结果生成模块,具体用于:
若所述第一深度值大于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型和所述动态被反射对象类型,获取所述被反射点的颜色值作为动态被反射对象的动态反射值,并对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果。
可选地,所述反射结果生成模块,还用于:
若所述第一深度值小于或等于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型,获取所述静态被反射对象的静态反射值作为所述反射点的反射结果。
可选地,所述反射结果生成模块,还用于:
依据预设融合系数blendvalue,对所述动态反射值以及所述静态反射值进行融合确定所述反射点的反射结果,其中,所述反射结果=所述动态反射值*blendvalue+所述静态反射值*(1-blendvalue)。
可选地,所述第一深度值依据所述屏幕空间UV值采样游戏场景深度图确定,所述第二深度值依据所述反射点的世界坐标确定,所述被反射点的颜色值依据所述屏幕空间UV值采样游戏场景颜色图确定。
可选地,所述装置还包括:
步进距离确定模块,用于所述以所述反射点为原点,获取所述反射方向上与所述反射点相距预设步进距离的被反射点之前,获取所述游戏虚拟相机的视角数据,并依据所述视角数据确定对应的所述预设步进距离。
可选地,所述深度值计算模块,具体用于:
从所述反射点的世界坐标位置出发,沿所述反射方向步进所述预设步进距离,得到所述被反射点的世界坐标位置;
根据所述被反射点的世界坐标位置以及世界空间到裁剪空间的转换矩阵,计算所述被反射点的裁剪空间坐标位置,并将所述被反射点的裁剪空间坐标位置映射到屏幕空间,确定所述屏幕空间UV值。
需要说明的是,本申请实施例提供的一种反射效果生成装置所涉及各功能单元的其他相应描述,可以参考图1方法中的对应描述,在此不再赘述。
基于上述如图1所示方法,相应的,本申请实施例还提供了一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述如图1所示的反射效果生成方法。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1所示的方法,以及图2所示的虚拟装置实施例,为了实现上述目的,本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1所示的反射效果生成方法。
可选地,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如蓝牙接口、WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种计算机设备结构并不构成对该计算机设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理和保存计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与该实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现根据反射点的法线方向向量和相机方向向量确定反射点的反射方向向量,从反射点出发向反射方向上步进定长距离得到被反射点,根据被反射点的位置确定被反射点的屏幕空间UV值,并计算被反射点的第一深度值,从而根据被反射点的第一深度值与反射点的第二深度值的大小,确定虚拟相机视角下反射点对应的被反射对象,进而依据被反射对象的颜色值确定反射点的反射结果。本申请实施例相比于现有技术中多次步进的方式,只做一次步进,结合深度判断确定被反射对象,从而计算反射点对被反射对象的反射结果,反射结果连续、无噪点和栅格、计算消耗降低,能够满足更多游戏终端设备的需求,且反射点对应的被反射对象不再局限于屏幕空间范围内,范围更广,反射效果更加真实、丰富、生动。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

Claims (9)

1.一种反射效果生成方法,应用于游戏客户端,其特征在于,包括:
基于反射点的法线方向向量以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;
以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;
若所述第一深度值大于所述反射点对应的第二深度值,则确定所述反射点对应的目标被反射对象类型包括静态被反射对象类型和动态被反射对象类型,获取所述被反射点的颜色值作为动态被反射对象的动态反射值,并对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果;
若所述第一深度值小于或等于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型,获取所述静态被反射对象的静态反射值作为所述反射点的反射结果。
2.根据权利要求1所述的方法,其特征在于,所述静态被反射对象类型包括与所述反射点所在的反射面之间的高度差大于预设第一阈值的被反射对象,静态被反射对象在所述反射面上的反射结果固定,所述动态被反射对象类型包括与所述反射面之间的高度差小于预设第二阈值的被反射对象。
3.根据权利要求1所述的方法,其特征在于,所述对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果,具体包括:
依据预设融合系数blendvalue,对所述动态反射值以及所述静态反射值进行融合确定所述反射点的反射结果,其中,所述反射结果=所述动态反射值*blendvalue+所述静态反射值*(1-blendvalue)。
4.根据权利要求1所述的方法,其特征在于,
所述第一深度值依据所述屏幕空间UV值采样游戏场景深度图确定,所述第二深度值依据所述反射点的世界坐标确定,所述被反射点的颜色值依据所述屏幕空间UV值采样游戏场景颜色图确定。
5.根据权利要求1所述的方法,其特征在于,所述以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点之前,所述方法还包括:
获取所述游戏虚拟相机的视角数据,并依据所述视角数据确定对应的所述预设步进距离。
6.根据权利要求1所述的方法,其特征在于,所述以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,具体包括:
从所述反射点的世界坐标位置出发,沿所述反射方向步进所述预设步进距离,得到所述被反射点的世界坐标位置;
根据所述被反射点的世界坐标位置以及世界空间到裁剪空间的转换矩阵,计算所述被反射点的裁剪空间坐标位置,并将所述被反射点的裁剪空间坐标位置映射到屏幕空间,确定所述屏幕空间UV值。
7.一种反射效果生成装置,应用于游戏客户端,其特征在于,包括:
反射方向向量确定模块,用于基于反射点的法线方向向量以及游戏虚拟相机的相机方向向量,确定所述反射点的反射方向向量;
深度值计算模块,用于以所述反射点为原点,获取反射方向上与所述反射点相距预设步进距离的被反射点,计算所述被反射点对应的屏幕空间UV值,并依据所述屏幕空间UV值确定所述被反射点对应的第一深度值;
反射结果生成模块,用于若所述第一深度值大于所述反射点对应的第二深度值,则确定所述反射点对应的目标被反射对象类型包括静态被反射对象类型和动态被反射对象类型,获取所述被反射点的颜色值作为动态被反射对象的动态反射值,并对所述动态反射值以及静态被反射对象对应的静态反射值进行融合确定所述反射点的反射结果;若所述第一深度值小于或等于所述第二深度值,则确定所述反射点对应的目标被反射对象类型包括所述静态被反射对象类型,获取所述静态被反射对象的静态反射值作为所述反射点的反射结果。
8.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法。
9.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法。
CN202110484112.9A 2021-04-30 2021-04-30 反射效果生成方法及装置、存储介质、计算机设备 Active CN112973121B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110484112.9A CN112973121B (zh) 2021-04-30 2021-04-30 反射效果生成方法及装置、存储介质、计算机设备
PCT/CN2021/133656 WO2022227553A1 (zh) 2021-04-30 2021-11-26 反射效果生成方法及装置、存储介质、计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110484112.9A CN112973121B (zh) 2021-04-30 2021-04-30 反射效果生成方法及装置、存储介质、计算机设备

Publications (2)

Publication Number Publication Date
CN112973121A CN112973121A (zh) 2021-06-18
CN112973121B true CN112973121B (zh) 2021-07-20

Family

ID=76336939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110484112.9A Active CN112973121B (zh) 2021-04-30 2021-04-30 反射效果生成方法及装置、存储介质、计算机设备

Country Status (2)

Country Link
CN (1) CN112973121B (zh)
WO (1) WO2022227553A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112973121B (zh) * 2021-04-30 2021-07-20 成都完美时空网络技术有限公司 反射效果生成方法及装置、存储介质、计算机设备
CN114299217A (zh) * 2021-12-29 2022-04-08 天津亚克互动科技有限公司 水面渲染方法、装置、移动端和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104240286A (zh) * 2014-09-03 2014-12-24 无锡梵天信息技术股份有限公司 基于屏幕空间的实时反射方法
CN107481309A (zh) * 2017-08-09 2017-12-15 北京我易家网络科技发展有限公司 三维反射渲染方法及装置
CN112233216A (zh) * 2020-12-18 2021-01-15 成都完美时空网络技术有限公司 游戏图像处理方法、装置及电子设备
CN112712582A (zh) * 2021-01-19 2021-04-27 广州虎牙信息科技有限公司 动态全局光照方法、电子设备及计算机可读存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3249955B2 (ja) * 1999-09-09 2002-01-28 株式会社ナムコ 画像生成システム及び情報記憶媒体
JP3372234B2 (ja) * 2000-01-28 2003-01-27 株式会社スクウェア 反射画像表示方法、ゲーム装置及び記録媒体
JP4000812B2 (ja) * 2001-10-11 2007-10-31 株式会社セガ 画像生成システム及び画像生成プログラム
DE112018000311T5 (de) * 2017-01-04 2019-09-19 Nvidia Corporation Stereoskopisches Rendering unter Verwendung von Raymarching und ein Broadcaster für eine virtuelle Ansicht für solches Rendering
JP6679523B2 (ja) * 2017-03-01 2020-04-15 任天堂株式会社 画像処理プログラム、画像処理システム、画像処理装置および画像処理方法
US11004264B2 (en) * 2017-08-07 2021-05-11 Verizon Patent And Licensing Inc. Systems and methods for capturing, transferring, and rendering viewpoint-adaptive three-dimensional (3D) personas
US10410433B2 (en) * 2017-08-30 2019-09-10 Go Ghost, LLC Method of modifying ray tracing samples after rendering and before rasterizing
US10559121B1 (en) * 2018-03-16 2020-02-11 Amazon Technologies, Inc. Infrared reflectivity determinations for augmented reality rendering
CN109685880B (zh) * 2018-11-07 2022-07-15 苏州蜗牛数字科技股份有限公司 一种利用光线追踪计算水面反射和折射效果方法
CN110148185B (zh) * 2019-05-22 2022-04-15 北京百度网讯科技有限公司 确定成像设备坐标系转换参数的方法、装置和电子设备
CN112973121B (zh) * 2021-04-30 2021-07-20 成都完美时空网络技术有限公司 反射效果生成方法及装置、存储介质、计算机设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104240286A (zh) * 2014-09-03 2014-12-24 无锡梵天信息技术股份有限公司 基于屏幕空间的实时反射方法
CN107481309A (zh) * 2017-08-09 2017-12-15 北京我易家网络科技发展有限公司 三维反射渲染方法及装置
CN112233216A (zh) * 2020-12-18 2021-01-15 成都完美时空网络技术有限公司 游戏图像处理方法、装置及电子设备
CN112712582A (zh) * 2021-01-19 2021-04-27 广州虎牙信息科技有限公司 动态全局光照方法、电子设备及计算机可读存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Directx11进阶之ScreenSpaceReflection(SSR)屏幕空间反射(1)";带带大师兄;《https://blog.csdn.net/qq_29523119/article/details/80463133》;20180526;第1-12页 *
"Real-Time Horizon-Based Reflection Occlusion";Xin Zhao等;《SIGGRAPH Asia 2009》;20091216;第1页 *
"基于链表的实时屏幕空间反射技术";孟蓉蓉;《图形图像》;20180228;第40-43页 *

Also Published As

Publication number Publication date
WO2022227553A1 (zh) 2022-11-03
CN112973121A (zh) 2021-06-18

Similar Documents

Publication Publication Date Title
CN111815755B (zh) 虚拟物体被遮挡的区域确定方法、装置及终端设备
CN108154548B (zh) 图像渲染方法及装置
CN112233216B (zh) 游戏图像处理方法、装置及电子设备
CN109771951B (zh) 游戏地图生成的方法、装置、存储介质和电子设备
US9443353B2 (en) Methods and systems for capturing and moving 3D models and true-scale metadata of real world objects
CN106548516B (zh) 三维漫游方法和装置
US20170154468A1 (en) Method and electronic apparatus for constructing virtual reality scene model
CN112973121B (zh) 反射效果生成方法及装置、存储介质、计算机设备
CN103157281B (zh) 一种二维游戏场景显示的方法和设备
CN109767447B (zh) 一种模板匹配方法、装置、设备及介质
CN108830923B (zh) 图像渲染方法、装置及存储介质
CN103914876A (zh) 用于在3d地图上显示视频的方法和设备
CN113989468A (zh) 一种全景漫游的生成方法、装置及计算机设备
CN115512025A (zh) 模型渲染性能的检测方法、装置、电子设备及存储介质
CN117218273A (zh) 图像渲染方法以及装置
CN113724391A (zh) 三维模型构建方法、装置、电子设备和计算机可读介质
CN109697748A (zh) 模型压缩处理方法、模型贴图处理方法装置、存储介质
CN113332714B (zh) 游戏模型的补光方法及装置、存储介质、计算机设备
CN115761123B (zh) 三维模型处理方法、装置、电子设备以及存储介质
CN115965735B (zh) 纹理贴图的生成方法和装置
CN117152393A (zh) 一种增强现实的呈现方法、系统、装置、设备及介质
CN112604279A (zh) 一种特效显示方法及装置
CN111862342A (zh) 增强现实的纹理处理方法、装置、电子设备及存储介质
CN116912387A (zh) 纹理贴图的处理方法及装置、电子设备、存储介质
CN113810755B (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