一种多线程特效绘制方法、装置、系统及介质制造方法及图纸

技术编号:28558335 阅读:8 留言:0更新日期:2021-05-25 17:52
本发明专利技术公开了一种多线程特效绘制方法、装置、系统及介质,方法包括:获取待渲染轨迹的绘制数据与特效属性数据;根据接收到的并行图形命令生成相应的命令队列;由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。本发明专利技术实施例通过生成命令队列对待渲染轨迹进行并行的多线程渲染处理,使得用户在进行特效绘制时,可以通过一次绘制得到多种特效并行绘制的轨迹图像,通过多线程特效渲染有效提高了多种特效绘制任务的效率。

【技术实现步骤摘要】
一种多线程特效绘制方法、装置、系统及介质
本专利技术涉及图像渲染
,尤其涉及一种多线程特效绘制方法、装置、系统及介质。
技术介绍
传统的APP画板图像绘制渲染等一般都基于OpenGL,OpenGL是一个跨编程语言、跨平台的编程图形程序接口,不但可以实现跨平台,且性能表现较佳,不占用过大的包大小,但随着现代图形技术的发展,使用OpenGL绘制图形渲染也遇到了一些问题,例如不支持多线程操作,且不支持异步处理,已经不太适应现代多核设备的需求,在需要实现多种渲染效果时效率过低。因此,现有技术还有待于改进和发展。
技术实现思路
鉴于上述现有技术的不足,本专利技术的目的在于提供一种多线程特效绘制方法、装置、系统及介质,旨在解决现有技术中的多种特效并行绘制时效率过低的问题。本专利技术的技术方案如下:一种多线程特效绘制方法,其包括如下步骤:获取待渲染轨迹的绘制数据与特效属性数据;根据接收到的并行图形命令生成相应的命令队列;由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。所述的多线程特效绘制方法中,所述获取待渲染轨迹的绘制数据与特效属性数据之前,还包括:构建并初始化用于多线程渲染处理的预设图形引擎。所述的多线程特效绘制方法中,所述根据接收到的并行图形命令生成相应的命令队列,包括:接收用户输入的并行图形命令;通过预设图形引擎中的命令编码器对所述并行图形命令进行多线程编码后生成相应的命令对象;将所述命令对象添加至命令队列后提交至命令缓存区。所述的多线程特效绘制方法中,所述由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像,包括:根据所述绘制数据与特效属性数据获取待渲染轨迹的顶点数据;由图形处理器按序执行所述命令队列中的命令对象,根据所述顶点数据在相应位置进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。所述的多线程特效绘制方法中,所述由图形处理器按序执行所述命令队列中的命令对象,根据所述顶点数据在相应位置进行多线程特效渲染后得到多种特效同时渲染的轨迹图像,包括:根据所述顶点数据中待渲染轨迹的顶点位置进行坐标转换后得到并行渲染位置;由图形处理器按序执行所述命令队列中的命令对象,在所述顶点位置和并行渲染位置进行多线程特效渲染,得到多种特效同时渲染的轨迹图像。所述的多线程特效绘制方法中,所述构建并初始化用于多线程渲染处理的预设图形引擎,包括:构建用于多线程渲染处理的预设图形引擎并编译获取若干个着色器;初始化所述预设图形引擎并注册GPU对象,通过所述GPU对象创建多个资源对象。所述的多线程特效绘制方法中,所述资源对象包括命令队列、纹理对象、缓冲区对象以及渲染管线对象。本专利技术又一实施例还提供了一种多线程特效绘制装置,所述装置包括:数据获取模块,用于获取待渲染轨迹的绘制数据与特效属性数据;命令队列生成模块,用于根据接收到的并行图形命令生成相应的命令队列;渲染绘制模块,用于控制图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。本专利技术又一实施例还提供了一种多线程特效绘制系统,所述系统包括至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述多线程特效绘制方法。本专利技术的另一实施例还提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的多线程特效绘制方法。本专利技术的另一实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执行上述的多线程特效绘制方法。有益效果:本专利技术公开了一种多线程特效绘制方法、装置、系统及介质,相比于现有技术,本专利技术实施例通过生成命令队列对待渲染轨迹进行并行的多线程渲染处理,使得用户在进行特效绘制时,可以通过一次绘制得到多种特效并行绘制的轨迹图像,通过多线程特效渲染有效提高了多种特效绘制任务的效率。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1为本专利技术提供的多线程特效绘制方法较佳实施例的流程图;图2为本专利技术提供的多线程特效绘制方法较佳实施例中特效渲染的阶段示意图;图3为本专利技术提供的多线程特效绘制方法较佳实施例中多线程编码的示意图;图4为本专利技术提供的多线程特效绘制装置较佳实施例的功能模块示意图;图5为本专利技术提供的多线程特效绘制系统较佳实施例的硬件结构示意图。具体实施方式为使本专利技术的目的、技术方案及效果更加清楚、明确,以下对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。以下结合附图对本专利技术实施例进行介绍。请参阅图1,图1为本专利技术提供的多线程特效绘制方法较佳实施例的流程图。如图1所示,其包括如下步骤:S100、获取待渲染轨迹的绘制数据与特效属性数据;S200、根据接收到的并行图形命令生成相应的命令队列;S300、由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。本实施例中,在用户进行特效绘制时,根据用户的输入操作获取待渲染轨迹的绘制数据与特效属性数据,具体所述绘制数据至少包括待渲染轨迹的顶点位置,所述特效属性数据包括笔触纹理、画刷参数等,其中待渲染轨迹可以是用户输入的实时轨迹,或者导入的预置轨迹,即可以对实时轨迹或者预置轨迹进行多线程的高效渲染,具体用户可根据实际特效需要输入相应的并行图形命令,例如同步绘制渲染多种笔触纹理的特效轨迹或者同时渲染阈值轨迹和实时轨迹等等,通过将这些并行图形命令生成相应的命令队列,在进行图形渲染时由图形处理器即GPU按序执行所述命令队列,根据获取到的绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染得到多种特效同时渲染的轨迹图像,通过多线程的渲染处理实现更高效的GPU交互,在需要同步渲染多种特效时极大地提高了渲染绘制效率。进一步地,所述获取待渲染轨迹的绘制数据与特效属性数据之前,还包括:构建并初始化用于多线程渲染处理的预设图形引擎。本实施例中,所述预设图形引擎采用Metal图形引擎,其与OpenGL同为底层图形引擎,支持多线程操作以及线程间资源共享,在执行GPU任务时可尽量减少CPU本文档来自技高网...

【技术保护点】
1.一种多线程特效绘制方法,其特征在于,包括如下步骤:/n获取待渲染轨迹的绘制数据与特效属性数据;/n根据接收到的并行图形命令生成相应的命令队列;/n由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。/n

【技术特征摘要】
1.一种多线程特效绘制方法,其特征在于,包括如下步骤:
获取待渲染轨迹的绘制数据与特效属性数据;
根据接收到的并行图形命令生成相应的命令队列;
由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。


2.根据权利要求1所述的多线程特效绘制方法,其特征在于,所述获取待渲染轨迹的绘制数据与特效属性数据之前,还包括:
构建并初始化用于多线程渲染处理的预设图形引擎。


3.根据权利要求2所述的多线程特效绘制方法,其特征在于,所述根据接收到的并行图形命令生成相应的命令队列,包括:
接收用户输入的并行图形命令;
通过预设图形引擎中的命令编码器对所述并行图形命令进行多线程编码后生成相应的命令对象;
将所述命令对象添加至命令队列后提交至命令缓存区。


4.根据权利要求3所述的多线程特效绘制方法,其特征在于,所述由图形处理器按序执行所述命令队列,根据所述绘制数据与特效属性数据对所述待渲染轨迹进行多线程特效渲染后得到多种特效同时渲染的轨迹图像,包括:
根据所述绘制数据与特效属性数据获取待渲染轨迹的顶点数据;
由图形处理器按序执行所述命令队列中的命令对象,根据所述顶点数据在相应位置进行多线程特效渲染后得到多种特效同时渲染的轨迹图像。


5.根据权利要求4所述的多线程特效绘制方法,其特征在于,所述由图形处理器按序执行所述命令队列中的命令对象,根据所述顶点数据在相应位置进行多线程特效渲染后得到多种特效同时渲染的轨迹图像,包括:
根据所述顶点数据中待渲染轨迹的顶点位置进行坐标转换后得到并行渲染位置...

【专利技术属性】
技术研发人员:孙悦李天驰敖晓军
申请(专利权)人:深圳点猫科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1