可视对象的模糊方法、渲染方法及计算设备技术

技术编号:34623840 阅读:27 留言:0更新日期:2022-08-20 09:31
本发明专利技术公开了一种可视对象的模糊方法,在计算设备中执行,可视对象具有模糊子对象,该方法包括步骤:从帧缓冲区中获取可视对象所在区域的像素值,生成该可视对象的模糊子对象的材质图;对材质图进行模糊处理,得到背景材质图;将背景材质图写回帧缓冲区的相应区域;绘制可视对象,以生成该可视对象的前景材质图;将背景材质图与前景材质图进行Alpha混合,以使渲染出的可视对象呈现出模糊效果。本发明专利技术一并公开了相应的计算设备。并公开了相应的计算设备。并公开了相应的计算设备。

【技术实现步骤摘要】
可视对象的模糊方法、渲染方法及计算设备
[0001]本申请是2019年07月26日提交的专利技术专利申请2019106839944的分案申请。


[0002]本专利技术涉及图形界面显示
,尤其涉及一种可视对象的模糊方法、渲染方法及计算设备。

技术介绍

[0003]窗口管理器是用于管理窗口的应用程序,其例如可以控制窗口的外表、在屏幕中的显示位置以及向用户提供操作窗口的方法等。窗口管理器在视觉上通常可以为窗口提供定制化的标题栏以及边框,标题栏通常会显示窗口的图标、标题以及最小化、最大化、关闭等按钮。在Linux桌面环境中,用户可以通过X11相关的技术或者由窗口管理器指定的方式定制标题栏和边框。
[0004]为了使桌面更加美观、易用,用户希望窗口标题栏的背景和边框能够与窗口底部的内容相混合,呈现出半透明的动态模糊效果。当窗口底部的内容发生变化时,窗口标题栏的背景及边框也会相应地进行动态变化。
[0005]目前,在Linux桌面环境下,大部分窗口管理器均不支持窗口标题栏及边框的动态模糊效果;对于少数支持动态模糊效果的窗口管理器,其定制性、美观性较差,难以满足用户要求。例如,KDE桌面环境下的窗口管理器KWin仅能够实现对所有窗口标题栏的动态模糊,无法定制化地对某一个或某几个窗口进行模糊,也不支持全窗口范围的动态模糊。此外,KWin也无法定制单个窗口的模糊区域的形状,无法对窗口之外的视觉元素(例如窗口切换组件、窗口预览组件等)进行模糊。

技术实现思路

[0006]为此,本专利技术提供一种可视对象的模糊方法、渲染方法及计算设备,以力图解决或至少缓解上面存在的问题。
[0007]根据本专利技术的第一个方面,提供一种可视对象的模糊方法,在计算设备中执行,所述可视对象具有模糊子对象,所述方法包括:从帧缓冲区中获取可视对象所在区域的像素值,生成该可视对象的模糊子对象的材质图;对所述材质图进行模糊处理,得到背景材质图;将所述背景材质图写回所述帧缓冲区的相应区域;绘制所述可视对象,以生成所述可视对象的前景材质图;将所述背景材质图与所述前景材质图进行Alpha混合,以使渲染出的可视对象呈现出模糊效果。
[0008]可选地,在根据本专利技术的可视对象的模糊方法中,可视对象包括:窗口、窗口切换组件、窗口预览组件、工作区预览组件。
[0009]可选地,在根据本专利技术的可视对象的模糊方法中,对所述材质图进行模糊处理,得到背景材质图的步骤包括:对所述材质图进行模糊处理,得到模糊材质图;获取所述可视对象的模糊区域掩膜,将所述模糊区域掩膜与所述模糊材质图进行混合,得到所述背景材质
图。
[0010]可选地,在根据本专利技术的可视对象的模糊方法中,所述像素值包括像素的颜色值和透明度值,所述材质图包括颜色通道图和透明度通道图;所述对所述材质图进行模糊处理,得到背景材质图的步骤包括:对所述颜色通道图进行模糊处理,得到模糊材质图;将所述模糊区域掩膜与所述透明度通道图进行混合,得到背景材质图。
[0011]可选地,在根据本专利技术的可视对象的模糊方法中,对所述颜色通道图进行模糊处理的步骤包括:采用预设的卷积核对所述颜色通道图进行卷积。
[0012]可选地,在根据本专利技术的可视对象的模糊方法中,模糊区域掩膜为用于指示模糊区域的位图,且模糊区域的像素值为1;将所述模糊区域掩膜与所述透明度通道图进行混合的步骤包括:将所述模糊区域掩膜与所述透明度通道图的相应位置的像素值做与运算。
[0013]根据本专利技术的第二个方面,提供一种渲染方法,在计算设备中执行,包括:将发送了重绘请求的可视对象和具有模糊子对象的可视对象作为待重绘的可视对象;按照显示层级自底向上的顺序渲染各个待重绘的可视对象,其中,当待重绘的可视对象具有模糊子对象时,按照上述模糊方法对该可视对象进行模糊,以使渲染出的该可视对象呈现模糊效果。
[0014]根据本专利技术的第三个方面,提供一种计算设备,包括:至少一个处理器;和存储有程序指令的存储器,所述程序指令包括窗口管理器;当所述窗口管理器被所述处理器读取并执行时,使得所述计算设备执行如上所述的可视对象的模糊方法和如上所述的渲染方法。
[0015]根据本专利技术的第四个方面,提供一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如上所述的可视对象的模糊方法和如上所述的渲染方法。
[0016]本专利技术的可视对象的模糊方法,通过为可视对象设置模糊子对象来实现可视对象的模糊,即,为需要进行模糊的可视对象设置模糊子对象,不需要进行模糊的可视对象则不设置模糊子对象,从而可以定制化、可选择地模糊某一个或某几个可视对象。
[0017]在设置了模糊子对象的基础上,可以通过模糊子对象来实现可视对象的动态模糊。具体地,从帧缓冲区中获取可视对象所在区域的像素值,作为模糊子对象的材质图,对该材质图进行模糊处理,得到背景材质图。随后,将该背景材质图与可视对象的前景材质图进行Alpha混合,以使渲染出的可视对象呈现出模糊效果。由于模糊子对象的材质图由可视对象所在区域的像素值生成,因而本专利技术的模糊方法可以实现整个可视对象区域的模糊,视觉上更加美观,用户体验更好。
[0018]进一步地,本专利技术的可视对象可以是窗口、窗口切换组件、窗口预览组件、工作区预览组件等,从而对窗口管理器所管理的各种视觉元素进行模糊。
[0019]进一步地,本专利技术的模糊方法可以为需要进行模糊的可视对象设置模糊区域掩膜,模糊区域掩膜可以定义任何形状。通过模糊区域掩膜来对模糊子对象的材质图进行裁剪,可以得到具有目标形状的背景材质图,从而实现了单个可视对象的模糊区域的可定制性。
[0020]基于本专利技术的可视对象的模糊方法,本专利技术还提供一种渲染方法,能够在渲染每一帧桌面图像时,采用常规方法来渲染不需要进行模糊的可视对象,采用本专利技术的模糊方法来渲染需要进行模糊的可视对象(即设置了模糊子对象的可视对象),使渲染出的各个可
视对象呈现出定制化的模糊效果。
[0021]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。
附图说明
[0022]为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
[0023]图1示出了根据本专利技术一个实施例的计算设备100的示意图;
[0024]图2示出了根据本专利技术一个实施例的渲染方法200的流程图;
[0025]图3图示出了根据本专利技术一个实施例的包括窗口A、B、C、D的桌面的示意图;
[0026]图4示出了图3所示的桌面所对应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可视对象的模糊方法,在计算设备的窗口管理器中执行,所述可视对象具有模糊子对象,所述方法包括:从帧缓冲区中获取可视对象所在区域的像素值,生成该可视对象的模糊子对象的材质图;对所述材质图进行模糊处理,得到背景材质图;将所述背景材质图写回所述帧缓冲区的相应区域;绘制所述可视对象,以生成所述可视对象的前景材质图;将所述背景材质图与所述前景材质图进行Alpha混合,以使渲染出的可视对象呈现出模糊效果。2.如权利要求1所述的方法,其中,所述可视对象包括:窗口、窗口切换组件、窗口预览组件、工作区预览组件。3.如权利要求1或2所述的方法,其中,所述对所述材质图进行模糊处理,得到背景材质图的步骤包括:对所述材质图进行模糊处理,得到模糊材质图;获取所述可视对象的模糊区域掩膜,将所述模糊区域掩膜与所述模糊材质图进行混合,得到所述背景材质图。4.如权利要求1

3中任一项所述的方法,其中,所述像素值包括像素的颜色值和透明度值,所述材质图包括颜色通道图和透明度通道图;所述对所述材质图进行模糊处理,得到背景材质图的步骤包括:对所述颜色通道图进行模糊处理,得到模糊材质图;将所述模糊区域掩膜与所述透明度通道图进行混合,得到背景材质图。5.如权利要求4所述的方法,其中,所述对所述颜色通道图进行模糊处理的步骤包括:采用预设的卷积核对所述颜色通道图进行卷积。6.如权利要求4或5所述...

【专利技术属性】
技术研发人员:曹思源
申请(专利权)人:武汉深之度科技有限公司
类型:发明
国别省市:

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

1