CN117218270A - 过渡区域的渲染方法、装置、电子设备及存储介质 - Google Patents
过渡区域的渲染方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117218270A CN117218270A CN202311027831.3A CN202311027831A CN117218270A CN 117218270 A CN117218270 A CN 117218270A CN 202311027831 A CN202311027831 A CN 202311027831A CN 117218270 A CN117218270 A CN 117218270A
- Authority
- CN
- China
- Prior art keywords
- target
- terrain
- model
- world
- transition
- 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
- 230000007704 transition Effects 0.000 title claims abstract description 326
- 238000009877 rendering Methods 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000006870 function Effects 0.000 claims description 33
- 238000005070 sampling Methods 0.000 claims description 25
- 238000013507 mapping Methods 0.000 claims description 12
- 238000012216 screening Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 abstract description 55
- 239000003086 colorant Substances 0.000 abstract description 33
- 238000012545 processing Methods 0.000 description 19
- 238000004364 calculation method Methods 0.000 description 16
- 239000000463 material Substances 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 238000012876 topography Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 244000025254 Cannabis sativa Species 0.000 description 2
- 239000000428 dust Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000002689 soil Substances 0.000 description 2
- 239000004575 stone Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本公开涉及计算机技术领域,提供一种过渡区域的渲染方法、装置、电子设备及存储介质;其中,该方法包括:获取目标地形模型、目标地形模型的世界位置、目标对象模型、目标对象模型的世界位置,目标地形模型包括地形颜色贴图,目标对象模型包括对象颜色贴图;通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息;基于过渡区域的颜色信息进行渲染,得到过渡区域图形。通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
Description
技术领域
本公开涉及计算机技术领域,尤其是涉及一种过渡区域的渲染方法、装置、电子设备及存储介质。
背景技术
在特定的虚拟场景中,会存在地形自然过渡的现象,例如,随着时间的推移,地面上的灰尘和土壤会慢慢蔓延到对应位置的虚拟对象(如:石头)上,形成地形自然过渡的现象。为了真实感,一般会通过虚拟纹理的方式来实现过渡的效果。
但是,上述方法仅对于支持虚拟纹理的模型有效,对于非虚拟纹理的模型,其会存在虚拟对象模型与地形间交界线明显的问题,即存在地形与非虚拟纹理的虚拟对象模型之间过渡生硬的问题。
发明内容
有鉴于此,本公开的目的在于提供一种过渡区域的渲染方法、装置、电子设备及存储介质,通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
第一方面,本公开实施例提供了一种过渡区域的渲染方法,所述过渡区域的渲染方法包括:
获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,所述目标地形模型包括地形颜色贴图,所述目标对象模型包括对象颜色贴图;
通过所述目标地形模型的世界位置和所述目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
通过所述多个过渡系数、所述地形颜色贴图和所述对象颜色贴图确定过渡区域的颜色信息;
基于所述过渡区域的颜色信息进行渲染,得到过渡区域图形。
第二方面,本公开实施例提供了一种过渡区域的渲染装置,所述过渡区域的渲染装置包括:
获取模块,用于获取目标地形模型、目标地形模型的世界位置、目标对象模型、目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,所述目标地形模型包括地形颜色贴图,所述目标对象模型包括对象颜色贴图;
计算模块,用于通过所述目标地形模型的世界位置和所述目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
确定模块,用于通过所述多个过渡系数、所述地形颜色贴图和所述对象颜色贴图确定过渡区域的颜色信息;
渲染模块,用于基于所述过渡区域的颜色信息进行渲染,得到过渡区域图形。
第三方面,本公开实施例提供了一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述过渡区域的渲染方法。
第四方面,本公开实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述过渡区域的渲染方法。
本公开实施例带来了以下有益效果:
上述过渡区域的渲染方法、装置、电子设备及存储介质,获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,所述目标地形模型包括地形颜色贴图,所述目标对象模型包括对象颜色贴图;通过所述目标地形模型的世界位置和所述目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;通过所述多个过渡系数、所述地形颜色贴图和所述对象颜色贴图确定过渡区域的颜色信息;基于所述过渡区域的颜色信息进行渲染,得到过渡区域图形。该方法中,通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
本公开的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本公开而了解。本公开的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的过渡区域的渲染方法的一个实施例示意图;
图2为本公开实施例提供的过渡区域的渲染方法的另一个实施例示意图;
图3为本公开实施例提供的过渡区域图形中的一部分的一个实施例示意图;
图4为本公开实施例提供的过渡区域图形中的一部分的另一个实施例示意图;
图5为本公开实施例提供的一种过渡区域的渲染装置的示意图;
图6为本公开实施例提供的一种电子设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开实施例提供了一种过渡区域的渲染方法、装置、电子设备及存储介质。主要应用在游戏中。
在本公开其中一种实施例中的过渡区域的渲染方法,可以运行于终端设备或者是服务器。其中,终端设备可以为本地终端设备。当过渡区域的渲染方法运行于服务器时,该方法则可以基于云交互系统来实现与执行,其中,云交互系统包括服务器和客户端设备。
在一可选的实时方式中,云交互系统下可以运行各种云应用,例如:云游戏。以云游戏为例,云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏程序的运行主体和游戏画面呈现主体是分离的,信息交互方法的储存与运行是在云游戏服务器上完成的,客户端设备的作用用于数据的接收、发送以及游戏画面的呈现,举例而言,客户端设备可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑等;但是进行信息处理的终端设备为云端的云游戏服务器。在进行游戏时,玩家操作客户端设备向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回客户端设备,最后,通过客户端设备进行解码并输出游戏画面。
在一可选的实施方式中,终端设备可以为本地终端设备。以游戏为例,本地终端设备存储有游戏程序并用于呈现游戏画面。本地终端设备用于通过图形用户界面与玩家进行交互,即,常规的通过电子设备下载安装游戏程序并运行。该本地终端设备将图形用户界面提供给玩家的方式可以包括多种,例如,可以渲染显示在终端的显示屏上,或者,通过全息投影提供给玩家。举例而言,本地终端设备可以包括显示屏和处理器,该显示屏用于呈现图形用户界面,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面以及控制图形用户界面在显示屏上的显示。
为便于理解,下面对本公开实施例的具体流程进行描述,请参阅图1,本公开实施例中过渡区域的渲染方法的一个实施例包括如下步骤:
步骤101,获取目标地形模型、目标地形模型的世界位置、目标对象模型、目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,目标地形模型包括地形颜色贴图,目标对象模型包括对象颜色贴图;
上述目标地形模型可理解为具有特定现象、特定属性的地物形状或地貌所对应的模型,例如,草地(即长满草的土地)或者荒地(即铺满灰尘或者土壤的土地);上述目标地形模型可为非虚拟纹理的模型。上述目标对象模型为与地形衔接(即与地形过渡)的目标对象的模型,进一步的,上述目标对象模型为与地形衔接(过渡)且相对静止的目标对象的非虚拟纹理的模型,与地形衔接且相对静止的目标对象例如,石头、山崖。上述地形颜色贴图为目标地形的颜色贴图。上述对象颜色贴图为目标对象的颜色贴图。
在一种实现方式中,上述步骤101具体包括:获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和和基于地形空间的位置信息,目标对象模型包括对象颜色贴图和对象深度贴图;将目标地形模型的基于地形空间的位置信息转换为世界坐标系的坐标,得到目标地形模型的世界位置;通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置。
可选的,上述获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置的步骤,包括:获取目标地形模型、目标对象模型和摄像机坐标,目标地形模型包括地形颜色贴图和基于地形空间的位置信息,目标对象模型包括对象颜色贴图和对象深度贴图,摄像机坐标为虚拟场景的世界空间中摄像机当前所处的位置信息;将目标地形模型的基于地形空间的位置信息转换为透视空间坐标;对透视空间坐标进行透视除法,得到归一化设备坐标;将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
目标地形模型在预创建时会记录对应的基于物体空间的位置信息,即基于地形空间的位置信息(可理解为目标地形模型的全局的物体空间的位置信息),其中,基于地形空间的位置信息可理解为目标地形模型基于物体坐标系对应的坐标。上述对象深度贴图中每一个像素对应的距离为深度,每一个像素对应的距离的大小用数值记录在对应的像素中。
需要说明的是,当进行目标地形模型的渲染时,无法直接获取到目标对象模型的世界位置,因而,须通过其他技术手段获取目标对象模型的世界位置。
可选的,对目标地形模型的基于地形空间的位置信息进行矩阵变换,以将基于地形空间的位置信息转为世界空间的坐标信息;将该世界空间的坐标信息转换为视口空间的坐标信息(即视口坐标),其中,视口空间的坐标信息可理解为视口坐标系的坐标信息;将视口空间的坐标信息转换为透视坐标系的坐标信息(即透视空间的位置信息),其中,透视空间用于呈现近处宽大而远处窄小(即近大远小或者距离远近)的显示效果;对透视空间的位置信息进行透视除法,得到归一化设备坐标,将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
通过将物体空间的坐标以透视除法方式转换为屏幕空间的坐标,便于将不在视锥范围内的顶点剔除且能够通过映射后的结果计算目标对象模型的顶点在屏幕上的坐标,能够实现直观而可视的近大远小立体显示效果。
可选的,上述通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置的步骤,包括:通过屏幕空间位置对对象深度贴图进行采样,得到对应像素的深度值;将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;将转换后的坐标和摄像机坐标相加,得到目标对象模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标对象模型的位置的确定,并实现了相当于视线方向上目标对象模型的位置且具有长度,从而能够体现目标对象模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
可选的,可通过获取目标地形模型对应的画布的局部坐标(可理解为目标地形模型对应的画布于局部坐标系的坐标信息)、预设拉伸比例、预设系数和屏幕尺寸,其中,画布可理解为容纳所有人机交互界面(User Interface,UI)元素的区域,上述屏幕尺寸为屏幕对应的硬件传输至着色器的参数信息,包括屏幕的宽度和高度;基于目标地形模型对应的画布的局部坐标、预设拉伸比例、预设系数和屏幕尺寸生成对应的屏幕坐标系坐标,从而得到屏幕空间位置,具体的,可为:将画布的局部坐标和预设拉伸比例相乘,得到第一坐标,将预设系数和屏幕比例相乘,得到第二坐标,将第一坐标和第二坐标相乘,得到屏幕空间位置。
步骤102,通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
可选的,计算目标对象模型的世界位置与目标地形模型的世界位置之间的向量距离,按照预设的区间值对各向量距离进行归一化处理,得到多个距离值,每个像素对应有一个距离值;通过预置参数集合和各距离值进行插值处理,得到多个过渡系数。通过多个过渡系数控制过渡区域屏幕显示的透明度。
可选的,上述步骤102具体包括:计算目标对象模型的世界位置与目标地形模型的世界位置之间的距离,得到多个距离值,世界位置为基于世界空间的位置信息,每个像素对应有一个距离值;通过预置的饱和函数和插值函数对多个距离值中的各距离值进行运算,得到多个过渡系数。
通过目标对象模型的世界位置与目标地形模型的世界位置进行距离计算,以获得各像素对应的目标对象模型与一个给定点(即目标地形模型)之间的距离。其中,距离值可用于指示各像素目标对象模型是否在目标地形模型的后面,即各像素对应的点是否为目标地形模型与目标对象模型衔接的点,可选的,其实现步骤包括:通过预置的距离计算算法(例如,欧氏距离算法、曼哈顿距离算法)基于目标地形模型的世界位置与目标对象模型的世界位置计算之间的距离,并取距离的长度以作为距离值;或者,通过预置的长度函数(例如,length(X-Y)函数)计算目标对象模型的世界位置与目标地形模型的世界位置之间的向量的长度,从而得到多个距离值;其中,各距离值用于分析是否为目标对象模型与目标地形模型相接的区域的位置,即可通过多个距离值确定过渡区域,具体的,可通过判断距离值是否小于阈值,若是,则对应的位置为目标对象模型与目标地形模型相接的位置,其中,多个变量对应的目标对象模型与目标地形模型相接的位置构成过渡区域,若否,则对应的位置不为目标对象模型与地形相接的位置。
可选的,通过预置的饱和函数saturate函数对各距离值进行运算,以将距离值的值限制在0到1之间,得到各值限制后的距离值;通过预置的插值函数lerp函数,以第一预设参数、第二预设参数和各值限制后的距离值进行插值处理,得到多个过渡系数,作为示例而非限定的是,第一预设参数优先为0,第一预设参数0对应的像素所用的颜色都是目标地形模型对应的颜色,第二预设参数优选为1,第二预设参数1对应的像素所用的颜色都是目标对象模型对应的颜色,值为(0,1)的过渡系数对应的像素的点为过渡区域,其中,各过渡系数用于混合输出的颜色,以实现透明度效果,多个过渡系数为过渡区域的输出颜色的混合因子,也可理解为地形颜色贴图和对象颜色贴图混合的比例,例如,过渡系数为0.5,则地形颜色贴图和对象颜色贴图分别混合一半。
需要说明的是,每个像素都会计算一个过渡系数,每个像素计算得到的过渡系数不一样,每个过渡系数对应的颜色不一样。
通过距离计算以及饱和函数和插值函数的处理来确定过渡区域的颜色混合因子(即多个过渡系数),能够有效、准确度地实现过渡区域屏幕显示的透明度效果,进一步有效地实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
步骤103,通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息;
可选的,按照预设区间值对多个过渡系数进行筛选,得到多个目标过渡系数,多个目标过渡系数对应过渡区域;根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,得到过渡区域的颜色信息。
作为示例而非限定的是,基于上述步骤102的示例进行说明,预设区间值可为(0,1),按照预设区间值对多个过渡系数进行筛选,以获取值大于0且小于1的过渡系数,所有值大于0且小于1的过渡系数对应过渡区域,根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,从而得到过渡区域的颜色信息,以对过渡区域输出的颜色进行混合,从而实现过渡区域的透明度效果,进而实现地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
104、基于过渡区域的颜色信息进行渲染,得到过渡区域图形。
可选的,获取目标地形模型中过渡区域对应的纹理UV、材质等渲染信息,以及目标对象模型中过渡区域对应的纹理UV、材质等渲染信息,基于目标地形模型中过渡区域对应的纹理UV、材质等渲染信息,目标对象模型中过渡区域对应的纹理UV、材质等渲染信息,以及过渡区域的颜色信息进行渲染,从而得到过渡区域图形。
在一种实现方式中,还包括:对多个过渡系数进行筛选,得到非过渡区域对应的过渡系数;根据非过渡区域对应的过渡系数读取非过渡区域对应的颜色信息;基于非过渡区域对应的颜色信息进行渲染,得到非过渡区域的图形。
作为示例而非限定的是,基于上述步骤103的示例进行说明,非过渡区域对应的过渡系数为值为0和值为1的过渡系数,值为0的过渡系数所对应的像素所用的颜色都是目标地形模型对应的颜色,值为1的过渡系数所对应的像素所用的颜色都是目标对象模型对应的颜色,即非过渡区域的图形为目标地形模型和目标对象模型渲染后过渡区域之外的区域。
上述过渡区域的渲染方法,通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
参见图2所示的一种过渡区域的渲染方法的另一实施例示意图,该过渡区域的渲染包括如下步骤:
步骤201,获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息;
在一种实现方式中,上述步骤201具体包括:获取目标地形模型、目标对象模型和摄像机坐标,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息,摄像机坐标为虚拟场景的世界空间中摄像机当前所处的位置信息;将目标对象模型的基于对象空间的位置信息转换为透视空间坐标;对透视空间坐标进行透视除法,得到归一化设备坐标;将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
其中,地形颜色贴图为目标地形的颜色贴图,地形深度贴图为目标地形的深度贴图。对象颜色贴图为目标对象的颜色贴图,目标对象模型在预创建时会记录对应的基于物体空间的位置信息,即基于对象空间的位置信息(可理解为目标对象模型的全局的物体空间的位置信息),其中,基于对象空间的位置信息可理解为目标对象模型基于物体坐标系对应的坐标。上述地形深度贴图中每一个像素对应的距离为深度,每一个像素对应的距离的大小用数值记录在对应的像素中。
需要说明的是,当进行目标对象模型的渲染时,无法直接获取到目标地形模型的世界位置,因而,须通过其他技术手段获取目标地形模型的世界位置。
可选的,对目标对象模型的基于对象空间的位置信息进行矩阵变换,以将基于对象空间的位置信息转为世界空间的坐标信息;将该世界空间的坐标信息转换为视口空间的坐标信息(即视口坐标),其中,视口空间的坐标信息可理解为视口坐标系的坐标信息;将视口空间的坐标信息转换为透视坐标系的坐标信息(即透视空间的位置信息),其中,透视空间用于呈现近处宽大而远处窄小(即近大远小或者距离远近)的显示效果;对透视空间的位置信息进行透视除法,得到归一化设备坐标,将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
通过将物体空间的坐标以透视除法方式转换为屏幕空间的坐标,便于将不在视锥范围内的顶点剔除且能够通过映射后的结果计算目标地形模型的顶点在屏幕上的坐标,能够实现直观而可视的近大远小立体显示效果。
步骤202,通过地形深度贴图、摄像机坐标和屏幕空间位置确定目标地形模型的世界位置;
在一种实现方式中,上述步骤202具体包括:通过屏幕空间位置对地形深度贴图进行采样,得到对应像素的深度值;将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
可选的,上述通过屏幕空间位置对地形深度贴图进行采样,得到对应像素的深度值的步骤包括:按照屏幕空间位置和预设采样等级,对深度贴图进行采样,得到深度值;将深度值存储至预设变量,得到对应像素的深度值。作为示例而非限定的是,通过预置的纹理采样函数(例如,SampleLevel函数)调用对应的纹理采样器,按照屏幕空间位置和采样等级对深度贴图进行采样,并获取向量中的红色分量(该红色分量也为深度值存储在深度纹理中的通道),得到深度值,通过屏幕空间位置采样得到深度值,以获得屏幕空间下目标对象距离屏幕的量,将深度值存储在预设变量中,以减少深度贴图所占的内存空间,其中,对应的纹理采样器与贴图类型对应,例如,地形深度贴图对应的纹理采样器为地形深度纹理的采样器。通过屏幕空间位置采样得到深度值,以获得屏幕空间下目标对象距离屏幕的量,为后续地形与非虚拟纹理的虚拟对象模型之间自然过渡的屏幕显示效果提供基础,并通过存储深度值,减少了所占的内存空间。
作为示例而非限定的是,调用预置的函数将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标,其中,该转换后的坐标为包含齐次坐标的三维向量,该转换后的坐标表示地形的深度;将转换后的坐标和摄像机坐标相加,以实现相当于视线方向上目标地形模型与目标对象模型衔接的位置且具有长度,从而体现目标对象模型的距离远近的效果。通过将屏幕空间位置和对应像素的深度值转换为齐次坐标,以将屏幕坐标和深度值结合,方便了对应的计算和降低了运算量,通过将转换后的坐标和摄像机坐标相加,实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果。
通过屏幕空间位置采样深度值后加上相机坐标,以获得屏幕空间下目标地形模型距离屏幕的量,通过齐次坐标转换后加上摄像机坐标,方便了对应的计算和降低了运算量,并实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果。
步骤203,将目标对象模型的基于对象空间的位置信息转换为世界坐标系的坐标,得到目标对象模型的世界位置;
需要说明的是,当进行目标对象模型的渲染时,可直接获取到目标对象模型的数据(即目标对象模型的基于对象空间的位置信息),将目标对象模型的基于对象空间的位置信息转换为世界空间,从而得到目标对象模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标地形模型的位置的确定,并实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
步骤204,通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
在一种实现方式中,上述步骤204具体包括:计算目标地形模型的世界位置与目标对象模型的世界位置之间的距离,得到多个距离值,世界位置为基于世界空间的位置信息,每个像素对应有一个距离值;通过预置的饱和函数和插值函数对多个距离值中的各距离值进行运算,得到多个过渡系数。
通过目标地形模型的世界位置与目标对象模型的世界位置进行距离计算,以获得各像素对应的目标地形模型与一个给定点(即目标对象模型)之间的距离。其中,距离值可用于指示各像素目标对象模型是否在目标地形模型的后面,即各像素对应的点是否为目标地形模型与目标对象模型衔接的点,可选的,其实现步骤包括:通过预置的距离计算算法(例如,欧氏距离算法、曼哈顿距离算法)基于目标地形模型的世界位置与目标对象模型的世界位置计算之间的距离,并取距离的长度以作为距离值;或者,通过预置的长度函数(例如,length(X-Y)函数)计算目标地形模型的世界位置与目标对象模型的世界位置之间的向量的长度,从而得到多个距离值;其中,各距离值用于分析是否为目标对象模型与目标地形模型相接的区域的位置,即可通过多个距离值确定过渡区域,具体的,可通过判断各距离值是否小于阈值,若是,则对应的位置为目标对象模型与目标地形模型相接的位置,其中,多个变量对应的目标对象模型与目标地形模型相接的位置构成过渡区域,若否,则对应的位置不为目标对象模型与地形相接的位置。
可选的,通过预置的饱和函数saturate函数对各距离值进行运算,以将距离值的值限制在0到1之间,得到各值限制后的距离值;通过预置的插值函数lerp函数,以第一预设参数、第二预设参数和各值限制后的距离值进行插值处理,得到多个过渡系数,作为示例而非限定的是,第一预设参数优先为0,第一预设参数0对应的像素所用的颜色都是目标地形模型对应的颜色,第二预设参数优选为1,第二预设参数1对应的像素所用的颜色都是目标对象模型对应的颜色,值为(0,1)的过渡系数对应的像素的点为过渡区域,其中,各过渡系数用于混合输出的颜色,以实现透明度效果,多个过渡系数为过渡区域的输出颜色的混合因子,也可理解为地形颜色贴图和对象颜色贴图混合的比例,例如,过渡系数为0.5,则地形颜色贴图和对象颜色贴图分别混合一半。
需要说明的是,每个像素都会计算一个过渡系数,每个像素计算得到的过渡系数不一样,每个过渡系数对应的颜色不一样。
通过距离计算和饱和函数和插值函数的处理来确定过渡区域的颜色混合因子(即多个过渡系数),能够有效、准确度地实现过渡区域屏幕显示的透明度效果,进一步有效地实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
步骤205,通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息;
在一种实现方式中,上述步骤205具体包括:按照预设区间值对多个过渡系数进行筛选,得到多个目标过渡系数,多个目标过渡系数对应过渡区域;根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,得到过渡区域的颜色信息。
作为示例而非限定的是,基于上述步骤204的示例进行说明,预设区间值可为(0,1),按照预设区间值对多个过渡系数进行筛选,以获取值大于0且小于1的过渡系数,所有值大于0且小于1的过渡系数对应过渡区域,根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,从而得到过渡区域的颜色信息,以对过渡区域输出的颜色进行混合,从而实现过渡区域的透明度效果,进而实现地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
通过多个目标过渡系数确定过渡区域的颜色信息,以对过渡区域输出的颜色进行混合,从而实现过渡区域的透明度效果,进而实现地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
步骤206,基于过渡区域的颜色信息进行渲染,得到过渡区域图形。
可选的,获取目标地形模型中过渡区域对应的纹理UV、材质等渲染信息,以及目标对象模型中过渡区域对应的纹理UV、材质等渲染信息,基于目标地形模型中过渡区域对应的纹理UV、材质等渲染信息,目标对象模型中过渡区域对应的纹理UV、材质等渲染信息,以及过渡区域的颜色信息进行渲染,从而得到过渡区域图形,其中,由于是基于渲染目标对象模型的基础上渲染地形过渡,因而,过渡区域图形为地形过渡的目标对象模型,即渲染后的目标对象模型包括了过渡地形和非过渡地形的部分。作为示例而非限定的是,过渡区域图形如图3和图4所示,图3和图4均是目标地形模型为草地、以目标对象模型为岩石所形成的过渡区域图形中的一部分。
在一种实现方式中,还包括:对多个过渡系数进行筛选,得到非过渡区域对应的过渡系数;根据非过渡区域对应的过渡系数读取非过渡区域对应的颜色信息;基于非过渡区域对应的颜色信息进行渲染,得到非过渡区域的图形。
作为示例而非限定的是,基于上述步骤204的示例进行说明,非过渡区域对应的过渡系数为值为0和值为1的过渡系数,值为0的过渡系数所对应的像素所用的颜色都是目标地形模型对应的颜色,值为1的过渡系数所对应的像素所用的颜色都是目标对象模型对应的颜色,即非过渡区域的图形为目标地形模型和目标对象模型渲染后过渡区域之外的区域。
通过筛选后所得的多个过渡系数,即对应非过渡区域的过渡系数确定非过渡区域的颜色,并进行渲染,实现了非虚拟纹理方式的自然过渡基础下的非过渡区域的渲染。
上述过渡区域的渲染方法,通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
对应于上述方法实施例,参见图5所示的一种过渡区域的渲染装置的示意图,该装置包括:
获取模块501,用于获取目标地形模型、目标地形模型的世界位置、目标对象模型、目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,目标地形模型包括地形颜色贴图,目标对象模型包括对象颜色贴图;
计算模块502,用于通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
确定模块503,用于通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息;
渲染模块504,用于基于过渡区域的颜色信息进行渲染,得到过渡区域图形。
上述过渡区域的渲染装置,通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
可选的,获取模块501还可以用于:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和和基于地形空间的位置信息,目标对象模型包括对象颜色贴图和对象深度贴图;
将目标地形模型的基于物体地形的位置信息转换为世界坐标系的坐标,得到目标地形模型的世界位置;
通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置。
可选的,获取模块501还可以用于:
通过屏幕空间位置对对象深度贴图进行采样,得到对应像素的深度值;
将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
可选的,获取模块501还可以用于:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息;
通过地形深度贴图、摄像机坐标和屏幕空间位置确定目标地形模型的世界位置;
将目标对象模型的基于对象空间的位置信息转换为世界坐标系的坐标,得到目标对象模型的世界位置。
可选的,获取模块501还可以用于:
获取目标地形模型、目标对象模型和摄像机坐标,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息,摄像机坐标为虚拟场景的世界空间中摄像机当前所处的位置信息;
将目标对象模型的基于对象空间的位置信息转换为透视空间坐标;
对透视空间坐标进行透视除法,得到归一化设备坐标;
将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
可选的,获取模块501还可以用于:
通过屏幕空间位置对地形深度贴图进行采样,得到对应像素的深度值;
将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
可选的,计算模块502还可以用于:
计算目标地形模型的世界位置与目标对象模型的世界位置之间的距离,得到多个距离值,世界位置为基于世界空间的位置信息,每个像素对应有一个距离值;
通过预置的饱和函数和插值函数对多个距离值中的各距离值进行运算,得到多个过渡系数。
可选的,确定模块503还可以用于:
按照预设区间值对多个过渡系数进行筛选,得到多个目标过渡系数,多个目标过渡系数对应过渡区域;
根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,得到过渡区域的颜色信息。
本实施例还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述过渡区域的渲染方法。该电子设备可以是服务器,也可以是终端设备。
参见图6所示,该电子设备包括处理器600和存储器501,该存储器601存储有能够被处理器600执行的机器可执行指令,该处理器600执行机器可执行指令以实现上述过渡区域的渲染方法。
进一步地,图6所示的电子设备还包括总线602和通信接口603,处理器600、通信接口603和存储器601通过总线602连接。
其中,存储器601可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口603(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线602可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
处理器600可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器600中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器600可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processor,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本公开实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器601,处理器600读取存储器601中的信息,结合其硬件完成如下步骤:
获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,目标地形模型包括地形颜色贴图,目标对象模型包括对象颜色贴图;
通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息;
基于过渡区域的颜色信息进行渲染,得到过渡区域图形。
通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
上述获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置的步骤,包括:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和和基于地形空间的位置信息,目标对象模型包括对象颜色贴图和对象深度贴图;
将目标地形模型的基于地形空间的位置信息转换为世界坐标系的坐标,得到目标地形模型的世界位置;
通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标对象模型的位置的确定,并实现了相当于视线方向上目标对象模型的位置且具有长度,从而能够体现目标对象模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
上述通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置的步骤,包括:
通过屏幕空间位置对对象深度贴图进行采样,得到对应像素的深度值;
将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标对象模型的位置的确定,并实现了相当于视线方向上目标对象模型的位置且具有长度,从而能够体现目标对象模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
上述获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置的步骤,包括:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息;
通过地形深度贴图、摄像机坐标和屏幕空间位置确定目标地形模型的世界位置;
将目标对象模型的基于对象空间的位置信息转换为世界坐标系的坐标,得到目标对象模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标地形模型的位置的确定,并实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
上述获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息的步骤,包括:
获取目标地形模型、目标对象模型和摄像机坐标,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息,摄像机坐标为虚拟场景的世界空间中摄像机当前所处的位置信息;
将目标对象模型的基于对象空间的位置信息转换为透视空间坐标;
对透视空间坐标进行透视除法,得到归一化设备坐标;
将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
通过将物体空间的坐标以透视除法方式转换为屏幕空间的坐标,便于将不在视锥范围内的顶点剔除且能够通过映射后的结果计算目标地形模型的顶点在屏幕上的坐标,能够实现直观而可视的近大远小立体显示效果。
上述通过地形深度贴图、摄像机坐标和屏幕空间位置确定目标地形模型的世界位置的步骤,包括:
通过屏幕空间位置对地形深度贴图进行采样,得到对应像素的深度值;
将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
通过屏幕空间位置采样深度值后加上相机坐标,以获得屏幕空间下目标地形模型距离屏幕的量,通过齐次坐标转换后加上摄像机坐标,方便了对应的计算和降低了运算量,并实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果。。
上述通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数的步骤,包括:
计算目标地形模型的世界位置与目标对象模型的世界位置之间的距离,得到多个距离值,世界位置为基于世界空间的位置信息,每个像素对应有一个距离值;
通过预置的饱和函数和插值函数对多个距离值中的各距离值进行运算,得到多个过渡系数。
通过距离计算、饱和函数和插值函数的处理来确定过渡区域的颜色混合因子(即多个过渡系数),能够有效、准确度地实现过渡区域屏幕显示的透明度效果,进一步有效地实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
上述通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息的步骤,包括:
按照预设区间值对多个过渡系数进行筛选,得到多个目标过渡系数,多个目标过渡系数对应过渡区域;
根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,得到过渡区域的颜色信息。
通过多个目标过渡系数确定过渡区域的颜色信息,以对过渡区域输出的颜色进行混合,从而实现过渡区域的透明度效果,进而实现地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
本实施例还提供一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述过渡区域的渲染方法的如下步骤:
获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,目标地形模型包括地形颜色贴图,目标对象模型包括对象颜色贴图;
通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息;
基于过渡区域的颜色信息进行渲染,得到过渡区域图形。
通过将多个过渡系数作为过渡区域的输出颜色的混合因子,实现了过渡区域的透明度效果,进而实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
上述获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置的步骤,包括:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和和基于地形空间的位置信息,目标对象模型包括对象颜色贴图和对象深度贴图;
将目标地形模型的基于地形空间的位置信息转换为世界坐标系的坐标,得到目标地形模型的世界位置;
通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标对象模型的位置的确定,并实现了相当于视线方向上目标对象模型的位置且具有长度,从而能够体现目标对象模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
上述通过对象深度贴图、摄像机坐标和屏幕空间位置确定目标对象模型的世界位置的步骤,包括:
通过屏幕空间位置对对象深度贴图进行采样,得到对应像素的深度值;
将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标对象模型的位置的确定,并实现了相当于视线方向上目标对象模型的位置且具有长度,从而能够体现目标对象模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
上述获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置的步骤,包括:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息;
通过地形深度贴图、摄像机坐标和屏幕空间位置确定目标地形模型的世界位置;
将目标对象模型的基于对象空间的位置信息转换为世界坐标系的坐标,得到目标对象模型的世界位置。
通过屏幕空间位置采样得到深度值,并基于摄像机坐标进行计算,实现了非虚拟纹理处理方式的目标地形模型的位置的确定,并实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果,通过获取目标地形模型的世界位置和目标对象模型的世界位置,以便于后续的过渡区域的确定。
上述获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息的步骤,包括:
获取目标地形模型、目标对象模型和摄像机坐标,目标地形模型包括地形颜色贴图和地形深度贴图,目标对象模型包括对象颜色贴图和基于对象空间的位置信息,摄像机坐标为虚拟场景的世界空间中摄像机当前所处的位置信息;
将目标对象模型的基于对象空间的位置信息转换为透视空间坐标;
对透视空间坐标进行透视除法,得到归一化设备坐标;
将归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
通过将物体空间的坐标以透视除法方式转换为屏幕空间的坐标,便于将不在视锥范围内的顶点剔除且能够通过映射后的结果计算目标地形模型的顶点在屏幕上的坐标,能够实现直观而可视的近大远小立体显示效果。
上述通过地形深度贴图、摄像机坐标和屏幕空间位置确定目标地形模型的世界位置的步骤,包括:
通过屏幕空间位置对地形深度贴图进行采样,得到对应像素的深度值;
将屏幕空间位置和对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将转换后的坐标和摄像机坐标相加,得到目标地形模型的世界位置。
通过屏幕空间位置采样深度值后加上相机坐标,以获得屏幕空间下目标地形模型距离屏幕的量,通过齐次坐标转换后加上摄像机坐标,方便了对应的计算和降低了运算量,并实现了相当于视线方向上目标地形模型的位置且具有长度,从而能够体现目标地形模型的距离远近的效果。。
上述通过目标地形模型的世界位置和目标对象模型的世界位置计算多个过渡系数的步骤,包括:
计算目标地形模型的世界位置与目标对象模型的世界位置之间的距离,得到多个距离值,世界位置为基于世界空间的位置信息,每个像素对应有一个距离值;
通过预置的饱和函数和插值函数对多个距离值中的各距离值进行运算,得到多个过渡系数。
通过距离计算、饱和函数和插值函数的处理来确定过渡区域的颜色混合因子(即多个过渡系数),能够有效、准确度地实现过渡区域屏幕显示的透明度效果,进一步有效地实现了地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
上述通过多个过渡系数、地形颜色贴图和对象颜色贴图确定过渡区域的颜色信息的步骤,包括:
按照预设区间值对多个过渡系数进行筛选,得到多个目标过渡系数,多个目标过渡系数对应过渡区域;
根据各目标过渡系数,对地形颜色贴图和对象颜色贴图进行混合处理,得到过渡区域的颜色信息。
通过多个目标过渡系数确定过渡区域的颜色信息,以对过渡区域输出的颜色进行混合,从而实现过渡区域的透明度效果,进而实现地形与非虚拟纹理的虚拟对象模型之间自然过渡的效果。
本公开实施例所提供的过渡区域的渲染方法、装置、电子设备及存储介质的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本公开实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本公开中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本公开的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本公开和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本公开的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。
Claims (11)
1.一种过渡区域的渲染方法,其特征在于,所述方法包括:
获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,所述目标地形模型包括地形颜色贴图,所述目标对象模型包括对象颜色贴图;
通过所述目标地形模型的世界位置和所述目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
通过所述多个过渡系数、所述地形颜色贴图和所述对象颜色贴图确定过渡区域的颜色信息;
基于所述过渡区域的颜色信息进行渲染,得到过渡区域图形。
2.根据权利要求1所述的方法,其特征在于,所述获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置的步骤,包括:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,所述目标地形模型包括地形颜色贴图和和基于地形空间的位置信息,所述目标对象模型包括对象颜色贴图和对象深度贴图;
将所述目标地形模型的基于地形空间的位置信息转换为世界坐标系的坐标,得到目标地形模型的世界位置;
通过所述对象深度贴图、所述摄像机坐标和所述屏幕空间位置确定所述目标对象模型的世界位置。
3.根据权利要求2所述的方法,其特征在于,所述通过所述对象深度贴图、所述摄像机坐标和所述屏幕空间位置确定所述目标对象模型的世界位置的步骤,包括:
通过所述屏幕空间位置对所述对象深度贴图进行采样,得到对应像素的深度值;
将所述屏幕空间位置和所述对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将所述转换后的坐标和所述摄像机坐标相加,得到所述目标地形模型的世界位置。
4.根据权利要求1所述的方法,其特征在于,所述获取目标地形模型、目标地形模型的世界位置、目标对象模型和目标对象模型的世界位置的步骤,包括:
获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,所述目标地形模型包括地形颜色贴图和地形深度贴图,所述目标对象模型包括对象颜色贴图和基于对象空间的位置信息;
通过所述地形深度贴图、所述摄像机坐标和所述屏幕空间位置确定所述目标地形模型的世界位置;
将所述目标对象模型的基于对象空间的位置信息转换为世界坐标系的坐标,得到目标对象模型的世界位置。
5.根据权利要求4所述的方法,其特征在于,所述获取目标地形模型、目标对象模型、摄像机坐标和屏幕空间位置,所述目标地形模型包括地形颜色贴图和地形深度贴图,所述目标对象模型包括对象颜色贴图和基于对象空间的位置信息的步骤,包括:
获取目标地形模型、目标对象模型和摄像机坐标,所述目标地形模型包括地形颜色贴图和地形深度贴图,所述目标对象模型包括对象颜色贴图和基于对象空间的位置信息,所述摄像机坐标为虚拟场景的世界空间中摄像机当前所处的位置信息;
将所述目标对象模型的基于对象空间的位置信息转换为透视空间坐标;
对所述透视空间坐标进行透视除法,得到归一化设备坐标;
将所述归一化设备坐标与预设的屏幕比例相乘,得到屏幕空间位置。
6.根据权利要求4所述的方法,其特征在于,所述通过所述地形深度贴图、所述摄像机坐标和所述屏幕空间位置确定所述目标地形模型的世界位置的步骤,包括:
通过所述屏幕空间位置对所述地形深度贴图进行采样,得到对应像素的深度值;
将所述屏幕空间位置和所述对应像素的深度值转换为齐次坐标,得到转换后的坐标;
将所述转换后的坐标和所述摄像机坐标相加,得到所述目标地形模型的世界位置。
7.根据权利要求1所述的方法,其特征在于,所述通过所述目标地形模型的世界位置和所述目标对象模型的世界位置计算多个过渡系数的步骤,包括:
计算所述目标地形模型的世界位置与所述目标对象模型的世界位置之间的距离,得到多个距离值,所述世界位置为基于世界空间的位置信息,每个像素对应有一个距离值;
通过预置的饱和函数和插值函数对所述多个距离值中的各距离值进行运算,得到多个过渡系数。
8.根据权利要求1所述的方法,其特征在于,所述通过所述多个过渡系数、所述地形颜色贴图和所述对象颜色贴图确定过渡区域的颜色信息的步骤,包括:
按照预设区间值对所述多个过渡系数进行筛选,得到多个目标过渡系数,所述多个目标过渡系数对应过渡区域;
根据各目标过渡系数,对所述地形颜色贴图和所述对象颜色贴图进行混合处理,得到过渡区域的颜色信息。
9.一种过渡区域的渲染装置,其特征在于,所述过渡区域的渲染装置包括:
获取模块,用于获取目标地形模型、目标地形模型的世界位置、目标对象模型、目标对象模型的世界位置,其中,世界位置为在世界空间中的位置信息,所述目标地形模型包括地形颜色贴图,所述目标对象模型包括对象颜色贴图;
计算模块,用于通过所述目标地形模型的世界位置和所述目标对象模型的世界位置计算多个过渡系数,每个像素对应有一个过渡系数;
确定模块,用于通过所述多个过渡系数、所述地形颜色贴图和所述对象颜色贴图确定过渡区域的颜色信息;
渲染模块,用于基于所述过渡区域的颜色信息进行渲染,得到过渡区域图形。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1-8任一项所述的过渡区域的渲染方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1-8任一项所述的过渡区域的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311027831.3A CN117218270A (zh) | 2023-08-14 | 2023-08-14 | 过渡区域的渲染方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311027831.3A CN117218270A (zh) | 2023-08-14 | 2023-08-14 | 过渡区域的渲染方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117218270A true CN117218270A (zh) | 2023-12-12 |
Family
ID=89039785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311027831.3A Pending CN117218270A (zh) | 2023-08-14 | 2023-08-14 | 过渡区域的渲染方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117218270A (zh) |
-
2023
- 2023-08-14 CN CN202311027831.3A patent/CN117218270A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109377546B (zh) | 虚拟现实模型渲染方法及装置 | |
US20040181382A1 (en) | Visualizing the surface of a liquid | |
CN111583381B (zh) | 游戏资源图的渲染方法、装置及电子设备 | |
CN112734896B (zh) | 环境遮蔽渲染方法、装置、存储介质及电子设备 | |
CN112052864B (zh) | 一种图像绘制方法、装置、电子设备及可读存储介质 | |
CN108074285B (zh) | 体积云模拟方法和体积云模拟装置 | |
CN111583398B (zh) | 图像显示的方法、装置、电子设备及计算机可读存储介质 | |
CN112516595B (zh) | 岩浆渲染方法、装置、设备和存储介质 | |
CN116012512A (zh) | 泡沫效果的渲染方法、渲染装置、电子设备、存储介质 | |
CN116688492A (zh) | 虚拟模型的特效渲染方法、装置、电子设备及存储介质 | |
US11810241B2 (en) | Systems and methods for ray traced contact shadows | |
CN117218270A (zh) | 过渡区域的渲染方法、装置、电子设备及存储介质 | |
CN113617024B (zh) | 水体面渲染方法、装置、设备及存储介质 | |
CN113781620B (zh) | 游戏中的渲染方法、装置和电子设备 | |
US8970626B2 (en) | System, method, and computer program product for adding computer-generated scene elements into a representation of a real-world scene, using path tracing | |
CN111462343B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN114549732A (zh) | 模型的渲染方法、装置及电子设备 | |
CN116370956A (zh) | 游戏场景中雪的渲染方法、装置、电子设备及存储介质 | |
CN116740298B (zh) | 一种基于三维引擎的场景实时地图的构建方法 | |
CN118262025A (zh) | 图像处理方法、装置和电子设备 | |
CN115984438A (zh) | 草地模型的渲染方法、装置及电子设备 | |
CN116474363A (zh) | 场景模型的渲染方法、装置和电子设备 | |
CN118681224A (zh) | 游戏中的场景编辑方法、装置及电子设备 | |
CN116712727A (zh) | 同屏画面渲染方法、装置及电子设备 | |
CN118015171A (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 |