本技术涉及计算机图形,具体而言,涉及一种游戏地图加载渲染方法、装置、设备及存储介质。
背景技术:
1、游戏运行时通常需要随着玩家的移动进行地块的渲染。常规的方法是将一块完整的大地图划分为若干个大地块,并存储大地块的地块资源,当玩家接近时则加载对应的地块资源,当玩家离远时则卸载对应的地块资源。
2、现有技术中存储地块资源的方式是对所有的地块在其渲染对象的uv通道中进行地形信息的标记。
3、但是,采用现有技术存储地块资源时,对于具有相同地形信息、不同几何特征的地块需要存储不同的地块资源,因此会导致地块资源占用存储空间过大,并且还会导致额外的加载开销。
技术实现思路
1、本技术的目的在于,针对上述现有技术中的不足,提供一种游戏地图加载渲染方法、装置、设备及存储介质,以解决现有技术中地块资源占用存储空间大、加载内容量大的问题。
2、为实现上述目的,本技术采用的技术方案如下:
3、第一方面,本技术提供了一种游戏地图加载渲染方法,所述方法包括:
4、根据游戏的位置变化信息,确定待加载地块,所述位置变化信息包括如下至少一项:虚拟角色的位置变化信息、虚拟相机的位置变化信息;
5、根据所述待加载地块的标识以及地块信息集合,确定所述待加载地块的渲染对象是否已加载,所述地块信息集合中包括各地块的标识、地块的渲染对象的标识,其中,具有相同地形信息的多个地块对应于同一渲染对象;
6、若是,则基于已加载的所述渲染对象渲染显示所述待加载地块。
7、可选的,所述根据所述待加载地块的标识以及地块信息集合,确定所述待加载地块的渲染对象是否已加载,包括:
8、根据所述待加载地块的标识,从所述地块信息集合中查找所述待加载地块的渲染对象的标识;
9、根据所述待加载地块的渲染对象的标识,确定所述待加载地块的渲染对象是否已加载。
10、可选的,所述地块信息集合中还包括各地块的材质信息;
11、所述方法还包括:
12、若确定所述待加载地块的渲染对象未加载,则根据所述待加载地块的标识,从所述地块信息集合中查找所述待加载地块的材质信息以及所述待加载地块的渲染对象的标识;
13、根据所述待加载地块的渲染对象的标识,加载所述待加载地块的渲染对象;
14、将所述待加载地块的材质信息赋予所述待加载地块的渲染对象。
15、可选的,所述根据游戏的位置变化信息,确定待加载地块之前,还包括:
16、获取游戏地图中各地块的地形信息,所述地形信息包括:地块的材质;
17、根据各地块的地形信息,确定各地块的材质类型,所述材质类型包括:单一材质或复杂材质;
18、根据各地块的材质类型,得到所述地块信息集合。
19、可选的,所述根据各地块的材质类型,得到所述地块信息集合,包括:
20、遍历所述游戏地图中的各地块,若遍历到的当前地块的材质类型为单一材质,则将所述当前地块的材质、所述当前地块的标识以及所述当前地块的渲染对象的标识作为一条记录增加至所述地块信息集合中。
21、可选的,所述根据游戏的位置变化信息,确定待加载地块,包括:
22、根据游戏的位置变化信息,确定当前待显示区域的边界信息;
23、根据所述待显示区域的边界信息以及所述游戏地图中各地块的包围盒,确定所述待加载地块。
24、可选的,所述根据所述待显示区域的边界信息以及所述游戏地图中各地块的包围盒,确定所述待加载地块,包括:
25、确定各地块的包围盒数据,所述包围盒数据用于表征地块的包围盒范围;
26、比对各地块的包围盒数据和所述待显示区域的边界信息的距离,将距离小于预设阈值的地块确定为一个待加载地块。
27、可选的,所述确定各地块的包围盒数据,包括:
28、根据各地块的渲染对象的包围盒数据,生成各地块的包围盒。
29、第二方面,本技术提供了一种游戏地图加载渲染装置,所述装置包括:
30、第一确定模块,用于根据游戏的位置变化信息,确定待加载地块,所述位置变化信息包括如下至少一项:虚拟角色的位置变化信息、虚拟相机的位置变化信息;
31、第二确定模块,用于根据所述待加载地块的标识以及地块信息集合,确定所述待加载地块的渲染对象是否已加载,所述地块信息集合中包括各地块的标识、地块的渲染对象的标识,其中,具有相同地形信息的多个地块对应于同一渲染对象;
32、显示模块,用于基于已加载的所述渲染对象渲染显示所述待加载地块。
33、可选的,所述第二确定模块具体用于:
34、根据所述待加载地块的标识,从所述地块信息集合中查找所述待加载地块的渲染对象的标识;
35、根据所述待加载地块的渲染对象的标识,确定所述待加载地块的渲染对象是否已加载。
36、可选的,所述地块信息集合中还包括各地块的材质信息;
37、所述显示模块还用于:
38、若确定所述待加载地块的渲染对象未加载,则根据所述待加载地块的标识,从所述地块信息集合中查找所述待加载地块的材质信息以及所述待加载地块的渲染对象的标识;
39、根据所述待加载地块的渲染对象的标识,加载所述待加载地块的渲染对象;
40、将所述待加载地块的材质信息赋予所述待加载地块的渲染对象。
41、可选的,所述装置还包括获取模块、第三确定模块和集合确定模块,其中:
42、获取模块用于获取游戏地图中各地块的地形信息,所述地形信息包括:地块的材质;
43、第三确定模块用于根据各地块的地形信息,确定各地块的材质类型,所述材质类型包括:单一材质或复杂材质;
44、集合确定模块,用于根据各地块的材质类型,得到所述地块信息集合。
45、可选的,所述集合确定模块具体用于:
46、遍历所述游戏地图中的各地块,若遍历到的当前地块的材质类型为单一材质,则将所述当前地块的材质、所述当前地块的标识以及所述当前地块的渲染对象的标识作为一条记录增加至所述地块信息集合中。
47、可选的,所述第一确定模块具体用于:
48、根据游戏的位置变化信息,确定当前待显示区域的边界信息;
49、根据所述待显示区域的边界信息以及所述游戏地图中各地块的包围盒,确定所述待加载地块。
50、可选的,所述第一确定模块具体用于:
51、确定各地块的包围盒数据,所述包围盒数据用于表征地块的包围盒范围;
52、比对各地块的包围盒数据和所述待显示区域的边界信息的距离,将距离小于预设阈值的地块确定为一个待加载地块。
53、可选的,所述第一确定模块具体用于:
54、根据各地块的渲染对象的包围盒数据,生成各地块的包围盒。
55、第三方面,本技术实施例还提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行如第一方面中任一项所述的一种游戏地图加载渲染方法的步骤。
56、第四方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一方面中任一项所述的一种游戏地图加载渲染方法的步骤。
57、本技术的有益效果是:根据游戏的位置变化信息确定至少一个待加载地块,并根据待加载地块的标识和预先创建的地块信息集合确定待加载地块的渲染对象是否已加载,并在渲染对象已加载时,基于已加载的渲染对象直接显示待加载地块。通过在地块信息集合中对具有相同地形信息的地块存储一个渲染对象,实现了对地块资源的优化,减少了地块资源存储空间占用的大小。在进行地块加载时,具有相同地形信息的地块只加载一个渲染对象,因此也减少了地图加载的内容量。
58、为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。