一种游戏中的地形数据的处理方法及装置与流程

文档序号:28426699发布日期:2022-01-12 00:22阅读:152来源:国知局
一种游戏中的地形数据的处理方法及装置与流程

1.本技术涉及数据处理技术领域,具体涉及一种游戏中的地形数据的处理方法及装置。


背景技术:

2.目前,开放性世界主题游戏越来越多,此类游戏的场景区域中包含大量自然地形。所谓自然地形,是指模拟真实世界的地形,例如山地、平原、森林等不同地形。而当地形起伏较大时在游戏界面中展示的地形会出现不同程度的贴图拉伸,对视觉效果造成影响。
3.现有技术中,一般采用以下处理方案以恢复视觉效果:一是,通过增加模型包边遮挡或隐藏出现拉伸的部分,从而修复视觉效果。二是,降低地形坡度可在一定程度上环境贴图拉伸。但是,过多的模型堆叠增加性能消耗,降低坡度可能增加视觉表现上的局限性。
4.因此,如何解决游戏中地形起伏过大导致的贴图纹理拉伸问题非常重要。


技术实现要素:

5.本技术实施例提供的游戏中的地形数据的处理方法,解决了游戏中地形起伏过大导致的贴图纹理拉伸问题。
6.本技术实施例提供一种游戏中的地形数据的处理方法,包括:确定游戏的地形数据中待处理的目标对象;获取所述目标对象包含的纹理贴图以及法线贴图;按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据;根据所述第一平铺映射数据以及所述第二平铺映射数据,获得用于在用户端的游戏界面中展示的目标对象。
7.可选的,所述确定游戏的地形数据中待处理的目标对象,包括:获取所述游戏的地形数据中的物体对象,根据所述物体对象与所述地形数据的水平面之间的角度,确定所述物体对象为待处理的目标对象;或者,获取所述地形数据中的物体对象的属性配置数据,如果所述属性配置数据包括预先设定的拉伸处理标记,则确定所述物体对象为所述待处理的目标对象。
8.可选的,所述根据所述物体对象与所述地形数据的水平面之间的角度,确定所述物体对象为待处理的目标对象,包括:如果所述物体对象的地表线与所述水平面之间的角度小于第一坡度阈值,或者,所述物体对象的地表面对应的法向与所述水平面对应的法向之间的夹角大于第二坡度阈值,则将所述物体对象作为所述目标对象。
9.可选的,还包括:根据所述游戏对应的虚拟摄像机相对于所述地形数据的位置移动,拾取所述地形数据中与所述虚拟摄像机之间的距离小于预设距离阈值的物体对象。
10.可选的,所述按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据,包括:通过所述纹理贴图对应的图形材质函数,识别所述纹理贴图的世界空间纹理坐标,并在所述地形数据的三维位置坐标方向进行平铺映射,得到所述第一平铺映射数据;通过所述法线贴图对应的图形材
质函数,识别所述法线贴图的世界空间纹理坐标,并在所述地形数据的三维位置坐标方向进行平铺映射,得到所述第二平铺映射数据。
11.可选的,所述图像材质函数为包含多个节点的世界一致纹理函数。
12.可选的,还包括:将所述纹理贴图以及所述法线贴图分别转换为各自对应的纹理对象以及法线纹理对象,分别输入各自的世界一致纹理函数所包含的纹理对象节点;分别拾取所述纹理贴图以及所述法线贴图各自的绝对世界坐标值,将所述各自的绝对世界坐标值,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的绝对世界坐标节点;获取所述纹理贴图以及所述法线贴图各自的纹理重复程度数据,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的纹理尺寸节点。
13.可选的,还包括:获取所述纹理贴图以及所述法线贴图各自的融合过渡参数值,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的投射过渡对比度节点。
14.可选的,还包括:将所述纹理贴图以及所述法线贴图各自的alpha通道设置为开启状态。
15.可选的,还包括:获取所述目标对象的世界空间顶点法线,分别输入所述纹理贴图以及所述法线贴图各自对应世界一致纹理函数所包含的世界空间法线节点,从而确定所述纹理贴图以及所述法线贴图各自的上方向轴的法线方向。
16.可选的,还包括:根据所述法线贴图的世界纹理坐标数据,对所述法线贴图的上方向进行反向操作。
17.可选的,所述方法用于服务端;所述方法还包括:向用户端提供所述用于在用户端的游戏界面中展示的目标对象;其中,所述用户端用于在游戏界面中渲染出所述目标对象。
18.可选的,所述方法用于用户端;所述方法还包括:在所述用户端的游戏界面中渲染出所述目标对象。
19.本技术实施例还提供一种游戏中的地形数据的处理装置,包括:目标对象确定单元,用于确定游戏的地形数据中待处理的目标对象;数据提取单元,用于获取所述目标对象包含的纹理贴图以及法线贴图;映射单元,用于按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据;展示单元,用于根据所述第一平铺映射数据以及所述第二平铺映射数据,获得用于在用户端的游戏界面中展示的目标对象。
20.本技术实施例还提供一种游戏中地形数据的处理方法,包括:获得游戏的地形数据中的目标对象;所述目标对象为采用前述游戏中地形数据的处理方法处理得到的用于在用户端的游戏界面中展示的目标对象;在所述游戏的游戏界面中渲染出所述目标对象。
21.可选的,所述获得游戏的地形数据中的目标对象,包括:响应于检测到针对获取所述用户端的gpu配置信息的用户授权信息,获取所述用户端的gpu配置信息;如果所述用户端的gpu配置信息满足预设配置条件,则获取所述目标对象。
22.可选的,所述获得游戏的地形数据中的目标对象,包括:响应于检测到所述用户端的网络传输速度满足预设网速条件,或者,检测到所述用户端的清晰度配置信息,获取所述目标对象。
23.本技术实施例还提供一种游戏中地形数据的处理装置,包括:对象获取单元,用于
获得游戏的地形数据中的目标对象;所述目标对象为采用前述游戏中地形数据的处理方法处理得到的用于在用户端的游戏界面中展示的目标对象;展示单元,用于在所述游戏的游戏界面中渲染出所述目标对象。
24.与现有技术相比,本技术具有以下优点:
25.本技术实施例提供的一种游戏中的地形数据的处理方法及装置,通过获取游戏的地形数据中的目标对象所包含的纹理贴图以及法线贴图;按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据;根据所述第一平铺映射数据以及所述第二平铺映射数据,获得用于在用户端的游戏界面中展示的目标对象。对目标对象包含的纹理贴图及法线贴图分别对不同预定坐标方向的纹理进行平铺映射,使得游戏中的地图更加贴近现实,解决了游戏中地形起伏过大导致的贴图纹理拉伸问题。进一步,利用特定图形材质函数分别对纹理贴图及法线贴图进行平铺映射,可以在不增加用户端额外的资源消耗的情况下使得游戏中的地图更加接近实际的可视外观。进一步,在用户端的游戏界面中渲染出所述目标对象,给用户提供更好的视觉体验。
26.本技术实施例提供的一种游戏中的地形数据的处理方法及装置,通过获得游戏的地形数据中的目标对象;所述目标对象为采用本技术实施例提供的前述方法处理得到的用于在用户端的游戏界面中展示的目标对象;在所述游戏的游戏界面中渲染出所述目标对象。对目标对象包含的纹理贴图及法线贴图分别对不同预定坐标方向的纹理进行平铺映射,可以使得游戏中的地图更加贴近现实。进一步,利用特定图形材质函数分别对纹理贴图及法线贴图进行平铺映射,可以在不增加用户端额外的资源消耗的情况下,解决游戏中地形起伏过大导致的贴图纹理拉伸问题。进一步,在用户端的游戏界面中渲染出所述目标对象,给用户提供更好的视觉体验。
附图说明
27.图1是本技术实施例提供的方法的系统架构示例;
28.图2是本技术第一实施例提供的游戏中地形数据的处理方法的处理流程图;
29.图3是本技术第一实施例提供的基于蓝图节点配置地形对象的示意图;
30.图3a是本技术第一实施例提供的图像材质函数的不同输入信息得到的不同视觉效果示意图;
31.图4是本技术第一实施例提供的应用所述游戏中地形数据的处理方法获得的目标对象的视觉效果示意图;
32.图4a是本技术第一实施例提供的应用所述游戏中地形数据的处理方法处理后得到的110度坡的视觉效果示意图;
33.图5是本技术实施例提供的方法的系统架构图包含的用户端的一个示例;
34.图6是本技术实施例提供的方法的系统架构图包含的服务端的一个示例;
35.图7是本技术第二实施例提供的游戏中地形数据的处理方法的处理流程图;
36.图8是本技术第三实施例提供的游戏中地形数据的处理装置示意图。
37.图9是本技术第四实施例提供的游戏中地形数据的处理装置示意图。
具体实施方式
38.在下面的描述中阐述了很多具体细节以便于充分理解本技术。但是本技术能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施的限制。
39.本技术实施例提供一种游戏中地形数据的处理方法及装置。在下面的实施例中逐一进行说明。
40.在具有大量自然地形的游戏中,用户可以在游戏场景区域的各种地形中进行移动,并进行战斗、建设、探测宝藏矿物类资源或种植等游戏操作。所谓自然地形,是指模拟真实世界的地形,例如山地、平原、森林等不同地形。而当地形起伏较大时在游戏界面中展示的地形会出现不同程度的贴图拉伸,使得游戏中渲染出的视觉效果较差。例如,对于悬崖、陡坡、陡坎等,贴图拉伸后的视觉效果与真实自然地形相差较大。现有技术的技术方案中,一般在面对比较明显的贴图拉伸的情况下会采用岩石,山体等模型对拉伸的地形贴图进行遮盖,或者是减缓地形的坡度来解决拉伸影响。但是,采用遮盖方案存在过多的模型堆叠时会显著增加客户端的性能消耗。而降低坡度来缓解贴图拉伸,则会增加美术表现上的局限性。
41.本技术实施例提供的方法中,利用图形材质函数解决地形坡度较大时可能出现的贴图拉伸问题,使得游戏中的地形的视觉效果更加贴近现实,优选地利用图形材质函数进行处理,可以在不增加用户端资源消耗的情况下解决地形坡度较大时可能出现的贴图拉伸问题。
42.为便于理解,以下结合图1给出本技术实施例提供的方法的系统架构的说明。图1所示的系统架构示例中,包括:用户端101、服务端102、开发端103。本实施例中用户端101可以是,但不限于便携终端、手机、pad、个人电脑或具有图像处理功能的电子设备等,用于运行包含有自然地形的游戏程序,并且在自然地形中存在坡度和/或起伏较大的情况下其可视外观比较贴近现实。用户端101与服务端102通过通信网络相互连接,通信网络可以包含移动网络、网关、因特网,也可以由局域网、因特网组成。例如:用户端101经由移动网络、网关、因特网与服务端102连接。再如:用户端101经由局域网、因特网与服务端102连接。用户端101接收游戏用户输入的信息,加载并执行游戏程序,该游戏程序与服务端102执行的游戏程序通过通信协议进行通信。所述服务端102执行的游戏程序可以提供但不限于下述功能:配置、管理、相关数据计算或其他处理如存储、与其他游戏用户(如果是多个游戏用户或组队或对战的网络游戏)的数据交互处理等。开发端103根据预先设计的游戏中虚拟摄像机镜头运动、角色的操作、游戏运行逻辑等信息,生成游戏中场景地图、各种模板、用户界面及用户交互等设计数据,并实现游戏中各种资源的关联及运行逻辑。在本技术实施例中,开发端103尤其是生成游戏中包括一种或多种地形对象的地形数据,该地形数据随着开发端103生成的游戏上传至服务端102,并随着游戏用户加载该游戏加载至用户端101,或者随着游戏用户在游戏中的操作而逐步加载至用户端101,在用户端101渲染为游戏中的场景地图或地形。
43.以下结合图2至图6对本技术第一实施例提供的游戏中的地形数据的处理方法进行说明。图2所示的游戏中的地形数据的处理方法,包括:步骤s201至步骤s204。
44.步骤s101,确定游戏的地形数据中待处理的目标对象。
45.本实施例中,所述游戏是指包含模拟自然地形的地形数据的地形类游戏,例如开放世界主题游戏。所述地形数据包括一个或多个地形对象,游戏中的每个地形对象可以视为一个基于地形造型以及地形表面类型形成的物体对象。其中,所述地形造型可以为多边形,地形表面类型可以为地形贴图。地形表面类型可以为下述任一种来自于图像的地形材质:山地、平原、森林、沙漠、水域、沼泽或者为个性化定制材质的地形等。将地形贴图应用于地形造型表面,可以使得地形对象渲染后在用户端的游戏界面中呈现与现实世界中的地形相似的可视外观,尤其呈现为三维外观。例如,呈现为三维的山地、沙漠等。所述地形贴图可以是二维图片,具体依据uv坐标应用于地形造型表面,使得地形对象渲染后呈现为三维外观。所谓uv坐标,是图片在显示器水平、垂直方向上的坐标,取值为0~1。例如,水平方向的第u个像素表示该像素的水平位置,垂直方向第v个像素表示该像素的垂直位置。通过uv坐标可以将地形贴图上的每个点对应到地形造型的表面,点与点之间的间隙位置进行光滑插值处理,如果地形造型的坡度较大,则将二维的地形贴图影射于多边形的地形造型表面时,产生贴图拉伸问题,尤其是纹理拉伸。
46.本步骤是确定游戏中由于地形造型的坡度而需要进行处理的地形对象,所述地形对象为所述目标对象。实施时,可以根据游戏中当前拾取到的物体对象的顶点与地形数据水平面之间的角度,或者,预先设定的各物体对象的标记确定该物体对象是否为坡度较大或起伏程度较大的目标对象。具体的,所述确定游戏的地形数据中待处理的目标对象,包括:获取游戏的地形数据中的物体对象,根据所述物体对象与所述地形数据的水平面之间的角度,确定所述物体对象为待处理的目标对象;或者,获取所述地形数据中的物体对象的属性配置数据,如果所述属性配置数据包括预先设定的拉伸处理标记,则确定所述物体对象为需处理的目标对象。其中,所述拉伸处理标记为创建物体对象(尤其是地形对象)设置的表示该物体对象坡度较大或起伏程度较大需要进行处理的标记。
47.进一步,所述根据所述物体对象与所述地形数据的水平面之间的角度,确定所述物体对象为待处理的目标对象,包括:如果所述物体对象的地表线与所述水平面之间的角度小于第一坡度阈值,或者,所述物体对象的地表面对应的法向与所述水平面对应的法向之间的夹角大于第二坡度阈值,则将所述物体对象作为所述目标对象。例如,所述物体对象的地表线与所述水平面之间的角度小于120度,或者,所述物体对象的至少某一坡面的地表面对应的法向与所述水平面对应的法向之间的夹角大于70度,可以视为坡度较大或起伏程度较大。
48.本实施例中,所述地形数据是指当前加载到内存中的地形数据。实际上,游戏中可以根据角色位置动态加载地形数据,也可以是一次加载游戏全局的地形数据。本步骤中还包括:根据所述游戏对应的虚拟摄像机相对于所述地形数据的位置移动,拾取所述地形数据中与所述虚拟摄像机之间的距离小于预设距离阈值的物体对象,进一步再判断拾取到的物体对象是否为需要拉伸处理的目标对象。本实施例中的所谓虚拟摄像机,是指游戏中以不同模式和/或不同视点观察游戏世界的游戏组件,例如以游戏用户对应的游戏中角色视点观察到的游戏场景。
49.步骤s102,获取所述目标对象包含的纹理贴图以及法线贴图。
50.本实施例中,具体获取形成所述目标对象的地形表面类型的数据,即地形贴图,进一步提取所述地形贴图中的纹理贴图即法线贴图,用于在后续步骤进行处理,以解决贴图
纹理拉伸问题。
51.步骤s103,按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据。
52.本实施例中,所述预定坐标方向为游戏中的世界位置坐标系中的坐标方向,如xyz三维坐标方向。实施时,可利用图形材质函数识别目标对象的世界空间纹理坐标,对xyz不同方向的纹理进行平铺映射从而解决地形贴图拉伸的问题。具体的,通过所述纹理贴图对应的图形材质函数,识别所述纹理贴图的世界空间纹理坐标,并在所述地形数据的三维位置坐标方向进行平铺映射,得到所述第一平铺映射数据;通过所述法线贴图对应的图形材质函数,识别所述法线贴图的世界空间纹理坐标,并在所述地形数据的三维位置坐标方向进行平铺映射,得到所述第二平铺映射数据。
53.其中,所述图像材质函数为包含多个节点的世界一致纹理函数(worldalignedtexture)。具体的,针对所述纹理贴图以及所述法线贴图分别获取其各自对应的世界一致纹理函数中的各个节点的输入信息,并输入相应节点进行数据处理。实施时,可以具体包括:将所述纹理贴图以及所述法线贴图分别转换为各自对应的纹理对象以及法线纹理对象,分别输入各自的世界一致纹理函数所包含的纹理对象节点;分别拾取所述纹理贴图以及所述法线贴图各自的绝对世界坐标值,将所述各自的绝对世界坐标值,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的绝对世界坐标节点;获取所述纹理贴图以及所述法线贴图各自的纹理重复程度数据,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的纹理尺寸节点。所谓纹理重复程度数据可以根据所述目标对象的特征数据而获得。例如,由图形材质函数中的worldposition节点拾取当前物体对象(即目标对象)的绝对世界坐标值,直接插入一个绝对世界坐标节点(absoluteworldposition),以更好地匹配各预定坐标方向的纹理,从而解决贴图拉伸问题。例如,所述纹理重复程度数据可以为控制贴图中的点的水平平铺量及垂直平铺量的数据,可以根据具体的游戏场景确定该纹理重复程度数据,也可以获取经验值,比如,写实场景中该数据使得目标对象在界面中呈现的尺寸与实际尺寸接近的效果。
54.本实施例中,可以通过获取不同位置坐标方向的映射纹理之间的过渡融合的数据,从而缓冲不同投影方向接缝部分的视觉效果。具体包括:获取所述纹理贴图以及所述法线贴图各自的融合过渡参数值,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的投射过渡对比度节点。
55.本实施例中,如果是将纹理贴图以纹理遮罩的形式应用于目标对象(即地形对象)的地形造型表面,则还包括:将所述纹理贴图以及所述法线贴图各自的alpha通道设置为开启状态。
56.本实施例中,还包括:获取所述目标对象的世界空间顶点法线,分别输入所述纹理贴图以及所述法线贴图各自对应世界一致纹理函数所包含的世界空间法线节点,从而确定所述纹理贴图以及所述法线贴图各自的上方向轴的法线方向。这可以使得各预定坐标方向的映射纹理之间的匹配度更高。
57.本实施例中,为了在将地形贴图应用于地形对象时降低地形拉伸程度的同时保持在水平面的效果,还包括:根据所述法线贴图的世界纹理坐标数据,对所述法线贴图的上方向进行反向操作。例如,给法线贴图的z位置坐标方向的映射图乘以负数以改变方向。
58.实施时,可以基于视觉效果确定图像材质函数的输入信息。以目标对象的纹理贴图为例,具体到纹理题图对应的世界一致纹理函数,则基于视觉效果确定纹理贴图对应的纹理重复程度数据,作为所述纹理贴图对应的纹理尺寸节点的输入信息;和/或,基于视觉效果确定所述纹理贴图对应的融合过渡参数值,作为所述纹理贴图对应的投射过渡对比度节点的输入信息,其中,所述融合过渡参数值为表示不同位置坐标方向的映射纹理之间的过渡融合的数据。对所述目标对象的法线贴图进行与所述目标对象的纹理贴图进行与上述处理相似或相同的处理,从而得到目标对象的贴近现实的视觉效果。
59.请参考图3,图中示出了基于图形材质函数对纹理贴图的处理的例子,相同或相似的处理方式可应用于对法线贴图的处理。具体的处理依赖于各输入的贴图的信息。不同效果的贴图需要获取不同的参数。图中示出了worldalignedtexture函数的四个节点,具体包括:textureobject 301,该节点需要输入纹理对象,具体的,其输入可以为由纹理贴图转换的纹理对象301-1;texturesize 302,其输入可以为纹理贴图的uv重复度302-1;worldposition 303,该节点的作用是拾取当前地形的绝对世界位置坐标,其输入可以为绝对世界位置303-1;projectiontransitioncontrast 304,其输入可以为按照预定坐标方向映射时不同映射方向的纹理间的融合过渡值304-1,原因是对于陡坡的三维方向上的映射,不同映射方向产生的纹理之间的接缝处可能比较生硬,需要进行缓冲过渡;输出按照预定坐标方向平铺映射数据305,其可以包括多个可选的输出方向,例如游戏的世界位置坐标系的xyz三维映射方向、xy水平面映射方向、z垂直面映射方向。当然,如果需要将纹理贴图作为地形造型(即目标对象的造型)的遮罩,则还可以打开纹理的alpha通道,从而使得该贴图资源为四通道资源。
60.请参考图3a,图3a中示出了图像材质函数的不同输入信息得到的视觉效果对比,包括:调整前视觉效果301a以及调整后视觉效果302a;调整前视觉效果301a对应的纹理重复程度数据为100,调整后视觉效果302a对应的的纹理重复程度数据为200。
61.步骤s104,根据所述第一平铺映射数据以及所述第二平铺映射数据,获得用于在用户端的游戏界面中展示的目标对象。
62.本步骤为获得在用户端的游戏界面中展示的目标对象,具体可以针对以uv坐标数据表征的目标对象的纹理贴图及法线贴图,从游戏的世界位置坐标系的三维方向,分别映射进行输出,即从xyz方向进行输出,得到目标对象(即地形对象)的基础颜色映射数据以及法线图形映射数据,基础颜色映射数据以及法线图形映射数据组成了用于在用户端的游戏界面中展示的目标对象。所述基础颜色映射数据为第一平铺映射数据,所述法线图形映射数据为第二平铺映射数据。当然,也可以选择从xy方向(即游戏的三维世界位置坐标系的水平面)或者仅从z方向(即游戏的三维世界位置坐标系的垂直平面)进行映射输出。
63.采用本实施例提供的方法处理后的目标对象,可通过用户端的显示单元根据目标对象对应的数据渲染为游戏中的地图或地形地貌,其视觉效果避免了条纹状的拉伸而是更接近真实地形的可视外观。
64.请参考图4,图中示出了应用本实施例提供的所述游戏中地形数据的处理方法后,用户端渲染出的某陡坡的视觉效果。图中,包括:处理前的陡坡视觉外观401,以及处理后的陡坡视觉外观402,可以看出处理前的陡坡视觉外观401有着明显的纹理拉伸,与真实地形差异明显,而处理后的陡坡视觉外观402显然更接近真实地形的视觉外观。
65.再请参考图4a,图中示出了应用本实施例提供的所述游戏中地形数据的处理方法后,用户端渲染出的110度坡的视觉效果,其中,110度坡是指物体对象(即该山体)的地表线与游戏中水平面之间的角度为110度。图中,包括:处理前的110度坡视觉外观401a,以及处理后的110度坡视觉外观402a,可以看出与处理前的110度坡视觉外观401a相比,处理后的110度坡视觉外观402a几乎没有纹理拉伸,视觉外观效果更自然一些。
66.本技术实施例提供的游戏中的地形数据的处理方法,既可以在用户端执行,也可以在服务端执行。
67.在用户端执行的实施方式中,根据游戏中的地形数据的处理方法实现的装置可存储于用户端101。请参考图5,图中所示的用户端的一个示例包括:存储器101-1、游戏中地形数据的处理装置101-2、处理器101-3以及显示单元101-4,各部分之间直接或间接地进行数据传输及交互。存储器101-1存储有包含一个或多个软件或固件(firmware)形式的功能模块的游戏中地形数据的处理装置101-2。处理器101-3加载存储器101-1中的程序以及功能模块,执行游戏中地形数据的处理装置101-2对应的各种功能应用及数据处理。显示单元101-4在用户端101根据游戏中地形数据的处理装置101-2对应的各种功能应用及数据处理渲染出游戏中地形数据的可视外观,表现为游戏中的地图或地形地貌。所述方法用于用户端;所述方法还包括:在所述用户端的游戏界面中渲染出所述目标对象。具体的,可通过用户端的显示单元根据目标对象对应的数据渲染为游戏中的地图或地形地貌,其视觉效果避免了条纹状的拉伸而是更接近真实的地形。
68.本技术实施例提供的游戏中的地形数据的处理方法,在服务端执行的实施方式中,根据游戏中的地形数据的处理方法实现的装置可存储于服务端102。请参考图6,图中所示的用户端的一个示例包括:存储器102-1、游戏中地形数据的处理装置102-2、处理器102-3,各部分之间直接或间接地进行数据传输及交互。存储器102-1存储有包含一个或多个软件或固件(firmware)形式的功能模块的游戏中地形数据的处理装置102-2。处理器102-3加载存储器102-1中的程序以及功能模块,执行游戏中地形数据的处理装置102-2对应的各种功能应用及数据处理。当所述方法用于服务端;所述方法还包括:向用户端提供所述用于在用户端的游戏界面中展示的目标对象;其中,所述用户端用于在游戏界面中渲染出所述目标对象。通过用户端的显示单元根据目标对象对应的数据渲染为游戏中的地图或地形地貌,其视觉效果避免了条纹状的拉伸而更接近真实地形。
69.需要说明的是,在不冲突的情况下,在本实施例和本技术的其他实施例中给出的特征可以相互组合,并且步骤s201和s202或类似用语不限定步骤必须先后执行。
70.至此,对本实施例提供的方法进行了说明,所述方法通过获取游戏的地形数据中的目标对象所包含的纹理贴图以及法线贴图;按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据;根据所述第一平铺映射数据以及所述第二平铺映射数据,在所述游戏的界面中渲染出所述目标对象对应的可视外观。对目标对象包含的纹理贴图及法线贴图分别对不同预定坐标方向的纹理进行平铺映射,使得游戏中的地图更加贴近现实,解决了游戏中地形起伏过大导致的贴图纹理拉伸问题。进一步,利用特定图形材质函数分别对纹理贴图及法线贴图进行平铺映射,可以在不增加用户端额外的资源消耗的情况下使得游戏中的地图更加接近实际的可视外观。进一步,在用户端的游戏界面中渲染出所述目标对象,给用户提供更好的视觉体
验。
71.与第一实施例对应,本技术第二实施例提供一种游戏中的地形数据的处理装置。以下结合图7对所述装置进行说明。图7所示的游戏中的地形数据的处理装置,包括:
72.目标对象确定单元701,用于确定游戏的地形数据中待处理的目标对象;
73.数据提取单元702,用于获取所述目标对象包含的纹理贴图以及法线贴图;
74.映射单元703,用于按照所述地形数据的每一预定坐标方向输出所述纹理贴图对应的第一平铺映射数据,以及所述法线贴图对应的第二平铺映射数据;
75.展示单元704,用于根据所述第一平铺映射数据以及所述第二平铺映射数据,获得用于在用户端的游戏界面中展示的目标对象。
76.可选的,所述目标对象确定单元701,具体用于:获取所述游戏的地形数据中的物体对象,根据所述物体对象与所述地形数据的水平面之间的角度,确定所述物体对象为待处理的目标对象;或者,获取所述地形数据中的物体对象的属性配置数据,如果所述属性配置数据包括预先设定的拉伸处理标记,则确定所述物体对象为所述待处理的目标对象。
77.可选的,所述目标对象确定单元701,具体用于:如果所述物体对象的地表线与所述水平面之间的角度小于第一坡度阈值,或者,所述物体对象的地表面对应的法向与所述水平面对应的法向之间的夹角大于第二坡度阈值,则将所述物体对象作为所述目标对象。
78.可选的,所述目标对象确定单元701,具体用于:根据所述游戏对应的虚拟摄像机相对于所述地形数据的位置移动,拾取所述地形数据中与所述虚拟摄像机之间的距离小于预设距离阈值的物体对象。
79.可选的,所述映射单元703,具体用于:通过所述纹理贴图对应的图形材质函数,识别所述纹理贴图的世界空间纹理坐标,并在所述地形数据的三维位置坐标方向进行平铺映射,得到所述第一平铺映射数据;通过所述法线贴图对应的图形材质函数,识别所述法线贴图的世界空间纹理坐标,并在所述地形数据的三维位置坐标方向进行平铺映射,得到所述第二平铺映射数据。
80.可选的,所述图像材质函数为包含多个节点的世界一致纹理函数。
81.可选的,所述映射单元703,具体用于:将所述纹理贴图以及所述法线贴图分别转换为各自对应的纹理对象以及法线纹理对象,分别输入各自的世界一致纹理函数所包含的纹理对象节点;
82.分别拾取所述纹理贴图以及所述法线贴图各自的绝对世界坐标值,将所述各自的绝对世界坐标值,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的绝对世界坐标节点;
83.获取所述纹理贴图以及所述法线贴图各自的纹理重复程度数据,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的纹理尺寸节点。
84.可选的,所述映射单元703,具体用于:获取所述纹理贴图以及所述法线贴图各自的融合过渡参数值,分别输入所述纹理贴图以及所述法线贴图各自对应的世界材质函数所包含的投射过渡对比度节点。
85.可选的,所述映射单元703,具体用于:将所述纹理贴图以及所述法线贴图各自的alpha通道设置为开启状态。
86.可选的,所述映射单元703,具体用于:获取所述目标对象的世界空间顶点法线,分
别输入所述纹理贴图以及所述法线贴图各自对应世界一致纹理函数所包含的世界空间法线节点,从而确定所述纹理贴图以及所述法线贴图各自的上方向轴的法线方向。
87.可选的,所述映射单元703,具体用于:根据所述法线贴图的世界纹理坐标数据,对所述法线贴图的上方向进行反向操作。
88.可选的,所述装置被配置于服务端;所述展示单元704,具体用于:向用户端提供所述用于在用户端的游戏界面中展示的目标对象;其中,所述用户端用于在游戏界面中渲染出所述目标对象。
89.可选的,所述装置被配置于用户端;所述展示单元704,具体用于:在所述用户端的游戏界面中渲染出所述目标对象。
90.以上述实施例为基础,本技术第三实施例提供一种游戏中地形数据的处理方法,所述方法应用于用户端。以下结合图8对所述方法进行说明。图8所示的游戏中地形数据的处理方法,包括:步骤s801至步骤s802。
91.步骤s801,获得游戏的地形数据中的目标对象;所述目标对象为采用本文中前述方法处理得到的用于在用户端的游戏界面中展示的目标对象。
92.本实施例中所述方法的系统架构的例子可以参考图1,用户端的结构例子可以参考图5,相关概念及细节描述信息请参见前述对应的部分,此处不再赘述。
93.本实施例提供的方法可部署于用户端,其目的是在用户端的游戏界面中渲染出所述目标对象,以向游戏用户展示出接近自然地形真实外观的视觉效果,提高用户体验。
94.本步骤中获得的目标对象是采用第一实施例中提供的方法处理得到的、用于在用户端的游戏界面中展示的目标对象。
95.本实施例中,由于第一实施例提供的所述方法处理目标对象,可以在不额外增加用户端性能消耗的情况下提供接近自然地形真实外观的视觉效果,因此,可以在网络传输速度或gpu配置等不够良好的情况下获取此类方法处理的地形数据。具体的,一个实施方式中,所述获得游戏的地形数据中的目标对象,包括:响应于检测到针对获取所述用户端的gpu配置信息的用户授权信息,获取所述用户端的gpu配置信息;如果所述用户端的gpu配置信息满足预设配置条件,则获取所述目标对象。一个实施方式中,所述获得游戏的地形数据中的目标对象,包括:响应于检测到所述用户端的网络传输速度满足预设网速条件,或者,检测到所述用户端的清晰度配置信息,获取所述目标对象。
96.步骤s802,在所述游戏的游戏界面中渲染出所述目标对象。
97.本步骤是是在用户端的游戏界面中渲染出所述目标对象,以向游戏用户展示出接近自然地形真实外观的视觉效果,提高用户体验。
98.至此,对本实施例提供的方法进行了说明,所述方法通过获得游戏的地形数据中的目标对象;所述目标对象为采用本技术实施例提供的所述方法处理得到的用于在用户端的游戏界面中展示的目标对象;在所述游戏的游戏界面中渲染出所述目标对象。对目标对象包含的纹理贴图及法线贴图分别对不同预定坐标方向的纹理进行平铺映射,可以使得游戏中的地图更加贴近现实。进一步,利用特定图形材质函数分别对纹理贴图及法线贴图进行平铺映射,可以在不增加用户端额外的资源消耗的情况下,解决游戏中地形起伏过大导致的贴图纹理拉伸问题。进一步,在用户端的游戏界面中渲染出所述目标对象,给用户提供更好的视觉体验。
99.与第三实施例对应,本技术第四实施例提供一种游戏中的地形数据的处理装置。以下结合图9对所述装置进行说明。图9所示的游戏中的地形数据的处理装置,包括:
100.对象获取单元901,用于获得游戏的地形数据中的目标对象;所述目标对象为采用本文中前述方法处理得到的用于在用户端的游戏界面中展示的目标对象;
101.展示单元902,用于在所述游戏的游戏界面中渲染出所述目标对象。
102.可选的,所述对象获取单元901具体用于:响应于检测到针对获取所述用户端的gpu配置信息的用户授权信息,获取所述用户端的gpu配置信息;如果所述用户端的gpu配置信息满足预设配置条件,则获取所述目标对象。
103.可选的,所述对象获取单元901具体用于:响应于检测到所述用户端的网络传输速度满足预设网速条件,或者,检测到所述用户端的清晰度配置信息,获取所述目标对象。
104.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
105.内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
106.1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
107.2、本领域技术人员应明白,本技术的实施例可提供为方法、系统或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
108.本技术虽然以较佳实施例公开如上,但其并不是用来限定本技术,任何本领域技术人员在不脱离本技术的精神和范围内,都可以做出可能的变动和修改,因此本技术的保护范围应当以本技术权利要求所界定的范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1