CN115089964A - 渲染虚拟雾模型的方法、装置、存储介质及电子装置 - Google Patents
渲染虚拟雾模型的方法、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN115089964A CN115089964A CN202210744157.XA CN202210744157A CN115089964A CN 115089964 A CN115089964 A CN 115089964A CN 202210744157 A CN202210744157 A CN 202210744157A CN 115089964 A CN115089964 A CN 115089964A
- Authority
- CN
- China
- Prior art keywords
- virtual
- rendering
- rendered
- fog model
- mask
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 217
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000012805 post-processing Methods 0.000 claims abstract description 29
- 238000005070 sampling Methods 0.000 claims description 59
- 238000012545 processing Methods 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 22
- 230000000694 effects Effects 0.000 abstract description 32
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 17
- 230000003993 interaction Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000002708 enhancing effect Effects 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
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000000779 smoke Substances 0.000 description 3
- 238000005034 decoration Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 229920000742 Cotton Polymers 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/02—Non-photorealistic rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种渲染虚拟雾模型的方法、装置、存储介质及电子装置。该方法包括:获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。本发明解决了相关技术中提供的渲染雾模型的方法其渲染难度大、效果差的技术问题。
Description
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种渲染虚拟雾模型的方法、装置、存储介质及电子装置。
背景技术
在虚拟场景的设计制作中,经常需要渲染体积雾来模拟现实效果(例如:大雾天气、烟雾弹效果等)。然而,渲染体积雾通常需要计算机(CPU和GPU)经过多次采样混合计算,资源消耗极大,难以应用于移动端设备。对此,本领域的技术人员不断尝试各种体积雾渲染方法以满足移动端虚拟场景中的体积雾显示需求。
相关技术中,第一种方案是:采用与PC端原理相同的多次采样混合计算方法在移动端渲染体积雾,然而,这种方案资源消耗较高,对移动端设备性能要求较高,无法支持同屏大面积显示体积雾,且体积雾显示效果较差。第二种方案是:采用大量半透明棉片互相穿插的方法模拟体积雾,然而,过多的半透明面片会导致过度绘制(overdraw)问题,且半透明面片之间存在大量的穿插交界,体积雾显示效果较差。
针对上述的问题,目前尚未提出有效的解决方案。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本发明的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本发明实施例提供了一种渲染虚拟雾模型的方法、装置、存储介质及电子装置,以至少解决相关技术中提供的渲染雾模型的方法其渲染难度大、效果差的技术问题。
根据本发明实施例的一个方面,提供了一种渲染虚拟雾模型的方法,包括:
获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图包括:获取第一贴图,其中,第一贴图用于确定目标贴图的初始信息;基于尺寸信息和形状信息,对第一贴图进行渲染,得到第二贴图;根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图。
可选地,根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图包括:根据第二贴图,确定虚拟雾模型的第一遮罩,其中,第一遮罩用于确定虚拟雾模型对应的待渲染区域;对预设噪声贴图进行平滑采样,得到虚拟雾模型的第二遮罩,其中,第二遮罩用于确定虚拟雾模型对应的噪声信息;基于第一遮罩和第二遮罩,对第二贴图进行叠加处理,得到目标贴图。
可选地,利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果包括:对目标贴图进行采样,得到第三遮罩,其中,第三遮罩用于在待渲染图像帧的待渲染区域内渲染虚拟雾模型;利用目标贴图和深度数据,确定第四遮罩,其中,第四遮罩用于确定待渲染图像帧内显示的虚拟物体的深度信息;对场景数据进行采样,得到待渲染图像帧对应的待渲染贴图;根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,第三遮罩为区域噪声遮罩,其中,区域噪声遮罩用于确定虚拟雾模型在待渲染图像帧内对应的待渲染区域的噪声信息。
可选地,利用目标贴图和深度数据,确定第四遮罩包括:基于目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,雾模型强度参数用于确定虚拟雾模型对应的预设可视距离阈值;对深度数据进行采样,得到深度采样结果;根据插值计算结果和深度采样结果,确定第四遮罩。
可选地,根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果包括:利用第四遮罩,对待渲染贴图和雾模型颜色参数进行插值处理,得到虚拟雾模型在待渲染图像帧内的候选渲染结果,其中,雾模型颜色参数用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息;根据第三遮罩,从候选渲染结果中确定目标渲染结果。
根据本发明实施例的另一方面,还提供了一种渲染虚拟雾模型的装置,包括:
获取模块,用于获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;生成模块,用于基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;渲染模块,用于利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,上述生成模块,还用于:获取第一贴图,其中,第一贴图用于确定目标贴图的初始信息;基于尺寸信息和形状信息,对第一贴图进行渲染,得到第二贴图;根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图。
可选地,上述生成模块,还用于:根据第二贴图,确定虚拟雾模型的第一遮罩,其中,第一遮罩用于确定虚拟雾模型对应的待渲染区域;对预设噪声贴图进行平滑采样,得到虚拟雾模型的第二遮罩,其中,第二遮罩用于确定虚拟雾模型对应的噪声信息;基于第一遮罩和第二遮罩,对第二贴图进行叠加处理,得到目标贴图。
可选地,上述渲染模块,还用于:对目标贴图进行采样,得到第三遮罩,其中,第三遮罩用于在待渲染图像帧的待渲染区域内渲染虚拟雾模型;利用目标贴图和深度数据,确定第四遮罩,其中,第四遮罩用于确定待渲染图像帧内显示的虚拟物体的深度信息;对场景数据进行采样,得到待渲染图像帧对应的待渲染贴图;根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,上述生成模块,还用于:基于目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,雾模型强度参数用于确定虚拟雾模型对应的预设可视距离阈值;对深度数据进行采样,得到深度采样结果;根据插值计算结果和深度采样结果,确定第四遮罩。
可选地,上述生成模块,还用于:利用第四遮罩,对待渲染贴图和雾模型颜色参数进行插值处理,得到虚拟雾模型在待渲染图像帧内的候选渲染结果,其中,雾模型颜色参数用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息;根据第三遮罩,从候选渲染结果中确定目标渲染结果。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述任一项中的渲染虚拟雾模型的方法。
根据本发明实施例的另一方面,还提供了一种电子装置,包括:包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项中的渲染虚拟雾模型的方法。
在本发明至少部分实施例中,首先获取虚拟场景的待渲染图像帧对应的深度数据和场景数据,采用基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图的方式,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型,通过利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果,达到了利用深度数据、场景数据和雾模型数据进行后处理渲染以实现体积雾效果的目的,从而实现了降低体积雾渲染难度、增强虚拟现实的技术效果,进而解决了相关技术中提供的渲染雾模型的方法其渲染难度大、效果差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种渲染虚拟雾模型的方法的移动终端的硬件结构框图;
图2是根据本发明其中一实施例的一种渲染虚拟雾模型的方法的流程图;
图3是根据本发明其中一实施例的可选的待渲染区域遮罩的示意图;
图4是根据本发明其中一实施例的可选的待渲染噪声遮罩的示意图;
图5是根据本发明其中一实施例的可选的待渲染目标贴图的示意图;
图6是根据本发明其中一实施例的可选的虚拟雾模型后处理渲染过程的示意图;
图7是根据本发明其中一实施例的可选的虚拟雾模型渲染结果的示意图;
图8是根据本发明其中一实施例的一种渲染虚拟雾模型的装置的结构框图;
图9是根据本发明实施例的一种电子装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明其中一实施例,提供了一种渲染虚拟雾模型的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本发明其中一种实施例中的渲染虚拟雾模型的方法可以运行于终端设备或者是服务器。终端设备可以为本地终端设备。当渲染虚拟雾模型的方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一可选的实施方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,渲染虚拟雾模型的方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的终端设备为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。
在一可选的实施方式中,终端设备可以为本地终端设备。以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。
在一种可能的实施方式中,本发明实施例提供了一种渲染虚拟雾模型的方法,通过终端设备提供图形用户界面,其中,终端设备可以是前述提到的本地终端设备,也可以是前述提到的云交互系统中的客户端设备。
以运行在本地终端设备中的移动终端上为例,该移动终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile InternetDevices,简称为MID)、PAD、游戏机等终端设备。图1是本发明实施例的一种渲染虚拟雾模型的方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于中央处理器(CPU)、图形处理器(GPU)、数字信号处理(DSP)芯片、微处理器(MCU)、可编程逻辑器件(FPGA)、神经网络处理器(NPU)、张量处理器(TPU)、人工智能(AI)类型处理器等的处理装置)和用于存储数据的存储器104。可选地,上述移动终端还可以包括用于通信功能的传输设备106、输入输出设备108以及显示设备110。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的渲染虚拟雾模型的方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的渲染虚拟雾模型的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
输入输出设备108中的输入可以来自多个人体学接口设备(Human InterfaceDevice,简称为HID)。例如:键盘和鼠标、游戏手柄、其他专用游戏控制器(如:方向盘、鱼竿、跳舞毯、遥控器等)。部分人体学接口设备除了提供输入功能之外,还可以提供输出功能,例如:游戏手柄的力反馈与震动、控制器的音频输出等。
显示设备110可以例如平视显示器(HUD)、触摸屏式的液晶显示器(LCD)和触摸显示器(也被称为“触摸屏”或“触摸显示屏”)。该液晶显示器可使得用户能够与移动终端的用户界面进行交互。在一些实施例中,上述移动终端具有图形用户界面(GUI),用户可以通过触摸触敏表面上的手指接触和/或手势来与GUI进行人机交互,此处的人机交互功能可选的包括如下交互:创建网页、绘图、文字处理、制作电子文档、游戏、视频会议、即时通信、收发电子邮件、通话界面、播放数字视频、播放数字音乐和/或网络浏览等、用于执行上述人机交互功能的可执行指令被配置/存储在一个或多个处理器可执行的计算机程序产品或可读存储介质中。
在本发明其中一种实施例中的渲染虚拟雾模型的方法可以运行于本地终端设备或者是服务器。当渲染虚拟雾模型的方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一可选的实施方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,渲染虚拟雾模型的方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。
在一可选的实施方式中,以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。
在一种可能的实施方式中,本发明实施例提供了一种渲染虚拟雾模型的方法,通过终端设备提供图形用户界面,其中,终端设备可以是前述提到的本地终端设备,也可以是前述提到的云交互系统中的客户端设备。图2是根据本发明其中一实施例的一种渲染虚拟雾模型的方法的流程图,如图2所示,该方法包括如下步骤:
步骤S21,获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;
上述虚拟场景可以是虚拟游戏场景、虚拟建筑场景和虚拟广告场景等。该虚拟场景可以包括多个图像帧。上述待渲染图像帧可以是该虚拟场景的多个图像帧中需要渲染雾模型的图像帧。
上述待渲染图像帧对应的深度数据可以是该待渲染图像帧显示的虚拟物体的深度数据。该深度数据可以用于表示虚拟物体到虚拟场景对应的虚拟相机的距离。上述待渲染图像帧对应的场景数据可以是该待渲染图像帧显示的虚拟场景数据。
上述深度数据可以是存储于预设引擎提供的深度缓存对象(Render Target,简称RT)中的数据;上述场景数据可以是存储于预设引擎提供的场景RT中的数据。在渲染虚拟雾模型时,上述深度数据和上述场景数据可以是通过从预设引擎中实时获取的深度RT和场景RT获取的。
步骤S22,基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;
上述虚拟雾模型可以是美术人员通过三维图形设计软件制作的雾模型。该虚拟雾模型可以用于在虚拟场景中渲染虚拟雾效果。该虚拟雾模型的尺寸信息可以是该虚拟雾模型的基本大小(如球状雾模型的尺寸信息可以是半径);该虚拟雾模型的形状信息可以是该虚拟雾模型的基本形状(如球形、椭球形、环形等)。
基于上述虚拟雾模型的尺寸信息和形状信息,可以生成该虚拟雾模型对应的目标贴图。该目标贴图中可以存储有遮罩信息,可以用于在上述虚拟场景中渲染该虚拟雾模型,其中,该遮罩信息可以包括用于确定虚拟雾模型在虚拟场景中的渲染区域的遮罩和用于确定渲染噪声效果的遮罩。
具体地,上述基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,还包括其他方法步骤,可以参照下文中对于本发明实施例的进一步介绍,此处不予赘述。
步骤S23,利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
利用上述虚拟场景的待渲染图像帧对应的深度数据、场景数据和上述虚拟雾模型的对应的目标贴图,可以进行后处理渲染,进而得到该虚拟雾模型在该待渲染图像帧内的目标渲染结果。上述后处理渲染过程可以根据实际应用场景需求包括:对深度数据的处理、对场景数据的处理、对目标贴图的处理、渲染和对渲染结果的处理等。
具体地,上述利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果,还包括其他方法步骤,可以参照下文中对于本发明实施例的进一步介绍,此处不予赘述。
在本发明至少部分实施例中,首先获取虚拟场景的待渲染图像帧对应的深度数据和场景数据,采用基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图的方式,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型,通过利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果,达到了利用深度数据、场景数据和雾模型数据进行后处理渲染以实现体积雾效果的目的,从而实现了降低体积雾渲染难度、增强虚拟现实的技术效果,进而解决了相关技术中提供的渲染雾模型的方法其渲染难度大、效果差的技术问题。
需要说明的是,本发明实施例可以但不限于适用于如下实际应用场景:虚拟游戏领域中的雾天气渲染场景、烟雾弹道具渲染场景、雾特效渲染场景等;虚拟建筑领域中的雾天气渲染场景;虚拟广告领域中的雾特效渲染场景等。
下面对本发明实施例的上述方法进行进一步介绍。
可选地,在步骤S22中,基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图可以包括以下执行步骤:
步骤S221,获取第一贴图,其中,第一贴图用于确定目标贴图的初始信息;
步骤S222,基于尺寸信息和形状信息,对第一贴图进行渲染,得到第二贴图;
步骤S223,根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图。
上述第一贴图可以是存储有预设初始图像信息的RT(记为RT1),该预设初始图像可以是用户根据实际应用场景需求预设的用于确定上述目标贴图的初始信息的图像。
基于虚拟雾模型的尺寸信息和形状信息,对上述第一贴图进行渲染可以是:将虚拟雾模型的尺寸信息和形状信息渲染至该第一贴图。进一步地,所得到的的第二贴图可以是与上述第一贴图对应的存储有虚拟雾模型的尺寸信息和形状信息的RT(记为RT2)。
上述预设噪声贴图可以是用户根据实际应用场景需求预先设定的用于确定虚拟雾模型噪声效果的贴图。根据上述第二贴图RT2和该预设噪声贴图,可以生成上述虚拟雾模型对应的目标贴图(记为RT_A)。
具体地,例如,在虚拟游戏场景中生成雾模型fog01的目标贴图RT_A时:首先,可以通过预设游戏引擎将用户预先定义的图像image01存储到名为FogArea的初始RT上,得到RT1;然后,基于美术人员预先制作的雾模型fog01,确定该雾模型fog01的基本大小和基本形状,并将该基本大小和基本形状渲染至上述RT1中,得到RT2。
可选地,在步骤S223中,根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图可以包括以下执行步骤:
步骤S2231,根据第二贴图,确定虚拟雾模型的第一遮罩,其中,第一遮罩用于确定虚拟雾模型对应的待渲染区域;
步骤S2232,对预设噪声贴图进行平滑采样,得到虚拟雾模型的第二遮罩,其中,第二遮罩用于确定虚拟雾模型对应的噪声信息;
步骤S2233,基于第一遮罩和第二遮罩,对第二贴图进行叠加处理,得到目标贴图。
上述虚拟雾模型的第一遮罩可以用于确定该虚拟雾模型对应的待渲染区域。根据上述第二贴图,可以确定该第一遮罩。
例如,在实际应用场景中生成雾模型fog01的目标贴图RT_A时,可以根据该雾模型fog01对应的第二贴图RT2,由该雾模型的基本大小和基本形状,确定该雾模型在图形用户界面上(如移动终端的屏幕上)的显示尺寸;然后,按照该显示尺寸创建几何模型以确定该雾模型对应的待渲染区域(如可以规定该待渲染区域为该几何模型在图形用户界面上的投影区域);进而,可以得到雾模型fog01的待渲染区域遮罩(相当于上述第一遮罩)。
图3是根据本发明其中一实施例的可选的待渲染区域遮罩的示意图,如图3所示,根据雾模型fog01的基本形状(本例中为球形)和基本大小(本例中为球形雾模型的半径),确定如图3所示的圆形待渲染区域遮罩(相当于上述第一遮罩),其中,该圆形待渲染区域遮罩的半径与雾模型fog01的基本大小在设备屏幕上显示的尺寸相对应,该圆形待渲染区域遮罩的形状与雾模型fog01的基本形状在设备屏幕上的投影形状相对应。
上述预设噪声贴图可以是用户根据实际应用场景需求预先设定的用于确定虚拟雾模型噪声效果的贴图。对该预设噪声贴图进行平滑采样,可以得到虚拟雾模型的第二遮罩。通过该第二遮罩,可以确定虚拟雾模型对应的噪声信息。
根据上述第一遮罩和上述第二遮罩,可以对上述第二贴图进行叠加处理,进而得到上述目标贴图。因此,该目标贴图可以用于确定虚拟雾模型对应的待渲染区域,还可以用于确定虚拟雾模型对应的噪声信息。
图4是根据本发明其中一实施例的可选的待渲染噪声遮罩的示意图,基于如图3所示的圆形待渲染区域遮罩的三维世界坐标(从预设游戏引擎中获取),对用户预先定义的噪声纹理图(相当于上述预设噪声贴图)进行采样,可以得到噪声采样结果;使用预设游戏引擎中的Fresnel函数对噪声采样结果进行边缘平滑处理(以消除雾模型的边缘与虚拟场景之间的硬切效果),可以得到如图4所示的待渲染噪声遮罩(相当于上述第二遮罩)。
图5是根据本发明其中一实施例的可选的待渲染目标贴图的示意图。仍然例如,在虚拟游戏场景中生成雾模型fog01的目标贴图RT_A时:采用如图3所示的待渲染区域遮罩和如图4所示的待渲染噪声遮罩,对前述RT2(相当于上述第二贴图)进行叠加处理,可以得到如图5所示的待渲染目标贴图RT_A。
可选地,在步骤S23中,利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果可以包括以下执行步骤:
步骤S231,对目标贴图进行采样,得到第三遮罩,其中,第三遮罩用于在待渲染图像帧的待渲染区域内渲染虚拟雾模型;
步骤S232,利用目标贴图和深度数据,确定第四遮罩,其中,第四遮罩用于确定待渲染图像帧内显示的虚拟物体的深度信息;
步骤S233,对场景数据进行采样,得到待渲染图像帧对应的待渲染贴图;
步骤S234,根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
对上述虚拟雾模型的目标贴图进行采样,可以得到上述第三遮罩。该第三遮罩可以用于确定虚拟雾模型对应的待渲染区域,还可以用于确定虚拟雾模型对应的噪声信息。
利用上述虚拟雾模型的目标贴图和待渲染图像帧的深度数据,可以确定上述第四遮罩。该第四遮罩可以用于确定该待渲染图像帧内显示的虚拟物体的深度信息。在实际应用场景中,深度信息可以用于表示虚拟物体到虚拟场景的虚拟相机之间的距离,与该深度信息对应的第四遮罩可以是以灰度形式显示的深度图(虚拟物体距离虚拟相机越近,灰度值越小,该虚拟物体的颜色越接近于黑色;虚拟物体距离虚拟相机越远,灰度值越大,该虚拟物体的颜色越接近于白色)。
对待渲染图像帧的场景数据进行采样,可以得到该待渲染图像帧对应的待渲染贴图。该待渲染贴图可以是该待渲染图像帧所显示的场景图像中的部分或全部图像。
根据上述第三遮罩和上述第四遮罩,对上述待渲染图像帧对应的待渲染贴图进行渲染,进而得到上述虚拟雾模型在待渲染图像帧内的目标渲染结果。
例如,在虚拟游戏场景的待渲染图像帧中渲染雾模型fog01时:图6是根据本发明其中一实施例的可选的虚拟雾模型后处理渲染过程的示意图,如图6所示,虚拟雾模型后处理渲染过程包括三次采样操作:遮罩数据(如待渲染目标贴图RT_A)采样、深度数据(如深度RT)采样和场景数据(如场景RT)采样;还包括一次渲染操作:基于前述三次采样操作的采样结果将虚拟雾模型渲染至虚拟场景。
可选地,在上述渲染虚拟雾模型的方法中:第三遮罩为区域噪声遮罩,其中,区域噪声遮罩用于确定虚拟雾模型在待渲染图像帧内对应的待渲染区域的噪声信息。
具体地,在如图6所示的遮罩数据采样中:可以对待渲染的目标贴图RT_A进行采样,得到如图5所示的目标贴图对应的待渲染区域遮罩,记为area_mask(相当于上述第三遮罩)。该第三遮罩可以是上述第一遮罩和第二遮罩的叠加遮罩,该第三遮罩可以通过由第一遮罩对应的待渲染区域确定虚拟雾模型在待渲染贴图中的待渲染区域,该第三遮罩还可以通过由第二遮罩对应的噪声信息确定虚拟雾模型在待渲染贴图中的噪声效果。
可选地,在步骤S232中,利用目标贴图和深度数据,确定第四遮罩可以包括以下执行步骤:
步骤S2321,基于目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,雾模型强度参数用于确定虚拟雾模型对应的预设可视距离阈值;
步骤S2322,对深度数据进行采样,得到深度采样结果;
步骤S2323,根据插值计算结果和深度采样结果,确定第四遮罩。
上述雾模型强度参数(记为fogIntensity)可以用于确定虚拟雾模型对应的预设可视距离阈值(例如现实场景的雾中能见距离),当虚拟物体到虚拟场景的虚拟相机间的距离超过该预设可视距离阈值时,该虚拟物体全部被雾覆盖,图形用户界面中无法显示该虚拟物体。
仍然例如,在虚拟游戏场景的待渲染图像帧中渲染雾模型fog01时:基于上述目标贴图RT_A中存储的数据和上述雾模型强度参数fogIntensity进行插值计算,得到插值计算结果R1的方法可以如下述公式(1)所示:
R1=X×t+Y×(1-t) 公式(1)
在上述公式(1)中,X=fogIntensity-250,Y=fogIntensity+250,t表示目标贴图RT_A中存储的数据。通过上述公式(1)可以通过t控制X与Y的相对大小。
需要说明的是,插值计算结果R1可以是一个变化的距离值,该距离值可以用于确定虚拟体积雾模型的不均匀变化效果。
对深度RT进行采样,可以得到上述深度采样结果。该深度采样结果可以是待渲染图像帧中显示的虚拟物体到虚拟场景的虚拟相机间的实际距离,记为depth。
根据上述插值计算结果和上述深度采样结果确定上述第四遮罩的方法可以如下述公式(2)所示:
Mask4=depth/R1 公式(2)
需要说明的是,上述第四遮罩可以是一个深浅变化的深度遮罩,该深度遮罩的数值取值在0至1之间根据实际距离depth变化。
可选地,在步骤S234中,根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果可以包括以下执行步骤:
步骤S2341,利用第四遮罩,对待渲染贴图和雾模型颜色参数进行插值处理,得到虚拟雾模型在待渲染图像帧内的候选渲染结果,其中,雾模型颜色参数用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息;
步骤S2342,根据第三遮罩,从候选渲染结果中确定目标渲染结果。
上述雾模型颜色参数可以用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息。例如:如果实际应用场景处于冰雪天气,可以将雾模型颜色参数设置为偏冷色调的颜色;如果实际应用场景需要渲染彩色烟雾弹道具的雾模型,可以将雾模型颜色参数设置为与该彩色烟雾弹道具预设的颜色参数相对应的颜色。
利用上述第四遮罩,可以对上述待渲染贴图和上述雾模型颜色参数进行插值处理,进而得到该虚拟雾模型在待渲染图像帧内的候选渲染结果。该候选渲染结果可以是该待渲染图像帧所显示的场景图像的全部范围内的虚拟雾模型渲染结果。
根据上述第三遮罩,可以从上述候选渲染结果中确定上述目标渲染结果。该目标渲染结果可以是待渲染贴图中虚拟雾模型的渲染结果。
上述第三遮罩可以用于确定虚拟雾模型对应的待渲染区域,还可以用于确定虚拟雾模型对应的噪声信息。从候选渲染结果中确定目标渲染结果还可以是:根据上述第三遮罩,将候选渲染结果中处于第三遮罩对应的待渲染区域以外的渲染结果移除。
仍然例如,在虚拟游戏场景的待渲染图像帧中渲染雾模型fog01时:图7是根据本发明其中一实施例的可选的虚拟雾模型渲染结果的示意图,如图7所示,通过本发明实施例提供的方法,可以在虚拟游戏场景的待渲染图像帧中渲染得到雾模型fog01对应的体积雾效果。
容易注意到的是,通过本发明实施例提供的方法,可以基于三次采样的结果进行渲染,得到虚拟场景中虚拟体积雾的渲染效果,与现有技术中的渲染体积雾的方法相比,降低了渲染难度,减少了渲染依赖的设备性能,进而更便于在移动端设备中应用。
容易注意到的是,根据本发明实施例提供的方法,利用虚拟场景中待渲染图像帧的深度信息和虚拟雾模型对应的待渲染区域噪声信息,渲染得到虚拟场景中的体积雾效果。本发明并不对虚拟场景待渲染图像帧的获取方法、深度信息的获取方法、虚拟雾模型的制作方法和噪声信息的获取方法做出限定,上述不做限定的多种方法中每一种都可以是相关技术领域中可实现的任意方法。
需要说明的是,虚拟场景中待渲染图像帧的深度信息对应的深度图以灰度图的形式表现对应的虚拟物体到虚拟相机的距离,该深度图的视觉表现类似于现实场景中的体积雾效果。基于该深度图,利用虚拟雾模型的待渲染区域噪声遮罩对待渲染图像帧中无需渲染雾模型的区域进行剔除,然后结合相关材质信息和后处理操作,可以在待渲染图像帧中渲染得到虚拟现实效果更好的体积雾模型。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种渲染虚拟雾模型的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图8是根据本发明其中一实施例的一种渲染虚拟雾模型的装置的结构框图,如图8所示,该装置包括:获取模块81,用于获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;生成模块82,用于基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;渲染模块83,用于利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,上述生成模块82,还用于:获取第一贴图,其中,第一贴图用于确定目标贴图的初始信息;基于尺寸信息和形状信息,对第一贴图进行渲染,得到第二贴图;根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图。
可选地,上述生成模块82,还用于:根据第二贴图,确定虚拟雾模型的第一遮罩,其中,第一遮罩用于确定虚拟雾模型对应的待渲染区域;对预设噪声贴图进行平滑采样,得到虚拟雾模型的第二遮罩,其中,第二遮罩用于确定虚拟雾模型对应的噪声信息;基于第一遮罩和第二遮罩,对第二贴图进行叠加处理,得到目标贴图。
可选地,上述渲染模块83,还用于:对目标贴图进行采样,得到第三遮罩,其中,第三遮罩用于在待渲染图像帧的待渲染区域内渲染虚拟雾模型;利用目标贴图和深度数据,确定第四遮罩,其中,第四遮罩用于确定待渲染图像帧内显示的虚拟物体的深度信息;对场景数据进行采样,得到待渲染图像帧对应的待渲染贴图;根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,上述渲染模块83,还用于:基于目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,雾模型强度参数用于确定虚拟雾模型对应的预设可视距离阈值;对深度数据进行采样,得到深度采样结果;根据插值计算结果和深度采样结果,确定第四遮罩。
可选地,上述渲染模块83,还用于:利用第四遮罩,对待渲染贴图和雾模型颜色参数进行插值处理,得到虚拟雾模型在待渲染图像帧内的候选渲染结果,其中,雾模型颜色参数用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息;根据第三遮罩,从候选渲染结果中确定目标渲染结果。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
可选地,在本实施例中,上述非易失性存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,上述计算机可读存储介质可以被设置为存储用于执行以下步骤的计算机程序:
获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图包括:获取第一贴图,其中,第一贴图用于确定目标贴图的初始信息;基于尺寸信息和形状信息,对第一贴图进行渲染,得到第二贴图;根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图。
可选地,根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图包括:根据第二贴图,确定虚拟雾模型的第一遮罩,其中,第一遮罩用于确定虚拟雾模型对应的待渲染区域;对预设噪声贴图进行平滑采样,得到虚拟雾模型的第二遮罩,其中,第二遮罩用于确定虚拟雾模型对应的噪声信息;基于第一遮罩和第二遮罩,对第二贴图进行叠加处理,得到目标贴图。
可选地,利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果包括:对目标贴图进行采样,得到第三遮罩,其中,第三遮罩用于在待渲染图像帧的待渲染区域内渲染虚拟雾模型;利用目标贴图和深度数据,确定第四遮罩,其中,第四遮罩用于确定待渲染图像帧内显示的虚拟物体的深度信息;对场景数据进行采样,得到待渲染图像帧对应的待渲染贴图;根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,第三遮罩为区域噪声遮罩,其中,区域噪声遮罩用于确定虚拟雾模型在待渲染图像帧内对应的待渲染区域的噪声信息。
可选地,利用目标贴图和深度数据,确定第四遮罩包括:基于目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,雾模型强度参数用于确定虚拟雾模型对应的预设可视距离阈值;对深度数据进行采样,得到深度采样结果;根据插值计算结果和深度采样结果,确定第四遮罩。
可选地,根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果包括:利用第四遮罩,对待渲染贴图和雾模型颜色参数进行插值处理,得到虚拟雾模型在待渲染图像帧内的候选渲染结果,其中,雾模型颜色参数用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息;根据第三遮罩,从候选渲染结果中确定目标渲染结果。
在该实施例的计算机可读存储介质中,提供了一种渲染虚拟雾模型的的技术方案。通过获取虚拟场景的待渲染图像帧对应的深度数据和场景数据,采用基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图的方式,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型,并利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果,达到了利用深度数据、场景数据和雾模型数据进行后处理渲染以实现体积雾效果的目的,从而实现了降低体积雾渲染难度、增强虚拟现实的技术效果,进而解决了相关技术中提供的渲染雾模型的方法其渲染难度大、效果差的技术问题。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个计算机可读存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本发明实施方式的方法。
在本发明的示例性实施例中,计算机可读存储介质上存储有能够实现本实施例上述方法的程序产品。在一些可能的实施方式中,本发明实施例的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本实施例上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
根据本发明的实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明实施例的程序产品不限于此,在本发明实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
上述程序产品可以采用一个或多个计算机可读介质的任意组合。该计算机可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列举)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
需要说明的是,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型;利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图包括:获取第一贴图,其中,第一贴图用于确定目标贴图的初始信息;基于尺寸信息和形状信息,对第一贴图进行渲染,得到第二贴图;根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图。
可选地,根据第二贴图和预设噪声贴图,生成虚拟雾模型对应的目标贴图包括:根据第二贴图,确定虚拟雾模型的第一遮罩,其中,第一遮罩用于确定虚拟雾模型对应的待渲染区域;对预设噪声贴图进行平滑采样,得到虚拟雾模型的第二遮罩,其中,第二遮罩用于确定虚拟雾模型对应的噪声信息;基于第一遮罩和第二遮罩,对第二贴图进行叠加处理,得到目标贴图。
可选地,利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果包括:对目标贴图进行采样,得到第三遮罩,其中,第三遮罩用于在待渲染图像帧的待渲染区域内渲染虚拟雾模型;利用目标贴图和深度数据,确定第四遮罩,其中,第四遮罩用于确定待渲染图像帧内显示的虚拟物体的深度信息;对场景数据进行采样,得到待渲染图像帧对应的待渲染贴图;根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果。
可选地,第三遮罩为区域噪声遮罩,其中,区域噪声遮罩用于确定虚拟雾模型在待渲染图像帧内对应的待渲染区域的噪声信息。
可选地,利用目标贴图和深度数据,确定第四遮罩包括:基于目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,雾模型强度参数用于确定虚拟雾模型对应的预设可视距离阈值;对深度数据进行采样,得到深度采样结果;根据插值计算结果和深度采样结果,确定第四遮罩。
可选地,根据第三遮罩和第四遮罩对待渲染贴图进行渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果包括:利用第四遮罩,对待渲染贴图和雾模型颜色参数进行插值处理,得到虚拟雾模型在待渲染图像帧内的候选渲染结果,其中,雾模型颜色参数用于确定虚拟雾模型在待渲染图像帧内对应的颜色信息;根据第三遮罩,从候选渲染结果中确定目标渲染结果。
在该实施例的电子装置中,提供了一种渲染虚拟雾模型的的技术方案。通过获取虚拟场景的待渲染图像帧对应的深度数据和场景数据,采用基于虚拟雾模型的尺寸信息和形状信息,生成虚拟雾模型对应的目标贴图的方式,其中,目标贴图用于在虚拟场景中渲染虚拟雾模型,并利用深度数据、场景数据和目标贴图进行后处理渲染,得到虚拟雾模型在待渲染图像帧内的目标渲染结果,达到了利用深度数据、场景数据和雾模型数据进行后处理渲染以实现体积雾效果的目的,从而实现了降低体积雾渲染难度、增强虚拟现实的技术效果,进而解决了相关技术中提供的渲染雾模型的方法其渲染难度大、效果差的技术问题。
图9是根据本发明实施例的一种电子装置的示意图。如图9所示,电子装置900仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图9所示,电子装置900以通用计算设备的形式表现。电子装置900的组件可以包括但不限于:上述至少一个处理器910、上述至少一个存储器920、连接不同系统组件(包括存储器920和处理器910)的总线930和显示器940。
其中,上述存储器920存储有程序代码,所述程序代码可以被处理器910执行,使得处理器910执行本发明实施例的上述方法部分中描述的根据本发明各种示例性实施方式的步骤。
存储器920可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)9201和/或高速缓存存储单元9202,还可以进一步包括只读存储单元(ROM)9203,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。
在一些实例中,存储器920还可以包括具有一组(至少一个)程序模块9205的程序/实用工具9204,这样的程序模块9205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。存储器920可进一步包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至电子装置900。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
总线930可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理器910或者使用多种总线结构中的任意总线结构的局域总线。
显示器940可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与电子装置900的用户界面进行交互。
可选地,电子装置900也可以与一个或多个外部设备1400(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子装置900交互的设备通信,和/或与使得该电子装置900能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口950进行。并且,电子装置900还可以通过网络适配器960与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图9所示,网络适配器960通过总线930与电子装置900的其它模块通信。应当明白,尽管图9中未示出,可以结合电子装置900使用其它硬件和/或软件模块,可以包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
上述电子装置900还可以包括:键盘、光标控制设备(如鼠标)、输入/输出接口(I/O接口)、网络接口、电源和/或相机。
本领域普通技术人员可以理解,图9所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子装置900还可包括比图9中所示更多或者更少的组件,或者具有与图9所示不同的配置。存储器920可用于存储计算机程序及对应的数据,如本发明实施例中的渲染虚拟雾模型的方法对应的计算机程序及对应的数据。处理器910通过运行存储在存储器920内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的渲染虚拟雾模型的方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本发明所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种渲染虚拟雾模型的方法,其特征在于,包括:
获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;
基于虚拟雾模型的尺寸信息和形状信息,生成所述虚拟雾模型对应的目标贴图,其中,所述目标贴图用于在所述虚拟场景中渲染所述虚拟雾模型;
利用所述深度数据、所述场景数据和所述目标贴图进行后处理渲染,得到所述虚拟雾模型在所述待渲染图像帧内的目标渲染结果。
2.根据权利要求1所述的渲染虚拟雾模型的方法,其特征在于,基于所述虚拟雾模型的所述尺寸信息和所述形状信息,生成所述虚拟雾模型对应的所述目标贴图包括:
获取第一贴图,其中,所述第一贴图用于确定所述目标贴图的初始信息;
基于所述尺寸信息和所述形状信息,对所述第一贴图进行渲染,得到第二贴图;
根据所述第二贴图和预设噪声贴图,生成所述虚拟雾模型对应的所述目标贴图。
3.根据权利要求2所述的渲染虚拟雾模型的方法,其特征在于,根据所述第二贴图和所述预设噪声贴图,生成所述虚拟雾模型对应的所述目标贴图包括:
根据所述第二贴图,确定所述虚拟雾模型的第一遮罩,其中,所述第一遮罩用于确定所述虚拟雾模型对应的待渲染区域;
对所述预设噪声贴图进行平滑采样,得到所述虚拟雾模型的第二遮罩,其中,所述第二遮罩用于确定所述虚拟雾模型对应的噪声信息;
基于所述第一遮罩和所述第二遮罩,对所述第二贴图进行叠加处理,得到所述目标贴图。
4.根据权利要求1所述的渲染虚拟雾模型的方法,其特征在于,利用所述深度数据、所述场景数据和所述目标贴图进行后处理渲染,得到所述虚拟雾模型在所述待渲染图像帧内的目标渲染结果包括:
对所述目标贴图进行采样,得到第三遮罩,其中,所述第三遮罩用于在所述待渲染图像帧的待渲染区域内渲染所述虚拟雾模型;
利用所述目标贴图和所述深度数据,确定第四遮罩,其中,所述第四遮罩用于确定所述待渲染图像帧内显示的虚拟物体的深度信息;
对所述场景数据进行采样,得到所述待渲染图像帧对应的待渲染贴图;
根据所述第三遮罩和所述第四遮罩对所述待渲染贴图进行渲染,得到所述虚拟雾模型在所述待渲染图像帧内的目标渲染结果。
5.根据权利要求4所述的渲染虚拟雾模型的方法,其特征在于,所述第三遮罩为区域噪声遮罩,其中,所述区域噪声遮罩用于确定所述虚拟雾模型在所述待渲染图像帧内对应的待渲染区域的噪声信息。
6.根据权利要求4所述的渲染虚拟雾模型的方法,其特征在于,利用所述目标贴图和所述深度数据,确定所述第四遮罩包括:
基于所述目标贴图和雾模型强度参数进行插值计算,得到插值计算结果,其中,所述雾模型强度参数用于确定所述虚拟雾模型对应的预设可视距离阈值;
对所述深度数据进行采样,得到深度采样结果;
根据所述插值计算结果和所述深度采样结果,确定所述第四遮罩。
7.根据权利要求5所述的渲染虚拟雾模型的方法,其特征在于,根据所述第三遮罩和所述第四遮罩对所述待渲染贴图进行渲染,得到所述虚拟雾模型在所述待渲染图像帧内的所述目标渲染结果包括:
利用所述第四遮罩,对所述待渲染贴图和雾模型颜色参数进行插值处理,得到所述虚拟雾模型在所述待渲染图像帧内的候选渲染结果,其中,所述雾模型颜色参数用于确定所述虚拟雾模型在所述待渲染图像帧内对应的颜色信息;
根据所述第三遮罩,从所述候选渲染结果中确定所述目标渲染结果。
8.一种渲染虚拟雾模型的装置,其特征在于,包括:
获取模块,用于获取虚拟场景的待渲染图像帧对应的深度数据和场景数据;
生成模块,用于基于虚拟雾模型的尺寸信息和形状信息,生成所述虚拟雾模型对应的目标贴图,其中,所述目标贴图用于在所述虚拟场景中渲染所述虚拟雾模型;
渲染模块,用于利用所述深度数据、所述场景数据和所述目标贴图进行后处理渲染,得到所述虚拟雾模型在所述待渲染图像帧内的目标渲染结果。
9.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的渲染虚拟雾模型的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至7任一项中所述的渲染虚拟雾模型的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210744157.XA CN115089964A (zh) | 2022-06-28 | 2022-06-28 | 渲染虚拟雾模型的方法、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210744157.XA CN115089964A (zh) | 2022-06-28 | 2022-06-28 | 渲染虚拟雾模型的方法、装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115089964A true CN115089964A (zh) | 2022-09-23 |
Family
ID=83294557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210744157.XA Pending CN115089964A (zh) | 2022-06-28 | 2022-06-28 | 渲染虚拟雾模型的方法、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115089964A (zh) |
-
2022
- 2022-06-28 CN CN202210744157.XA patent/CN115089964A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111145326A (zh) | 三维虚拟云模型的处理方法、存储介质、处理器及电子装置 | |
CN109725956B (zh) | 一种场景渲染的方法以及相关装置 | |
CN102939575A (zh) | 墨水呈现 | |
US20170213394A1 (en) | Environmentally mapped virtualization mechanism | |
CN112053449A (zh) | 基于增强现实的显示方法、设备及存储介质 | |
WO2022247204A1 (zh) | 游戏的显示控制方法、非易失性存储介质及电子装置 | |
CN112053370A (zh) | 基于增强现实的显示方法、设备及存储介质 | |
CN115375822A (zh) | 云模型的渲染方法、装置、存储介质及电子装置 | |
US20230267664A1 (en) | Animation processing method and apparatus, electronic device and storage medium | |
WO2024124805A1 (zh) | 交互动画的处理方法、装置、存储介质及电子装置 | |
WO2024021635A1 (zh) | 移动控制的方法、装置、存储介质及电子设备 | |
CN115131489A (zh) | 云层渲染方法、装置、存储介质及电子装置 | |
US11095956B2 (en) | Method and system for delivering an interactive video | |
CN115713586A (zh) | 碎裂动画的生成方法、装置和存储介质 | |
CN115375797A (zh) | 图层处理方法、装置、存储介质及电子装置 | |
CN115089964A (zh) | 渲染虚拟雾模型的方法、装置、存储介质及电子装置 | |
CN114742970A (zh) | 虚拟三维模型的处理方法、非易失性存储介质及电子装置 | |
CN114299203A (zh) | 虚拟模型的处理方法和装置 | |
CN111111154B (zh) | 虚拟游戏对象的建模方法、装置、处理器及电子装置 | |
KR101630257B1 (ko) | 3d 이미지 제공 시스템 및 그 제공방법 | |
CN114419214A (zh) | 游戏中切换天气类型的方法、装置、存储介质及电子装置 | |
CN114299207A (zh) | 虚拟对象渲染方法、装置、可读存储介质和电子装置 | |
WO2023142756A1 (zh) | 直播互动方法、装置以及系统 | |
CN115375829A (zh) | 虚拟模型的自发光渲染方法、装置、存储介质及电子装置 | |
CN114504825A (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 |