一种基于边缘计算3D模拟场景背景滑动动画绘制方法技术

技术编号:24096134 阅读:39 留言:0更新日期:2020-05-09 10:26
本发明专利技术涉及滑动动画绘制方法技术领域,具体涉及一种基于边缘计算3D模拟场景背景滑动动画绘制方法,一种基于边缘计算3D模拟场景背景滑动动画绘制方法,包括对图片进行划分、判断是否左右滑动图片、生成顶点的纹理坐标、将生成的顶点的纹理坐标传输到顶点着色器、顶点着色器每次绘制时加上增量坐标形成新的纹理坐标、将新的纹理坐标输出到片元着色器进行差分采样绘制、将采样绘制后的图片输出到缓冲区、将缓冲区的图片绘制到屏幕上的步骤,本发明专利技术能够直接修改显卡对图像的纹理采样,所以不需要将多个图片加载到内存,也不需要一次加载整张图片到内存,减少了内存实用,避免了内存浪费。

A method of 3D simulation scene background sliding animation based on edge calculation

【技术实现步骤摘要】
一种基于边缘计算3D模拟场景背景滑动动画绘制方法
本专利技术涉及滑动动画绘制方法
,具体涉及一种基于边缘计算3D模拟场景背景滑动动画绘制方法。
技术介绍
3D场景模拟一般会有多层图片,分别有不同的动画,常见的动画有平移,缩放等。当场景中的坑位获取到焦点时出发动画,来高亮或者突出显示选择坑位。第一种常见的方法是准备多个图片分别做为动画不同的帧,然后一定的时间间隔显示不同帧的图片从而达到动画的效果。但这种方法需要更多的图片资源,增大了空间占用,一般图片资源占用空间相对较大的,很多内存紧缺的平台上使用这种方式限制性还是比较大的;多个图片还会增加程序运行时间,因为每一帧图片都需要加载释放等一些切换操作,影响了程序的性能和效率。第二种常见的方法是控制显示区域为图片的子区域显示图片不同子区域,直接移动或者缩放图片,控制显示区域为图片的子区域,这样这个子区域中显示的图片不同的子区域来达到动画的效果,如图1所示,方框表示显示区域,当图片左右平移时显示的效果就是平移的动画了。但这种方式需要把一整张大的图片都加载到内存有些平台甚至需要都绘制到内存,但是只显示一块子区域,这显然一部分内存被浪费了。基于此,本专利技术设计了一种基于边缘计算3D模拟场景背景滑动动画绘制方法,用以解决上述两种传统方法存在的问题。
技术实现思路
本专利技术的目的在于解决上述
技术介绍
中提出的问题,提供了一种基于边缘计算3D模拟场景背景滑动动画绘制方法。为实现上述目的,本专利技术提供如下技术方案:一种基于边缘计算3D模拟场景背景滑动动画绘制方法,包括以下步骤:步骤一:对图片进行划分;步骤二:判断是否左右滑动图片,若左右滑动图片则确定左右滑动范围,若不左右滑动图片,则取图片单边滑动区域;步骤三:生成顶点的纹理坐标;步骤四:将生成的顶点的纹理坐标传输到顶点着色器;步骤五:顶点着色器每次绘制时加上增量坐标形成新的纹理坐标;步骤六:将新的纹理坐标输出到片元着色器进行差分采样绘制;步骤七:将采样绘制后的图片输出到缓冲区;步骤八:将缓冲区的图片绘制到屏幕上。进一步地,上述滑动动画绘制方法中,所述步骤三中顶点坐标根据偏移量△u确定。进一步地,上述滑动动画绘制方法中,所述偏移量△u根据所需动画帧数以及显示效果确定。进一步地,上述滑动动画绘制方法中,所述步骤五中增量坐标的增量为偏移量△u。进一步地,上述滑动动画绘制方法中,所述步骤三至所述步骤六中的纹理坐标的坐标空间限制在0和1之间。进一步地,上述滑动动画绘制方法中,所述偏移量△u的取值范围为0-1。与现有技术相比,本专利技术的有益效果是:本专利技术是基于OpenGL(OpenGraphicsLibrary)片元着色器实现,能够直接修改显卡对图像的纹理采样,所以不需要将多个图片加载到内存,也不需要一次加载整张图片到内存,减少了内存实用,避免了内存浪费。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为
技术介绍
中第二种常见方法的显示区域示意图;图2为本专利技术的步骤流程图;图3为本专利技术使用的OpenGL的纹理坐标空间限制区域示意图;图4为本专利技术的修改纹理坐标区域示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。请参阅图2,本实施例提供一种技术方案:一种基于边缘计算3D模拟场景背景滑动动画绘制方法,包括以下步骤:步骤一:对图片进行划分。步骤二:判断是否左右滑动图片,若左右滑动图片则确定左右滑动范围,若不左右滑动图片,则取图片单边滑动区域。步骤三:生成顶点的纹理坐标,顶点坐标根据偏移量△u确定,偏移量△u根据所需动画帧数以及显示效果确定,偏移量△u越小显示动画越流畅,这样也需要帧数增加,绘制次数也越多,反之绘制次数越少,性能效率越高,需要根据需要权衡调整。而后,根据偏移量△u计算各个顶点初始的纹理坐标。步骤四:将生成的顶点的纹理坐标传输到顶点着色器;步骤五:顶点着色器每次绘制时加上增量坐标形成新的纹理坐标,即在上一个纹理横坐标加上偏移量△u生成新的纹理坐标;步骤六:将新的纹理坐标输出到片元着色器进行差分采样绘制;步骤七:将采样绘制后的图片输出到缓冲区;步骤八:将缓冲区的图片绘制到屏幕上,达到平移图片的效果。其中,步骤三至所述步骤六中的纹理坐标的坐标空间限制在0和1之间。偏移量△u的取值范围为0-1。如图3所示,OpenGL的纹理坐标空间是限制在0和1之间的,一般的显示纹理绘制时,纹理的四个顶点坐标(0,0)、(0,1)、(1,0)和(1,1)对应为显示纹理的图形的四个顶点上,OpenGL片元着色器中会根据默认插值算法来对图形各个坐标点来进行采样从而显示纹理贴图。本专利技术通过修改纹理坐标值来实现平移动画,如图4所示,横轴的坐标不取纹理的边界值,而是取在0和1之间的一个值来实现子区域的纹理映射,每次纹理采样取横轴一个偏移量△u,如△u取0.2,纹理坐标为:如(0.2,0)、(0.2,1)、(0.8,0)和(0.8,1),这样每一帧绘制有一定偏移的纹理从而实现平移动画效果。本专利技术能够直接修改显卡对图像的纹理采样,所以不需要将多个图片加载到内存,也不需要一次加载整张图片到内存,减少了内存实用,避免了内存浪费。值得注意的是:本方法不仅仅适用于左右滑动动画的绘制,还适用于其他各个方向的滑动动画的绘制。在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本专利技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。以上公开的本专利技术优选实施例只是用于帮助阐述本专利技术。优选实施例并没有详尽叙述所有的细节,也不限制该专利技术仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本专利技术的原理和实际应用,从而使所属
技术人员能很好地理解和利用本专利技术。本专利技术仅受权利要求书及其全部范围和等效物的限制。本文档来自技高网
...

【技术保护点】
1.一种基于边缘计算3D模拟场景背景滑动动画绘制方法,其特征在于,包括以下步骤:/n步骤一:对图片进行划分;/n步骤二:判断是否左右滑动图片,若左右滑动图片则确定左右滑动范围,若不左右滑动图片,则取图片单边滑动区域;/n步骤三:生成顶点的纹理坐标;/n步骤四:将生成的顶点的纹理坐标传输到顶点着色器;/n步骤五:顶点着色器每次绘制时加上增量坐标形成新的纹理坐标;/n步骤六:将新的纹理坐标输出到片元着色器进行差分采样绘制;/n步骤七:将采样绘制后的图片输出到缓冲区;/n步骤八:将缓冲区的图片绘制到屏幕上。/n

【技术特征摘要】
1.一种基于边缘计算3D模拟场景背景滑动动画绘制方法,其特征在于,包括以下步骤:
步骤一:对图片进行划分;
步骤二:判断是否左右滑动图片,若左右滑动图片则确定左右滑动范围,若不左右滑动图片,则取图片单边滑动区域;
步骤三:生成顶点的纹理坐标;
步骤四:将生成的顶点的纹理坐标传输到顶点着色器;
步骤五:顶点着色器每次绘制时加上增量坐标形成新的纹理坐标;
步骤六:将新的纹理坐标输出到片元着色器进行差分采样绘制;
步骤七:将采样绘制后的图片输出到缓冲区;
步骤八:将缓冲区的图片绘制到屏幕上。


2.根据权利要求1所述的一种基于边缘计算3D模拟场景背景滑动动画绘制方法,其特征在于:所述步骤三中顶...

【专利技术属性】
技术研发人员:李强李利民胡晓庆罗代忠康阳
申请(专利权)人:重庆文理学院
类型:发明
国别省市:重庆;50

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

1