CN112489180A - 数据处理方法、系统、电子设备及计算机可读介质 - Google Patents
数据处理方法、系统、电子设备及计算机可读介质 Download PDFInfo
- Publication number
- CN112489180A CN112489180A CN202011198123.2A CN202011198123A CN112489180A CN 112489180 A CN112489180 A CN 112489180A CN 202011198123 A CN202011198123 A CN 202011198123A CN 112489180 A CN112489180 A CN 112489180A
- Authority
- CN
- China
- Prior art keywords
- texture
- data
- image data
- pixel point
- channel
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- 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
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Remote Sensing (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种数据处理方法、系统、电子设备及计算机可读介质。其中,方法包括:获取地形信息的纹理配置信息,纹理配置信息包括:RGBA格式的图像数据中像素点对应的至少一个纹理标识;对纹理配置信息进行编码,得到RGBA格式的图像数据,其中,RGBA格式的图像数据用于渲染目标对象;对纹理配置信息进行编码,得到RGBA格式的图像数据,包括:基于至少一个纹理标识中单个纹理标识对应的编码位数,分别对至少一个纹理标识进行编码,结合预设的最大纹理标识数量得到至少一个第一编码结果;将至少一个第一编码结果添加至RGBA格式的图像数据中像素点对应的色彩通道对应的数据空间内。减少了向解码端发送的纹理资源的数据量以及对内存的占用,提升了游戏性能。
Description
技术领域
本申请属于计算机技术领域,尤其涉及一种数据处理方法、系统、电子设备及计算机可读介质。
背景技术
目前,随着移动平台硬件和相关人员需求的快速发展,对游戏场景地形的真实性等不断提出更新更高的要求。地形的制作主要采用整体构建,整体渲染的实现方法,多层纹理实时混合,具有较高的逼真性,制作效率较高。
在开发三维游戏或设计三维仿真软件的时候经常需要加载地形模型到场景中渲染。在相关开发引擎中加载地形的常规做法是:先使用3D模型制作软件进行地形的建模,生成地形的顶点数据,并贴上纹理位图;再导出开发引擎能识别使用的数据。另外,在构建地形时,除了要调整地形模型里的各个顶点的位置,还需要使用图形处理软件对地形的纹理进行色调、融合等多种图形处理,工作量很大。该处理方式存在一个弊端,就是地形场景比较大的时候,为了提高地形纹理的细节,往往纹理的尺寸也要相应的增加。往往在一些大范围的场景中,一张纹理是不够用的,需要多张纹理拼接起来显示,这样便占用了极大的显卡显存资源。
其次,在游戏运行过程中,地表贴图的数量及数据量较多,需要加载大量的纹理资源,相应地,需大量内存用于处理纹理资源,对游戏的性能产生的负面影响较大。
发明内容
本申请实施例提供了一种方法,降低场景构建过程对游戏性能的负面影响。
在本申请的一个实施例中,提供了一种数据处理方法,包括:获取地形信息的纹理配置信息,所述纹理配置信息包括:RGBA格式的图像数据中像素点对应的至少一个纹理标识;对所述纹理配置信息进行编码,得到RGBA格式的图像数据,其中,所述RGBA格式的图像数据用于渲染目标对象,对所述纹理配置信息进行编码,得到RGBA格式的图像数据,包括:基于所述至少一个纹理标识中单个纹理标识对应的编码位数,分别对所述至少一个纹理标识进行编码,结合预设的最大纹理标识数量得到至少一个第一编码结果;将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内。
在本申请的一个实施例中,提供了一种数据处理方法,包括:获取RGBA格式的图像数据;对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息,所述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;获取基础纹理数组;根据所述基础纹理数组以及所述纹理配置信息对目标对象进行渲染;其中,获取RGBA格式的图像数据包括:获取所述RGBA格式的图像数据中像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;对所述RGBA格式的图像数据进行解码,得到纹理配置信息包括:基于所述至少一个纹理标识中单个纹理标识对应的编码位数、预设的最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;对所述至少一个第一编码结果进行解码,得到所述至少一个纹理标识。
在本申请的一个实施例中,提供了一种数据处理系统,包括:地形编辑设备,用于获取地形信息的纹理配置信息;对所述纹理配置信息进行编码,得到RGBA格式的图像数据;游戏客户端设备,用于在游戏运行过程中,获取所述RGBA格式的图像数据;对所述RGBA格式的图像数据进行解码,以得到所述纹理配置信息;利用所述纹理配置信息,执行地形渲染。
在本申请的一个实施例中,提供了一种电子设备,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器可以实现上面描述的数据处理方法。
在本申请的一个实施例中,提供了一种系统,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现上述的数据处理方法。
在本申请的一个实施例中,提供了一种计算机可读介质,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述的数据处理方法。
本申请各实施例提供了一种数据处理方法,通过获取地形信息的纹理配置信息,纹理配置信息包括:RGBA格式的图像数据中像素点对应的至少一个纹理标识;对纹理配置信息进行编码,得到RGBA格式的图像数据,其中,RGBA格式的图像数据用于渲染目标对象;对纹理配置信息进行编码,得到RGBA格式的图像数据,包括:基于至少一个纹理标识中单个纹理标识对应的编码位数,分别对至少一个纹理标识进行编码,结合预设的最大纹理标识数量得到至少一个第一编码结果;将至少一个第一编码结果添加至RGBA格式的图像数据中像素点对应的色彩通道对应的数据空间内的方案,对纹理配置信息进行了压缩,使得对目标对象进行渲染时,通过获取该RGBA格式的图像数据,并对该RGBA格式的图像数据解码,即可得到渲染目标对象所需的大量纹理配置信息,减少了向解码端发送的纹理配置信息的数据量以及对内存的占用,进而提升了游戏性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本申请一示例性实施例提供的一种系统的结构示意图;
图2为本申请一示例性实施例提供的一种数据处理方法的流程示意图;
图3为本申请一示例性实施例提供的一种数据处理方法的流程示意图;
图4为本申请一示例性实施例提供的一种电子设备的结构示意图;
图5为本申请一示例性实施例提供的一种数据处理装置的结构示意图;
图6为本申请一示例性实施例提供的一种数据处理装置的结构示意图。
具体实施方式
在介绍本申请各实施例提供的技术方案之前,先对本文中涉及到专有名词进行简单的介绍。
地形编辑器,用于创建当前地形,并对生成的地形数据进行处理,序列化为游戏运行时需要的数据。
游戏客户端,在游戏运行过程中,对地形管理对象进行实例化,赋予基础渲染纹理,对地形进行渲染。
RGBA是代表Red(红色)、Green(绿色)、Blue(蓝色)和Alpha的彩色空间。
Bgra32像素格式是一种32BPP的sRGB格式,每个颜色通道(蓝色B、绿色G、红色R)各占8Bpp(位/像素)。与BGR24不同的是,它还用于表现透明度的alpha通道8Bpp(位/像素)。
Tilling是控制纹理进行压缩,Tilling值越大,模型上显示的纹理数量也就越多。
法线贴图中,每个纹素代表表面法矢量的方向,利用它可以细致的描述表面的形状。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。应当理解,本文中的“第一”、“第二”等描述,是用于区分不同的元件、设备等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于监测”。类似地,取决于语境,短语“如果确定”或“如果监测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当监测(陈述的条件或事件)时”或“响应于监测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
纹理压缩(编码)是解决纹理映射过程中系统数据传输瓶颈效应的有效手段。它可以提高纹理缓存的利用效率,更能有效地减轻系统数据传输的负担,避免由于纹理资源频繁交换引起的系统性能下降。纹理压缩的目的是尽可能减少纹理占用的缓存空间,保证纹理映射的性能。这决定了纹理压缩技术必须综合考虑如何可能地减少纹理数据的交换、传输,如何实现纹理数据随机读取及压缩数据的实时解码等问题。
本文提出了一种数据处理方法、系统、电子设备及计算机可读介质,以减少纹理数据的交换以及对内存的占用。
下面将结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请一示例性实施例提供的一种数据处理系统,包括:地形编辑设备11以及游戏客户端设备12,其中:
地形编辑设备11,用于获取地形信息的纹理配置信息;对所述纹理配置信息进行编码,得到RGBA格式的图像数据;
游戏客户端设备12,用于在游戏运行过程中,获取所述RGBA格式的图像数据;对所述RGBA格式的图像数据进行解码,以得到所述纹理配置信息;利用所述纹理配置信息,执行地形渲染。
其中,上述的地形信息可以为相关人员通过地形编辑设备11编辑的地形信息。具体地,在上述地形编辑设备11中,相关人员可首先按照UE4的方式创建地形对象Landscape,给地形对象赋上材质(该材质即UE4的地形材质,使用层混合材质节点多层混合的方式的材质)并创建layerinfo,使用UE4的地形工具刷地形,刷地形过程中相关人员可完成对纹理配置信息的设定,进而完成地形绘制。
地形绘制完成后,地形编辑设备11的存储器中可存储有纹理配置信息,编码的启动可由相关人员操作相关控件触发,并可以向相关人员展示上述RGBA格式的图像数据。其中,编码过程可以在UE4相关人员导出地形材质资源过程中进行。地形编辑设备11还可在编码过程执行前,完成对基础纹理数组以及法线纹理数组的创建,还可以对基础纹理数组与法线纹理数组进行导出并展示。当需要再次对地形信息或者纹理配置信息重新编辑时,可不再导出基础纹理数组和法线纹理数组,仅导出RGBA格式的图像数据。
也就是说,为了使相关人员能检测基于本申请的编码方式对材质的渲染效果,可获取编码得到的RGBA格式的图像数据;对所述RGBA格式的图像数据进行解码,以得到所述纹理配置信息;利用所述纹理配置信息,执行地形渲染,具体地,解码过程以及渲染过程都可以在地形编辑设备11中执行。在利用所述纹理配置信息,执行地形渲染的过程中,可使用基础纹理数组,还可以使用基础纹理数据与法线纹理数组。
上述纹理配置信息为可以包括以下至少之一:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;像素点对应的至少一个纹理标识中,各个纹理标识对应纹理的混合权重等,纹理配置信息是用于渲染目标对象的重要信息,可提前由相关人员在编辑地形时设定。
其中,纹理标识为反映对应的纹理在基础纹理数组中的位置的纹理索引,或者在基础纹理数组与法线纹理数组中的位置的纹理索引;基础纹理数组为包括多个基础纹理的数组,基础纹理为地形纹理的基本色;法线纹理数组为包括多个法线贴图的数组。
上述RGBA格式的图像数据为包括R、G、B以A通道对应的数值信息的RGBA图像;RGBA格式的图像数据可以为一个或多个图像。也就是说,需编码的纹理配置信息可全部编码入同一个RGBA格式的图像,还可以编入不同的RGBA格式的图像。需编码的纹理配置信息可以由相关人员设定,可设定对全部纹理配置信息进行编码,也可以设定对部分纹理配置信息进行编码,其他未编码的纹理配置信息可以在对目标对象进行渲染时,从缓存器中同步获取。
上述目标对象可以为根据相关人员在游戏过程中的操作,需展示给相关人员的地形展示内容,与地形信息对应,具体可以与地形信息相同。
本系统实施例中的各组成单元,如地形编辑设备11以及游戏客户端设备12的执行原理及交互过程可参见如下各方法实施例的描述。
图2为本申请一示例性实施例提供的一种数据处理方法,具体可以由上述地形编辑设备11执行,该方法包括:
201、获取地形信息的纹理配置信息;
202、对所述纹理配置信息进行编码,得到RGBA格式的图像数据;
其中,所述RGBA格式的图像数据用于渲染目标对象。
其中,地形信息、纹理配置信息以及RGBA格式的图像数据的解释可参见前述内容,此处不再赘述。
在一些实施例中,所述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;
所述方法还包括:获取单个纹理标识对应的编码位数,以及预设的最大纹理标识数量;
相应地,上述202中,“对所述纹理配置信息进行编码,得到RGBA格式的图像数据”,包括:
2021、基于所述至少一个纹理标识中单个纹理标识对应的编码位数分别对所述至少一个纹理标识进行编码,结合所述预设的最大纹理标识数量得到至少一个第一编码结果;
2022、将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内。
上述2021中的编码位数可以由设定的基础纹理集,或者基础纹理数组中包括的基础纹理的数量决定,具体地,编码位数可通过以下公式进行确定:
B=log2A
其中,A为基础纹理数组中包括的基础纹理的总数量,B为单个纹理标识对应的编码位数。
例如:当基础纹理数组中包括的基础纹理的总数量为16时,单个纹理标识对应的编码位数为4,当基础纹理数组中包括的基础纹理的总数量为64时,单个纹理标识对应的编码位数为6。
在一些可选的实施例中,上述编码位数可以为4或者6,还可以为其他数值,在对纹理配置信息进行编码时,可以为将原10进制的纹理配置信息,编码为2进制的编码结果,例如,当纹理标识为52、编码位数为6时,该纹理标识对应的第一编码结果为110100。
上述最大纹理标识数量为预设的需进行编码的纹理标识数量,例如,假如原地形信息中对应位置有4层纹理时,可设定为对混合权重最大的3层纹理对应的纹理配置信息进行编码。该方式可以使得既能减少将渲染资源传输至解码设备的数据量,又能保留用于渲染目标对象的重要信息。
像素点也可称为纹素点,可对应四个通道,每个通道值对应的数据空间有8bit。具体地,上述色彩通道可以为R、G、B以及A通道,将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内后,第一编码结果将组成其所在的数据空间对应的色彩通道的二进制格式的色彩值的部分二进制数据。
上述2022中,“将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内”,包括:
20221、将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道和G通道对应的数据空间内。
具体地,当单个纹理标识对应的编码位数为4,且预设的最大纹理标识数量为3时,第一编码结果的个数也为3时,将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道和G通道对应的数据空间内后,RGBA格式的图像数据中像素点对应的R通道和G通道中的数据,可参见表1所示。
表1 RGBA格式的图像数据中像素点对应的色彩通道中的数据
IDTex.r | index_a | index_a | index_a | index_a | index_b | index_b | index_b | index_b |
IDTexg | index_c | index_c | index_c | index_c | mixState | mixState | tilling_a | tilling_a |
IDTex.b | tilling_a | tilling_a | tilling_a | tilling_a | tilling_b | tilling_b | tilling_b | tilling_b |
IDTex.a | tilling_c | tilling_c | tilling_c | tilling_c | tilling_b | tilling_b | tilling_c | tilling_c |
表1中,IDTex.r、IDTex.g、IDTex.b以及IDTex.a分别指R通道、G通道、B通道以及A通道。index_a index_a index_a index_a、index_b index_b index_b index_b以及index_c index_c index_c index_c为第一编码结果。
可选地,所述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;
上述202中,“对所述纹理配置信息进行编码,得到RGBA格式的图像数据”,还包括:
2023、对所述像素点对应的纹理混合状态进行编码,得到第二编码结果;
2024、将所述第二编码结果添加至所述像素点对应的G通道对应的数据空间内;
2025、分别对所述至少一个纹理标识对应纹理的缩放信息进行编码,得到至少一个第三编码结果;
2026、将所述至少一个第三编码结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内。
具体地,在对像素点对应的纹理混合状态进行编码时,可预设纹理混合状态对应的状态编码位数,该状态编码位数需满足可表示出所述最大纹理标识数量,例如,当最大纹理标识数量为3时,状态编码位数为2位。将所述第二编码结果添加至所述像素点对应的G通道对应的数据空间内后,RGBA格式的图像数据中像素点对应的色彩通道中的数据可参见表1所示,其中,mixState mixState为第二编码结果。
具体地,当像素点对应的纹理混合状态为0(第二编码结果为00)时,代表此时像素点仅对应1层纹理,当像素点对应的纹理混合状态为1(第二编码结果为01)时,代表此时像素点对应2层纹理,当像素点对应的纹理混合状态为2(第二编码结果为10)时,代表此时像素点对应3层纹理。
相应地,在对所述至少一个纹理标识对应纹理的缩放信息进行编码时,也需获取单个纹理的缩放信息的缩放信息编码位数,基于该缩放信息编码位数对至少一个纹理标识对应纹理的缩放信息进行编码。
可选地,所述方法还包括:获取预设高位位数与预设低位位数;
上述2026中,“将所述至少一个第三编码结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内”,包括:
20261、根据所述预设高位位数与预设低位位数,对所述至少一个第三编码结果中的任一第三编码结果进行拆分,得到各个第三编码结果对应的高位结果与低位结果;
20262、按照第一预设顺序将所述至少一个第三编码结果中任一第三编码结果的高位结果以及低位结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内。
具体地,按照第一预设顺序将所述至少一个第三编码结果中任一第三编码结果的高位结果以及低位结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内后,RGBA格式的图像数据中像素点对应的色彩通道中的数据可参见表1所示,表1中的tilling_a tilling_a tilling_a tilling_a tilling_a tilling_a、tilling_btilling_b tilling_b tilling_b tilling_b tilling_b以及tilling_c tilling_ctilling_c tilling_c tilling_c tilling_c为第三编码结果。其中,单个纹理的缩放信息的缩放信息编码位数为6。
可选地,上述20262中的第一预设顺序也可与第三编码结果对应的纹理标识对应纹理的混合权重值的排序相关,还包括不同第三编码结果的高位结果以及低位结果的排序信息,还可进一步包括不同第三编码结果的高位结果以及低位结果在对应通道对应的数据空间内的放置位置,还可以进一步基于同一第三编码结果对应的高位结果与低位结果隔开存储的原则设定。
相应地,若像素点对应的3个纹理标识对应纹理的缩放信息分别为52、20、15,且单个纹理的缩放信息的缩放信息编码位数为6时,则对52、20、15进行编码后的第三编码结果分别为:110100、010100、001111;
若所述预设高位位数为2,预设低位位数为4;
则上述3个第三编码结果中,110100对应的高位结果与低位结果分别为:11、0100;010100对应的高位结果与低位结果分别为:01、0100;001111对应的高位结果与低位结果分别为:00、1111。
例如:若第三编码结果(如:tilling_a tilling_a tilling_a tilling_atilling_a tilling_a)110100对应的高位结果与低位结果分别为:11、0100,其存储方式可如表2所示:
表2第三编码结果110100在像素点对应的色彩通道中的存储方式
在基于RGBA格式的图像数据对目标对象进行渲染时,还需获得所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重;所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重,可以在根据RGBA格式的图像数据对目标对象进行渲染时从缓存器中同步读取,还可以根据与第一编码结果对应的RGBA格式的图像数据不同的RGBA格式的图像数据获得。
相应地,在编码过程中,所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据;
所述纹理配置信息还包括:所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
上述2022中,“将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内”,包括:
将所述至少一个第一编码结果添加至所述第一RGBA图像数据中第一像素点对应的色彩通道对应的数据空间内;
上述202中,“对所述纹理配置信息进行编码,得到RGBA格式的图像数据”,还包括:
2027、获取像素点对应的纹理混合状态;
2028、根据所述像素点对应的纹理混合状态,以及所述第一像素点对应的至少一个纹理标识中,各个纹理标识对应纹理的混合权重确定编码权重;
2029、对所述编码权重进行编码,得到所述编码权重对应的第四编码结果;
2028、将所述第四编码结果添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内。
具体地,第一像素点为第一RGBA图像数据中的像素点,第二像素点为第二RGBA图像数据中的像素点。第一RGBA图像数据与第二RGBA图像数据的图像大小相同。且第一RGBA图像数据中的第一像素点与第二RGBA图像数据中的第二像素点一一对应。
由于至少一个纹理标识中,各个纹理标识对应纹理的混合权重之和为1,因此,上述像素点对应的纹理混合状态指示的纹理标识的个数,可比第四编码结果对应的编码纹理标识的个数少1,例如:当所述纹理混合状态指示像素点对应的纹理标识的个数为1时,则不对所述该纹理标识对应纹理的混合权重(为1)进行编码,若所述纹理混合状态指示像素点对应的纹理标识的个数为2时,则仅对该2个纹理标识中的其中之1对应的混合权重a1进行编码,在解码时,可通过1-a1得出另一纹理标识对应纹理的混合权重。
可选地,上述2028中的编码权重可以为至少一个纹理标识中纹理标识对应纹理的混合权重中,按照自大到小进行排序,排名为前纹理混合状态指示的纹理标识的个数减1名的权重。
具体地,当纹理混合状态指示的纹理标识的个数为2时,将所述第四编码结果添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内后,第二像素点对应的色彩通道对应的数据空间内的数据可参见表3a所示;当纹理混合状态指示的纹理标识的个数为3时,将所述第四编码结果添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内后,第二像素点对应的色彩通道对应的数据空间内的数据可参见表3b所示。
表3a当纹理混合状态指示的纹理标识的个数为2时,第二像素点对应的色彩通道对应的数据空间内的数据
1层 | 2层 | 3层 | |
WeightTex.r | weight_a | ||
WeightTex.g | |||
WeightTex.b | |||
WeightTex.a | 1 | 1 | 1 |
表3b当纹理混合状态指示的纹理标识的个数为3时,第二像素点对应的色彩通道对应的数据空间内的数据
其中,表3a与表3b中,WeightTex.r、WeightTex.g、WeightTex.b、WeightTex.a分别为第二像素点对应的R通道、G通道、B通道以及A通道;WeightTex.a对应的数据空间内的“1”为默认值。
表3a中,WeightTex.r的数据空间内的Weight_a为第一像素点对应的纹理混合状态指示的纹理标识的个数为2时,对应其中1个纹理标识对应纹理的混合权重的第四编码结果;在解码时,另一个纹理标识对应纹理的混合权重可以由公式1-weight_a求出。
表3b中,WeightTex.g的数据空间内的Weight_a,以及WeightTex.b的数据空间内的Weight_b,构成当纹理混合状态指示的纹理标识的个数为3时,对应其中2个纹理标识对应纹理的混合权重的第四编码结果;在解码时,另一个纹理标识的混合权重可以由公式1-weight_a-weight_b求出。
例如,当第一像素点对应的纹理混合状态指示的纹理标识的个数为2,且该2个纹理标识对应纹理的混合权重分别为0.59、0.41时,编码权重为0.59,第四编码结果为0.59对应的编码结果,将0.59添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内后,第二像素点对应的色彩通道对应的数据空间内的数据参见表3c所示,当第一像素点对应的纹理混合状态指示的纹理标识的个数为3,且该3个纹理标识对应纹理的混合权重分别为0.51、0.41、0.08,第四编码结果为0.51、0.41对应的编码结果,将0.51、0.41添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内后,第二像素点对应的色彩通道对应的数据空间内的数据参见表3d所示。
表3c将0.59添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内后,第二像素点对应的色彩通道对应的数据空间内的数据
1层 | 2层 | 3层 | |
WeightTex.r | 0.59 | ||
WeightTex.g | |||
WeightTex.b | |||
WeightTex.a | 1 | 1 | 1 |
表3d将0.51、0.41添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内后,第二像素点对应的色彩通道对应的数据空间内的数据
1层 | 2层 | 3层 | |
WeightTex.r | 0.51 | ||
WeightTex.g | 0.41 | ||
WeightTex.b | |||
WeightTex.a | 1 | 1 | 1 |
表3a至表3d中的:1层、2层、3层,指第一像素点对应的纹理标识的个数,层值与第一像素点对应的纹理标识的个数相同。
进一步地,为了进一步提高数据包的传输效率,所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重对应的第五编码结果与第一编码结果可以都添加至同一RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内。
所述方法还包括:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
上述2022中,“将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内”,包括:将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道与B通道对应的数据空间内;
上述202中,“对所述纹理配置信息进行编码,得到RGBA格式的图像数据”,还包括:
S1、基于所述纹理混合状态,分别对所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重进行编码,并结合所述最大纹理标识数量得到至少一个第五编码结果;
S2、将所述至少一个第五编码结果按照第二预设顺序添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道、B通道以及A通道对应的数据空间内。
具体地,将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道与B通道对应的数据空间内,以及将所述至少一个第五编码结果按照第二预设顺序添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道、B通道以及A通道对应的数据空间内后,像素点对应的色彩通道对应的数据空间内的数据可参见表4所示。
表4将所述至少一个第一编码结果以及至少一个第五编码结果添加至所述RGBA格式的图像数据中像素点对应的色彩通道对应的数据空间内后,像素点对应的色彩通道对应的数据空间内的数据
IDTex.r | index_a | index_a | index_a | index_a | index_a | index_a | weight_a | weight_a |
IDTexg | index_b | index_b | index_b | index_b | index_b | index_b | weight_a | weight_a |
IDTex.b | index_c | index_c | index_c | index_c | index_c | index_c | weight_a | weight_a |
IDTex.a | weight_b | weight_b | weight_b | weight_b | weight_b | weight_b | weight_b | weight_a |
表4中,单个纹理标识的编码位数为6位,任一纹理标识的取值范围为[0,63];任一纹理标识对应纹理的混合权重,可使用7位存储,混合权重值可保留小数点后2位,左移2位后进行编码,范围[0,126]。所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息可以在对目标对象进行渲染时,自缓存区内同步获取。
进一步地,为了进一步提高对目标对象的渲染效率,而且较小的损失地形信息中的信息,上述方法还包括:
001、获取所述地形信息中像素点对应的原始纹理标识中,任一纹理标识对应纹理的混合权重;
002、对原始纹理标识中各个纹理标识对应纹理的混合权重值由高至低进行排序,将排名为前最大纹理标识数量的权重值,对应纹理的纹理标识,作为所述像素点对应的至少一个纹理标识。其中,原始纹理标识的数量大于或等于所述最大纹理标识数量。
相应地,像素点对应的至少一个纹理标识中任一纹理标识对应纹理的混合权重为:任一纹理标识对应的原始权重相对于排名为前最大纹理标识数量的权重值之和的权重,例如:
假设地形信息中对应位置处,像素点对应4个原始纹理标识,该4个原始纹理标识对应的基础纹理可分别为:土对应的基础纹理、草对应的基础纹理、石头对应的基础纹理、砖对应的基础纹理;且土对应的基础纹理的混合权重为0.4、草对应的基础纹理的混合权重为0.3、石头对应的基础纹理的混合权重为0.25、砖对应的基础纹理的混合权重为0.05。若最大纹理标识数量为3,最大的原始纹理标识对应的混合权重分别为:0.4、0.3、0.25;则第一像素点对应的至少一个纹理标识中,该至少一个纹理标识对应纹理的混合权重分别为0.42(0.4/(0.4+0.3+0.25))、0.32(0.3/(0.4+0.3+0.25))以及0.26(0.25/(0.4+0.3+0.25))。其中,混合权重0.26可不进行编码,在解码时根据:1.0–0.42–0.32得出。
通过该方案,可尽可能的保留地形信息中的重要信息,保证目标对象与原地形信息的相似度。
通过上述可知,本申请提供的方案,可以使得在对目标对象进行渲染时,直接对RGBA格式的图像数据进行解码,得到的纹理配置信息对目标对象进行渲染,提高了为目标对象进行渲染的渲染效率。
相应地,上述方法还可包括解码过程,即所述方法还包括:
S20、获取所述RGBA格式的图像数据;
S21、对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息;
S22、利用所述纹理配置信息对目标对象进行渲染。
上述S22中,“利用所述纹理配置信息对所述目标对象进行渲染”,包括:
S221、获取基础纹理数组;
S222、根据所述基础纹理数组、所述纹理配置信息对所述目标对象进行渲染。
上述步骤S20可以是当用户处于游戏场景中时,根据用户在游戏地形中所处的位置,确定需要展示给用户对应的目标对象,对目标对象进行渲染时触发。
具体地,可通过对RGBA格式的图像数据进行采样,进而得到像素点对应的上述表1包含的数据,在进一步基于采样结果进行解码,可得到纹理配置信息。
具体地,在根据所述基础纹理数组、所述纹理配置信息对所述目标对象进行渲染时,在确定目标对象中待渲染的目标像素后,需根据纹理配置信息确定基于基础纹理数组中用于渲染目标像素的目标纹理,然后基于目标纹理对应的混合权重、ID信息、缩放信息等对目标像素进行渲染。具体渲染过程可参见现有技术,此处不再赘述。
上述S222,根据所述基础纹理数组、所述纹理配置信息对所述目标对象进行渲染可包括:根据根据所述基础纹理数组、所述纹理配置信息以及法线纹理数组对所述目标对象进行渲染。其中,基础纹理数组与法线纹理数组都可以为2维数组。
具体地,当上述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识时;
所述方法还包括:获取单个纹理标识对应的编码位数,以及预设的最大纹理标识数量;
上述S20中,“获取RGBA格式的图像数据”,包括:获取所述RGBA格式的图像数据中像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
上述S21中,“对所述RGBA格式的图像数据进行解码,得到纹理配置信息”包括:
S211、基于所述至少一个纹理标识中单个纹理标识对应的编码位数、所述预设的最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
S212、对所述至少一个第一编码结果进行解码,得到所述至少一个纹理标识。
上述S211中,“基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果”,包括:
基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的R通道对应的数据空间内的全部数据和G通道对应的数据空间内的部分数据确定所述至少一个第一编码结果。
其中,在编码过程中,可对编码位数以及最大纹理标识数量进行存储,且对编码位数、最大纹理标识数量与至少一个第一编码结果的添加的具体位置的映射关系进行存储,进而在解码过程中,根据存储信息即可得到至少一个第一编码结果。具体地,至少一个第一解码结果的存储位置,可参见表1所示,此处不再赘述。
当所述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息时,
上述S21中,“对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息”,还包括:
S213、基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的另一部分数据,确定第二编码结果;
S214、对所述第二编码结果进行解码,得到所述像素点对应的纹理混合状态;
S215、基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果;
S216、对所述至少一个第三编码结果进行解码,得到所述至少一个纹理标识对应纹理的缩放信息。
可选地,所述方法还包括:获取预设高位位数与预设低位位数;
上述S215中,“基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果”,包括:
S2151、根据所述预设高位位数、所述预设低位位数、第一预设顺序,以及获取到的所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定任一第三编码结果的高位结果以及低位结果;
S2152、根据任一第三编码结果的高位结果以及低位结果确定所述至少一个第三编码结果。
其中,根据任一第三编码结果的高位结果以及低位结果确定所述至少一个第三编码结果,指根据各个第三编码结果的高位结果以及低位结果确定所述至少一个第三编码结果。
具体地,获取第二编码结果与第三编码的结果时,可以基于在编码时,第二编码结果与第三编码结果在RGBA格式的图像数据中,像素点对应的色彩通道对应的数据空间内的添加位置得到。第二编码结果以及第三编码结果的添加位置可具体可参见表1所示。
由于在编码过程中,所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据,且可将第一编码结果与第四编码结果分别添加至第一RGBA图像数据中第一像素点对应的色彩通道对应的数据空间内,以及第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内,相应地,在解码时,上述S20中,“获取RGBA格式的图像数据”,包括:获取所述第一RGBA图像数据中第一像素点对应的色彩通道值;获取所述第二RGBA图像数据中第二像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
上述S211中,“基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果”,包括:
基于所述编码位数、所述最大纹理标识数量以及所述第一像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
上述S21中,“对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息”,还包括:
S217、基于所述第二RGBA图像数据中所述第二像素点对应的色彩通道对应的数据空间内的数据,得到第四编码结果;
S218、对所述第四编码结果进行解码,得到所述第一像素点对应的至少一个纹理标识中的编码纹理标识对应纹理的编码权重;
S219、根据所述编码权重确定所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
具体地,第一编码结果与第四编码结果的读取位置,也可以由编码过程中,对第一编码结果与第四编码结果的存储位置确定,第一编码结果与第四编码结果的存储位置可参见表1与表3a至表3d所示,此处不再赘述。
具体地,由前述2028对应的实施例可知,编码权重为至少一个纹理标识中纹理标识对应纹理的混合权重中,按照自大到小进行排序,排名为前纹理混合状态指示的纹理标识的个数减1名的权重。因此,得出编码权重W1之后,根据1-W1计算出剩余的纹理标识对应纹理的混合权重。
进一步地,针对像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重对应的第五编码结果与第一编码结果可以都添加至同一RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内,在解码过程中时,所述方法还包括:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
上述S21中,“对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息”,还包括:
基于所述纹理混合状态、所述最大纹理标识数量,以及获取到的所述RGBA格式的图像数据中所述像素点对应的R通道对应的数据空间内的部分数据、G通道对应的数据空间内的部分数据、B通道对应的数据空间内的部分数据以及A通道对应的数据空间内的全部数据,确定所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
具体地,对第一编码结果与第五编码结果进行获取时,可以根据编码结果中,对第一编码结果与第五编码结果的存储位置确定,第一编码结果与第五编码结果的存储位置可参见表4所示,此处不再赘述。
进一步地,为了进一步提高对目标对象的渲染效率,还可以纹理高度信息、粗糙度信息以及环境光遮蔽信息进行编码,基于此所述方法还包括:
S41、获取所述至少一个纹理标识对应纹理的高度信息;
S42、对所述至少一个纹理标识对应纹理的高度信息进行编码,得到高度值编码结果;
S43、将所述高度值编码结果放入对应纹理的纹理像素对应的色彩通道对应的数据空间内,得到对应的目标纹理;
其中,所述目标纹理为基础纹理数组的至少部分纹理。
进一步地,所述方法还包括:
S44、获取所述至少一个纹理标识对应纹理的粗糙度信息以及环境光遮蔽信息;
S45、对所述至少一个纹理标识对应纹理的粗糙度信息以及环境光遮蔽信息进行编码,得到第六编码结果;
S46、将所述第六编码结果放入对应法线纹理的法线像素对应的色彩通信息对应的数据空间内,得到对应的目标法线纹理;
其中,所述目标法线纹理为法线纹理数组中的至少部分法线贴图。相应地,根据所述基础纹理数组与所述纹理配置信息对所述目标对象进行渲染包括:
根据所述基础纹理数组、所述法线纹理数组与所述纹理配置信息对所述目标对象进行渲染。
使用本申请中提出的基于基础纹理数组与法线纹理数组,以及编码与解码的方案,可避免现有技术中使用图集时,不能正确采样mipmap的问题,克服了现有技术中,仅能调用16张图集的限制,节省了纹理采样次数,降低了shader复杂度,提升了游戏性能,避免了过多的不重要的图片导致的内存浪费。
图3为本申请一示例性实施例提供的一种数据处理方法的流程示意图,该方法可以应用于地形编辑设备11或游戏客户端设备12,该方法包括:
301、获取RGBA格式的图像数据;
302、对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息;
303、获取基础纹理数组;
304、根据所述基础纹理数组以及所述纹理配置信息对目标对象进行渲染。
可选地,所述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;
所述方法还包括:获取单个纹理标识对应的编码位数,以及预设的最大纹理标识数量;
上述301中,“获取RGBA格式的图像数据”,包括:获取所述RGBA格式的图像数据中像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
上述302中,“对所述RGBA格式的图像数据进行解码,得到纹理配置信息”,包括:
3021、基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
3022、对所述至少一个第一编码结果进行解码,得到所述至少一个纹理标识。
上述3021中,“基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果”,包括:
基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的R通道对应的数据空间内的全部数据和G通道对应的数据空间内的部分数据确定所述至少一个第一编码结果。
可选地,所述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;
上述302中,“对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息”,还包括:
3023、基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的另一部分数据,确定第二编码结果;
3024、对所述第二编码结果进行解码,得到所述像素点对应的纹理混合状态;
3025、基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果;
3026、对所述至少一个第三编码结果进行解码,得到所述至少一个纹理标识对应纹理的缩放信息。
可选地,所述方法还包括:获取预设高位位数与预设低位位数;
上述3025中,“基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果”,包括:
30251、根据所述预设高位位数、所述预设低位位数、第一预设顺序,以及获取到的所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定任一第三编码结果的高位结果以及低位结果;
30252、根据任一第三编码结果的高位结果以及低位结果确定所述至少一个第三编码结果。
在一些实施例中,所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据;
所述纹理配置信息还包括:所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
上述301中,“获取RGBA格式的图像数据”,包括:获取所述第一RGBA图像数据中第一像素点对应的色彩通道值;获取所述第二RGBA图像数据中第二像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
上述3021中,“基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果”,包括:
基于所述编码位数、所述最大纹理标识数量以及所述第一像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
上述302中,“对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息”,还包括:
3027、基于所述第二RGBA图像数据中所述第二像素点对应的色彩通道对应的数据空间内的数据,得到第四编码结果;
3028、对所述第四编码结果进行解码,得到所述第一像素点对应的至少一个纹理标识中的编码纹理标识对应纹理的编码权重;
3029、根据所述编码权重确定所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
可选地,所述纹理配置信息还包括:所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
所述方法还包括:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
上述302中,“对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息”,还包括:
基于所述纹理混合状态、所述最大纹理标识数量,以及获取到的所述RGBA格式的图像数据中所述像素点对应的R通道对应的数据空间内的部分数据、G通道对应的数据空间内的部分数据、B通道对应的数据空间内的部分数据以及A通道对应的数据空间内的全部数据,确定所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
其中,本实施例中各组成单元、模块或执行步骤的具体实现方式可参见前述内容,此处不再赘述。
下面结合具体应用场景对本申请实施例提供的技术方案进行说明:
在编码过程中,若RGBA格式的图像数据中像素点对应的至少一个纹理标识,与像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重在编码完成后,分别将编码结果添加至第一RGBA图像数据中第一像素点以及第二RGBA图像数据中第二像素点对应的对应的数据空间内,第一RGBA图像数据与第二RGBA图像数据分别可参见表1与表3a至表3d所示。
可设定第一RGBA图像数据为RGBA图像(即像素深度为32)、第一RGBA图像数据的图像大小、第一像素点对应的至少一个纹理标识中任一纹理标识的取值范围(如[0,15])、所述至少一个纹理标识中任一纹理标识对应纹理的缩放信息的取值范围(如[0,63])、第一像素点对应的纹理混合状态的取值范围(如[0,1,2])。
其中,当纹理混合状态为0时,此时第一像素点仅对应一层纹理,当纹理混合状态为1时,第一像素点对应2层纹理,当纹理混合状态为2时,第一像素点对应3层纹理。
具体地,对所述第一像素点对应的至少一个纹理标识进行编码,得到第一编码结果、对所述第一像素点对应的纹理混合状态进行编码,得到第二编码结果,以及对所述至少一个纹理标识对应纹理的缩放信息进行编码,得到第三编码结果后,得到的第一RGBA图像数据可参见上述表1所示。
进一步地,在对任一纹理标识对应纹理的混合权重进行编码时,可设定第二RGBA图像数据为灰度图,像素深度为32、第二RGBA图像数据的图像大小、以及第二像素点对应的任一纹理标识对应纹理的混合权重的范围(如[0,1])。
相应地,在解码过程中,可包括以下步骤:
S1、采样第一RGBA图像数据;
S2、对所述第一RGBA图像数据进行解码,得到至少一个纹理标识,以及第一像素点对应的纹理混合状态、以及至少一个纹理标识中任一纹理标识对应纹理的缩放信息;
S3、采样第二RGBA图像数据的多个第二像素点中的任一第二像素点,得到第一像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
S4、根据所述至少一个纹理标识确定在基础纹理数组中,对应的至少一个目标纹理,并对所述至少一个目标纹理进行采样,根据至少一个目标纹理与各自对应的混合权重,对目标对像进行渲染。
具体地,解码过程中可包括以下执行程序:
mixSign.x=mixState<=0;
mixSign.y=mixState==1;
mixSign.z=mixState>=2;
float3 weight_1=float3(1,0,0);
float3 weight_2=float3(weight.r,1-weight.r,0);
float3 weight_3=float3(weight.g,weight.b,1-weight.g-weight.b);
float3 weight_final=mixSign.x*weight_1+mixSign.y*weight_2+mixSign.z*weight_3;
float3 baseColor=baseColor_a*weight_final.x+baseColor_b*weight_final.y+baseColor_c*weight_final.z。
其中,上述mixState为纹理混合状态,weight为权重信息,mixSign为根据mixState生成的三维坐标信息。baseColor_a、baseColor_b、baseColor_c为:至少一个纹理标识中各个纹理标识对应的目标纹理。baseColor为用于渲染目标对象中某一目标像素的目标混合纹理。
其中,有法线纹理的情况与上相同。
在编码过程中,若第一像素点对应的至少一个纹理标识,与第一像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重在编码完成后,将编码结果都添加至同一个RGBA格式的图像数据中像素点对应的对应的数据空间内,若最大纹理标识数量为6,可设定RGBA格式的图像数据为RGBA图像(即像素深度为32)、RGBA格式的图像数据的图像大小、像素点对应的至少一个纹理标识中任一纹理标识的取值范围(如[0,63]),像素点对应的任一纹理标识对应纹理的混合权重的范围(如[0,1])。
具体地,对所述像素点对应的至少一个纹理标识进行编码,得到第一编码结果、对所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重进行编码,得到第五编码结果后,根据第一编码结果与第五编码结果得到的RGBA格式的图像数据可参见表4所示。
其中,任一纹理标识对应纹理的混合权重可使用7位存储,混合权重值保留小数点后2位,左移2位后进行编码,使用7bit存储,范围[0,126]。
相应地,在解码过程中,可包括以下步骤:
S80、可采样RGBA格式的图像数据;
S81、对所述RGBA格式的图像数据进行解码,得到至少一个纹理标识,以及像素点对应的任一纹理标识对应纹理的混合权重;
S82、根据所述至少一个纹理标识确定对应的至少一个目标纹理,并对所述至少一个目标纹理进行采样,根据至少一个目标纹理与之各自对应的混合权重,确定待渲染目标对象中的目标像素的目标混合纹理。
具体地,上述S82的步骤可包括以下执行程序:
float3 baseColor=baseColor_a*weight_a+baseColor_b*weight_b+baseColor_c*weight_c;
其中,weight_a、weight_b、weight_c为至少一个目标基础纹理对应的至少一个混合权重,baseColor_a、baseColor_b、baseColor_c为:至少一个纹理标识中各个纹理标识对应的目标纹理。baseColor为用于渲染目标像素的目标混合纹理。
通过将第一编码结果与第五编码结果都添加至同一RGBA格式的图像数据中,可进一步优化编解码算法,运行时节省一张权重图,省去一次纹理采样,减小了包体大小,进一步提高了对目标对象的渲染速度。
如果使用高度混合的方式,可通过缓存区传高度值,并对权重进行修改后使用:ModifiedWeight=clamp(lerp(-1.f,1.f,Weight)+Height,0.0001f,1.f)。
其中,有法线纹理的情况与上相同。
进一步地,当层混合的混合类型使用层混合高度混合的方式时:在编码过程中,基础纹理对应的高度值可放入自身的A通道对应的数据空间内,粗糙度可放入法线纹理图像的B通道数据空间内,AO值放入法线纹理图像的A通道数据空间内。
相应地,在解码阶段,需要使用高度值对权重值进行调整,例如通过解码可得到高度信息,进而根据以下公式,确定调整后的权重值信息,
ModifiedWeight=clamp(lerp(-1.f,1.f,Weight)+Height,0.0001f,1.f)。
其中,Height为高度信息,ModifiedWeight为调整后的权重值信息。
需要说明的是,上述编码过程或解码过程中涉及到的参数信息,如:纹理标识、像素深度、图像大小、混合权重、高度信息、混合标志、目标混合纹理、以及至少一个纹理标识对应纹理的缩放信息的取值等等都可以为浮点型。
本申请提供的上述数据处理方法,可以使得在对目标对象进行渲染时,直接通过对第一纹理混合图像的RGBA格式的图像数据进行解码,得到的第一纹理配置信息,对目标对象进行渲染,提高了为目标对象进行渲染的渲染效率。
图4为本申请一示例性实施例提供的一种电子设备的结构示意图,包括:存储器41、处理器42;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行图2及图3对应的数据处理方法。
上述存储器41可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器41可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
上述处理器42在执行存储器41中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。
进一步,如图4所示,电子设备还包括:显示器43、电源组件44、通讯组件45等其它组件。图4中仅示意性给出部分组件,并不意味着该电子设备包括图4所示组件。
本实施例对应的具体实施方式,可参见前述内容,此处不再赘述。
本申请还提供了一种计算机可读介质,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现图2及图3对应的数据处理方法。
本申请实施例还提供了一种系统,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现图2及图3的数据处理方法。
图5为本申请一示例性实施例提供的一种数据处理装置的结构示意图,该装置包括:获取模块51、编码模块52,其中:
获取模块51,用于获取地形信息的纹理配置信息;
编码模块52,用于对所述纹理配置信息进行编码,得到RGBA格式的图像数据;
其中,所述RGBA格式的图像数据用于渲染目标对象。
可选地,所述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;
所述装置还用于:获取单个纹理标识对应的编码位数,以及预设的最大纹理标识数量;
可选地,上述编码模块52在用于对所述纹理配置信息进行编码,得到RGBA格式的图像数据时,具体用于:
基于所述编码位数分别对所述至少一个纹理标识进行编码,结合所述最大纹理标识数量得到至少一个第一编码结果;
将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内。
可选地,上述编码模块52在用于将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内时,具体用于:
将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道和G通道对应的数据空间内。
可选地,所述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;
可选地,上述编码模块52在用于对所述纹理配置信息进行编码,得到RGBA格式的图像数据,还具体用于:
对所述像素点对应的纹理混合状态进行编码,得到第二编码结果;
将所述第二编码结果添加至所述像素点对应的G通道对应的数据空间内;
分别对所述至少一个纹理标识对应纹理的缩放信息进行编码,得到至少一个第三编码结果;
将所述至少一个第三编码结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内。
可选地,上述装置还用于:获取预设高位位数与预设低位位数;
可选地,上述编码模块52在用于将所述至少一个第三编码结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内时,具体用于:
根据所述预设高位位数与预设低位位数,对所述至少一个第三编码结果中的任一第三编码结果进行拆分,得到各个第三编码结果对应的高位结果与低位结果;
按照第一预设顺序将所述至少一个第三编码结果中任一第三编码结果的高位结果以及低位结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内。
可选地,所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据;
所述纹理配置信息还包括:所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
可选地,上述编码模块52在用于将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内时,具体用于:将所述至少一个第一编码结果添加至所述第一RGBA图像数据中第一像素点对应的色彩通道对应的数据空间内;
可选地,上述编码模块52在用于对所述纹理配置信息进行编码,得到RGBA格式的图像数据时,还可具体用于:获取像素点对应的纹理混合状态;根据所述像素点对应的纹理混合状态,以及所述第一像素点对应的至少一个纹理标识中,各个纹理标识对应纹理的混合权重确定编码权重;对所述编码权重进行编码,得到所述编码权重对应的第四编码结果;将所述第四编码结果添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内。
可选地,所述纹理配置信息还包括:
所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
所述装置还用于:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
可选地,在编码模块52,用于将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内时,具体用于:将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道与B通道对应的数据空间内;
可选地,上述编码模块52在用于对所述纹理配置信息进行编码,得到RGBA格式的图像数据时,还具体用于:
基于所述纹理混合状态,分别对所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重进行编码,并结合所述最大纹理标识数量得到至少一个第五编码结果;
将所述至少一个第五编码结果按照第二预设顺序添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道、B通道以及A通道对应的数据空间内。
可选地,所述装置还包括解码模块,该解码模块用于:
获取所述RGBA格式的图像数据;
对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息;
利用所述纹理配置信息对目标对象进行渲染。
可选地,在解码模块用于利用所述纹理配置信息对所述目标对象进行渲染时,具体用于:
获取基础纹理数组;
根据所述基础纹理数组、所述纹理配置信息对所述目标对象进行渲染。
本实施例对应的具体实施方式,可参见前述内容,此处不再赘述。
图6为本申请一示例性实施例提供的一种数据处理装置的结构示意图,该装置包括:第一获取模块61、解码模块62、第二获取模块63以及渲染模块64;其中;
第一获取模块61,用于获取RGBA格式的图像数据;
解码模块62,用于对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息;
第二获取模块63,用于获取基础纹理数组;
渲染模块64,用于根据所述基础纹理数组以及所述纹理配置信息对目标对象进行渲染。
可选地,所述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;
所述装置还用于:获取单个纹理标识对应的编码位数,以及预设的最大纹理标识数量;
第一获取模块61,在用于获取RGBA格式的图像数据时,具体用于:获取所述RGBA格式的图像数据中像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
上述解码模块62,在用于对所述RGBA格式的图像数据进行解码,得到纹理配置信息时,具体用于:
基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
对所述至少一个第一编码结果进行解码,得到所述至少一个纹理标识。
上述解码模块62,在用于基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果时,具体用于:
基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的R通道对应的数据空间内的全部数据和G通道对应的数据空间内的部分数据确定所述至少一个第一编码结果。
上述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;
上述解码模块62,在用于对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息时,还可以用于:
基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的另一部分数据,确定第二编码结果;
对所述第二编码结果进行解码,得到所述像素点对应的纹理混合状态;
基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果;
对所述至少一个第三编码结果进行解码,得到所述至少一个纹理标识对应纹理的缩放信息。
所述装置还用于:获取预设高位位数与预设低位位数;
上述解码模块62,在用于基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果时,具体用于:
根据所述预设高位位数、所述预设低位位数、第一预设顺序,以及获取到的所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定任一第三编码结果的高位结果以及低位结果;
根据任一第三编码结果的高位结果以及低位结果确定所述至少一个第三编码结果。
所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据;
所述纹理配置信息还包括:所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
上述第一获取模块61,在用于获取RGBA格式的图像数据时,具体用于:获取所述第一RGBA图像数据中第一像素点对应的色彩通道值;获取所述第二RGBA图像数据中第二像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
上述解码模块62,在用于基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果时,具体用于:
基于所述编码位数、所述最大纹理标识数量以及所述第一像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
上述解码模块62,在用于对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息时,还可具体用于:
基于所述第二RGBA图像数据中所述第二像素点对应的色彩通道对应的数据空间内的数据,得到第四编码结果;
对所述第四编码结果进行解码,得到所述第一像素点对应的至少一个纹理标识中的编码纹理标识对应纹理的编码权重;
根据所述编码权重确定所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
所述纹理配置信息还包括:所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
所述装置还用于:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
解码模块62,在用于对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息时,还可用于:
基于所述纹理混合状态、所述最大纹理标识数量,以及获取到的所述RGBA格式的图像数据中所述像素点对应的R通道对应的数据空间内的部分数据、G通道对应的数据空间内的部分数据、B通道对应的数据空间内的部分数据以及A通道对应的数据空间内的全部数据,确定所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
本实施例对应的具体实施方式,可参见前述内容,此处不再赘述。
根据需要,本申请各实施例的系统、方法和装置可以实现为纯粹的软件(例如用Java来编写的软件程序),也可以根据需要实现为纯粹的硬件(例如专用ASIC芯片或FPGA芯片),还可以实现为结合了软件和硬件的系统(例如存储有固定代码的固件系统或者带有通用存储器和处理器的系统)。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。要求保护的主题的范围仅由所附的权利要求进行限定。
Claims (18)
1.一种数据处理方法,其特征在于,包括:
获取地形信息的纹理配置信息,所述纹理配置信息包括:RGBA格式的图像数据中像素点对应的至少一个纹理标识;
对所述纹理配置信息进行编码,得到所述RGBA格式的图像数据,其中,所述RGBA格式的图像数据用于渲染目标对象,对所述纹理配置信息进行编码,得到RGBA格式的图像数据,包括:
基于所述至少一个纹理标识中单个纹理标识对应的编码位数,分别对所述至少一个纹理标识进行编码,结合预设的最大纹理标识数量得到至少一个第一编码结果;
将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内。
2.根据权利要求1所述的方法,其特征在于,将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内,包括:
将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道和G通道对应的数据空间内。
3.根据权利要求1或2所述的方法,其特征在于,所述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;
对所述纹理配置信息进行编码,得到RGBA格式的图像数据,还包括:
对所述像素点对应的纹理混合状态进行编码,得到第二编码结果;
将所述第二编码结果添加至所述像素点对应的G通道对应的数据空间内;
分别对所述至少一个纹理标识对应纹理的缩放信息进行编码,得到至少一个第三编码结果;
将所述至少一个第三编码结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:获取预设高位位数与预设低位位数;
将所述至少一个第三编码结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内包括:
根据所述预设高位位数与预设低位位数,对所述至少一个第三编码结果中的任一第三编码结果进行拆分,得到各个第三编码结果对应的高位结果与低位结果;
按照第一预设顺序将所述至少一个第三编码结果中任一第三编码结果的高位结果以及低位结果添加至所述像素点对应的G通道、B通道以及A通道对应的数据空间内。
5.根据权利要求1所述的方法,其特征在于,所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据;
所述纹理配置信息还包括:所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内包括:将所述至少一个第一编码结果添加至所述第一RGBA图像数据中第一像素点对应的色彩通道对应的数据空间内;
对所述纹理配置信息进行编码,得到RGBA格式的图像数据,还包括:
获取像素点对应的纹理混合状态;
根据所述像素点对应的纹理混合状态,以及所述第一像素点对应的至少一个纹理标识中,各个纹理标识对应纹理的混合权重确定编码权重;
对所述编码权重进行编码,得到所述编码权重对应的第四编码结果;
将所述第四编码结果添加至所述第二RGBA图像数据中第二像素点对应的色彩通道对应的数据空间内。
6.根据权利要求1所述的方法,其特征在于,所述纹理配置信息还包括:
所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
所述方法还包括:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的色彩通道对应的数据空间内包括:将所述至少一个第一编码结果添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道与B通道对应的数据空间内;
对所述纹理配置信息进行编码,得到RGBA格式的图像数据,还包括:
基于所述纹理混合状态,分别对所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重进行编码,并结合所述最大纹理标识数量得到至少一个第五编码结果;
将所述至少一个第五编码结果按照第二预设顺序添加至所述RGBA格式的图像数据中所述像素点对应的R通道、G通道、B通道以及A通道对应的数据空间内。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述RGBA格式的图像数据;
对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息;
利用所述纹理配置信息对目标对象进行渲染。
8.根据权利要求7所述的方法,其特征在于,利用所述纹理配置信息对所述目标对象进行渲染包括:
获取基础纹理数组;
根据所述基础纹理数组、所述纹理配置信息对所述目标对象进行渲染。
9.一种数据处理方法,其特征在于,包括:
获取RGBA格式的图像数据;
对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息,所述纹理配置信息包括:所述RGBA格式的图像数据中像素点对应的至少一个纹理标识;
获取基础纹理数组;
根据所述基础纹理数组以及所述纹理配置信息对目标对象进行渲染;
其中,获取RGBA格式的图像数据包括:获取所述RGBA格式的图像数据中像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
对所述RGBA格式的图像数据进行解码,得到纹理配置信息包括:基于所述至少一个纹理标识中单个纹理标识对应的编码位数、预设的最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;对所述至少一个第一编码结果进行解码,得到所述至少一个纹理标识。
10.根据权利要求9所述的方法,其特征在于,基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果,包括:
基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的R通道对应的数据空间内的全部数据和G通道对应的数据空间内的部分数据确定所述至少一个第一编码结果。
11.根据权利要求9或10所述的方法,其特征在于,所述纹理配置信息还包括:所述像素点对应的纹理混合状态以及所述至少一个纹理标识对应纹理的缩放信息;
对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息还包括:
基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的另一部分数据,确定第二编码结果;
对所述第二编码结果进行解码,得到所述像素点对应的纹理混合状态;
基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果;
对所述至少一个第三编码结果进行解码,得到所述至少一个纹理标识对应纹理的缩放信息。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:获取预设高位位数与预设低位位数;
基于所述RGBA格式的图像数据中所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定至少一个第三编码结果包括:
根据所述预设高位位数、所述预设低位位数、第一预设顺序,以及获取到的所述像素点对应的G通道对应的数据空间内的剩余数据、B通道对应的数据空间内的全部数据以及A通道对应的数据空间内的全部数据,确定任一第三编码结果的高位结果以及低位结果;
根据任一第三编码结果的高位结果以及低位结果确定所述至少一个第三编码结果。
13.根据权利要求9所述的方法,其特征在于,所述RGBA格式的图像数据包括:第一RGBA图像数据以及第二RGBA图像数据;
所述纹理配置信息还包括:所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
获取RGBA格式的图像数据包括:获取所述第一RGBA图像数据中第一像素点对应的色彩通道值;获取所述第二RGBA图像数据中第二像素点对应的色彩通道值;其中,所述色彩通道值由对应的数据空间内的数据决定;
基于所述编码位数、所述最大纹理标识数量以及所述像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果包括:
基于所述编码位数、所述最大纹理标识数量以及所述第一像素点对应的色彩通道对应的数据空间内的数据确定至少一个第一编码结果;
对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息还包括:
基于所述第二RGBA图像数据中所述第二像素点对应的色彩通道对应的数据空间内的数据,得到第四编码结果;
对所述第四编码结果进行解码,得到所述第一像素点对应的至少一个纹理标识中的编码纹理标识对应纹理的编码权重;
根据所述编码权重确定所述至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
14.根据权利要求9所述的方法,其特征在于,所述纹理配置信息还包括:所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重;
所述方法还包括:获取所述RGBA格式的图像数据中像素点对应的纹理混合状态;
对所述RGBA格式的图像数据进行解码,得到地形信息的纹理配置信息还包括:
基于所述纹理混合状态、所述最大纹理标识数量,以及获取到的所述RGBA格式的图像数据中所述像素点对应的R通道对应的数据空间内的部分数据、G通道对应的数据空间内的部分数据、B通道对应的数据空间内的部分数据以及A通道对应的数据空间内的全部数据,确定所述像素点对应的至少一个纹理标识中,任一纹理标识对应纹理的混合权重。
15.一种数据处理系统,其特征在于,包括:
地形编辑设备,用于获取地形信息的纹理配置信息;
对所述纹理配置信息进行编码,得到RGBA格式的图像数据;
游戏客户端设备,用于在游戏运行过程中,获取所述RGBA格式的图像数据;对所述RGBA格式的图像数据进行解码,以得到所述纹理配置信息;利用所述纹理配置信息,执行地形渲染。
16.一种电子设备,其特征在于,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行权利要求1至8中任一项或权利要求9至14中任一项所述的数据处理方法。
17.一种系统,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现权利要求1至8中任一项或权利要求9至14中任一项所述的数据处理方法。
18.一种计算机可读介质,其特征在于,其上存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现根据权利要求1至8中任一项或权利要求9至14中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011198123.2A CN112489180B (zh) | 2020-10-30 | 2020-10-30 | 数据处理方法、系统、电子设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011198123.2A CN112489180B (zh) | 2020-10-30 | 2020-10-30 | 数据处理方法、系统、电子设备及计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112489180A true CN112489180A (zh) | 2021-03-12 |
CN112489180B CN112489180B (zh) | 2021-08-24 |
Family
ID=74926474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011198123.2A Active CN112489180B (zh) | 2020-10-30 | 2020-10-30 | 数据处理方法、系统、电子设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112489180B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112907716A (zh) * | 2021-03-19 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 虚拟环境中的云朵渲染方法、装置、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154295A (zh) * | 2006-09-28 | 2008-04-02 | 长江航道规划设计研究院 | 航道三维仿真电子图 |
CN101154313A (zh) * | 2006-09-28 | 2008-04-02 | 长江航道规划设计研究院 | 三维仿真数字信息航道系统及实现方法 |
US20160309003A1 (en) * | 2013-05-30 | 2016-10-20 | Microsoft Technology Licensing, Llc | Context-Based Selective Downloading of Application Resources |
CN106228581A (zh) * | 2016-08-01 | 2016-12-14 | 武汉斗鱼网络科技有限公司 | 通过gpu将像素格式由argb转换为nv12的方法及系统 |
CN107564087A (zh) * | 2017-09-11 | 2018-01-09 | 南京大学 | 一种基于屏幕的三维线状符号渲染方法 |
CN108109204A (zh) * | 2017-12-18 | 2018-06-01 | 苏州蜗牛数字科技股份有限公司 | 一种制作和渲染大规模地形的方法及系统 |
CN110570493A (zh) * | 2019-09-16 | 2019-12-13 | 网易(杭州)网络有限公司 | 字体贴图处理方法及装置、存储介质、电子设备 |
CN110969606A (zh) * | 2019-11-29 | 2020-04-07 | 华中科技大学 | 一种纹理表面缺陷检测方法及系统 |
CN111223183A (zh) * | 2019-11-14 | 2020-06-02 | 中国地质环境监测院 | 一种基于深度神经网络的滑坡地形检测方法 |
-
2020
- 2020-10-30 CN CN202011198123.2A patent/CN112489180B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101154295A (zh) * | 2006-09-28 | 2008-04-02 | 长江航道规划设计研究院 | 航道三维仿真电子图 |
CN101154313A (zh) * | 2006-09-28 | 2008-04-02 | 长江航道规划设计研究院 | 三维仿真数字信息航道系统及实现方法 |
US20160309003A1 (en) * | 2013-05-30 | 2016-10-20 | Microsoft Technology Licensing, Llc | Context-Based Selective Downloading of Application Resources |
CN106228581A (zh) * | 2016-08-01 | 2016-12-14 | 武汉斗鱼网络科技有限公司 | 通过gpu将像素格式由argb转换为nv12的方法及系统 |
CN107564087A (zh) * | 2017-09-11 | 2018-01-09 | 南京大学 | 一种基于屏幕的三维线状符号渲染方法 |
CN108109204A (zh) * | 2017-12-18 | 2018-06-01 | 苏州蜗牛数字科技股份有限公司 | 一种制作和渲染大规模地形的方法及系统 |
CN110570493A (zh) * | 2019-09-16 | 2019-12-13 | 网易(杭州)网络有限公司 | 字体贴图处理方法及装置、存储介质、电子设备 |
CN111223183A (zh) * | 2019-11-14 | 2020-06-02 | 中国地质环境监测院 | 一种基于深度神经网络的滑坡地形检测方法 |
CN110969606A (zh) * | 2019-11-29 | 2020-04-07 | 华中科技大学 | 一种纹理表面缺陷检测方法及系统 |
Non-Patent Citations (3)
Title |
---|
HANG WU 等: ""Visual Terrain Classification Methods for Mobile Robots Using Hybrid Coding Architecture"", 《2019 IEEE 4TH INTERNATIONAL CONFERENCE ON IMAGE, VISION AND COMPUTING(ICIVC)》 * |
李天培 等: ""基于高度图的地形纹理生成方法"", 《火力与指挥控制》 * |
王俊勇 等: ""一种基于GPU的三维数字地形实时编辑方法"", 《城市勘测》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112907716A (zh) * | 2021-03-19 | 2021-06-04 | 腾讯科技(深圳)有限公司 | 虚拟环境中的云朵渲染方法、装置、设备及存储介质 |
CN112907716B (zh) * | 2021-03-19 | 2023-06-16 | 腾讯科技(深圳)有限公司 | 虚拟环境中的云朵渲染方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112489180B (zh) | 2021-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107358649B (zh) | 地形文件的处理方法和装置 | |
US8633939B2 (en) | System and method for painting 3D models with 2D painting tools | |
JP4564718B2 (ja) | 3−dコンピュータ・グラフィックス・レンダリングシステム | |
US7656401B2 (en) | Techniques for representing 3D scenes using fixed point data | |
US7477261B2 (en) | Method and mechanism for programmable filtering of texture map data in 3D graphics subsystems | |
US20050140688A1 (en) | Method and mechanism for programmable filtering of texture map data in 3D graphics subsystems | |
CN101124582A (zh) | 自动化衍生视图渲染系统 | |
US20230108967A1 (en) | Micro-meshes, a structured geometry for computer graphics | |
US20100289798A1 (en) | Image processing method and image processing apparatus | |
GB2547242A (en) | Graphics processing | |
CN112489180B (zh) | 数据处理方法、系统、电子设备及计算机可读介质 | |
US6768492B2 (en) | Texture tiling with adjacency information | |
US6411303B1 (en) | Method of efficiently recording a number of texture images in memory | |
CN112991558A (zh) | 一种地图编辑方法和地图编辑器 | |
KR20160068204A (ko) | 메시 지오메트리를 위한 데이터 처리 방법 및 이를 기록한 컴퓨터 판독 가능 저장 매체 | |
CN110136235B (zh) | 三维bim模型外壳提取方法、装置及计算机设备 | |
CN116737852A (zh) | 一种基于矢量瓦片数据的矢量绘图方法、装置和电子设备 | |
CN110321233B (zh) | 基于树形存储结构的模型切片传输方法 | |
CN112604293A (zh) | 数据处理方法、装置、电子设备及可读介质 | |
CN115496818B (zh) | 一种基于动态物体分割的语义图压缩方法和装置 | |
CN111729303B (zh) | 一种大地图烘焙切割方法及恢复方法 | |
CN117541744B (zh) | 一种城市级实景三维图像的渲染方法及装置 | |
CN114491780B (zh) | 一种城市建筑群震后修复过程情景可视化方法及系统 | |
CN116883575A (zh) | 建筑群渲染方法、装置、计算机设备和存储介质 | |
US10089783B2 (en) | Graphics processing |
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 |