CN116758204B - 一种基于线渲染器的渲染处理方法及相关装置 - Google Patents
一种基于线渲染器的渲染处理方法及相关装置 Download PDFInfo
- Publication number
- CN116758204B CN116758204B CN202311039032.8A CN202311039032A CN116758204B CN 116758204 B CN116758204 B CN 116758204B CN 202311039032 A CN202311039032 A CN 202311039032A CN 116758204 B CN116758204 B CN 116758204B
- Authority
- CN
- China
- Prior art keywords
- line segment
- data
- frame
- attribute
- ith
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 207
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 238000005070 sampling Methods 0.000 claims abstract description 266
- 238000000034 method Methods 0.000 claims abstract description 93
- 238000012545 processing Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 19
- 238000010276 construction Methods 0.000 claims description 16
- 230000000875 corresponding effect Effects 0.000 description 339
- 230000008569 process Effects 0.000 description 43
- 238000004364 calculation method Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 16
- 230000000694 effects Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 230000000903 blocking effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
Abstract
本申请公开一种基于线渲染器的渲染处理方法及相关装置,该方法包括:获取在渲染前采样线渲染器的线段属性曲线得到的属性纹理文件;该属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据。当线渲染器的第i帧多个顶点数据相对第i‑1帧多个顶点数据发生变化时,更新第i‑1帧多个顶点数据对应的第i‑1帧面片数据,得到第i帧多个顶点数据对应的第i帧面片数据;i为正整数。确定第i帧面片数据中多个顶点数据对应的多个目标长度比;通过属性纹理文件确定多个目标长度比对应的多个线段属性数据;通过第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,渲染第i帧面片数据得到第i帧线段渲染结果。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种基于线渲染器的渲染处理方法及相关装置。
背景技术
在渲染场景中,线渲染器基于三维空间中两个或多个顶点的数组,依次在两个顶点之间渲染一条线段,而线段的顶点、宽度和颜色等是可调整的。在线段的顶点发生变化时,需要调整线段的宽度和颜色等线段属性数据。
相关技术中,在渲染过程中线段的顶点发生变化时,一般是通过线渲染器的线段宽度曲线和线段颜色曲线等线段属性曲线,重新计算每个顶点对应的宽度值和颜色值等线段属性数据;根据每个顶点对应的线段属性数据进行线段渲染。
然而,上述方法渲染过程中每次顶点发生变化均重新计算每个顶点对应的线段属性数据,消耗大量的处理器计算资源和计算时间,尤其是线渲染器的数量较多时,整体计算效率低,容易导致线段渲染出现卡顿现象,从而导致线段渲染性能和线段渲染效果较差。
发明内容
为了解决上述技术问题,本申请提供了一种基于线渲染器的渲染处理方法及相关装置,在提前计算出线渲染器的属性纹理文件的基础上,无需再计算每帧面片数据中每个顶点位置对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
本申请实施例公开了如下技术方案:
一方面,本申请实施例提供一种基于线渲染器的渲染处理方法,所述方法包括:
获取线渲染器的属性纹理文件;所述属性纹理文件是在渲染前对所述线渲染器的线段属性曲线进行采样获得的,所述属性纹理文件包括多个采样长度比和所述多个采样长度比对应的多个线段属性数据;
若所述线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对所述第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得所述第i帧多个顶点数据对应的第i帧面片数据;i为正整数;
确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比;
根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,确定所述多个目标长度比对应的多个线段属性数据;
根据所述第i帧面片数据中多个顶点数据和所述多个目标长度比对应的多个线段属性数据,对所述第i帧面片数据进行渲染,获得第i帧线段渲染结果。
另一方面,本申请实施例提供一种基于线渲染器的渲染处理方法,所述方法包括:
对线渲染器的线段属性曲线进行采样,获得多个采样长度比和所述多个采样长度比对应的多个线段属性数据;
根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,构建所述线渲染器的属性纹理文件;所述属性纹理文件用于确定所述线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染所述多帧面片数据。
另一方面,本申请实施例提供一种基于线渲染器的渲染处理装置,所述装置包括:获取单元、更新单元、确定单元和渲染单元;
所述获取单元,用于获取线渲染器的属性纹理文件;所述属性纹理文件是在渲染前对所述线渲染器的线段属性曲线进行采样获得的,所述属性纹理文件包括多个采样长度比和所述多个采样长度比对应的多个线段属性数据;
所述更新单元,用于若所述线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对所述第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得所述第i帧多个顶点数据对应的第i帧面片数据;i为正整数;
所述确定单元,用于确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比;
所述确定单元,还用于根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,确定所述多个目标长度比对应的多个线段属性数据;
所述渲染单元,用于根据所述第i帧面片数据中多个顶点数据和所述多个目标长度比对应的多个线段属性数据,对所述第i帧面片数据进行渲染,获得第i帧线段渲染结果。
另一方面,本申请实施例提供一种基于线渲染器的渲染处理装置,所述装置包括:采样单元和构建单元;
所述采样单元,用于对线渲染器的线段属性曲线进行采样,获得多个采样长度比和所述多个采样长度比对应的多个线段属性数据;
所述构建单元,用于根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,构建所述线渲染器的属性纹理文件;所述属性纹理文件用于确定所述线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染所述多帧面片数据。
另一方面,本申请实施例提供一种计算机设备,所述计算机设备包括处理器以及存储器:
所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
所述处理器用于根据所述计算机程序中的指令执行前述任一方面所述的方法。
另一方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行前述任一方面所述的方法。
另一方面,本申请实施例提供一种计算机程序产品,包括计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行前述任一方面所述的方法。
由上述技术方案可以看出,获取在渲染前采样线渲染器的线段属性曲线得到的属性纹理文件;该属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据。该方式在渲染前直接获取基于线段属性曲线提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,以便后续用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。
当线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧多个顶点数据对应的第i-1帧面片数据,得到第i帧多个顶点数据对应的第i帧面片数据;i为正整数。确定第i帧面片数据中多个顶点数据对应的多个目标长度比;通过多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据;通过第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,渲染第i帧面片数据得到第i帧线段渲染结果。该方式在渲染过程中确定第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧面片数据得到第i帧面片数据后,无需基于线段属性曲线计算第i帧面片数据中多个顶点数据对应的多个线段属性数据,通过第i帧面片数据中多个顶点数据对应的多个目标长度,结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据,以此渲染第i帧面片数据,从而实现第i帧线段渲染。
基于此,该方法在针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,无需在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术成员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种基于线渲染器的渲染处理方法的系统架构示意图;
图2为本申请实施例提供的一种基于线渲染器的渲染处理方法的流程图;
图3为一种线渲染器的编辑界面的示意图;
图4为相关技术中一种线渲染器的渲染处理方法的流程图;
图5为本申请实施例提供的另一种基于线渲染器的渲染处理方法的流程图;
图6为本申请实施例提供的一种构建宽度纹理位图的示意图;
图7为本申请实施例提供的一种构建颜色纹理位图的示意图;
图8为本申请实施例提供的又一种基于线渲染器的渲染处理方法的流程图;
图9为本申请实施例提供的一种基于线渲染器的渲染处理装置的结构图;
图10为本申请实施例提供的另一种基于线渲染器的渲染处理装置的结构图;
图11为本申请实施例提供的一种终端的结构图;
图12为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
目前,在线渲染器的渲染过程中,线段的顶点发生变化时,需要调整线段的宽度和颜色等线段属性数据。通常是通过线渲染器的线段宽度曲线和线段颜色曲线等线段属性曲线,重新计算变化后的每个顶点对应的宽度值和颜色值等线段属性数据,以便通过每个顶点对应的线段属性数据进行线段渲染。
但是,上述方法渲染过程中每次顶点发生变化均重新计算每个顶点对应的线段属性数据,消耗大量的处理器计算资源和计算时间,尤其是线渲染器的数量较多时,整体计算效率低,容易导致线段渲染出现卡顿现象,从而导致线段渲染性能和线段渲染效果较差。
本申请实施例提供一种基于线渲染器的渲染处理方法,该方法在针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,无需在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
接下来,将对基于线渲染器的渲染处理方法的系统架构进行介绍。参见图1,图1为本申请实施例提供的一种基于线渲染器的渲染处理方法的系统架构示意图,该系统架构中包括服务器101和终端102,服务器101为开发者使用的计算机设备,终端102为应用者使用的计算机设备。
终端102获取线渲染器的属性纹理文件;属性纹理文件是服务器101在渲染前对线渲染器的线段属性曲线进行采样获得的,属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据。
作为一种示例,线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据,属性纹理文件包括宽度纹理文件和颜色纹理文件,多个采样长度比为n×n个采样长度比,n为正整数,n≥2;则服务器101在渲染前分别采样线渲染器的线段宽度曲线和线段颜色曲线,得到线渲染器的宽度纹理文件和颜色纹理文件;宽度纹理文件包括n×n个采样长度比和n×n个采样长度比对应的n×n个线段宽度数据,颜色纹理文件包括n×n个采样长度比和n×n个采样长度比对应的n×n个线段颜色数据;终端102从服务器101获取线渲染器的宽度纹理文件和颜色纹理文件。
若线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,终端102对第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得第i帧多个顶点数据对应的第i帧面片数据;i为正整数。终端102确定第i帧面片数据中多个顶点数据对应的多个目标长度比。 终端102根据多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据。
作为一种示例,第i-1帧多个顶点数据为第i-1帧p个顶点数据,p为正整数,p≥2;第i帧多个顶点数据为第i帧q个顶点数据,q为正整数,q≥2;在上述示例的基础上,当终端102确定线渲染器的第i帧q个顶点数据相对第i-1帧p个顶点数据发生变化时,更新第i-1帧p个顶点数据对应的第i-1帧面片数据,得到第i帧q个顶点数据对应的第i帧面片数据。终端102确定第i帧面片数据中q个顶点数据对应的q个目标长度比。终端102通过n×n个采样长度比、n×n个采样长度比对应的n×n个线段宽度数据、以及n×n个采样长度比对应的n×n个线段颜色数据,确定q个目标长度比对应的q个线段宽度数据和q个线段颜色数据。
终端102根据第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,对第i帧面片数据进行渲染,获得第i帧线段渲染结果。
作为一种示例,在上述示例的基础上,终端102通过第i帧面片数据中q个顶点数据、以及q个目标长度比对应的q个线段宽度数据和q个线段颜色数据,渲染第i帧面片数据得到第i帧线段渲染结果。
也就是说,上述方法在渲染前直接获取基于线段属性曲线提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,以便后续用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。在渲染过程中确定第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧面片数据得到第i帧面片数据后,无需基于线段属性曲线计算第i帧面片数据中多个顶点数据对应的多个线段属性数据,通过第i帧面片数据中多个顶点数据对应的多个目标长度,结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据,以此渲染第i帧面片数据,从而实现第i帧线段渲染。基于此,该方法在针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,无需在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
需要说明的是,在本申请实施例中,在本申请实施例中,计算机设备可以是服务器或终端,本申请实施例提供的方法可以由终端或服务器单独执行,也可以由终端和服务器配合执行。其中,图1对应的实施例主要以终端执行本申请实施例提供的方法为例进行介绍。
此外,当本申请实施例提供的方法由服务器单独执行时,其执行方法与图1对应的实施例类似,主要是将终端换成服务器。另外,当由终端和服务器配合执行本申请实施例提供的方法时,需要体现在前端界面上的步骤可以由终端执行,而一些需要后台计算、无需体现在前端界面上的步骤可以由服务器执行。
其中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、车载终端或飞行器等,但并不局限于此。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器,但并不局限于此。终端和服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。例如终端和服务器可以通过网络连接,该网络可以是有线或无线网络。
此外,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、音视频、辅助驾驶等。
接下来,将以终端或服务器执行本申请实施例提供的方法为例、结合附图对本申请实施例提供的基于线渲染器的渲染处理方法进行详细介绍。参见图2,图2为本申请实施例提供的一种基于线渲染器的渲染处理方法的流程图,方法包括:
S201:获取线渲染器的属性纹理文件;属性纹理文件是在渲染前对线渲染器的线段属性曲线进行采样获得的,属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据。
参见图3,图3为一种线渲染器的编辑界面的示意图。其中,在线渲染器的编辑界面不仅编辑线段的数量,由线段的顶点所决定,而且可以编辑线段的宽度,即,线段宽度曲线,还可以编辑线段的颜色,即,线段颜色曲线。基于此,在线渲染器的渲染过程中,线段的顶点发生变化时,需要调整线段的宽度和颜色等线段属性数据。
参见图4,图4为相关技术中一种线渲染器的渲染处理方法的流程图,该方法包括:S401是通过中央处理器(Central Processing Unit,CPU)获取线渲染器的多帧顶点数据;S402是通过CPU判断线渲染器的当前帧多个顶点数据相对上一帧多个顶点数据是否发生变化,若否,将当前帧作为上一帧,将下一帧作为当前帧,重复执行S402;若是,执行S403;S403是通过CPU更新上一帧多个顶点数据对应的上一帧面片数据,得到当前帧多个顶点数据对应的当前帧面片数据;S404是通过CPU基于线渲染器的线段宽度曲线和线段颜色曲线等线段属性曲线,重新计算当前帧面片数据中多个顶点数据对应的宽度值和颜色值等线段属性数据并传入图形处理器(Graphics Processing Unit,GPU);S405是通过GPU根据当前帧面片数据中多个顶点数据、以及当前帧面片数据中多个顶点数据对应的多个线段属性数据,渲染当前帧面片数据得到当前帧线段渲染结果。在执行S405之后将当前帧作为上一帧,将下一帧作为当前帧,返回执行S402。
但是,每次顶点数据发生变化时,均基于线渲染器的线段宽度曲线和线段颜色曲线等线段属性曲线,重新计算每个顶点数据对应的宽度值和颜色值等线段属性数据,需要消耗大量的CPU计算资源和CPU计算时间;尤其是线渲染器的数量较多时,CPU整体计算效率低,容易导致线段渲染出现卡顿现象,从而导致线段渲染性能和线段渲染效果较差。
因此,本申请实施例中,为了解决相关技术中的问题,考虑到每个顶点数据对应的宽度值和颜色值等线段属性数据的计算,均基于线渲染器的线段宽度曲线和线段颜色曲线等线段属性曲线;且GPU不适合迭代计算每个顶点数据对应的宽度值和颜色值等线段属性数据;在开发者使用计算机设备编辑线渲染器的线段属性曲线之后,例如,在服务器编辑线渲染器的线段属性曲线之后,服务器在线渲染器渲染前采样线渲染器的线段属性曲线,得到多个采样长度比和多个采样长度比对应的多个线段属性数据,以构建线渲染器的属性纹理文件。该属性纹理文件后续用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。
其中,采样长度比是指线段属性曲线中采样点对应的横轴线段长度与线段属性曲线对应的横轴线段总长度之间的长度比。
基于此,在针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,为了避免后续在线渲染器的渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据,在渲染器的渲染过程中需要先获取线渲染器的属性纹理文件,以获取多个采样长度比和多个采样长度比对应的多个线段属性数据。
实际应用中,应用者使用的计算机设备基于线渲染器进行渲染应用时,例如,终端基于线渲染器进行渲染应用时;或,开发者使用的计算机设备基于线渲染器进行渲染测试时,例如,服务器基于线渲染器进行渲染测试时,首先需要获取线渲染器的属性纹理文件。
该S201直接获取基于线段属性曲线提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,以便后续用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。基于此,该S201能够直接获取针对渲染过程提前完成多个采样长度比对应的多个线段属性数据的计算结果,为后续一定程上避免在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据奠定数据基础。
针对S201而言,作为一种示例,多个采样长度比为n×n个采样长度比,多个线段属性数据为n×n个线段属性数据,n为正整数,n≥2;服务器在渲染前采样线渲染器的线段属性曲线,得到n×n个采样长度比和n×n个采样长度比对应的n×n个线段属性数据,以构建线渲染器的属性纹理文件。基于此,终端从服务器获取线渲染器的属性纹理文件。其中,采样长度比可以是采样长度百分比。
S202:若线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得第i帧多个顶点数据对应的第i帧面片数据;i为正整数。
S203:确定第i帧面片数据中多个顶点数据对应的多个目标长度比。
S204:根据多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据。
本申请实施例中,基于线段在不同帧的变化因素,线渲染器是一帧一帧进行线段渲染,基于线段的顶点对应的宽度值,两个顶点构成一条线段实际上是基于两个顶点和两个顶点对应的两个宽度值构成一个面片;在线渲染器的渲染过程中,需要一帧一帧渲染面片以实现线段渲染。基于此,在线渲染器的渲染过程中,首先需要确定待渲染帧面片数据;然后,为了避免基于线段属性曲线计算待渲染帧面片数据中多个顶点数据对应的多个线段属性数据,需要先确定待渲染帧面片数据中多个顶点数据对应的多个目标长度比,再结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据。
其中,将第i帧作为待渲染帧,则确定待渲染帧面片数据实际上是指:终端或服务器通过CPU判断线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据是否发生变化,若是,表示第i帧多个顶点数据对应的第i帧面片数据不同于第i-1帧多个顶点数据对应的第i-1帧面片数据,则需要根据第i-1帧多个顶点数据更新第i-1帧面片数据,以得到第i帧面片数据。
对应地,确定待渲染帧面片数据中多个顶点数据对应的多个目标长度比实际上是指:确定第i帧面片数据中多个顶点数据对应的多个目标长度比。确定第i帧面片数据中多个顶点数据对应的多个线段属性数据实际上是指:通过第i帧面片数据中多个顶点数据对应的多个目标长度,结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定多个目标长度对应的多个线段属性数据。
该S202-S204在线渲染器的渲染过程中,确定第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧面片数据得到第i帧面片数据后,通过第i帧面片数据中多个顶点数据对应的多个目标长度,结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据。基于此,在上述S201的基础上,该S202-S204在线渲染器的渲染过程中,无需基于线段属性曲线计算第i帧面片数据中多个顶点数据对应的多个线段属性数据,能够节省大量的处理器计算资源和计算时间,尤其是线渲染器的数量较多时,提升整体计算效率。
针对S202-S204而言,作为一种示例,第i-1帧多个顶点数据为第i-1帧p个顶点数据,p为正整数,p≥2;第i帧多个顶点数据为第i帧q个顶点数据,q为正整数,q≥2;在上述S201示例的基础上,当终端或服务器确定线渲染器的第i帧q个顶点数据相对第i-1帧p个顶点数据发生变化时,更新第i-1帧p个顶点数据对应的第i-1帧面片数据,得到第i帧q个顶点数据对应的第i帧面片数据;确定第i帧面片数据中q个顶点数据对应的q个目标长度比;通过n×n个采样长度比、以及n×n个采样长度比对应的n×n个线段属性数据,确定q个目标长度比对应的q个线段属性数据。其中,在采样长度比是采样长度百分比时,目标长度比是目标长度百分比。
S205:根据第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,对第i帧面片数据进行渲染,获得第i帧线段渲染结果。
本申请实施例中,在执行S202- S203确定多个目标长度比对应的多个线段属性数据之后,在多个目标长度比对应第i帧面片数据中多个顶点数据的基础上,通过第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,渲染第i帧面片数据即可得到第i帧线段渲染结果,从而实现第i帧线段渲染。
该S205在S201-S204针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,无需在渲染过程中计算第i帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据的基础上,以此渲染第i帧面片数据,实现第i帧线段渲染,能够提升线段渲染性能和线段渲染效果。
针对S205而言,作为一种示例,在上述S202-S204示例的基础上,通过第i帧面片数据中q个顶点数据、以及q个目标长度比对应的q个线段属性数据,渲染第i帧面片数据得到第i帧线段渲染结果。
由上述技术方案可以看出,获取在渲染前采样线渲染器的线段属性曲线得到的属性纹理文件;该属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据。该方式在渲染前直接获取基于线段属性曲线提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,以便后续用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。
当线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧多个顶点数据对应的第i-1帧面片数据,得到第i帧多个顶点数据对应的第i帧面片数据;i为正整数。确定第i帧面片数据中多个顶点数据对应的多个目标长度比;通过多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据;通过第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,渲染第i帧面片数据得到第i帧线段渲染结果。该方式在渲染过程中确定第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧面片数据得到第i帧面片数据后,无需基于线段属性曲线计算第i帧面片数据中多个顶点数据对应的多个线段属性数据,通过第i帧面片数据中多个顶点数据对应的多个目标长度,结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据,以此渲染第i帧面片数据,从而实现第i帧线段渲染。
基于此,该方法在针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,无需在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
上述实施例中,在S203具体实现时,考虑到第i帧面片数据中多个顶点数据对应的多个目标长度比,与第i帧面片数据中多个顶点数据对应的多个线段长度和第i帧面片数据对应的线段总长度强相关;为了计算多个目标长度比,首先,在多个顶点数据包括多个顶点数量和多个顶点位置的基础上,需要通过第i帧面片数据中多个顶点数量和多个顶点位置,计算第i帧面片数据中多个顶点数据对应的多个线段长度、以及第i帧面片数据对应的线段总长度;然后,将多个线段长度分别和线段总长度进行比值计算,得到第i帧面片数据中多个顶点数据对应的多个目标长度比。因此,本申请提供了一种可能的实现方式,顶点数据包括顶点数量和顶点位置,S203例如可以包括S2031- S2032(图中未示出):
S2031:根据第i帧面片数据中多个顶点数量和多个顶点位置,确定第i帧面片数据中多个顶点数据对应的多个线段长度和第i帧面片数据对应的线段总长度。
S2032:根据多个线段长度和线段总长度,确定第i帧面片数据中多个顶点数据对应的多个目标长度比。
该S2031- S2032考虑线渲染器的渲染特性,通过计算第i帧面片数据中多个顶点数据对应的多个线段长度和第i帧面片数据对应的线段总长度,能够准确地计算第i帧面片数据中多个顶点数据对应的多个目标长度比;以便后续基于准确的多个目标长度比,能够准确地确定第i帧面片数据中多个顶点数据对应的多个线段属性数据。
针对S2031- S2032而言,作为一种示例,在上述S202-S204示例的基础上,确定第i帧面片数据中q个顶点数据对应的q个目标长度比是指:通过第i帧面片数据中q个顶点位置,计算第i帧面片数据中q个顶点数据对应的q个线段长度、以及第i帧面片数据对应的线段总长度;然后,将q个线段长度分别和线段总长度进行比值计算,得到第i帧面片数据中q个顶点数据对应的q个目标长度比。其中,第i帧面片数据中第一顶点数据对应的线段长度为0;第i帧面片数据中最后一个顶点数据对应的线段长度为线段总长度。
上述实施例中,在S204具体实现时,由于多个采样长度比和多个采样长度比对应的多个线段属性数据是采样线渲染器的线段属性曲线得到的,因此,多个采样长度比不包括所有长度比;基于此,为了确定多个目标长度比对应的多个线段属性数据,针对每个目标长度比而言,需要判断目标长度比与多个采样长度比是否匹配。若目标长度比匹配多个采样长度比中第一长度比,即可将第一长度比对应的线段属性数据,直接作为目标长度比对应的线段属性数据。若目标长度比与多个采样长度比均不匹配,则需要从多个采样长度比中选取相邻的两个采样长度比,一个采样长度比小于目标长度比,即,第二长度比,另一个采样长度比大于目标长度比,即,第三长度比;并通过第二长度比、目标长度比和第三长度比之间的线性关系,基于第二长度比对应的线段属性数据和第三长度比对应的线段属性数据,线性插值计算目标长度比对应的线段属性数据。因此,本申请提供了一种可能的实现方式,S204例如可以包括S2041- S2043(图中未示出):
S2041:针对每个目标长度比,若目标长度比匹配多个采样长度比中第一长度比,根据第一长度比对应的线段属性数据,确定目标长度比对应的线段属性数据。
S2042:若目标长度比与多个采样长度比均不匹配,从多个采样长度比中确定相邻的第二长度比和第三长度比。
S2043:根据第二长度比、目标长度比和第三长度比之间的线性关系,对第二长度比对应的线段属性数据和第三长度比对应的线段属性数据进行线性插值,获得目标长度比对应的线段属性数据;第二长度比小于目标长度比,第三长度比大于目标长度比。
该S2041- S2043针对第i帧面片数据中每个顶点数据对应的目标长度比,通过与多个采样长度比进行匹配,若匹配到采样长度比,直接通过匹配到的采样长度比对应的线段属性数据,确定目标长度比对应的线段属性数据;若匹配不到采样长度比,进一步通过目标长度比左右相邻的两个采样长度比对应的两个线段属性数据,线性插值计算目标长度比对应的线段属性数据。该方式通过匹配步骤无需基于线段属性曲线进行计算,即可准确地确定第i帧面片数据中每个顶点数据对应的线段属性数据,从而准确地确定第i帧面片数据中多个顶点数据对应的多个线段属性数据。
针对S2041-S2043而言,作为一种示例,在上述S202-S204示例的基础上,若q个目标长度比中第j个目标长度比匹配n×n个采样长度比中第一长度比,即可将第一长度比对应的线段属性数据,直接作为第j个目标长度比对应的线段属性数据。若第j个目标长度比与n×n个采样长度比均不匹配,从n×n个采样长度比分别选取相邻的第二长度比和第三长度比,第二长度比小于第j个目标长度比,第三长度比大于第j个目标长度比;并通过第二长度比、第j个目标长度比和第三长度比之间的线性关系,基于第二长度比对应的线段属性数据和第三长度比对应的线段属性数据,线性插值计算第j个目标长度比对应的线段属性数据。其中,j为正整数,j=1、2、……、q。
此外,上述实施例中,属性纹理文件可以采用位图的存储格式,则属性纹理文件具体为包括多个像素点和多个像素点对应的多个像素值形成的属性纹理位图;基于此,多个像素点对应多个采样长度,则多个采样长度比对应的多个线段属性数据作为多个像素点对应的多个像素值。
针对属性纹理位图而言,在S204具体实现时,为了确定多个目标长度比对应的多个线段属性数据,针对每个目标长度比而言,需要判断目标长度比与多个像素点对应的多个采样长度比是否匹配。若目标长度比匹配多个像素点中第一像素点对应的采样长度比,即可将第一像素点对应的像素值,直接作为目标长度比对应的线段属性数据。若目标长度比与多个像素点对应的多个采样长度比均不匹配,则需要从多个像素点中分别选取相邻的两个像素点,即,第二像素点和第三像素点,第二像素点对应的采样长度比小于目标长度比,第三像素点对应的采样长度比大于目标长度比;并通过第二像素点对应的采样长度比、目标长度比和第三像素点对应的采样长度比之间的线性关系,基于第二像素点对应的像素值和第三像素点对应的像素值,线性插值计算目标长度比对应的线段属性数据。因此,本申请提供了一种可能的实现方式,属性纹理文件具体为属性纹理位图,属性纹理位图包括多个像素点,多个像素点对应多个采样长度,多个像素点对应的多个像素值为多个采样长度比对应的多个线段属性数据;S204例如可以包括S2044- S2046(图中未示出):
S2044:针对每个目标长度比,若目标长度比匹配多个像素点中第一像素点对应的采样长度比,根据第一像素点对应的像素值,确定目标长度比对应的线段属性数据。
S2045:若目标长度比与多个像素点对应的多个采样长度均不匹配,从多个像素点中确定相邻的第二像素点和第三像素点。
S2046:根据第二像素点对应的采样长度比、目标长度比和第三像素点对应的采样长度比之间的线性关系,对第二像素点对应的像素值和第三像素点对应的像素值进行线性插值,获得目标长度比对应的线段属性数据;第二像素点对应的采样长度比小于目标长度比,第三像素点对应的采样长度比大于目标长度比。
该S2044- S2046针对第i帧面片数据中每个顶点数据对应的目标长度比,通过与多个像素点对应的多个采样长度比进行匹配,若匹配到,直接通过匹配到的像素点对应的像素值,确定目标长度比对应的线段属性数据;若匹配不到,进一步通过目标长度比左右相邻的两个采样长度比对应的两个像素点对应的两个像素值,线性插值计算目标长度比对应的线段属性数据。该方式通过匹配步骤无需基于线段属性曲线进行计算,即可准确地确定第i帧面片数据中每个顶点数据对应的线段属性数据,从而准确地确定第i帧面片数据中多个顶点数据对应的多个线段属性数据。
针对S2044-S2046而言,作为一种示例,属性纹理文件具体为属性纹理位图,属性纹理位图包括n×n个像素点,n×n个像素点对应n×n个采样长度,n×n个像素点对应的n×n个像素值为n×n个采样长度比对应的n×n个线段属性数据。在上述S202-S204示例的基础上,若q个目标长度比中第j个目标长度比匹配n×n个像素点中第一像素点对应的采样长度比,即可将第一像素点对应的像素值直接作为第j个目标长度比对应的线段属性数据。若第j个目标长度比与n×n个像素点对应n×n个采样长度比均不匹配,从n×n个像素点中选取相邻的第二像素点和第三像素点,第二像素点对应的采样长度比小于第j个目标长度比,第三像素点对应的采样长度比大于第j个目标长度比;并通过第二像素点对应的采样长度比、第j个目标长度比和第三像素点对应的采样长度比之间的线性关系,基于第二像素点对应的像素值和第三像素点对应的像素值,线性插值计算第j个目标长度比对应的线段属性数据。其中,j为正整数,j=1、2、……、q。
上述实施例中,线段属性曲线可以包括线段宽度曲线和线段颜色曲线中的一种或多种。因此,本申请提供了一种可能的实现方式,线段属性曲线包括线段宽度曲线,线段属性数据包括线段宽度数据,属性纹理文件包括宽度纹理文件;线段属性曲线包括线段颜色曲线,线段属性数据包括线段颜色数据,属性纹理文件包括颜色纹理文件;线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据,属性纹理文件包括宽度纹理文件和颜色纹理文件。
作为一种示例,线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据,属性纹理文件包括宽度纹理文件和颜色纹理文件;在上述S201、S202-S204和S205的基础上,服务器在渲染前采样线渲染器的线段宽度曲线,得到n×n个采样长度比和n×n个采样长度比对应的n×n个线段宽度数据,以构建线渲染器的宽度纹理文件;服务器在渲染前采样线渲染器的线段颜色曲线,得到n×n个采样长度比和n×n个采样长度比对应的n×n个线段颜色数据,以构建线渲染器的颜色纹理文件。终端从服务器获取线渲染器的宽度纹理文件和颜色纹理文件。
当终端或服务器确定线渲染器的第i帧q个顶点数据相对第i-1帧p个顶点数据发生变化时,更新第i-1帧p个顶点数据对应的第i-1帧面片数据,得到第i帧q个顶点数据对应的第i帧面片数据;确定第i帧面片数据中q个顶点数据对应的q个目标长度比;通过n×n个采样长度比、n×n个采样长度比对应的n×n个线段宽度数据、以及n×n个采样长度比对应的n×n个线段颜色数据,确定q个目标长度比对应的q个线段宽度数据和q个线段颜色数据;通过第i帧面片数据中q个顶点数据、以及q个目标长度比对应的q个线段宽度数据和q个线段颜色数据,渲染第i帧面片数据得到第i帧线段渲染结果。
上述实施例中,在S202具体实现时,顶点数据包括顶点数量和顶点位置,则面片数据包括面片数量和面片位置;考虑到两个顶点构成一条线段实际上是基于两个顶点和两个顶点对应的两个宽度值构成一个面片,当第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,表示第i-1帧面片数量相对第i-1帧面片数量发生变化;需要基于第i-1帧多个顶点数据更新第i-1帧面片数量,以得到第i帧面片数据。当第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,表示第i-1帧面片位置相对第i-1帧面片位置发生变化;需要基于第i-1帧多个顶点数据更新第i-1帧面片位置,以得到第i帧面片数据。
对应地,当第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,且第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,表示第i-1帧面片数量相对第i-1帧面片数量发生变化,且第i-1帧面片位置相对第i-1帧面片位置发生变化;需要基于第i-1帧多个顶点数据更新第i-1帧面片位置和第i-1帧面片位置,以得到第i帧面片数据。因此,本申请提供了一种可能的实现方式,顶点数据包括顶点数量和顶点位置时,面片数据包括面片数量和面片位置;S202例如可以包括S2021、S2022或S2023(图中未示出):
S2021:若第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,对第i-1帧面片数量进行更新,获得第i帧面片数据。
其中,第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化可以是第i帧多个顶点数量相对第i-1帧多个顶点数量增加,表示需要在第i-1帧面片数量的基础上进一步增加面片数量,即,针对第i-1帧面片数据增加新面片数据,从而得到第i帧面片数据。
第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化可以是第i帧多个顶点数量相对第i-1帧多个顶点数量减少,表示需要在第i-1帧面片数量的基础上进一步减少面片数量,即,针对第i-1帧面片数据移除已有面片数据,从而得到第i帧面片数据。
S2022:若第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,对第i-1帧面片位置进行更新,获得第i帧面片数据。
S2023:若第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,且第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,对第i-1帧面片位置和第i-1帧面片位置进行更新,获得第i帧面片数据。
针对S2021、S2022和S2023而言,作为一种示例,在上述S202-S204示例的基础上,当终端或服务器确定线渲染器的第i帧q个顶点数量相对第i-1帧p个顶点数量发生变化,即,q≠p,基于第i-1帧q个顶点数据更新第i-1帧面片数量,以得到第i帧面片数据。当终端或服务器确定第i帧q个顶点位置相对第i-1帧p个顶点位置发生变化,需要基于第i-1帧q个顶点数据更新第i-1帧面片位置,以得到第i帧面片数据。当终端或服务器确定线渲染器的第i帧q个顶点数量相对第i-1帧p个顶点数量发生变化,即,q≠p,且第i帧q个顶点位置相对第i-1帧p个顶点位置发生变化,基于第i-1帧多个顶点数据更新第i-1帧面片位置和第i-1帧面片位置,以得到第i帧面片数据。
此外,本申请实施例中,存在第i帧多个顶点数据相对第i-1帧多个顶点数据未发生变化的情况,该情况表示第i帧多个顶点数据对应的第i帧面片数据与第i-1帧多个顶点数据对应的第i-1帧面片数据相同;考虑到第i-1帧面片数据在第i-1帧时刻已渲染得到第i-1帧线段渲染结果,在第i帧时刻保持第i-1帧线段渲染结果即可。因此,本申请提供了一种可能的实现方式,方法例如还可以包括S1(图中未示出):若第i帧多个顶点数据相对第i-1帧多个顶点数据未发生变化,在第i帧时刻保持第i-1帧线段渲染结果。
该S1在线渲染器的渲染过程中,确定第i帧多个顶点数据相对第i-1帧多个顶点数据未发生变化时,无需渲染第i帧面片数据,保持第i-1帧线段渲染结果,相当于实现第i帧线段渲染,节省渲染资源和渲染时间,从而提升线段渲染效率。
针对S1而言,作为一种示例,第i-1帧多个顶点数据为第i-1帧p个顶点数据,p为正整数,p≥2;第i帧多个顶点数据为第i帧q个顶点数据,q为正整数,q≥2;当终端或服务器确定线渲染器的第i帧q个顶点数据相对第i-1帧p个顶点数据未发生变化时,在第i帧时刻保持第i-1帧线段渲染结果。
接下来,将以服务器执行本申请实施例提供的方法为例、结合附图对本申请实施例提供的基于线渲染器的渲染处理方法进行详细介绍。参见图5,图5为本申请实施例提供的另一种基于线渲染器的渲染处理方法的流程图,方法包括:
S501:对线渲染器的线段属性曲线进行采样,获得多个采样长度比和多个采样长度比对应的多个线段属性数据。
本申请实施例中,为了解决相关技术中的问题,考虑到每个顶点数据对应的宽度值和颜色值等线段属性数据的计算,均基于线渲染器的线段宽度曲线和线段颜色曲线等线段属性曲线;且GPU不适合迭代计算每个顶点数据对应的宽度值和颜色值等线段属性数据;在开发者使用计算机设备编辑线渲染器的线段属性曲线之后,例如,在服务器编辑线渲染器的线段属性曲线之后,服务器在线渲染器渲染前采样线渲染器的线段属性曲线,得到多个采样长度比和多个采样长度比对应的多个线段属性数据,以便后续构建线渲染器的属性纹理文件,用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。
S502:根据多个采样长度比和多个采样长度比对应的多个线段属性数据,构建线渲染器的属性纹理文件;属性纹理文件用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染多帧面片数据。
本申请实施例中,执行S501获得多个采样长度比和多个采样长度比对应的多个线段属性数据之后,还需要通过多个采样长度比和多个采样长度比对应的多个线段属性数据,构建线渲染器的属性纹理文件,以便后续在线渲染器的渲染过程中,直接获取线渲染器的属性纹理文件,以获取基于线段属性曲线提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,为后续一定程上避免在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据奠定数据基础。
由上述技术方案可以看出,首先,采样线渲染器的线段属性曲线,得到多个采样长度比和多个采样长度比对应的多个线段属性数据。然后,通过多个采样长度比和多个采样长度比对应的多个线段属性数据,构建线渲染器的属性纹理文件;该属性纹理文件用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染多帧面片数据。该方法针对渲染过程提前完成多个采样长度比对应的多个线段属性数据的计算结果,为后续一定程上避免在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据奠定数据基础。
上述实施例中,在S502具体实现时,属性纹理文件可以采用位图的存储格式,则属性纹理文件具体为包括多个像素点和多个像素点对应的多个像素值形成的属性纹理位图。基于此,首先,需要将多个采样长度比作为多个像素点,将多个采样长度比对应的多个线段属性数据作为多个像素点对应的多个像素值;然后,通过多个像素点和多个像素点对应的多个像素值,以构建属性纹理位图。因此,本申请提供了一种可能的实现方式,属性纹理文件具体为属性纹理位图;S502例如可以包括S5021- S5023(图中未示出):
S5021:将多个采样长度比确定为多个像素点。
S5022:将多个采样长度比对应的多个线段属性数据确定为多个像素点对应的多个像素值。
S5023:根据多个像素点和多个像素点对应的多个像素值,构建属性纹理位图。
上述实施例中,线段属性曲线可以包括线段宽度曲线和线段颜色曲线中的一种或多种。因此,本申请提供了一种可能的实现方式,线段属性曲线包括线段宽度曲线,线段属性数据包括线段宽度数据,属性纹理文件包括宽度纹理文件;线段属性曲线包括线段颜色曲线,线段属性数据包括线段颜色数据,属性纹理文件包括颜色纹理文件;线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据,属性纹理文件包括宽度纹理文件和颜色纹理文件。
作为一种示例,属性纹理文件为属性纹理位图,线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据时,属性纹理位图包括宽度纹理位图和颜色纹理位图。参见图6,图6为本申请实施例提供的一种构建宽度纹理位图的示意图。其中,将多个采样长度比作为多个像素点;将多个采样长度比对应的多个线段宽度数据作为多个像素点对应的多个像素值;通过多个像素点和多个像素点对应的多个像素值,构建宽度纹理位图。参见图7,图7为本申请实施例提供的一种构建颜色纹理位图的示意图。其中,将多个采样长度比作为多个像素点;将多个采样长度比对应的多个线段颜色数据作为多个像素点对应的多个像素值;通过多个像素点和多个像素点对应的多个像素值,构建颜色纹理位图。
此外,本申请实施例中,可以在线渲染器的运行资源构建阶段执行S501-S502,以实现线渲染器的属性纹理文件的构建,在构建完成后,在线渲染器的运行过程中,即,在线渲染器的渲染过程中,无需计算多帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
此外,本申请实施例中,基于线渲染器的渲染处理方法应用于需要进行线段渲染的小程序运行场景,尤其是需要进行线段渲染的小游戏运行场景,通过避免线段渲染出现卡顿现象,从而避免小游戏出现卡顿现象,以提升小游戏在运行设备上的运行性能。
综上所述,本申请实施例提供的方法由开发者使用的计算机设备和应用者使用的计算机设备配合执行,例如,由服务器和终端配合执行,参见图8,图8为本申请实施例提供的又一种基于线渲染器的渲染处理方法的流程图,方法包括:
S801:服务器对线渲染器的线段属性曲线进行采样,获得多个采样长度比和多个采样长度比对应的多个线段属性数据。
S802:服务器根据多个采样长度比和多个采样长度比对应的多个线段属性数据,构建线渲染器的属性纹理文件;属性纹理文件用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染多帧面片数据。
S803:终端通过CPU从服务器获取线渲染器的属性纹理文件并传入GPU。
S804:终端通过CPU判断线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据是否发生变化,i为正整数;若是,执行S805;若否,将第i帧作为第i-1帧,将第i+1帧作为第i帧,重复执行S804。
S805:终端通过CPU对第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得第i帧多个顶点数据对应的第i帧面片数据。
S806:终端通过CPU确定第i帧面片数据中多个顶点数据对应的多个目标长度并传入GPU。
实际应用中,终端通过CPU确定第i帧面片数据中多个顶点数据对应的多个目标长度之后,终端通过CPU将第i帧面片数据中多个顶点数据对应的多个目标长度存入缓冲器,以便将缓冲器存储的第i帧面片数据中多个顶点数据对应的多个目标长度传入GPU。
S807:终端通过GPU根据多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据。
实际应用中,终端通过GPU中的顶点着色器根据多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据。
S808:终端通过GPU根据第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,对第i帧面片数据进行渲染,获得第i帧线段渲染结果。
实际应用中,终端通过GPU中的片元着色器根据第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,对第i帧面片数据进行渲染,获得第i帧线段渲染结果。
需要说明的是,本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
基于图2对应实施例提供的基于线渲染器的渲染处理方法,本申请实施例还提供一种基于线渲染器的渲染处理装置,参见图9,图9为本申请实施例提供的一种基于线渲染器的渲染处理装置的结构图,该基于线渲染器的渲染处理装置900包括:获取单元901、更新单元902、确定单元903和渲染单元904;
获取单元901,用于获取线渲染器的属性纹理文件;属性纹理文件是在渲染前对线渲染器的线段属性曲线进行采样获得的,属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据;
更新单元902,用于若线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得第i帧多个顶点数据对应的第i帧面片数据;i为正整数;
确定单元903,用于确定第i帧面片数据中多个顶点数据对应的多个目标长度比;
确定单元903,还用于根据多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据;
渲染单元904,用于根据第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,对第i帧面片数据进行渲染,获得第i帧线段渲染结果。
在一种可能的实现方式中,顶点数据包括顶点数量和顶点位置,确定单元903,具体用于:
根据第i帧面片数据中多个顶点数量和多个顶点位置,确定第i帧面片数据中多个顶点数据对应的多个线段长度和第i帧面片数据对应的线段总长度;
根据多个线段长度和线段总长度,确定第i帧面片数据中多个顶点数据对应的多个目标长度比。
在一种可能的实现方式中,确定单元903,还具体用于:
针对每个目标长度比,若目标长度比匹配多个采样长度比中第一长度比,根据第一长度比对应的线段属性数据,确定目标长度比对应的线段属性数据;
若目标长度比与多个采样长度比均不匹配,从多个采样长度比中确定相邻的第二长度比和第三长度比;
根据第二长度比、目标长度比和第三长度比之间的线性关系,对第二长度比对应的线段属性数据和第三长度比对应的线段属性数据进行线性插值,获得目标长度比对应的线段属性数据;第二长度比小于目标长度比,第三长度比大于目标长度比。
在一种可能的实现方式中,属性纹理文件具体为属性纹理位图,属性纹理位图包括多个像素点,多个像素点对应多个采样长度,多个像素点对应的多个像素值为多个采样长度比对应的多个线段属性数据;确定单元903,还具体用于:
针对每个目标长度比,若目标长度比匹配多个像素点中第一像素点对应的采样长度比,根据第一像素点对应的像素值,确定目标长度比对应的线段属性数据;
若目标长度比与多个像素点对应的多个采样长度均不匹配,从多个像素点中确定相邻的第二像素点和第三像素点;
根据第二像素点对应的采样长度比、目标长度比和第三像素点对应的采样长度比之间的线性关系,对第二像素点对应的像素值和第三像素点对应的像素值进行线性插值,获得目标长度比对应的线段属性数据;第二像素点对应的采样长度比小于目标长度比,第三像素点对应的采样长度比大于目标长度比。
在一种可能的实现方式中,线段属性曲线包括线段宽度曲线,线段属性数据包括线段宽度数据,属性纹理文件包括宽度纹理文件;线段属性曲线包括线段颜色曲线,线段属性数据包括线段颜色数据,属性纹理文件包括颜色纹理文件;线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据,属性纹理文件包括宽度纹理文件和颜色纹理文件。
在一种可能的实现方式中,顶点数据包括顶点数量和顶点位置时,面片数据包括面片数量和面片位置;更新单元902,具体用于:
若第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,对第i-1帧面片数量进行更新,获得第i帧面片数据;
若第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,对第i-1帧面片位置进行更新,获得第i帧面片数据;
若第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,且第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,对第i-1帧面片位置和第i-1帧面片位置进行更新,获得第i帧面片数据。
在一种可能的实现方式中,装置还包括:保持单元;
保持单元,用于若第i帧多个顶点数据相对第i-1帧多个顶点数据未发生变化,在第i帧时刻保持第i-1帧线段渲染结果。
由上述技术方案可以看出,基于线渲染器的渲染处理装置包括获取单元、更新单元、确定单元和渲染单元。其中,获取单元可以获取在渲染前采样线渲染器的线段属性曲线得到的属性纹理文件;该属性纹理文件包括多个采样长度比和多个采样长度比对应的多个线段属性数据。即,获取单元在渲染前直接获取基于线段属性曲线提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,以便后续用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据从而渲染多帧面片数据。
更新单元可以当线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧多个顶点数据对应的第i-1帧面片数据,得到第i帧多个顶点数据对应的第i帧面片数据;i为正整数。确定单元可以确定第i帧面片数据中多个顶点数据对应的多个目标长度比;通过多个采样长度比和多个采样长度比对应的多个线段属性数据,确定多个目标长度比对应的多个线段属性数据;渲染单元可以通过第i帧面片数据中多个顶点数据和多个目标长度比对应的多个线段属性数据,渲染第i帧面片数据得到第i帧线段渲染结果。即,更新单元、确定单元和渲染单元在渲染过程中确定第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化时,更新第i-1帧面片数据得到第i帧面片数据后,无需基于线段属性曲线计算第i帧面片数据中多个顶点数据对应的多个线段属性数据,通过第i帧面片数据中多个顶点数据对应的多个目标长度,结合提前计算出的多个采样长度比和多个采样长度比对应的多个线段属性数据,即可确定第i帧面片数据中多个顶点数据对应的多个线段属性数据,以此渲染第i帧面片数据,从而实现第i帧线段渲染。
基于此,通过基于线渲染器的渲染处理装置,在针对渲染器的渲染过程提前计算出线渲染器的属性纹理文件的基础上,无需在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据,通过属性纹理文件即可确定多帧面片数据中多个顶点数据对应的多个线段属性数据,以实现线段渲染,从而提升线段渲染性能和线段渲染效果。
基于图5对应实施例提供的基于线渲染器的渲染处理方法,本申请实施例还提供一种基于线渲染器的渲染处理装置,参见图10,图10为本申请实施例提供的一种基于线渲染器的渲染处理装置的结构图,该基于线渲染器的渲染处理装置1000包括:采样单元1001和构建单元1002;
采样单元1001,用于对线渲染器的线段属性曲线进行采样,获得多个采样长度比和多个采样长度比对应的多个线段属性数据;
构建单元1002,用于根据多个采样长度比和多个采样长度比对应的多个线段属性数据,构建线渲染器的属性纹理文件;属性纹理文件用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染多帧面片数据。
在一种可能的实现方式中,属性纹理文件具体为属性纹理位图;构建单元1002,具体用于:
将多个采样长度比确定为多个像素点;
将多个采样长度比对应的多个线段属性数据确定为多个像素点对应的多个像素值;
根据多个像素点和多个像素点对应的多个像素值,构建属性纹理位图。
在一种可能的实现方式中,线段属性曲线包括线段宽度曲线,线段属性数据包括线段宽度数据,属性纹理文件包括宽度纹理文件;线段属性曲线包括线段颜色曲线,线段属性数据包括线段颜色数据,属性纹理文件包括颜色纹理文件;线段属性曲线包括线段宽度曲线和线段颜色曲线,线段属性数据包括线段宽度数据和线段颜色数据,属性纹理文件包括宽度纹理文件和颜色纹理文件。
由上述技术方案可以看出,基于线渲染器的渲染处理装置包括采样单元和构建单元。其中,采样单元可以采样线渲染器的线段属性曲线,得到多个采样长度比和多个采样长度比对应的多个线段属性数据。构建单元可以通过多个采样长度比和多个采样长度比对应的多个线段属性数据,构建线渲染器的属性纹理文件;该属性纹理文件用于确定线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染多帧面片数据。基于此,通过基于线渲染器的渲染处理装置,针对渲染过程提前完成多个采样长度比对应的多个线段属性数据的计算结果,为后续一定程上避免在渲染过程中计算多帧面片数据中多个顶点数据对应的多个线段属性数据奠定数据基础。
本申请实施例还提供了一种计算机设备,该计算机设备可以是终端,参见图11,图11为本申请实施例提供的一种终端的结构图。以终端为智能手机为例,智能手机包括:射频(Radio Frequency,RF)电路1110、存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、无线保真(Wireless Fidelity,WiFi)模块1170、处理器1180、以及电源11120等部件。输入单元1130可包括触控面板1131以及其他输入设备1132,显示单元1140可包括显示面板1141,音频电路1160可以包括扬声器1161和传声器1162。本领域技术人员可以理解,图11中示出的智能手机结构并不构成对智能手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1120可用于存储软件程序以及模块,处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行智能手机的各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据智能手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1180是智能手机的控制中心,利用各种接口和线路连接整个智能手机的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行智能手机的各种功能和处理数据。可选的,处理器1180可包括一个或多个处理单元;优选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。
在本实施例中,智能手机中的处理器1180可以执行上述实施例各种可选实现方式中提供的方法。
本申请实施例提供的计算机设备还可以是服务器,参见图12,图12为本申请实施例提供的一种服务器的结构图,服务器1200可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器,例如CPU1222,以及存储器1232,一个或一个以上存储应用程序1242或数据1244的存储介质1230(例如一个或一个以上海量存储设备)。其中,存储器1232和存储介质1230可以是短暂存储或持久存储。存储在存储介质1230的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1222可以设置为与存储介质1230通信,在服务器1200上执行存储介质1230中的一系列指令操作。
服务器1200还可以包括一个或一个以上电源1226,一个或一个以上有线或无线网络接口1250,一个或一个以上输入输出接口1258,和/或,一个或一个以上操作系统1241,例如Windows ServerTM,Mac OS XTM,UnixTM, LinuxTM,FreeBSDTM等等。
在本实施例中,由服务器1200中的中央处理器1222可以执行上述实施例各种可选实现方式中提供的方法。
根据本申请的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行上述实施例各种可选实现方式中提供的方法。
根据本申请的一个方面,提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述实施例各种可选实现方式中提供的方法。
上述各个附图对应的流程或结构的描述各有侧重,某个流程或结构中没有详述的部分,可以参见其他流程或结构的相关描述。
本申请的说明书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、RAM、磁碟或者光盘等各种可以存储计算机程序的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术成员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (23)
1.一种基于线渲染器的渲染处理方法,其特征在于,所述方法包括:
获取线渲染器的属性纹理文件;所述属性纹理文件是在渲染前对所述线渲染器的线段属性曲线进行采样获得的,所述属性纹理文件包括多个采样长度比和所述多个采样长度比对应的多个线段属性数据,其中,采样长度比是指线段属性曲线中采样点对应的横轴线段长度与线段属性曲线对应的横轴线段总长度之间的长度比;
若所述线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对所述第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得所述第i帧多个顶点数据对应的第i帧面片数据;i为正整数;
确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比,其中,目标长度比是指顶点数据对应的线段长度与该顶点数据所在面片数据对应的线段总长度的长度比;
根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,确定所述多个目标长度比对应的多个线段属性数据;
根据所述第i帧面片数据中多个顶点数据和所述多个目标长度比对应的多个线段属性数据,对所述第i帧面片数据进行渲染,获得第i帧线段渲染结果。
2.根据权利要求1所述的方法,其特征在于,所述顶点数据包括顶点数量和顶点位置,所述确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比,包括:
根据所述第i帧面片数据中多个顶点数量和多个顶点位置,确定所述第i帧面片数据中多个顶点数据对应的多个线段长度和所述第i帧面片数据对应的线段总长度;
根据所述多个线段长度和所述线段总长度,确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比。
3.根据权利要求1所述的方法,其特征在于,所述根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,确定所述多个目标长度比对应的多个线段属性数据,包括:
针对每个目标长度比,若所述目标长度比匹配所述多个采样长度比中第一长度比,根据所述第一长度比对应的线段属性数据,确定所述目标长度比对应的线段属性数据;
若所述目标长度比与所述多个采样长度比均不匹配,从所述多个采样长度比中确定相邻的第二长度比和第三长度比;
根据所述第二长度比、所述目标长度比和所述第三长度比之间的线性关系,对所述第二长度比对应的线段属性数据和所述第三长度比对应的线段属性数据进行线性插值,获得所述目标长度比对应的线段属性数据;所述第二长度比小于所述目标长度比,所述第三长度比大于所述目标长度比。
4.根据权利要求1所述的方法,其特征在于,所述属性纹理文件具体为属性纹理位图,所述属性纹理位图包括多个像素点,采样长度是指线段属性曲线中采样点对应的横轴线段长度,所述多个像素点对应多个采样长度,所述多个像素点对应的多个像素值为所述多个采样长度比对应的多个线段属性数据;所述根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,确定所述多个目标长度比对应的多个线段属性数据,包括:
针对每个目标长度比,若所述目标长度比匹配所述多个像素点中第一像素点对应的采样长度比,根据所述第一像素点对应的像素值,确定所述目标长度比对应的线段属性数据;
若所述目标长度比与所述多个像素点对应的所述多个采样长度均不匹配,从所述多个像素点中确定相邻的第二像素点和第三像素点;
根据所述第二像素点对应的采样长度比、所述目标长度比和所述第三像素点对应的采样长度比之间的线性关系,对所述第二像素点对应的像素值和所述第三像素点对应的像素值进行线性插值,获得所述目标长度比对应的线段属性数据;所述第二像素点对应的采样长度比小于所述目标长度比,所述第三像素点对应的采样长度比大于所述目标长度比。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述线段属性曲线包括线段宽度曲线,所述线段属性数据包括线段宽度数据,所述属性纹理文件包括宽度纹理文件;
或,所述线段属性曲线包括线段颜色曲线,所述线段属性数据包括线段颜色数据,所述属性纹理文件包括颜色纹理文件;
或,所述线段属性曲线包括所述线段宽度曲线和所述线段颜色曲线,所述线段属性数据包括所述线段宽度数据和所述线段颜色数据,所述属性纹理文件包括所述宽度纹理文件和所述颜色纹理文件。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述顶点数据包括顶点数量和顶点位置时,所述面片数据包括面片数量和面片位置;所述若所述线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对所述第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得所述第i帧多个顶点数据对应的第i帧面片数据,包括:
若第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,对第i-1帧面片数量进行更新,获得所述第i帧面片数据;
若第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,对第i-1帧面片位置进行更新,获得所述第i帧面片数据;
若所述第i帧多个顶点数量相对所述第i-1帧多个顶点数量发生变化,且所述第i帧多个顶点位置相对所述第i-1帧多个顶点位置发生变化,对所述第i-1帧面片位置和所述第i-1帧面片位置进行更新,获得所述第i帧面片数据。
7.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
若所述第i帧多个顶点数据相对所述第i-1帧多个顶点数据未发生变化,在第i帧时刻保持第i-1帧线段渲染结果。
8.一种基于线渲染器的渲染处理方法,其特征在于,所述方法包括:
对线渲染器的线段属性曲线进行采样,获得多个采样长度比和所述多个采样长度比对应的多个线段属性数据,其中,采样长度比是指线段属性曲线中采样点对应的横轴线段长度与线段属性曲线对应的横轴线段总长度之间的长度比;
根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,构建所述线渲染器的属性纹理文件;所述属性纹理文件用于确定所述线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染所述多帧面片数据。
9.根据权利要求8所述的方法,其特征在于,所述属性纹理文件具体为属性纹理位图;所述根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,构建所述线渲染器的属性纹理文件,包括:
将所述多个采样长度比确定为多个像素点;
将所述多个采样长度比对应的多个线段属性数据确定为所述多个像素点对应的多个像素值;
根据所述多个像素点和所述多个像素点对应的多个像素值,构建所述属性纹理位图。
10.根据权利要求8或9所述的方法,其特征在于,所述线段属性曲线包括线段宽度曲线,所述线段属性数据包括线段宽度数据,所述属性纹理文件包括宽度纹理文件;
或,所述线段属性曲线包括线段颜色曲线,所述线段属性数据包括线段颜色数据,所述属性纹理文件包括颜色纹理文件;
或,所述线段属性曲线包括所述线段宽度曲线和所述线段颜色曲线,所述线段属性数据包括所述线段宽度数据和所述线段颜色数据,所述属性纹理文件包括所述宽度纹理文件和所述颜色纹理文件。
11.一种基于线渲染器的渲染处理装置,其特征在于,所述装置包括:获取单元、更新单元、确定单元和渲染单元;
所述获取单元,用于获取线渲染器的属性纹理文件;所述属性纹理文件是在渲染前对所述线渲染器的线段属性曲线进行采样获得的,所述属性纹理文件包括多个采样长度比和所述多个采样长度比对应的多个线段属性数据,其中,采样长度比是指线段属性曲线中采样点对应的横轴线段长度与线段属性曲线对应的横轴线段总长度之间的长度比;
所述更新单元,用于若所述线渲染器的第i帧多个顶点数据相对第i-1帧多个顶点数据发生变化,对所述第i-1帧多个顶点数据对应的第i-1帧面片数据进行更新,获得所述第i帧多个顶点数据对应的第i帧面片数据;i为正整数;
所述确定单元,用于确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比,其中,目标长度比是指顶点数据对应的线段长度与该顶点数据所在面片数据对应的线段总长度的长度比;
所述确定单元,还用于根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,确定所述多个目标长度比对应的多个线段属性数据;
所述渲染单元,用于根据所述第i帧面片数据中多个顶点数据和所述多个目标长度比对应的多个线段属性数据,对所述第i帧面片数据进行渲染,获得第i帧线段渲染结果。
12.根据权利要求11所述的装置,其特征在于,所述顶点数据包括顶点数量和顶点位置,所述确定单元,具体用于:
根据所述第i帧面片数据中多个顶点数量和多个顶点位置,确定所述第i帧面片数据中多个顶点数据对应的多个线段长度和所述第i帧面片数据对应的线段总长度;
根据所述多个线段长度和所述线段总长度,确定所述第i帧面片数据中多个顶点数据对应的多个目标长度比。
13.根据权利要求11所述的装置,其特征在于,所述确定单元,还具体用于:
针对每个目标长度比,若所述目标长度比匹配所述多个采样长度比中第一长度比,根据所述第一长度比对应的线段属性数据,确定所述目标长度比对应的线段属性数据;
若所述目标长度比与所述多个采样长度比均不匹配,从所述多个采样长度比中确定相邻的第二长度比和第三长度比;
根据所述第二长度比、所述目标长度比和所述第三长度比之间的线性关系,对所述第二长度比对应的线段属性数据和所述第三长度比对应的线段属性数据进行线性插值,获得所述目标长度比对应的线段属性数据;所述第二长度比小于所述目标长度比,所述第三长度比大于所述目标长度比。
14.根据权利要求11所述的装置,其特征在于,所述属性纹理文件具体为属性纹理位图,所述属性纹理位图包括多个像素点,采样长度是指线段属性曲线中采样点对应的横轴线段长度,所述多个像素点对应多个采样长度,所述多个像素点对应的多个像素值为所述多个采样长度比对应的多个线段属性数据;所述确定单元,还具体用于:
针对每个目标长度比,若所述目标长度比匹配所述多个像素点中第一像素点对应的采样长度比,根据所述第一像素点对应的像素值,确定所述目标长度比对应的线段属性数据;
若所述目标长度比与所述多个像素点对应的所述多个采样长度均不匹配,从所述多个像素点中确定相邻的第二像素点和第三像素点;
根据所述第二像素点对应的采样长度比、所述目标长度比和所述第三像素点对应的采样长度比之间的线性关系,对所述第二像素点对应的像素值和所述第三像素点对应的像素值进行线性插值,获得所述目标长度比对应的线段属性数据;所述第二像素点对应的采样长度比小于所述目标长度比,所述第三像素点对应的采样长度比大于所述目标长度比。
15.根据权利要求11-14任一项所述的装置,其特征在于,所述线段属性曲线包括线段宽度曲线,所述线段属性数据包括线段宽度数据,所述属性纹理文件包括宽度纹理文件;
或,所述线段属性曲线包括线段颜色曲线,所述线段属性数据包括线段颜色数据,所述属性纹理文件包括颜色纹理文件;
或,所述线段属性曲线包括所述线段宽度曲线和所述线段颜色曲线,所述线段属性数据包括所述线段宽度数据和所述线段颜色数据,所述属性纹理文件包括所述宽度纹理文件和所述颜色纹理文件。
16.根据权利要求11-14任一项所述的装置,其特征在于,所述顶点数据包括顶点数量和顶点位置时,所述面片数据包括面片数量和面片位置;所述更新单元,具体用于:
若第i帧多个顶点数量相对第i-1帧多个顶点数量发生变化,对第i-1帧面片数量进行更新,获得所述第i帧面片数据;
若第i帧多个顶点位置相对第i-1帧多个顶点位置发生变化,对第i-1帧面片位置进行更新,获得所述第i帧面片数据;
若所述第i帧多个顶点数量相对所述第i-1帧多个顶点数量发生变化,且所述第i帧多个顶点位置相对所述第i-1帧多个顶点位置发生变化,对所述第i-1帧面片位置和所述第i-1帧面片位置进行更新,获得所述第i帧面片数据。
17.根据权利要求11-14任一项所述的装置,其特征在于,所述装置还包括:
保存单元,用于若所述第i帧多个顶点数据相对所述第i-1帧多个顶点数据未发生变化,在第i帧时刻保持第i-1帧线段渲染结果。
18.一种基于线渲染器的渲染处理装置,其特征在于,所述装置包括:采样单元和构建单元;
所述采样单元,用于对线渲染器的线段属性曲线进行采样,获得多个采样长度比和所述多个采样长度比对应的多个线段属性数据,其中,采样长度比是指线段属性曲线中采样点对应的横轴线段长度与线段属性曲线对应的横轴线段总长度之间的长度比;
所述构建单元,用于根据所述多个采样长度比和所述多个采样长度比对应的多个线段属性数据,构建所述线渲染器的属性纹理文件;所述属性纹理文件用于确定所述线渲染器的多帧面片数据中多个顶点数据对应的多个线段属性数据并渲染所述多帧面片数据。
19.根据权利要求18所述的装置,其特征在于,所述属性纹理文件具体为属性纹理位图;所述构建单元,具体用于:
将所述多个采样长度比确定为多个像素点;
将所述多个采样长度比对应的多个线段属性数据确定为所述多个像素点对应的多个像素值;
根据所述多个像素点和所述多个像素点对应的多个像素值,构建所述属性纹理位图。
20.根据权利要求18或19所述的装置,其特征在于,所述线段属性曲线包括线段宽度曲线,所述线段属性数据包括线段宽度数据,所述属性纹理文件包括宽度纹理文件;
或,所述线段属性曲线包括线段颜色曲线,所述线段属性数据包括线段颜色数据,所述属性纹理文件包括颜色纹理文件;
或,所述线段属性曲线包括所述线段宽度曲线和所述线段颜色曲线,所述线段属性数据包括所述线段宽度数据和所述线段颜色数据,所述属性纹理文件包括所述宽度纹理文件和所述颜色纹理文件。
21.一种计算机设备,其特征在于,所述计算机设备包括处理器以及存储器:
所述存储器用于存储计算机程序,并将所述计算机程序传输给所述处理器;
所述处理器用于根据所述计算机程序中的指令执行权利要求1-10任一项所述的方法。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行权利要求1-10任一项所述的方法。
23.一种计算机程序产品,包括计算机程序,其特征在于,当所述计算机程序在计算机设备上运行时,使得所述计算机设备执行权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311039032.8A CN116758204B (zh) | 2023-08-17 | 2023-08-17 | 一种基于线渲染器的渲染处理方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311039032.8A CN116758204B (zh) | 2023-08-17 | 2023-08-17 | 一种基于线渲染器的渲染处理方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116758204A CN116758204A (zh) | 2023-09-15 |
CN116758204B true CN116758204B (zh) | 2024-05-03 |
Family
ID=87959102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311039032.8A Active CN116758204B (zh) | 2023-08-17 | 2023-08-17 | 一种基于线渲染器的渲染处理方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116758204B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117258303B (zh) * | 2023-11-20 | 2024-03-12 | 腾讯科技(深圳)有限公司 | 一种模型对比方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1434171A2 (en) * | 1995-08-04 | 2004-06-30 | Microsoft Corporation | Method and system for texture mapping a source image to a destination image |
WO2012150416A1 (fr) * | 2011-05-04 | 2012-11-08 | Newscape Technology | Optimisation de données texturées pour modélisation tridimensionnelle |
CN111882677A (zh) * | 2020-08-04 | 2020-11-03 | 网易(杭州)网络有限公司 | 三维植物模型编辑的方法、装置、电子设备及存储介质 |
CN112569602A (zh) * | 2020-12-25 | 2021-03-30 | 珠海金山网络游戏科技有限公司 | 在虚拟场景中构建地形的方法及装置 |
CN116384207A (zh) * | 2023-05-17 | 2023-07-04 | 核工业航测遥感中心 | 基于风场流动轨迹和流动纹理的属性值融合渲染方法 |
-
2023
- 2023-08-17 CN CN202311039032.8A patent/CN116758204B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1434171A2 (en) * | 1995-08-04 | 2004-06-30 | Microsoft Corporation | Method and system for texture mapping a source image to a destination image |
WO2012150416A1 (fr) * | 2011-05-04 | 2012-11-08 | Newscape Technology | Optimisation de données texturées pour modélisation tridimensionnelle |
CN111882677A (zh) * | 2020-08-04 | 2020-11-03 | 网易(杭州)网络有限公司 | 三维植物模型编辑的方法、装置、电子设备及存储介质 |
CN112569602A (zh) * | 2020-12-25 | 2021-03-30 | 珠海金山网络游戏科技有限公司 | 在虚拟场景中构建地形的方法及装置 |
CN116384207A (zh) * | 2023-05-17 | 2023-07-04 | 核工业航测遥感中心 | 基于风场流动轨迹和流动纹理的属性值融合渲染方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116758204A (zh) | 2023-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112561078B (zh) | 分布式的模型训练方法及相关装置 | |
CN116758204B (zh) | 一种基于线渲染器的渲染处理方法及相关装置 | |
JP7454529B2 (ja) | 分散型モデルトレーニング装置および方法、電子機器、記憶媒体、ならびに、コンピュータプログラム | |
CN111967339B (zh) | 用于规划无人机路径的方法和装置 | |
WO2021146930A1 (zh) | 显示处理方法、显示处理装置、电子设备及存储介质 | |
CN114820905B (zh) | 虚拟形象生成方法、装置、电子设备及可读存储介质 | |
KR20220054861A (ko) | 신경망 모델의 트레이닝 방법 및 관련 제품 | |
CN113131946B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN109766319B (zh) | 压缩任务处理方法、装置、存储介质及电子设备 | |
CN110211017B (zh) | 图像处理方法、装置及电子设备 | |
JP2023076820A (ja) | 画像処理方法、装置、電子機器、及び記憶媒体 | |
CN109977905B (zh) | 用于处理眼底图像的方法和装置 | |
CN109344294B (zh) | 特征生成方法、装置、电子设备及计算机可读存储介质 | |
US9135749B2 (en) | Method and apparatus for processing three-dimensional model data | |
CN113034658B (zh) | 一种模型贴图的生成方法和装置 | |
CN111278085B (zh) | 用于获取目标网络的方法及装置 | |
CN113470092A (zh) | 地形的渲染方法和装置、电子设备和存储介质 | |
CN112862934A (zh) | 用于处理动画的方法、装置、设备、介质和产品 | |
CN111506679B (zh) | 地图要素数据的生成、显示方法及装置、介质、设备 | |
US10949353B1 (en) | Data iterator with automatic caching | |
CN113344213A (zh) | 知识蒸馏方法、装置、电子设备及计算机可读存储介质 | |
CN113570067A (zh) | 分布式系统的同步方法、装置及程序产品 | |
CN113160379A (zh) | 材质渲染方法、装置、存储介质及电子设备 | |
CN111782255A (zh) | 一种虚拟道具更新方法及装置 | |
CN110120085B (zh) | 一种动态纹理视频生成方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |