CN112370784B - 虚拟场景显示方法、装置、设备以及存储介质 - Google Patents
虚拟场景显示方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN112370784B CN112370784B CN202110055106.1A CN202110055106A CN112370784B CN 112370784 B CN112370784 B CN 112370784B CN 202110055106 A CN202110055106 A CN 202110055106A CN 112370784 B CN112370784 B CN 112370784B
- Authority
- CN
- China
- Prior art keywords
- rendering
- map
- resolution
- resolution information
- virtual scene
- 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
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000009877 rendering Methods 0.000 claims abstract description 237
- 238000005070 sampling Methods 0.000 claims description 42
- 239000000945 filler Substances 0.000 claims description 30
- 230000015654 memory Effects 0.000 claims description 26
- 238000013507 mapping Methods 0.000 claims description 15
- 239000003086 colorant Substances 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 abstract description 31
- 238000012545 processing Methods 0.000 abstract description 28
- 238000004519 manufacturing process Methods 0.000 description 73
- 238000010586 diagram Methods 0.000 description 12
- 238000004590 computer program Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 8
- 230000009467 reduction Effects 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000010171 animal model Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- 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
-
- 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/4023—Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种虚拟场景显示方法、装置、设备以及存储介质,属于计算机技术领域。在本申请实施例中,结合固定不变的渲染参数和游戏过程中可能变化的渲染参数来确定第一分辨率信息。相较于相关技术中仅通过距离来确定分辨率信息的方案,本申请实施例提供的技术方案涉及更多的参数,更加全面的结合了游戏运行的实际情况,降低对元素进行渲染时所采用贴图的分辨率。基于分辨率更低的贴图对元素进行渲染,能够降低显示虚拟场景时处理资源的消耗,提升运行的流畅度。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种虚拟场景显示方法、装置、设备以及存储介质。
背景技术
随着多媒体技术的发展,游戏种类越来越多,功能也越来越丰富。在运行游戏时,需要实时对待渲染的元素进行渲染,这些元素经过渲染后构成游戏中的虚拟场景和游戏人物等。
相关技术中,对于一个待渲染元素来说,会同时在显存中加载该元素对应的多个分辨率的贴图,比如同时在显存中加载分辨率分别为512×512、256×256、128×128、64×64以及32×32的贴图,这些不同分辨率的贴图的内容相同。当对元素进行渲染时,能够根据虚拟摄像机与该元素之间的距离,自动从显存中选择与该距离匹配的分辨率对应的贴图,对该元素进行渲染。
但是,在一些情况下,根据距离确定出的分辨率高于游戏实际需要的分辨率,导致采用该分辨率对应的贴图对该元素进行渲染时,占用的处理资源过多,易导致卡顿。
发明内容
本申请实施例提供了一种虚拟场景显示方法、装置、设备以及存储介质,可以减少虚拟场景显示时对处理资源的消耗,提高终端运行的流畅度。所述技术方案如下。
一方面,提供了一种虚拟场景显示方法,所述方法包括:
获取虚拟场景中待渲染的元素的第一渲染参数集,所述第一渲染参数集中的渲染参数是为所述元素配置的固定不变的渲染参数;
获取所述元素在当前时间点的第二渲染参数集,所述第二渲染参数集中的渲染参数为在所述当前时间点采集到的渲染参数;
基于所述第一渲染参数集和所述第二渲染参数集,确定渲染所述元素时采用贴图的第一分辨率信息,所述第一分辨率信息用于指示渲染所述元素时采用的贴图的分辨率;
采用所述第一分辨率信息所指示的分辨率对应的贴图,对所述元素进行渲染,得到所述虚拟场景。
一方面,提供了一种虚拟场景显示装置,所述装置包括:
第一获取模块,用于获取虚拟场景中待渲染的元素的第一渲染参数集,所述第一渲染参数集中的渲染参数是为所述元素配置的固定不变的渲染参数;
第二获取模块,用于获取所述元素在当前时间点的第二渲染参数集,所述第二渲染参数集中的渲染参数为在所述当前时间点采集到的渲染参数;
确定模块,用于基于所述第一渲染参数集和所述第二渲染参数集,确定渲染所述元素时采用贴图的第一分辨率信息,所述第一分辨率信息用于指示渲染所述元素时采用的贴图的分辨率;
渲染模块,用于采用所述第一分辨率信息所指示的分辨率对应的贴图,对所述元素进行渲染,得到所述虚拟场景。
在一种可能的实施方式中,所述第一渲染参数集包括下述至少一项参数:
基准渲染画面的最大边长、所述基准渲染画面中渲染所述元素时所采用贴图的最大边长以及所述元素的几何特征参数,所述基准渲染画面为制作所述虚拟场景时基于所述元素渲染的画面;
所述第二渲染参数集包括下述至少一项参数:
所述元素与所述虚拟场景中虚拟摄像机之间的距离、所述虚拟摄像机的视场角、所述元素的缩放倍数、待显示的目标画面的最大边长以及分辨率最高的所述贴图的最大边长。
在一种可能的实施方式中,所述确定模块用于获取视野宽度缩放比例、画面尺寸缩放比例以及贴图尺寸缩放比例,所述视野宽度缩放比例为所述视场角与所述距离的乘积与所述缩放倍数之间的比例,所述画面尺寸缩放比例为所述基准渲染画面的最大边长和所述目标画面的最大边长之间的比例,所述贴图尺寸缩放比例为所述基准渲染画面中渲染所述元素时采用贴图的最大边长与所述分辨率最高的所述贴图的最大边长之间的比例;将所述元素的几何特征参数与所述视野宽度缩放比例,所述画面尺寸缩放比例以及所述贴图尺寸缩放比例进行融合,得到所述第一分辨率信息。
在一种可能的实施方式中,所述装置还包括:
几何特征参数获取模块,用于基于在多个角度下所述元素与所述虚拟摄像机之间的多个距离,获取所述元素的多个第二分辨率信息,所述第二分辨率信息用于指示在对应的角度和对应的距离下渲染所述元素时所采用贴图的分辨率,所述第二分辨率信息指示的分辨率与对应的距离负相关,所述角度指代所述虚拟摄像机与所述元素之间的夹角;基于所述多个第二分辨率信息和所述多个距离,获取所述元素的几何特征参数。
在一种可能的实施方式中,所述几何特征参数获取模块用于采用所述多个第二分辨率信息分别对应的颜色,对所述元素进行颜色填充,得到所述元素的多个第一填充图像;基于所述多个第一填充图像和所述多个距离,获取所述元素的几何特征参数。
在一种可能的实施方式中,所述几何特征参数获取模块用于分别对所述多个第一填充图像进行降采样,得到多个第二填充图像;基于所述多个第二填充图像和所述多个距离,获取所述元素的几何特征参数。
在一种可能的实施方式中,所述几何特征参数获取模块用于对于任一第一填充图像,将所述任一第一填充图像划分为多个降采样区域;分别将每个降采样区域的多个像素点的颜色值中最低的颜色值,确定为所述每个降采样区域的颜色值;基于所述多个降采样区域的颜色值,生成对所述任一第一填充图像进行降采样后的第二填充图像。
在一种可能的实施方式中,所述几何特征参数获取模块用于基于所述多个第二填充图像中像素点的颜色以及颜色与分辨率信息的对应关系,确定所述多个第二填充图像的第三分辨率信息;对确定的多个第三分辨率信息和所述多个距离进行线性拟合,得到所述第三分辨率信息和所述距离之间的关系数据;将所述关系数据中的比例参数和偏移参数获取为所述元素的几何特征参数。
在一种可能的实施方式中,所述几何特征参数获取模块还用于将所述多个第三分辨率信息中符合目标条件的第三分辨率信息删除,所述目标条件是指与所述多个第三分辨率信息的平均分辨率信息之间的差异值大于差异阈值。
在一种可能的实施方式中,所述装置还包括:
参数替换模块,用于响应于被控虚拟对象在所述虚拟场景中获取了虚拟瞄准镜,将所述第二渲染参数集中的所述虚拟摄像机的视场角替换为开镜视场角,所述开镜视场角为开启所述虚拟瞄准镜之后所述虚拟摄像机的视场角。
在一种可能的实施方式中,所述第一获取模块用于加载所述虚拟场景的预处理渲染文件;基于所述元素的标识,从所述预处理渲染文件中获取所述标识对应的所述第一渲染参数集。
在一种可能的实施方式中,所述渲染模块还用于在所述贴图还用于渲染所述虚拟场景中其他元素的情况下,确定所述其他元素的第四分辨率信息,所述第四分辨率信息用于指示渲染所述其他元素时采用的所述贴图的分辨率;响应于所述第四分辨率信息指示的分辨率小于所述第一分辨率信息指示的分辨率,采用所述第一分辨率信息所指示的分辨率对应的所述贴图,对所述其他元素进行渲染。
一方面,提供了一种计算机设备,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现所述虚拟场景显示方法所执行的操作。
一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现所述虚拟场景显示方法所执行的操作。
一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的虚拟场景显示方法。
通过本申请提供的技术方案,结合固定不变的渲染参数和游戏过程中可能变化的渲染参数来确定第一分辨率信息。相较于相关技术中仅通过距离来确定分辨率信息的方案,本申请实施例提供的技术方案涉及更多的参数,更加全面的结合了游戏运行的实际情况,降低对元素进行渲染时所采用贴图的分辨率。基于分辨率更低的贴图对元素进行渲染,能够降低显示虚拟场景时处理资源的消耗,提升运行的流畅度。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种虚拟场景显示方法的实施环境的示意图;
图2是本申请实施例提供的一种虚拟场景显示方法的流程图;
图3是本申请实施例提供的一种虚拟场景显示方法的流程图;
图4是本申请实施例提供的一种界面示意图;
图5是本申请实施例提供的一种界面示意图;
图6是本申请实施例提供的一种虚拟摄像机旋转的示意图;
图7是本申请实施例提供的一种降采样的示意图;
图8是本申请实施例提供的一种线性拟合的示意图;
图9是本申请实施例提供的一种线性拟合的示意图;
图10是本申请实施例提供的一种虚拟摄像机的视场角的示意图;
图11是本申请实施例提供的一种虚拟场景显示装置的结构示意图;
图12是本申请实施例提供的一种终端的结构示意图;
图13是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请中术语“第一”“第二”等字样用于对作用和功能基本相同的相同项或相似项进行区分,应理解,“第一”、“第二”、“第n”之间不具有逻辑或时序上的依赖关系,也不对数量和执行顺序进行限定。
本申请中术语“至少一个”是指一个或多个,“多个”的含义是指两个或两个以上,例如,多个贴图是指两个或两个以上的贴图。
虚拟空间:是为了设计虚拟场景而构建的空间,也可以称为游戏空间。虚拟空间有自己的坐标系,该坐标系由两两垂直的x轴、y轴以及z轴构成,虚拟场景中的每个虚拟物体在该坐标系中均有唯一的坐标值,该坐标系也可以称为世界坐标系。
元素:也可以称为模型,该模型是设计人员设计好的具有一定形状和体积的模型。未经过渲染的模型一般为纯色,比如为白色或者灰色等。在一些实施例中,模型为对现实世界中物体的模拟,比如元素为建筑物模型,或者为动物模型等。
贴图:也可以称为纹理贴图(Texture Mapping)或者纹理,在对模型进行渲染时,设计人员能够自行选择不同的贴图,对元素进行渲染,从而得到不同的渲染效果。比如元素为一座建筑物,那么设计人员能够采用贴图A将该建筑物渲染成红色,也能够采用贴图B将该建筑物渲染成蓝色,当然也能够采用其他贴图将该建筑物渲染成其他颜色。
材质:模型表面对光线如何反应的属性集合,包含纹理等数据。
分级细化纹理(Mipmap):纹理中包含的一系列逐级缩小的子图像,渲染时根据物体表面在屏幕空间中的实际面积和纹素密度选取最匹配的精度的Mipmap进行采样,可以减少混叠现象(Aliasing)并提高采样速度。
纹素(Texel):纹理空间中的基本单位。
着色器(Shader):在显卡内的图形处理器中运行的小型程序,用于并行处理各类图形单位上的计算。
逻辑帧:一次游戏逻辑循环。
虚拟场景:是应用程序在终端上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟环境,还可以是纯虚构的虚拟环境。虚拟场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本申请实施例对虚拟场景的维度不加以限定。例如,虚拟场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该虚拟场景中进行移动。
虚拟摄像机:是为玩家捕捉和显示游戏世界的一种虚拟装置,玩家通过屏幕看到的图像为虚拟摄像机拍摄的图像,虚拟空间中至少存在一个虚拟摄像机。当虚拟空间中存在一个虚拟摄像机时,玩家能够通过一个角度来观察虚拟场景;当虚拟空间中存在多个摄像机时,玩家能够通过不同的操作来切换观察虚拟场景的视角。
虚拟对象:是指在虚拟场景中的可活动对象。该可活动对象可以是虚拟人物、虚拟动物、动漫人物等,比如:在虚拟场景中显示的人物、动物、植物、油桶、墙壁、石块等。该虚拟对象可以是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象。虚拟场景中可以包括多个虚拟对象,每个虚拟对象在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。
可选地,该虚拟对象可以是通过客户端上的操作进行控制的用户角色,也可以是通过训练设置在虚拟场景对战中的人工智能(Artificial Intelligence,AI),还可以是设置在虚拟场景互动中的非用户角色(Non-Player Character,NPC)。可选地,该虚拟对象可以是在虚拟场景中进行竞技的虚拟人物。可选地,该虚拟场景中参与互动的虚拟对象的数量可以是预先设置的,也可以是根据加入互动的客户端的数量动态确定的。
图1是本申请实施例提供的一种虚拟场景显示方法的实施环境示意图,参见图1,该实施环境中可以包括终端110和服务器140。
终端110通过无线网络或有线网络与服务器140相连。可选地,终端110是智能手机、平板电脑、智能电视、台式计算机,车载计算机以及便携计算机等设备。终端110安装和运行有支持虚拟场景显示的应用程序,可选地,该应用程序是第一人称射击游戏(First-Person Shooting game,FPS)、第三人称射击游戏、虚拟现实应用程序、三维地图程序、军事仿真程序或者多人枪战类生存游戏中的任意一种。
可选地,服务器140是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
可选地,终端110泛指多个终端中的一个,本申请实施例仅以终端110来举例说明。
本领域技术人员可以知晓,上述终端的数量可以更多或更少。比如上述终端可以仅为一个,或者上述终端为几十个或几百个,或者更多数量,此时上述实施环境中还包括其他终端。本申请实施例对终端的数量和类型不加以限定。
在本申请实施例中,可以由服务器或终端作为执行主体来实施本申请实施例提供的技术方案,也可以通过终端和服务器之间的交互来实施本申请提供的技术方法,本申请实施例对此不作限定。下面将以执行主体为终端为例进行说明。
需要注意的是,在下述对本申请提供的技术方案进行说明的过程中,是以终端作为执行主体为例进行的。在其他可能的实施方式中,也能够由服务器作为执行主体来执行本申请提供的技术方案,本申请实施例对于执行主体的类型不做限定。
图2是本申请实施例提供的一种虚拟场景显示方法的流程图,参见图2,方法包括以下步骤。
201、终端获取虚拟场景中待渲染的元素的第一渲染参数集,第一渲染参数集中的渲染参数是为该元素配置的固定不变的渲染参数。
其中,第一渲染参数集中的渲染参数为设计人员在制作该虚拟场景时就能够得到的参数,在一些实施例中,第一渲染参数集中的渲染参数为设计人员在制作该虚拟场景时,显示该虚拟场景的相关参数以及该元素的本质属性相关的参数,在采用第一渲染参数集中的渲染参数对该元素进行渲染时,无论渲染该元素的设备类型是否与设计人员设计该虚拟场景时使用的设备相同,也无论如何控制被控虚拟对象在虚拟场景中进行移动,第一渲染参数集中的渲染参数都不会发生变化。
202、终端获取该元素在当前时间点的第二渲染参数集,第二渲染参数集中的渲染参数为在当前时间点采集到的渲染参数。
其中,第二渲染参数集中的渲染参数为可能发生变化的参数,终端在不同时间点对该元素进行渲染时,第二渲染参数集中的参数可能会发生变化,在一些实施例中,终端能够实时获取第二渲染参数集中的渲染参数。
203、终端基于第一渲染参数集和第二渲染参数集,确定渲染该元素时采用贴图的第一分辨率信息,第一分辨率信息用于指示渲染该元素时采用的贴图的分辨率。
其中,第一分辨率信息为用于指示分辨率的信息,在一些实施例中,第一分辨率信息为Mipmap等级,终端能够通过Mipmap等级来确定对应的分辨率。
204、终端采用第一分辨率信息所指示的分辨率对应的贴图,对该元素进行渲染,得到虚拟场景。
通过本申请提供的技术方案,结合固定不变的渲染参数和游戏过程中可能变化的渲染参数来确定第一分辨率信息。相较于相关技术中仅通过距离来确定分辨率信息的方案,本申请实施例提供的技术方案涉及更多的参数,更加全面的结合了游戏运行的实际情况,降低对元素进行渲染时所采用贴图的分辨率。基于分辨率更低的贴图对元素进行渲染,能够降低显示虚拟场景时处理资源的消耗,提升运行的流畅度。
需要说明的是,虚拟场景中存在多个待渲染的元素,每个元素在虚拟场景中的位置可能是不同的,显示虚拟场景的过程也即是对多个元素进行渲染,将多个元素进行渲染后的结果呈现给用户的过程,为了便于理解,在下述说明过程中,将以对虚拟场景中的一个元素进行渲染为例进行说明。上述步骤201-204是本申请实施例的简单说明,下面将结合附图和例子,对本申请实施例提供的技术方案进行进一步说明,图3是本申请实施例提供的一种虚拟场景显示方法的流程图,参见图3,方法包括以下步骤。
301、终端获取虚拟场景中待渲染的元素的贴图。
其中,该元素为虚拟场景中的虚拟建筑物模型、虚拟家具模型、岩石模型、小动物模型、虚拟对象模型以及道具模型等,本申请实施例对于该元素的类型不做限定。参见图4,401为虚拟对象的手部的模型,402为虚拟枪械的模型,403为虚拟建筑物模型。参见图5,501为虚拟对象的配饰的模型。
可选地,该贴图能够来自于互联网,比如为技术人员从互联网上的贴图数据中获取的贴图,或者为技术人员为该元素设计的贴图,或者为终端合成的贴图,本申请实施例对于贴图的来源不做限定。
在一种可能的实施方式中,终端根据该元素的标识,在存储该虚拟场景中多个元素的贴图的文件夹中进行查询,获取与该元素的标识对应的贴图。
举例来说,若该元素为虚拟场景中的虚拟建筑物,该虚拟建筑物的标识为building-798。终端能够基于标识building-798在存储多个元素的贴图的文件夹中进行查询。若该文件夹中存在一个贴图的文件名为mapping- building-798,终端将该贴图mapping- building-798获取为该虚拟建筑物的贴图。
302、终端逐步降低该贴图的分辨率,得到包括多个不同分辨率的贴图,一个贴图的分辨率对应于一个分辨率信息,多个不同分辨率的贴图具有相同的贴图内容。
在一种可能的实施方式中,终端以目标步长对该贴图进行多次降采样,从而逐步降低该贴图的分辨率,得到多个分辨率的贴图。终端将该贴图与多个分辨率的贴图进行绑定存储,得到贴图集。
可选地,目标步长用于表示降低贴图分辨率的步长,比如,终端能够将目标步长设置为0.5,表示终端在一次降采样过程中,将该贴图的分辨率降低为原来的1/2。
在这种实施方式下,终端能够基于一个贴图得到多个不同分辨率的贴图,由于多个不同分辨率的贴图均是由同一个贴图经过降采样得到的,因此多个不同分辨率的贴图虽然具有不同的分辨率,但是具有相同的贴图内容。终端后续能够根据不同的情况确定不同分辨率的贴图,对该元素进行渲染,从而提高虚拟场景的显示效果。
对该贴图进行降采样能够由下述三种方式中的任一种实现。
方式1、以目标步长为0.25为例,终端通过256×256个采样点对分辨率为512×512的贴图进行降采样,得到分辨率为256×256的贴图。终端通过128×128个采样点对分辨率为256×256的贴图进行降采样,得到分辨率为128×128的贴图。终端随后通过64×64个采样点对分辨率为128×128的贴图再次进行降采样,得到分辨率为64×64的贴图,以此类推,得到多个分辨率不同的贴图,其中,每次降采样时的采样点数量为前一次降采样的1/4。
方式2、还是以目标步长为0.25为例,在第一次降采样过程中,终端通过256×256个采样点对分辨率为512×512的贴图进行降采样,得到分辨率为256×256的贴图。在第二次降采样过程中,终端通过128×128个采样点对分辨率为512×512的贴图进行降采样,得到分辨率为128×128的贴图,以此类推,直至得到多个分辨率不同的贴图。
方式3、继续以目标步长为0.25为例,终端从分辨率为512×512的贴图分别抽取奇数行和奇数列或者偶数行和偶数列的像素点,将抽取出的像素点按照原本的顺序进行重新组合,得到分辨率为256×256的贴图。终端从分辨率为256×256的贴图分别抽取奇数行和奇数列或者偶数行和偶数列的像素点,将抽取出的像素点按照原本的顺序进行重新组合,得到分辨率为128×128的贴图,以此类推,直至得到多个分辨率不同的贴图。
需要说明的是,终端能够采用上述三种方式中的任一种来对贴图进行降采样,本申请实施例对此不做限定。
当然,上述对贴图进行降采样的说明仅仅是为了便于理解而进行的,可选地,终端能够采用不同的降采样方法来得到多个不同分辨率的贴图,比如终端能够采用小波压缩(Wavelet Compression)来对贴图进行降采样,也能够采用离散余弦变换(DiscreteCosine Transform,DCT)来对贴图进行降采样,本申请实施例对贴图进行降采样的方法不做限定。
可选地,在得到多个不同分辨率的贴图之后,终端能够对多个分辨率的贴图进行抗锯齿处理,使贴图的边缘更加平滑,更接近实际物体的外观。对贴图进行抗锯齿处理之后,终端后续基于抗锯齿处理过后的贴图对该元素进行渲染,能够得到更加真实的显示效果。
可选地,在步骤301之后,终端除了能够执行步骤302之外,还能够确定该元素的类型。在该元素的类型属于第一类型的情况下,终端确定不对贴图进行分辨率降低的处理,第一类型表示该元素在虚拟场景中的重要程度符合第一目标条件。
其中,该元素的重要程度以及第一目标条件能够由技术人员根据游戏的实际情况进行设计,比如技术人员能够将游戏人物对应的该元素的重要程度设置为9,将虚拟树木对应的该元素的重要程度设置为3,将符合第一目标条件设置为重要程度大于6。在该元素的类型为游戏人物的情况下,终端能够确定游戏人物的重要程度符合第一目标条件;在该元素的类型为虚拟树木的情况下,终端能够确定虚拟树木的重要程度不符合第一目标条件。
在这种实施方式下,由于生成多个分辨率的贴图需要占用更多的存储空间,终端能够根据该元素的类型,确定是否需要对该元素对应的贴图进行分辨率降低的处理。对于一些较为重要的元素,终端能够不对其对应的贴图进行分辨率降低的处理,而是在后续始终使用分辨率最高的贴图对该元素进行渲染,从而使得该元素的渲染效果更好。对于一些重要性较低的该元素,终端能够对其对应的贴图进行分辨率降低的处理,在后续的渲染过程中选择不同分辨率的图像对该元素进行渲染,从而节省终端的处理资源。
举例来说,终端能够根据该元素的标识所指示的类型,确定该元素是否属于第一类型。响应于该元素属于第一类型,终端能够对该元素对应的贴图进行分辨率降低的处理,也即是在后续的图像渲染过程中,终端能够根据不同的场景选择不同分辨率的贴图,对该第一类型的该元素进行渲染。响应于该元素不属于第一类型,终端不对该元素对应的贴图进行分辨率降低的处理,也即是在后续的图像渲染过程中,终端始终采用该贴图来对该元素进行渲染,得到更好的渲染效果。
需要说明的是,上述步骤301和302为可选步骤,终端能够在执行步骤303之前先执行上述步骤301和302,也能够提前执行上述步骤301和302,将得到的多个不同分辨率的贴图提前存储在存储空间中,当终端需要对待渲染元素进行渲染时,终端能够直接从存储空间中获取不同分辨率的贴图,在这种情况下,终端显示虚拟场景时,无需再执行上述步骤301和302,直接执行步骤303即可。
303、终端获取虚拟场景中待渲染的元素的第一渲染参数集,第一渲染参数集中的渲染参数是为该元素配置的固定不变的渲染参数。
可选地,第一渲染参数集包括下述至少一项参数:基准渲染画面的最大边长、基准渲染画面中渲染该元素时采用贴图的最大边长以及该元素的几何特征参数,基准渲染画面为制作虚拟场景时基于该元素渲染的画面。
在一种可能的实施方式中,终端加载该虚拟场景的预处理渲染文件。终端基于该元素的标识,从预处理渲染文件中获取该标识对应的第一渲染参数集。
在这种实施方式下,由于第一渲染参数集中的渲染参数为渲染该元素时固定不变的参数,那么技术人员在制作虚拟场景时,能够通过制作设备获取第一渲染参数集中的各个渲染参数,生成第一渲染参数集。制作设备将第一渲染参数集和该元素的标识存储在预处理的预处理渲染文件中,制作设备将预处理渲染文件发送给终端,后续终端能够直接从预处理渲染文件中快捷地获取第一渲染参数集。
下面对制作设备获取第一渲染参数集中不同渲染参数的方法进行说明。
在一种可能的实施方式中,对于基准渲染画面的最大边长来说,终端能够将基准渲染画面的长度和宽度中的较大值作为基准渲染画面的最大边长。
举例来说,在虚拟场景的制作过程中,制作设备能够显示该虚拟场景,显示该虚拟场景的画面也即是基准渲染画面。制作设备确定该基准渲染画面的长度和宽度,将长度和宽度中较大值作为基准渲染画面的最大边长。
在一种可能的实施方式中,对于基准渲染画面中渲染该元素时采用贴图的最大边长来说,制作设备能够将基准渲染画面中渲染该元素时采用贴图的长度和宽度中的较大值作为基准渲染画面中渲染该元素时采用贴图的最大边长。在一些实施例中,若贴图为正方形,那么制作设备也就能够将贴图的任一边长获取为基准渲染画面中渲染该元素时采用贴图的最大边长。
在一种可能的实施方式中,对于该元素的几何特征参数来说,制作设备基于在多个角度下元素与虚拟摄像机之间的多个距离,获取元素的多个第二分辨率信息,第二分辨率信息用于指示在对应的角度和对应的距离下渲染元素时所采用贴图的分辨率,第二分辨率信息指示的分辨率与对应的距离负相关,角度指代虚拟摄像机与元素之间的夹角。制作设备基于多个第二分辨率信息和多个距离,获取该元素的几何特征参数。
为了对上述实施方式进行更加清楚的描述,下面将分为几个部分来对制作设备获取该元素的几何特征参数的方法进行介绍。
部分1、对制作设备设置的多个角度进行说明。
在一种可能的实施方式中,在制作虚拟场景的过程中,制作设备将该元素放置在基准虚拟场景中,将虚拟摄像机对准该元素的几何中心,控制虚拟摄像机移动至与该元素相距第一目标距离,制作设备通过虚拟摄像机对该元素进行采样。随后,制作设备控制虚拟摄像机向远离该元素的方向移动,将虚拟摄像机停留在与该元素相距第二目标距离的位置上,制作设备通过虚拟摄像机对该元素进行采样,以此类推,完成第一个角度下多个距离的采样过程。之后,制作设备控制虚拟摄像机以该元素为中心旋转目标角度。在保持虚拟摄像机对准该元素几何中心的前提下,制作设备控制虚拟摄像机移动至与该元素相距第一目标距离,制作设备通过虚拟摄像机对该元素进行采样。随后,制作设备控制虚拟摄像机向远离该元素的方向移动,将虚拟摄像机停留在与该元素相距第二目标距离的位置上,制作设备通过虚拟摄像机对该元素进行采样,以此类推,完成第二个角度下多个距离的采样过程。经过上述步骤之后,制作设备获取了多个角度下多个距离的采样结果。
在这种实施方式下,制作设备能够提前对游戏过程中可能出现的角度进行提前采样,对采样结果进行处理之后就能够直接用于后续的渲染过程,处理效率较高。
举例来说,参见图6,图6上方为该元素602的主视图,图6下方为该元素602的俯视图,制作设备能够控制虚拟摄像机601围绕该元素602旋转,在一些实施例中,制作设备能够控制虚拟摄像机旋转至该元素602的前、后、左、右、左前、左后、右前、右后、前述八种方向的斜上方和斜下方、正上方、正下方共计26个方向。对于虚拟摄像机的距离来说,制作设备能够以该元素的包围盒半径的四倍为步长,在每个角度下等间隔的确定6个位置,其中,包围盒为能够完整容纳该元素的最小球体。同一角度,四个距离的采样结果参见图7,可以看出,四个图像中,随着虚拟摄像机与该元素701的距离逐渐增大,虚拟摄像机拍摄的图像也在逐渐减小。
需要说明的是,为了避免多个角度和多个距离带来的混淆,下面将以一个角度下的多个距离为例进行说明。
部分2、对制作设备基于在多个角度下元素与虚拟摄像机之间的多个距离,获取元素的多个第二分辨率信息的方法进行说明,基于之前的描述,这里的多个第二分辨率信息也即是同一个角度下不同距离分别对应的分辨率信息。
在一种可能的实施方式中,制作设备能够根据该元素在虚拟场景中的坐标以及虚拟摄像机在虚拟场景中的坐标,确定虚拟场景中的该元素与虚拟摄像机之间的距离。制作设备能够根据虚拟场景中的该元素与虚拟摄像机之间的距离,查询与该距离对应的分辨率信息,也即是渲染该元素时采用贴图的第二分辨率信息。在一些实施例中,距离与贴图分辨率之间负相关,也即是虚拟场景中该元素与虚拟摄像机之间的距离越远,第二分辨率信息指示的贴图分辨率也就越低。虚拟场景中该元素与虚拟摄像机之间的距离越近,第二分辨率信息指示的贴图分辨率也就越高。
在这种实施方式下,制作设备能够根据虚拟场景中该元素与虚拟摄像机之间的多个距离,来确定该元素对应贴图的第二分辨率信息,也即是制作设备能够根据虚拟场景中该元素与虚拟摄像机之间的距离,来确定对该元素进行渲染采用贴图的分辨率的高低。基于距离来确定第二分辨率信息的效率较高。
举例来说,若采用Mipmap等级来表示第二分辨率信息,也即是采用Mipmap等级来指示分辨率,比如Mipmap等级为一级,表示该元素对应的未进行下采样的贴图,也即是贴图分辨率最高的贴图。Mipmap等级为二级,表示进行过一次下采样的贴图的分辨率,在一些实施例中,进行过一次下采样的贴图的分辨率为最高分辨率的1/4。Mipmap等级为三级,表示进行过两次下采样的贴图的分辨率,在一些实施例中,进行过两次下采样的贴图的分辨率为最高分辨率的1/16,以此类推。若该元素在虚拟场景中的坐标为(1,1,1),虚拟摄像机在虚拟场景中的坐标(1,4,5),确定在虚拟场景中该元素与虚拟摄像机之间的距离5。制作设备能够确定与距离5对应的Mipmap等级,比如3,也即是进行过两次下采样的贴图的分辨率。
下面对制作设备根据虚拟场景中该元素与虚拟摄像机之间的距离,建立距离和第二分辨率信息之间对应关系的方法进行说明。
在一种可能的实施方式中,制作设备能够确定虚拟场景中的该元素与虚拟场景中的虚拟摄像机之间的最大距离和最小距离。制作设备根据虚拟场景中的该元素与虚拟场景中的虚拟摄像机之间的最大距离和最小距离,确定虚拟场景中的该元素与虚拟场景中的虚拟摄像机之间距离所处的距离区间。制作设备根据该元素对应贴图的贴图等级的数量,将上述距离区间划分为多个子区间,子区间的数量与渲染元素对应贴图的分辨率信息的数量相同,每个子区间对应于一个分辨率信息,制作设备能够建立子区间与分辨率信息的对应关系。
以制作设备采用贴图等级来表示分辨率信息为例进行说明,若在虚拟场景中,该元素与虚拟摄像机之间的最大距离为8,最小距离为1。制作设备根据最大距离8和最小距离1确定虚拟场景中的该元素与虚拟摄像机所处的距离区间为[1,8]。若该元素对应的贴图包括8个贴图等级,那么制作设备能够将距离区间[1,8]划分为8个子区间[1,2)、[2,3)、[3,4)、[4,5)、[5,6)、[6,7)以及[7,8],8个子区间 [1,2)、[2,3)、[3,4)、[4,5)、[5,6)、[6,7)以及[7,8]分别对应于贴图等级一级到八级,也即是8个子区间[1,2)、[2,3)、[3,4)、[4,5)、[5,6)、[6,7)以及[7,8]对应贴图的分辨率依次下降。
部分3、下面对制作设备基于多个第二分辨率信息和多个距离,获取该元素的几何特征参数的方法进行说明。
在一种可能的实施方式中,制作设备采用多个第二分辨率信息分别对应的颜色,对该元素进行颜色填充,得到该元素的多个第一填充图像。制作设备基于多个第一填充图像和多个距离,获取该元素的几何特征参数。
其中,不同的第二分辨率对应于不同的颜色,若制作设备采用Mipmap等级来标识第二分辨率信息,那么Mipmap等级为1时可能对应于红色,Mipmap等级为2时可能对应于黄色,那么Mipmap等级为3时可能对应于蓝色,以此类推。
举例来说,制作设备通过着色器,基于第二分辨率信息和颜色的对应关系,对该元素进行颜色填充,得到该元素的多个第一填充图像,基于之前的描述,多个第一填充图像也即是同一个角度下不同距离分别对应的填充图像。制作设备分别对多个第一填充图像进行降采样,得到多个第二填充图像。制作设备基于多个第二填充图像和多个距离,获取该元素的几何特征参数。
为了更加清楚的进行说明,下面在上述举例的基础上,通过两个例子分别对制作设备分别对多个第一填充图像进行降采样,得到多个第二填充图像,以及制作设备基于多个第二填充图像和多个距离,获取该元素的几何特征参数的过程进行进一步说明。
例1、对于制作设备分别对多个第一填充图像进行降采样,得到多个第二填充图像过程来说,对于任一第一填充图像,制作设备将该第一填充图像划分为多个降采样区域。制作设备分别将每个降采样区域的多个像素点的颜色值中最低的颜色值,确定为每个降采样区域的颜色值。制作设备基于多个降采样区域的颜色值,生成对该第一填充图像进行降采样后的第二填充图像。
若一个降采样区域的尺寸为2×2,一个降采样区域能够将第一填充图像上的四个像素点降采样为一个像素点,一个第一填充图像的尺寸为4×4,比如为,其中,数字表示对应像素点的颜色值,在一些实施例中,颜色值也即是RGB三个颜色通道值的平均值,那么制作设备将第一填充图像划分为四个降采样区域、、以及。制作设备将降采样区域中四个颜色值中最低的颜色值1,确定为降采样区域的颜色值;将降采样区域中四个颜色值中最低的颜色值1,确定为降采样区域的颜色值;将降采样区域中四个颜色值中最低的颜色值2,确定为降采样区域的颜色值;将降采样区域中四个颜色值中最低的颜色值2,确定为降采样区域的颜色值。制作设备基于四个降采样区域的颜色值1、1、2和2,得到图像。在一些实施例中,第二填充图像由一个像素点构成,那么制作设备能够对图像再次进行降采样,得到第二填充图像(1)。
例2、对于制作设备基于多个第二填充图像和多个距离,获取该元素的几何特征参数的过程来说,制作设备基于多个第二填充图像中像素点的颜色以及颜色与分辨率信息的对应关系,确定多个第二填充图像的第三分辨率信息。制作设备对多个第三分辨率信息和多个距离进行线性拟合,得到多个第三分辨率信息和多个距离之间的关系数据。制作设备将关系数据中的比例参数和偏移参数获取为元素的几何特征参数。
以第二填充图像为(1)为例进行说明,若颜色值1对应的颜色为红色,那么制作设备能够根据颜色与分辨率信息的对应关系,确定红色对应的第三分辨率信息。若采用Mipmap等级来表示第三分辨率信息,那么制作设备确定红色对应的Mipmap等级为二级。对于多个第二填充图像来说,每个第二填充图像均对应于一个第三分辨率信息。除此之外,基于之前的描述,每个第二填充图像也即是通一个方向不同距离下的填充图像。制作设备能够建立以距离为横坐标,以分辨率信息为纵坐标的坐标系,将多个第三分辨率信息和多个距离构成的坐标点填充于坐标系中。制作设备对坐标系中的多个坐标点进行线性拟合,得到同一方向的第三分辨率信息-距离拟合曲线。对于不同方向来说,制作设备能够分别拟合不同方向的第三分辨率信息-距离拟合曲线。参见图8,曲线801上的坐标点为一个方向上的坐标点,曲线802上的坐标点为另一个方向上的坐标点。曲线803为制作设备对曲线801上的坐标点进行拟合后得到的曲线,曲线803的关系数据(函数表达式)为804,关系数据中的R2为拟合优度,表示曲线803对曲线801上的坐标点拟合的质量,关系数据804中的比例参数a和偏移参数b也即是一个几何特征参数。曲线805为制作设备对曲线802上的坐标点进行拟合后得到的曲线,曲线805的关系数据(函数表达式)为806,关系数据中的R2为拟合优度,表示曲线805对曲线802上的坐标点拟合的质量,关系数据806中的比例参数a和偏移参数b也即是另一个几何特征参数。制作设备确定曲线801上坐标点的纵坐标和以及曲线802上坐标点的纵坐标和,将纵坐标和较小的曲线确定为目标曲线,将目标曲线的几何特征参数确定为该元素的几何特征参数。
在上述例2的基础上,可选地,对多个第三分辨率信息和多个距离进行线性拟合之前,制作设备能够将多个第三分辨率信息中符合目标条件的第三分辨率信息删除,目标条件是指与多个第三分辨率信息的平均分辨率信息之间的差异值大于差异阈值。
参见图8,若制作设备确定曲线801上各个坐标点的第三分辨率信息的平均分辨率信息为10,差异阈值为2。若曲线801上的三个点A、B和C对应的第三分辨率信息分别为13、15和14,那么制作设备能够将三个点A、B和C从曲线801中删除。若制作设备确定曲线802上各个坐标点的第三分辨率信息的平均分辨率信息为8,差异阈值为2。若曲线802上的一个点D对应的第三分辨率信息分别为11,那么制作设备能够将一个点D从曲线802中删除。参见图9,制作设备对删除后三个点A、B和C后的曲线801进行线性拟合得到曲线901以及关系数据902。制作设备对删除后一个点D后的曲线802进行线性拟合得到曲线903以及关系数据904。从图9中可以看出,删除符合目标条件的第三分辨率信息之后,制作设备对曲线801和802上坐标点的拟合效果更好,拟合优度R2的提升也能印证这一效果。
需要说明的是,出现符合目标条件的第三分辨率信息是由于该元素上可能存在细边,在旋转虚拟摄像机的过程中,可能出现凹槽或凸边在渲染结果中只有一个像素宽,容易出现跳变。
另外,在制作设备获取第一渲染参数集中的各个参数之后,能够基于第一渲染参数集生成该虚拟场景的预处理渲染文件,制作设备将该虚拟场景的预处理渲染文件发送给终端,终端就能够从该虚拟场景的预处理渲染文件中快速获取第一渲染参数集。
304、终端获取该元素在当前时间点的第二渲染参数集,第二渲染参数集中的渲染参数为在当前时间点采集到的渲染参数。
可选地,第二渲染参数集包括下述至少一项参数:该元素与虚拟场景中虚拟摄像机之间的距离、虚拟摄像机的视场角、该元素的缩放倍数、待显示的目标画面的最大边长以及分辨率最高的贴图的最大边长。
下面分别对终端获取第二渲染参数集中参数的过程进行说明。
对于该元素与虚拟场景中虚拟摄像机之间的距离来说,在游戏应用程序运行过程中,被控虚拟对象所在的位置,也即是虚拟摄像机所在的位置,该元素与虚拟摄像机之间的距离,也即是被控虚拟对象与该元素之间的距离。用户在控制被控虚拟对象在虚拟场景中进行移动时,被控虚拟对象与该元素之间的距离也在随之变化,终端能够实时获取被控虚拟对象与该元素之间的距离。
对于虚拟摄像机的视场角来说,参见图10,1001为虚拟摄像机,1002也即是虚拟摄像机的视场角。虚拟摄像机视场角的变化频率较低,若用户想要改变虚拟摄像机的视场角,那么需要在设置面板中进行调节,终端能够获取用户调节之后的虚拟摄像机的视场角。
对于该元素的缩放倍数来说,游戏应用程序在不同终端上运行时,由于终端的显示设备的尺寸可能是不同的,为了在不同的终端上均能够完整的显示虚拟场景,游戏应用程序能够根据显示设备的尺寸对虚拟场景中的元素进行放大或缩小。终端在对游戏画面进行放大或缩小的过程中,该元素的尺寸也会随之变化,终端能够获取该元素变化后尺寸和变化前尺寸的比值,也即是该元素的缩放倍数。
对于待显示的目标画面的最大边长来说,游戏应用程序在不同终端上运行时,由于终端的显示设备的尺寸可能是不同的,为了在不同的终端上均能够完整的显示虚拟场景,游戏应用程序能够根据显示设备的尺寸对虚拟场景中的元素进行放大或缩小。终端能够获取放大或缩小后,该画面长度和宽度中的较大值,也即是待显示的目标画面的最大边长。
对于分辨率最高的贴图的最大边长来说,经过上述步骤302之后,该元素的贴图被处理成了一系列分辨率不同的贴图,终端能够从一系列分辨率不同的贴图中确定分辨率最高的贴图,将该分辨率最高的贴图的长度和宽度中的较大值,作为分辨率最高的贴图的最大边长。
305、终端基于第一渲染参数集和第二渲染参数集,确定渲染该元素时采用贴图的第一分辨率信息,第一分辨率信息用于指示渲染该元素时采用的贴图的分辨率。
其中,第一渲染参数集包括下述至少一项参数:基准渲染画面的最大边长、基准渲染画面中渲染该元素时采用贴图的最大边长以及该元素的几何特征参数,基准渲染画面为制作虚拟场景时基于该元素渲染的画面,第一渲染参数集中各个参数的获取方法参见步骤303的相关描述,在此不再赘述。
在一种可能的实施方式中,终端将第一渲染参数集中的渲染参数和第二渲染参数集中的渲染参数进行融合,得到第一分辨率信息。
举例来说,终端获取视野宽度缩放比例、画面尺寸缩放比例以及贴图尺寸缩放比例,视野宽度缩放比例为视场角与该距离的乘积与缩放倍数构成的比例,画面尺寸缩放比例为基准渲染画面的最大边长和目标画面的最大边长之间的比例,贴图尺寸缩放比例为基准渲染画面中渲染元素时采用贴图的最大边长与分辨率最高的贴图的最大边长之间的比例。终端将元素的几何特征参数与视野宽度缩放比例,画面尺寸缩放比例以及贴图尺寸缩放比例进行融合,得到第一分辨率信息。
下面结合公式(1)对上述举例进行进一步说明。
其中,mipLv为第一分辨率信息,dist为元素与虚拟摄像机之间的距离,fov为虚拟摄像机的视场角,scale为元素的缩放倍数,也即是视野宽度缩放比例,baseRtLength为基准渲染画面的最大边长,rtLength为待显示的目标画面的最大边长,也即是画面尺寸缩放比例,texLength为分辨率最高的贴图的最大边长,baseTexLength为基准渲染画面中渲染该元素时采用贴图的最大边长,也即是贴图尺寸缩放比例,a和b为该元素的几何特征参数。
基于上述步骤304的相关描述,在游戏过程中,虚拟摄像机的视场角fov,待显示的画面的最大边长不会频繁发生变化,该元素的缩放倍数对于特定终端也是固定的,基于上述描述,对上述公式(1)做如下变换:
通过上述变换,dist2通过向量运算只需3次乘法和2次加法可求得,替代dist可以节省一次开根号运算;作为贴图的固有参数,能够与该元素的贴图绑定存储;作为该元素的固有参数,能够与该元素绑定存储;d是变化概率较低的参数,能够有终端单独进行缓存,只在设置改变时进行更新,通过这样的变换,能够减少终端的数据处理量,节省终端的处理资源。
可选地,在步骤304之前,响应于被控虚拟对象在所述虚拟场景中获取了虚拟瞄准镜,将所述第二渲染参数集中的所述虚拟摄像机的视场角替换为开镜视场角,所述开镜视场角为开启所述虚拟瞄准镜之后所述虚拟摄像机的视场角。
在游戏过程中,如果用户控制被控虚拟对象使用虚拟瞄准镜,开镜和关镜会频繁改变虚拟摄像机的视场角fov。在这种情况下,留给终端更新第一分辨率信息的时间极短,如果在视场角fov改变之后才更新第一分辨率信息,容易导致清晰度降低的现象,虚拟场景的显示效果不佳,这是由于,用户开镜时,相当于把远处的元素进行放大显示,放大显示的过程中,为了保证显示的清晰度,需要采用更高分辨率的贴图对元素进行渲染。而在视场角fov改变之后,终端可能无法及时加载更高分辨率的贴图,从而导致开镜后画面清晰度降低的现象。因此,在本申请实施例中,终端在被控虚拟对象获得虚拟瞄准镜时就以开镜时的fov视场角作为确定第一分辨率信息的参数,这样用户的开镜和关镜操作均不会导致虚拟摄像机的视场角fov发生变化,提高虚拟场景的显示效果。在一些实施例中,当被控虚拟对象失去虚拟瞄准镜后,终端能够恢复虚拟摄像机的视场角。
306、终端采用第一分辨率信息所指示的分辨率对应的贴图,对该元素进行渲染,得到虚拟场景。
可选地,在贴图还用于渲染虚拟场景中其他元素的情况下,终端确定其他元素的第四分辨率信息,第四分辨率信息用于指示渲染其他元素时采用的贴图的分辨率。响应于第四分辨率信息指示的分辨率小于第一分辨率信息指示的分辨率,终端采用第一分辨率信息所指示的分辨率对应的贴图,对其他元素进行渲染。
在这种实施方式下,当存在一个贴图被用于多个元素的渲染时,终端只需加载分辨率最高的贴图,基于分辨率最高的贴图对多个元素进行渲染即可,无需加载其他分辨率较低的贴图,从而减少存储空间的占用。
举例来说,在游戏过程中,对于一个元素A(模型)来说,总有几个位置(顶点)与虚拟摄像机之间的距离远,几个位置(顶点)与虚拟摄像机之间的距离近,因此终端通过上述步骤301-306得到的第一分辨率信息所指示分辨率对应的贴图(下面简称为该贴图),实际上是渲染元素A上与虚拟摄像机距离最近的贴图。对于元素A上的其他位置来说,终端能够以分辨率低于该贴图的贴图来进行渲染,在这种情况下,若该贴图的分辨率为512×512,那么终端能够同时加载由分辨率为512×512、256×256、128×128、 64×64、32×32、16×16、8×8以及4×4的贴图组成的第一贴图组。当对该元素进行渲染时,终端基于该元素上不同位置与虚拟摄像机之间的距离,从第一贴图组中获取对应分辨率的贴图,也即是与虚拟摄像机距离较远的位置就能够以较低分辨率的贴图进行渲染,与虚拟摄像机距离较近的位置就能够以较高分辨率的贴图进行渲染,从而在保证显示效果的前提下,减少终端的开销。
另外,在该贴图还用于渲染虚拟场景中元素B的情况下,终端能够通过上述步骤301-306,确定元素B上距离虚拟摄像机最近位置所需的贴图分辨率,比如,元素B距离虚拟摄像机最近位置所需贴图的分辨率为256×256,256<512,那么终端能够直接从第一贴图组中获取分辨率为256×256的贴图来渲染元素B距离虚拟摄像机最近位置,元素B上的其他位置所需的贴图由终端根据其他位置与虚拟摄像机之间的距离确定,确定之后贴图同样从第一贴图组中进行获取,在这种情况下,终端也无需再次加载贴图,直接从贴图组中获取对应贴图就能够对元素B进行渲染,大大较少了终端的开销。
还有,在该贴图还用于渲染虚拟场景中元素C的情况下,终端能够通过上述步骤301-306,确定元素C上距离虚拟摄像机最近位置所需的贴图分辨率,比如,元素C距离虚拟摄像机最近位置所需贴图的分辨率为1024×1024,1024大于512,那么终端能够加载第二贴图组,第二贴图组也就由分辨率为1024×1024、512×512、256×256、128×128、 64×64、32×32、16×16、8×8以及4×4的贴图组成,与此同时,终端能够将第一贴图组从显存中删除,减少存储空间的占用。在后续渲染过程中,对于元素A、元素B以及元素C来说,终端均能够从第二贴图组中获取对应分辨率的贴图来进行渲染,从而减少终端的开销。
当然,在一些实施例中,终端也能够提前确定该贴图对应的元素,并分别确定每个元素所需的最高分辨率的贴图,终端加载由该分辨率最高的贴图组成的第三贴图组后,每个元素均能够从该第三贴图组中获取对应分辨率的贴图进行渲染,从而避免每个元素均需要重新加载贴图的情况,进一步减少终端的开销。
需要说明的是,上述步骤301-306可以分布在不同的逻辑帧中进行执行,从而使得终端的负载更加均匀和轻量。
在实验过程中,对元素(模型)进行渲染时,终端先加载该元素的贴图文件的文件头。终端解析文件头信息以后,能够确定每一层级的Mipmap数据在文件中的位置。终端只加载所需Mipmap的贴图而不是整个贴图文件。每降一级Mipmap,数据能减少75%左右。在场景广阔的游戏中,往往大部分元素都在被控虚拟对象的远处,因此大部分纹理只需要低精度的Mipmap,从而节省大量显存空间和IO时间。
采用本申请实施例提供的技术方案以后,游戏过程中显存下降150-200MB,占贴图总量16%-20%,终端在使用DirectX12版本中还能节省等量的内存空间,显著缓解性能压力,与此同时,画面效果和帧率完全没有缩减,不需要牺牲其他方面的品质;预处理64平方公里的场景中全部三维模型只需要2分钟,产生的数据文件仅仅50到150kb,不增加开发流程负担,且后续更新的游戏场景也能自动更新数据,无需占用人力;最后,允许技术人员为不同的元素更灵活地定制纹理,进一步改善细节而不用担心影响性能。
需要说明的是,上述对301-305的描述是以终端作为执行主体为例进行说明的,在其他可能的实施方式中,也能够由服务器作为执行主体来执行上述步骤301-305,也即是终端仅起到接收用户操作以及显示虚拟场景的作用,对用户操作的处理以虚拟场景的生成均是由服务器来进行的,本申请实施例对于执行主体的类型不做限定。
通过本申请提供的技术方案,结合固定不变的渲染参数和游戏过程中可能变化的渲染参数来确定第一分辨率信息。相较于相关技术中仅通过距离来确定分辨率信息的方案,本申请实施例提供的技术方案涉及更多的参数,更加全面的结合了游戏运行的实际情况,降低对元素进行渲染时所采用贴图的分辨率。基于分辨率更低的贴图对元素进行渲染,能够降低显示虚拟场景时处理资源的消耗,提升运行的流畅度。
图11是本申请实施例提供的一种虚拟场景显示装置结构示意图,参见图11,装置包括:第一获取模块1101、第二获取模块1102、确定模块1103以及渲染模块1104。
第一获取模块1101,用于获取虚拟场景中待渲染的元素的第一渲染参数集,第一渲染参数集中的渲染参数是为元素配置的固定不变的渲染参数。
第二获取模块1102,用于获取元素在当前时间点的第二渲染参数集,第二渲染参数集中的渲染参数为在当前时间点采集到的渲染参数。
确定模块1103,用于基于第一渲染参数集和第二渲染参数集,确定渲染元素时采用贴图的第一分辨率信息,第一分辨率信息用于指示渲染元素时采用的贴图的分辨率。
渲染模块1104,用于采用第一分辨率信息所指示的分辨率对应的贴图,对元素进行渲染,得到虚拟场景。
在一种可能的实施方式中,第一渲染参数集包括下述至少一项参数:
基准渲染画面的最大边长、基准渲染画面中渲染元素时所采用贴图的最大边长以及元素的几何特征参数,基准渲染画面为制作虚拟场景时基于元素渲染的画面。
第二渲染参数集包括下述至少一项参数:
元素与虚拟场景中虚拟摄像机之间的距离、虚拟摄像机的视场角、元素的缩放倍数、待显示的目标画面的最大边长以及分辨率最高的贴图的最大边长。
在一种可能的实施方式中,确定模块用于获取视野宽度缩放比例、画面尺寸缩放比例以及贴图尺寸缩放比例,视野宽度缩放比例为视场角与距离的乘积与缩放倍数之间的比例,画面尺寸缩放比例为基准渲染画面的最大边长和目标画面的最大边长之间的比例,贴图尺寸缩放比例为基准渲染画面中渲染元素时采用贴图的最大边长与分辨率最高的贴图的最大边长之间的比例。将元素的几何特征参数与视野宽度缩放比例,画面尺寸缩放比例以及贴图尺寸缩放比例进行融合,得到第一分辨率信息。
在一种可能的实施方式中,装置还包括:
几何特征参数获取模块,用于基于在多个角度下元素与虚拟摄像机之间的多个距离,获取元素的多个第二分辨率信息,第二分辨率信息用于指示在对应的角度和对应的距离下渲染元素时所采用贴图的分辨率,第二分辨率信息指示的分辨率与对应的距离负相关,角度指代虚拟摄像机与元素之间的夹角。基于多个第二分辨率信息和多个距离,获取元素的几何特征参数。
在一种可能的实施方式中,几何特征参数获取模块用于采用多个第二分辨率信息分别对应的颜色,对元素进行颜色填充,得到元素的多个第一填充图像。基于多个第一填充图像和多个距离,获取元素的几何特征参数。
在一种可能的实施方式中,几何特征参数获取模块用于分别对多个第一填充图像进行降采样,得到多个第二填充图像。基于多个第二填充图像和多个距离,获取元素的几何特征参数。
在一种可能的实施方式中,几何特征参数获取模块用于对于任一第一填充图像,将任一第一填充图像划分为多个降采样区域。分别将每个降采样区域的多个像素点的颜色值中最低的颜色值,确定为每个降采样区域的颜色值。基于多个降采样区域的颜色值,生成对任一第一填充图像进行降采样后的第二填充图像。
在一种可能的实施方式中,几何特征参数获取模块用于基于多个第二填充图像中像素点的颜色以及颜色与分辨率信息的对应关系,确定多个第二填充图像的第三分辨率信息。对确定的多个第三分辨率信息和多个距离进行线性拟合,得到第三分辨率信息和距离之间的关系数据。将关系数据中的比例参数和偏移参数获取为元素的几何特征参数。
在一种可能的实施方式中,几何特征参数获取模块还用于将多个第三分辨率信息中符合目标条件的第三分辨率信息删除,目标条件是指与多个第三分辨率信息的平均分辨率信息之间的差异值大于差异阈值。
在一种可能的实施方式中,装置还包括:
参数替换模块,用于响应于被控虚拟对象在虚拟场景中获取了虚拟瞄准镜,将第二渲染参数集中的虚拟摄像机的视场角替换为开镜视场角,开镜视场角为开启虚拟瞄准镜之后虚拟摄像机的视场角。
在一种可能的实施方式中,第一获取模块用于加载虚拟场景的预处理渲染文件。基于元素的标识,从预处理渲染文件中获取标识对应的第一渲染参数集。
在一种可能的实施方式中,渲染模块还用于在贴图还用于渲染虚拟场景中其他元素的情况下,确定其他元素的第四分辨率信息,第四分辨率信息用于指示渲染其他元素时采用的贴图的分辨率。响应于第四分辨率信息指示的分辨率小于第一分辨率信息指示的分辨率,采用第一分辨率信息所指示的分辨率对应的贴图,对其他元素进行渲染。
需要说明的是:上述实施例提供的虚拟场景显示装置在显示虚拟场景时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的虚拟场景显示装置与虚拟场景显示方法的实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
通过本申请提供的技术方案,结合固定不变的渲染参数和游戏过程中可能变化的渲染参数来确定第一分辨率信息。相较于相关技术中仅通过距离来确定分辨率信息的方案,本申请实施例提供的技术方案涉及更多的参数,更加全面的结合了游戏运行的实际情况,降低对元素进行渲染时所采用贴图的分辨率。基于分辨率更低的贴图对元素进行渲染,能够降低显示虚拟场景时处理资源的消耗,提升运行的流畅度。
本申请实施例提供了一种计算机设备,用于执行上述方法,该计算机设备可以实现为终端或者服务器,下面先对终端的结构进行介绍:
图12是本申请实施例提供的一种终端的结构示意图。可选地,该终端1200是:智能手机、平板电脑、智能电视、台式计算机,车载计算机以及便携计算机等设备。终端1200还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1200包括有:一个或多个处理器1201和一个或多个存储器1202。
处理器1201可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1201可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1201也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1201可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1201还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1202可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1202还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1202中的非暂态的计算机可读存储介质用于存储程序代码,该程序代码用于被处理器1201所执行以实现本申请中方法实施例提供的虚拟场景显示方法。
在一些实施例中,终端1200还可选包括有:***设备接口1203和***设备。处理器1201、存储器1202和***设备接口1203之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口1203相连。具体地,***设备包括:射频电路1204、显示屏1205、摄像头组件1206、音频电路1207、定位组件1208和电源1209中的至少一种。
***设备接口1203可被用于将I/O(Input /Output,输入/输出)相关的***设备连接到处理器1201和存储器1202。在一些实施例中,处理器1201、存储器1202和***设备接口1203被集成在同一芯片或电路板上;在一些其他实施例中,处理器1201、存储器1202和***设备接口1203中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1204用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1204通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1204将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1204包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。
显示屏1205用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1205是触摸显示屏时,显示屏1205还具有采集在显示屏1205的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1201进行处理。此时,显示屏1205还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。
摄像头组件1206用于采集图像或视频。可选地,摄像头组件1206包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。
音频电路1207可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1201进行处理,或者输入至射频电路1204以实现语音通信。
定位组件1208用于定位终端1200的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。
电源1209用于为终端1200中的各个组件进行供电。电源1209可以是交流电、直流电、一次性电池或可充电电池。
在一些实施例中,终端1200还包括有一个或多个传感器1210。该一个或多个传感器1210包括但不限于:加速度传感器1211、陀螺仪传感器1212、压力传感器1213、指纹传感器1214、光学传感器1215以及接近传感器1216。
加速度传感器1211可以检测以终端1200建立的坐标系的三个坐标轴上的加速度大小。
陀螺仪传感器1212可以检测终端1200的机体方向及转动角度,陀螺仪传感器1212可以与加速度传感器1211协同采集用户对终端1200的3D动作。
压力传感器1213可以设置在终端1200的侧边框和/或显示屏1205的下层。当压力传感器1213设置在终端1200的侧边框时,可以检测用户对终端1200的握持信号,由处理器1201根据压力传感器1213采集的握持信号进行左右手识别或快捷操作。当压力传感器1213设置在显示屏1205的下层时,由处理器1201根据用户对显示屏1205的压力操作,实现对UI界面上的可操作性控件进行控制。
指纹传感器1214用于采集用户的指纹,由处理器1201根据指纹传感器1214采集到的指纹识别用户的身份,或者,由指纹传感器1214根据采集到的指纹识别用户的身份。
光学传感器1215用于采集环境光强度。在一个实施例中,处理器1201可以根据光学传感器1215采集的环境光强度,控制显示屏1205的显示亮度。
接近传感器1216用于采集用户与终端1200的正面之间的距离。
本领域技术人员可以理解,图12中示出的结构并不构成对终端1200的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
上述计算机设备还可以实现为服务器,下面对服务器的结构进行介绍:
图13是本申请实施例提供的一种服务器的结构示意图,该服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或多个处理器(Central Processing Units,CPU)1301和一个或多个的存储器1302,其中,一个或多个存储器1302中存储有至少一条程序代码,至少一条程序代码由一个或多个处理器1301加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器1300还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器1300还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括程序代码的存储器,上述程序代码可由处理器执行以完成上述实施例中的虚拟场景显示方法。例如,该计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、只读光盘 (Compact Disc Read-Only Memory,CD-ROM)、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序代码,该计算机程序代码存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机程序代码,处理器执行该计算机程序代码,使得该计算机设备执行上述各种可选实现方式中提供的虚拟场景显示方法。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来程序代码相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
上述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (13)
1.一种虚拟场景显示方法,其特征在于,所述方法包括:
获取虚拟场景中待渲染的元素的第一渲染参数集,所述第一渲染参数集中的渲染参数是为所述元素配置的固定不变的渲染参数,所述第一渲染参数集 包括下述至少一项参数:基准渲染画面的最大边长、所述基准渲染画面中渲染所述元素时所采用贴图的最大边长以及所述元素的几何特征参数,所述基准渲染画面为制作所述虚拟场景时基于所述元素渲染的画面;
获取所述元素在当前时间点的第二渲染参数集,所述第二渲染参数集中的渲染参数为在所述当前时间点采集到的渲染参数,所述第二渲染参数集包括下述至少一项参数:所述元素与所述虚拟场景中虚拟摄像机之间的距离、所述虚拟摄像机的视场角、所述元素的缩放倍数、待显示的目标画面的最大边长以及分辨率最高的所述贴图的最大边长;
获取视野宽度缩放比例、画面尺寸缩放比例以及贴图尺寸缩放比例,所述视野宽度缩放比例为所述视场角与所述距离的乘积与所述缩放倍数之间的比例,所述画面尺寸缩放比例为所述基准渲染画面的最大边长和所述目标画面的最大边长之间的比例,所述贴图尺寸缩放比例为所述基准渲染画面中渲染所述元素时采用贴图的最大边长与所述分辨率最高的所述贴图的最大边长之间的比例;
将所述元素的几何特征参数与所述视野宽度缩放比例,所述画面尺寸缩放比例以及所述贴图尺寸缩放比例进行融合,得到第一分辨率信息,所述第一分辨率信息用于指示渲染所述元素时采用的贴图的分辨率;
采用所述第一分辨率信息所指示的分辨率对应的贴图,对所述元素进行渲染,得到所述虚拟场景。
2.根据权利要求1所述的方法,其特征在于,所述元素的几何特征参数的获取方法包括:
基于在多个角度下所述元素与所述虚拟摄像机之间的多个距离,获取所述元素的多个第二分辨率信息,所述第二分辨率信息用于指示在对应的角度和对应的距离下渲染所述元素时所采用贴图的分辨率,所述第二分辨率信息指示的分辨率与对应的距离负相关,所述角度指代所述虚拟摄像机与所述元素之间的夹角;
基于所述多个第二分辨率信息和所述多个距离,获取所述元素的几何特征参数。
3.根据权利要求2所述的方法,其特征在于,所述基于所述多个第二贴图分辨率信息和所述多个距离,获取所述元素的几何特征参数包括:
采用所述多个第二分辨率信息分别对应的颜色,对所述元素进行颜色填充,得到所述元素的多个第一填充图像;
基于所述多个第一填充图像和所述多个距离,获取所述元素的几何特征参数。
4.根据权利要求3所述的方法,其特征在于,所述基于所述多个第一填充图像和所述多个距离,获取所述元素的几何特征参数包括:
分别对所述多个第一填充图像进行降采样,得到多个第二填充图像;
基于所述多个第二填充图像和所述多个距离,获取所述元素的几何特征参数。
5.根据权利要求4所述的方法,其特征在于,所述分别对所述多个第一填充图像进行降采样,得到多个第二填充图像包括:
对于任一第一填充图像,将所述任一第一填充图像划分为多个降采样区域;
分别将每个降采样区域的多个像素点的颜色值中最低的颜色值,确定为所述每个降采样区域的颜色值;
基于所述多个降采样区域的颜色值,生成对所述任一第一填充图像进行降采样后的第二填充图像。
6.根据权利要求5所述的方法,其特征在于,所述基于所述多个第二填充图像和所述多个距离,获取所述元素的几何特征参数包括:
基于所述多个第二填充图像中像素点的颜色以及颜色与分辨率信息的对应关系,确定所述多个第二填充图像的第三分辨率信息;
对确定的多个第三分辨率信息和所述多个距离进行线性拟合,得到所述第三分辨率信息和所述距离之间的关系数据;
将所述关系数据中的比例参数和偏移参数获取为所述元素的几何特征参数。
7.根据权利要求6所述的方法,其特征在于,所述对确定的多个第三贴图分辨率信息和所述多个距离进行线性拟合之前,所述方法还包括:
将所述多个第三分辨率信息中符合目标条件的第三分辨率信息删除,所述目标条件是指与所述多个第三分辨率信息的平均分辨率信息之间的差异值大于差异阈值。
8.根据权利要求1所述的方法,其特征在于,所述基于所述第一渲染参数集和所述第二渲染参数集,确定渲染所述元素时采用贴图的第一分辨率信息之前,所述方法还包括:
响应于被控虚拟对象在所述虚拟场景中获取了虚拟瞄准镜,将所述第二渲染参数集中的所述虚拟摄像机的视场角替换为开镜视场角,所述开镜视场角为开启所述虚拟瞄准镜之后所述虚拟摄像机的视场角。
9.根据权利要求1所述的方法,其特征在于,所述获取虚拟场景中待渲染的元素的第一渲染参数集包括:
加载所述虚拟场景的预处理渲染文件;
基于所述元素的标识,从所述预处理渲染文件中获取所述标识对应的所述第一渲染参数集。
10.根据权利要求1所述的方法,其特征在于,所述采用所述第一分辨率信息所指示分辨率的所述贴图,对所述元素进行渲染,得到所述虚拟场景之后,所述方法还包括:
在所述贴图还用于渲染所述虚拟场景中其他元素的情况下,确定所述其他元素的第四分辨率信息,所述第四分辨率信息用于指示渲染所述其他元素时采用的所述贴图的分辨率;
响应于所述第四分辨率信息指示的分辨率小于所述第一分辨率信息指示的分辨率,采用所述第一分辨率信息所指示的分辨率对应的所述贴图,对所述其他元素进行渲染。
11.一种虚拟场景显示装置,其特征在于,所述装置包括:
第一获取模块,用于获取虚拟场景中待渲染的元素的第一渲染参数集,所述第一渲染参数集中的渲染参数是为所述元素配置的固定不变的渲染参数,所述第一渲染参数集 包括下述至少一项参数:基准渲染画面的最大边长、所述基准渲染画面中渲染所述元素时所采用贴图的最大边长以及所述元素的几何特征参数,所述基准渲染画面为制作所述虚拟场景时基于所述元素渲染的画面;
第二获取模块,用于获取所述元素在当前时间点的第二渲染参数集,所述第二渲染参数集中的渲染参数为在所述当前时间点采集到的渲染参数,所述第二渲染参数集包括下述至少一项参数:所述元素与所述虚拟场景中虚拟摄像机之间的距离、所述虚拟摄像机的视场角、所述元素的缩放倍数、待显示的目标画面的最大边长以及分辨率最高的所述贴图的最大边长;
确定模块,用于获取视野宽度缩放比例、画面尺寸缩放比例以及贴图尺寸缩放比例,所述视野宽度缩放比例为所述视场角与所述距离的乘积与所述缩放倍数之间的比例,所述画面尺寸缩放比例为所述基准渲染画面的最大边长和所述目标画面的最大边长之间的比例,所述贴图尺寸缩放比例为所述基准渲染画面中渲染所述元素时采用贴图的最大边长与所述分辨率最高的所述贴图的最大边长之间的比例;将所述元素的几何特征参数与所述视野宽度缩放比例,所述画面尺寸缩放比例以及所述贴图尺寸缩放比例进行融合,得到第一分辨率信息,所述第一分辨率信息用于指示渲染所述元素时采用的贴图的分辨率;
渲染模块,用于采用所述第一分辨率信息所指示的分辨率对应的贴图,对所述元素进行渲染,得到所述虚拟场景。
12.一种计算机设备,其特征在于,所述计算机设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条程序代码,所述程序代码由所述一个或多个处理器加载并执行以实现如权利要求1至权利要求10任一项所述的虚拟场景显示方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述程序代码由处理器加载并执行以实现如权利要求1至权利要求10任一项所述的虚拟场景显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110055106.1A CN112370784B (zh) | 2021-01-15 | 2021-01-15 | 虚拟场景显示方法、装置、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110055106.1A CN112370784B (zh) | 2021-01-15 | 2021-01-15 | 虚拟场景显示方法、装置、设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112370784A CN112370784A (zh) | 2021-02-19 |
CN112370784B true CN112370784B (zh) | 2021-04-09 |
Family
ID=74581924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110055106.1A Active CN112370784B (zh) | 2021-01-15 | 2021-01-15 | 虚拟场景显示方法、装置、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112370784B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113069762A (zh) * | 2021-03-15 | 2021-07-06 | 广州三七互娱科技有限公司 | 虚拟角色的眼部图像生成方法、装置及电子设备 |
CN113181641B (zh) * | 2021-04-29 | 2023-11-21 | 广州三七极耀网络科技有限公司 | 虚拟场景中游戏角色的渲染方法、装置及电子设备 |
CN113269858B (zh) * | 2021-07-19 | 2021-11-30 | 腾讯科技(深圳)有限公司 | 虚拟场景渲染方法、装置、计算机设备和存储介质 |
CN113902881A (zh) * | 2021-10-18 | 2022-01-07 | 腾讯科技(深圳)有限公司 | 虚拟场景的适配显示方法、装置、设备、介质及程序产品 |
CN116958386A (zh) * | 2022-04-12 | 2023-10-27 | 华为云计算技术有限公司 | 一种数据处理的方法、***和设备 |
CN115712351B (zh) * | 2022-11-25 | 2023-08-29 | 之江实验室 | 一种面向多人远程混合现实共享场景的分级渲染与交互方法和*** |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6239807B1 (en) * | 1998-03-13 | 2001-05-29 | Mgi Software Corporation | Method and system for multi-resolution texture mapping |
US20120162215A1 (en) * | 2010-12-22 | 2012-06-28 | Electronics And Telecommunications Research Institute | Apparatus and method for generating texture of three-dimensional reconstructed object depending on resolution level of two-dimensional image |
KR102315280B1 (ko) * | 2014-09-01 | 2021-10-20 | 삼성전자 주식회사 | 렌더링 장치 및 방법 |
CN111311720B (zh) * | 2018-12-12 | 2023-05-23 | 网易(杭州)网络有限公司 | 一种纹理图像的处理方法和装置 |
CN110363839B (zh) * | 2019-06-19 | 2023-08-11 | 深圳市彬讯科技有限公司 | 模型渲染方法、装置、计算机设备及存储介质 |
CN110969580B (zh) * | 2019-12-10 | 2024-02-20 | 北京猎豹移动科技有限公司 | 图像显示方法和装置 |
CN117132702A (zh) * | 2020-04-08 | 2023-11-28 | 网易(杭州)网络有限公司 | 游戏的光影数据处理方法、装置以及游戏设备 |
CN111544886B (zh) * | 2020-04-30 | 2021-07-09 | 腾讯科技(深圳)有限公司 | 一种画面显示的方法以及相关装置 |
CN111729307B (zh) * | 2020-07-30 | 2023-08-22 | 腾讯科技(深圳)有限公司 | 虚拟场景显示方法、装置、设备以及存储介质 |
-
2021
- 2021-01-15 CN CN202110055106.1A patent/CN112370784B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112370784A (zh) | 2021-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112370784B (zh) | 虚拟场景显示方法、装置、设备以及存储介质 | |
US20230053462A1 (en) | Image rendering method and apparatus, device, medium, and computer program product | |
CN112933599B (zh) | 三维模型渲染方法、装置、设备及存储介质 | |
CN111729307B (zh) | 虚拟场景显示方法、装置、设备以及存储介质 | |
EP2643820A1 (en) | Rendering and navigating photographic panoramas with depth information in a geographic information system | |
CN111932463B (zh) | 图像处理方法、装置、设备及存储介质 | |
CN107784683B (zh) | 四边形化的分层深度图像 | |
CN113220251B (zh) | 物体显示方法、装置、电子设备及存储介质 | |
CN112138386A (zh) | 一种体积渲染方法、装置、存储介质及计算机设备 | |
US9092900B2 (en) | Terrain-based virtual camera tilting, and applications thereof | |
CN112245926A (zh) | 虚拟地形的渲染方法、装置、设备及介质 | |
CN112884874A (zh) | 在虚拟模型上贴花的方法、装置、设备及介质 | |
CN116057577A (zh) | 用于增强现实的地图 | |
US10347034B2 (en) | Out-of-core point rendering with dynamic shapes | |
CN116672706B (zh) | 光照渲染方法、装置、终端和存储介质 | |
JP2023525945A (ja) | モバイル機器における大規模建築物の拡張現実具現のためのデータ最適化及びインターフェース向上方法 | |
CN112843700A (zh) | 地形图像的生成方法、装置、计算机设备和存储介质 | |
CN117218273A (zh) | 图像渲染方法以及装置 | |
CN116402931A (zh) | 体积渲染方法、装置、计算机设备和计算机可读存储介质 | |
US20230186575A1 (en) | Method and apparatus for combining an augmented reality object in a real-world image | |
CN116993889A (zh) | 纹理渲染方法、装置、终端及存储介质 | |
CN116824082B (zh) | 虚拟地形的绘制方法、装置、设备、存储介质及程序产品 | |
CN117557711B (zh) | 可视域的确定方法、装置、计算机设备、存储介质 | |
CN117197319B (zh) | 图像生成方法、装置、电子设备及存储介质 | |
US11875445B2 (en) | Seamless image processing of a tiled image region |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40038857 Country of ref document: HK |