发明内容
为解决如何快速定位错误特效实现代码的问题,本申请实施例提出一种图像特效参数处理方法、设备和存储介质。
第一方面,本申请实施例提供一种图像特效参数处理方法,该方法包括:
获取目标图像的目标特效参数,该目标特效参数是在对目标图像进行特效处理的过程中采集的,用于反映特效处理过程中的目标特效是否异常;
显示获取到的上述目标特效参数。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
可选的,上述目标特效参数可以包括第一特效参数和第二特效参数,相应的,显示获取到的目标特效参数的实现方式可以包括:
在显示界面显示所述第一特效参数和按钮控件;
响应于所述按钮控件的触发事件,显示所述第二特效参数。
本申请实施例提供的方法,可以根据实际需求及产品特点对目标特效参数进行分类,在显示界面显示目标特效处理过程的第一特效参数以及按钮控件,并响应于按钮控件的触发事件来显示第二特效参数,其展示方式灵活、便捷。
在此基础上,显示第二特效参数的实现方式可以包括:在不覆盖上述按钮控件的显示区域显示第二特效参数。相应的,还可以在显示第二特效参数的状态下,响应于按钮控件的触发事件,撤销该第二特效参数的显示。
本申请实施例提供的方法,在按钮控件再次被触发的情况下撤销第二特效参数的显示。这样,不同的特效处理的第二特效参数可以在同一显示界面上显示,便于用户比对排查。
可选的,上述第一特效参数可以包括目标特效的输入纹理的实例地址和输出纹理的实例地址。
申请人在实现本申请技术方案的过程中发现,目标特效的输入纹理的实例地址和输出纹理的实例地址是出错几率较高的特效参数,因此,将这两个特效参数显示在显示界面上,而不需要用户点击相应的按钮触发显示,有助于提高错误排查效率。
在上述任意方法实施例的基础上,所述目标特效参数包括:
在所述特效处理过程中中央处理器执行阶段采集的特效参数,和/或,在所述特效处理过程的图形处理器执行阶段采集的特效参数。
若目标特效参数包括在所述特效处理过程中中央处理器执行阶段采集的特效参数,那么,所述获取目标图像的目标特效参数的实现方式可以包括:所述中央处理器中的渲染控制器从所述中央处理器的缓存中获取所述目标图形的目标特效参数,所述目标特效参数是所述中央处理器中的特效处理模块在所述中央处理器执行阶段采集并保存到所述缓存中的。
若目标特效参数包括在所述特效处理过程的图形处理器执行阶段采集的特效参数,那么,所述获取目标图像的目标特效参数的实现方式可以包括:所述中央处理器中的渲染控制器从所述图形处理器中的渲染内核获取所述目标图形的目标特效参数,所述目标特效参数是所述渲染内核在所述图形处理器执行阶段通过拦截硬件命令解析得到的。
第二方面,本发明实施例提供一种电子设备,包括:
特效参数获取模块,用于获取目标图像的目标特效参数,所述目标特效参数是在对所述目标图像进行特效处理的过程中采集的,用于反映特效处理过程中的目标特效是否异常;
特效参数显示模块,用于显示获取到的所述目标特效参数。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
可选的,上述目标特效参数可以包括第一特效参数和第二特效参数,相应的,相应的,特效参数显示模块可以在显示界面显示所述第一特效参数和按钮控件;响应于所述按钮控件的触发事件,显示所述第二特效参数。
本申请实施例提供的电子设备,可以根据实际需求及产品特点对目标特效参数进行分类,在显示界面显示目标特效的第一特效参数以及按钮控件,并响应于按钮控件的触发事件来显示第二特效参数,其展示方式灵活、便捷。
在此基础上,特效参数显示模块可以在不覆盖上述按钮控件的显示区域显示第二特效参数。相应的,还可以在显示第二特效参数的状态下,响应于按钮控件的触发事件,撤销该第二特效参数的显示。
本申请实施例提供的电子设备在按钮控件再次被触发的情况下撤销第二特效参数的显示。这样,不同的特效的第二特效参数可以在同一显示界面上显示,便于用户比对排查。
可选的,上述第一特效参数可以包括目标特效的输入纹理的实例地址和输出纹理的实例地址。
申请人在实现本申请技术方案的过程中发现,目标特效的输入纹理的实例地址和输出纹理的实例地址是出错几率较高的特效参数,因此,将这两个特效参数显示在显示界面上,而不需要用户点击相应的按钮触发显示,有助于提高错误排查效率。
在上述任意电子设备实施例的基础上,所述目标特效参数包括:
在所述特效处理过程中中央处理器执行阶段采集的特效参数,和/或,在所述特效处理过程的图形处理器执行阶段采集的特效参数。
若目标特效参数包括在所述特效处理过程中中央处理器执行阶段采集的特效参数,那么,特效参数获取模块的实现方式可以包括:从所述中央处理器的缓存中获取所述目标图形的目标特效参数,所述目标特效参数是所述中央处理器中的特效处理模块在所述中央处理器执行阶段采集并保存到所述缓存中的。
若目标特效参数包括在所述特效处理过程的图形处理器执行阶段采集的特效参数,那么,所述特效参数获取模块的实现方式可以包括:从所述图形处理器中的渲染内核获取所述目标图形的目标特效参数,所述目标特效参数是所述渲染内核在所述图形处理器执行阶段通过拦截硬件命令解析得到的。
第三方面,本发明实施例提供一种电子设备,包括处理器和存储器;
存储器用于存储执行上述任意方法实施例的程序;
处理器被配置为执行存储器中存储的程序。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
第四方面,本发明实施例提供一种计算机可读存储介质,存储有实现上述任意方法实施例的程序。
本申请实施例提供的计算机可读存储介质中存储的程序。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
图像特效的代码量往往较大,以人脸特效为例,单个人脸特效的代码量往往在几万行甚至十几万行。当实现多个特效的渲染过程的渲染结果出错,若通过逐行排查代码的方式对特效处理过程的代码进行遍历排查,其工作量巨大。有鉴于此,本申请实施例提供一种图像特效参数处理方法,以可视化的方式呈现出特效处理过程中采集的目标特效参数,用户通过查看来发现异常特效参数,从而可以将问题代码锁定到异常特效参数对应的代码。而异常特效参数对应的代码的代码量往往仅是几行或十几行,使得问题排查的工作量减少,排查效率得以提高。
本申请实施例提供的方法可以应用在模拟移动终端运行环境的虚拟机上,也可以应用在移动终端上,本申请实施例对此不做限定。如图1所示,本申请实施例提供的方法包括如下操作:
步骤101、获取目标图像的目标特效参数。
其中,目标特效参数是在对目标图像进行特效处理过程中产生的,反映了目标特效是否异常。
其中,若需要对目标图像渲染多个特效,需要采用本申请实施例提供的方法显示特效参数的特效称为目标特效。实际应用中,可以将目标图像的每个特效均指定为目标特效处理过程,也可以根据需要指定其中部分特效作为目标特效。针对目标图像的渲染过程(即特效处理)可以分为中央处理器执行阶段和图形处理器执行阶段,在图形处理器执行阶段,按照指定的顺序依次渲染各个特效,第一个特效的输入纹理是原始目标图像的纹理,原始目标图像可以是图像采集设备(如摄像头)输出的图像,也可以是预存储的图像,其后每个图像特效的输入纹理是前一个图像特效的输出纹理,每个图像特效的输出纹理是叠加了本图像特效渲染效果的纹理。
实际应用中,可以在图像特效处理过程中实时获取目标参数,也可以在图像特效处理过程结束后,获取此过程中产生的目标特效参数。
实际应用中,可以根据产品特点及需要配置需要获取的目标特效参数。
步骤102、显示获取到的目标特效参数。
实际应用中,可以在目标图像的特效处理过程结束后即进行目标特效参数的显示,也可以在接收到特效参数显示指令后进行目标特效参数的显示。
实际应用中,可以在一个显示界面上显示全部图像特效的特效参数,也可以根据指示显示其中部分特效参数。
发明人在实现本申请技术方案的过程中发现,特效渲染过程的错误可以通过特效参数得以反映。通过获取图像特效处理过程中产生的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个目标特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
在本申请实施例提供的方法中,可以根据产品需要和产品特点等因素将上述目标特效参数进行分类,相应的,上述目标特效参数可以包括第一特效参数和第二特效参数,在显示界面显示上述每个目标特效各自的第一特效参数,以及这些目标特效各自对应的按钮控件;响应于按钮控件的触发事件,显示发生触发事件的按钮控件对应的目标特效的第二特效参数。
本申请实施例不对第一特效参数、第二特效参数的划分方式进行限定。作为举例而非限定,可以根据经验等因素选择出错概率较高的目标特效参数作为第一特效参数,将其他特效参数作为第二渲染参数。在某个具体场景中,目标特效的输入纹理的实例地址和输出纹理的实例地址出错的概率较高,那么,将输入纹理的实例地址和输出纹理的实例地址设置为第一特效参数,在需要显示特效参数时,将各个目标特效的输入纹理的实例地址和输出纹理的实例地址显示在上述显示界面上,在该显示界面上还同时显示有各个目标特效对应的标签按钮。当用户点击了某个目标特效对应的标签按钮,则发生该标签按钮的触发事件,响应于该触发事件显示该目标特效的第二特效参数(除输入纹理的实例地址和输出纹理的实例地址之外的其他目标特效参数)。实际应用中,也可以将需要跨目标特效对比的目标特效参数作为第一特效参数,在显示界面上同时显示多个目标特效的第一特效参数,以便于用户进行观察比对。
本申请实施例提供的方法,可以根据实际需求及产品特点对目标特效参数进行分类,在显示界面显示各个目标特效的第一特效参数以及各个目标特效对应的按钮控件,并响应于按钮控件的触发事件来显示对应的目标特效的第二特效参数,其展示方式灵活、便捷。
实际应用中,若目标特效的数量较多以至于不便于同时在显示界面上展示其第一特效参数,可以滚动显示。
在一个实施例中,调用显示控件显示发生触发事件的按钮控件对应的目标特效的第二特效参数。本申请实施例不对显示控件进行限定,作为举例而非限定,该显示控件可以为标签控件,当然也可以是其他用于展示目标特效参数的显示控件。本申请实施例提供的方法以显示控件的形式显示第二特效参数,不需要通过显示界面切换的方式显示第二特效参数,便于用户在同一显示界面可以同时观察多个目标特效参数,以进行对比排查。
在此基础上,本申请实施例提供的方法还可以在显示第二特效参数的状态下,响应于对应的按钮控件的触发事件,关闭显示控件。本申请实施例提供的方法,显示控件是在对应的按钮控件再次被触发的情况下关闭的,而不是响应于其他按钮控件的触发事件而关闭。这样,不同的目标特效的第二特效参数可以在同一显示界面上显示,便于用户比对排查。
在另一个实施例中,切换显示界面来显示发生触发事件的按钮控件对应的目标特效的第二特效参数。
在又一个实施例中,在不覆盖上述按钮控件的显示区域显示第二特效参数。相应的,还可以在显示第二特效参数的状态下,响应于按钮控件的触发事件,撤销该第二特效参数的显示。
本申请实施例提供的方法,在按钮控件再次被触发的情况下撤销第二特效参数的显示。这样,不同的特效处理的第二特效参数可以在同一显示界面上显示,便于用户比对排查。
在上述任意方法实施例的基础上,上述目标特效参数可以包括:在所述特效处理过程中中央处理器执行阶段采集的特效参数,和/或,在所述特效处理过程的图形处理器执行阶段采集的特效参数。
若目标特效参数包括在所述特效处理过程中中央处理器执行阶段采集的特效参数,那么,所述获取目标图像的目标特效参数的实现方式可以包括:所述中央处理器中的渲染控制器从所述中央处理器的缓存中获取所述目标图形的目标特效参数,所述目标特效参数是所述中央处理器中的特效处理模块在所述中央处理器执行阶段采集并保存到所述缓存中的。
若目标特效参数包括在所述特效处理过程的图形处理器执行阶段采集的特效参数,那么,所述获取目标图像的目标特效参数的实现方式可以包括:所述中央处理器中的渲染控制器从所述图形处理器中的渲染内核获取所述目标图形的目标特效参数,所述目标特效参数是所述渲染内核在所述图形处理器执行阶段通过拦截硬件命令解析得到的。
在上述任意方法实施例的基础上,在每个目标特效的渲染操作结束后,通过抓帧的方式获取该目标特效的渲染结果,并将该渲染结果渲染为展示图像,将展示图像与该目标特效的目标特效参数叠加显示,其中,目标特效参数显示在展示图像的上层。
本申请实施例不对目标特效参数的数据结构进行限定,实际应用中,可以根据需要定义数据结构。作为举例而非限定,一种可行的目标特效参数的数据结构为三层数据结构如下:
目标图像叠加有N个图像特效(均作为目标特效),每个图像特效计作Fi,i的取值范围为1至N,目标图像的N个图像特效的特效参数数据结构的最外层结构为:{F1,F2……,FN};每个图像特效Fi有M个特效参数,每个特效参数计作Aj,j的取值范围为1至M,目标图像的每个图像特效Fi的特效参数数据结构为:[A1,A2,……AM];每个特效参数的数据结构可以以键值对的形式表示。
应当指出的是,根据产品特点,还可能出现嵌套结构,即部分或全部图像特效含有至少一个子图像特效,一个嵌套结构具体实例中,该图像特效的数据结构中如下:[A1,A2,……AM,Fx],其中Fx为其子图像特效,那么,该子图像特效Fx的键值对中的value(关键值)可表示为[A1,A2,……]。相应的,显示该图像特效的第二特效参数的同时,还可以显示该图像特效的子图像特效对应的按钮控件。
下面结合具体应用场景对本申请实施例提供的方法进行详细说明。在研发测试阶段,研发测试人员需要对实现图像特效的软件产品进行测试,则可以在虚拟机上实现本申请实施例提供的方法,该虚拟机模拟CPU(中央处理器)和GPU配合工作实现图像渲染,该软件产品实现如下功能:对摄像头采集到的人脸图像进行实时特效渲染。
研发测试人员在虚拟机上运行该软件产品,通过该软件产品的人机交互界面选择需要叠加的图像特效,依次为:滤镜、美颜、整形、添加装饰物。这四个图像特效构成渲染链,其中,滤镜的输入为摄像头输出的纹理,输出增加滤镜效果的纹理,美颜的输入为增加了滤镜效果的纹理,输出为叠加了美颜效果的纹理,整形的输入为叠加了美颜效果的纹理,输出为叠加了整形效果的纹理,添加装饰物的输入为叠加了整形效果的纹理,输出为叠加了装饰物效果的纹理。
其中,滤镜即为在输入的纹理上叠加蒙层,美颜即实现磨皮、祛痘、祛斑等效果,整形即实现眼型、眉形、唇形、脸型、鼻型等部位形变调整等效果,添加装饰物即添加眼镜、头饰等装饰物效果。
软件产品响应于用户的触发,调用效果渲染SDK执行图像特效的渲染过程,并调用渲染管理(render manager)模块在渲染过程中收集各个图像特效的以下至少一个属性信息作为特效参数:图像特效的实例地址、图像特效使用的协议的实例地址、图像特效的名称、图像特效输出纹理的宽度、图像特效输出纹理的高度。
在图像特效的渲染过程后期,效果渲染SDK将需要渲染的内容发送给GPU,GPU中的渲染核(render core)通过拦截硬件命令,记录当前需要执行的opengl的操作以及该操作对应的状态参数。其中,opengl的操作参数和状态参数中的至少一种作为特效参数。
软件产品将获取到的各个图像特效的特效参数按照上述实施例提供的数据结构进行组织,并通过消息的形式发送给UI界面显示模块。
UI界面显示模块将最终的渲染结果显示到渲染结果显示界面上,该渲染结果显示界面上还显示有特效参数展示按钮控件。当研发测试人员发现渲染结果异常时,点击该特效参数展示按钮控件,UI界面显示模块响应于该特效参数展示按钮控件的触发事件,调用特效参数显示界面,并在图2所示的特效参数显示界面上显示各个图像特效的输入纹理地址、输出纹理地址以及对应的按钮控件(图2中的圆角矩形)。
若研发测试人员发现某个或某几个图像特效的输入纹理地址或输出纹理地址异常,或者未发现任何图像特效的输入纹理地址和输出纹理地址异常,都可能需要进一步排查图像特效的其他特效参数。那么,研发测试人员将点击需要进一步查看特效参数的图像特效对应的按钮控件,UI界面显示模块响应于某个图像特效对应的按钮控件的触发事件,查看该按钮控件对应的标签控件的状态,若为未打开状态,则调用图3所示的该标签控件来显示对应的图像特效的其他特效参数(例如图像特效的实例地址、图像特效使用的协议的实例地址、图像特效的名称、图像特效输出纹理的宽度、图像特效输出纹理的高度)。
若研发测试人员再次点击该按钮控件,UI界面显示模块响应于某个图像特效对应的按钮控件的触发事件,查看该按钮控件对应的标签控件的状态,确定该标签控件为打开状态,则关闭该标签控件。
研发测试人员通过查看这些特效参数能够快速定位到出现异常的特效参数。例如,若整形的输入纹理地址为滤镜的输出纹理地址,那么整形的输入纹理地址异常;又例如,若美颜的输出纹理高度与摄像头输出的纹理高度不一致,则美颜的输出纹理高度异常。
接下来,研发测试人员只需要在软件产品的程序代码中找到异常特效参数对应的代码进行错误排查即可。
应当指出的是,在研发测试阶段,研发测试人员也可以在移动终端上运行上述方法以实现对软件产品的测试。
当然,还可以在上线的软件产品上配置相应的功能模块,在用户使用软件产品的过程中,如果渲染过程出错,则软件产品主动调出该功能模块(或者由用户调出该功能模块)获取特效参数,并将获取到的特效参数上报给服务器,服务器将接收到的特效参数显示在其所连接的显示器上,或者将接收到的特效参数发送给研发测试人员所使用的终端设备,该终端设备在获取到特效参数后进行显示。
基于与方法同样的发明构思,本申请实施例提供一种电子设备,如图4所示,包括:
特效参数获取模块401,用于获取目标图像的目标特效参数,所述目标特效参数是在对所述目标图像进行特效处理的过程中采集的,用于反映特效处理过程中的目标特效是否异常;
特效参数显示模块402,用于显示获取到的特效参数。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
可选的,上述目标特效参数可以包括第一特效参数和第二特效参数,相应的,相应的,特效参数显示模块可以在显示界面显示所述第一特效参数和按钮控件;响应于所述按钮控件的触发事件,显示所述第二特效参数。
本申请实施例提供的电子设备,可以根据实际需求及产品特点对目标特效参数进行分类,在显示界面显示目标特效的第一特效参数以及按钮控件,并响应于按钮控件的触发事件来显示第二特效参数,其展示方式灵活、便捷。
在此基础上,特效参数显示模块可以在不覆盖上述按钮控件的显示区域显示第二特效参数。相应的,还可以在显示第二特效参数的状态下,响应于按钮控件的触发事件,撤销该第二特效参数的显示。
本申请实施例提供的电子设备在按钮控件再次被触发的情况下撤销第二特效参数的显示。这样,不同的特效的第二特效参数可以在同一显示界面上显示,便于用户比对排查。
可选的,上述第一特效参数可以包括目标特效的输入纹理的实例地址和输出纹理的实例地址。
申请人在实现本申请技术方案的过程中发现,目标特效的输入纹理的实例地址和输出纹理的实例地址是出错几率较高的特效参数,因此,将这两个特效参数显示在显示界面上,而不需要用户点击相应的按钮触发显示,有助于提高错误排查效率。
在上述任意电子设备实施例的基础上,所述目标特效参数包括:
在所述特效处理过程中中央处理器执行阶段采集的特效参数,和/或,在所述特效处理过程的图形处理器执行阶段采集的特效参数。
若目标特效参数包括在所述特效处理过程中中央处理器执行阶段采集的特效参数,那么,特效参数获取模块的实现方式可以包括:从所述中央处理器的缓存中获取所述目标图形的目标特效参数,所述目标特效参数是所述中央处理器中的特效处理模块在所述中央处理器执行阶段采集并保存到所述缓存中的。
若目标特效参数包括在所述特效处理过程的图形处理器执行阶段采集的特效参数,那么,所述特效参数获取模块的实现方式可以包括:从所述图形处理器中的渲染内核获取所述目标图形的目标特效参数,所述目标特效参数是所述渲染内核在所述图形处理器执行阶段通过拦截硬件命令解析得到的。
基于与方法同样的发明构思,本申请实施例提供一种电子设备,包括处理器和存储器;
存储器用于存储执行上述任意方法实施例的程序;
处理器被配置为执行存储器中存储的程序。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
如图5所示,本申请实施例提供的电子设备不仅包括处理器和存储器,I/O接口(输入输出接口)和总线。
其中,处理器(如中央处理器)可以根据存储在只读存储器(ROM)中的程序或者从存储装置加载到随机访问存储器(RAM)中的程序而执行各种适当的动作和处理。在RAM中,还存储有服务器工作所需的各种程序和数据。ROM、RAM以及存储装置统称为存储器,处理器、ROM、RAM以及存储装置通过总线彼此相连。I/O接口也连接至总线。通常,以下装置可以连接至I/O接口:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风等的输入装置;包括例如液晶显示器(LCD)、扬声器等的输出装置;包括例如磁带、硬盘等的存储装置;以及通信装置。通信装置可以允许服务器与其他设备进行无线或有线通信以交换数据。虽然图5示出了具有各种装置的服务器,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
基于与方法同样的发明构思,本申请实施例提供一种计算机可读存储介质,存储有实现上述任意方法实施例的程序。
发明人在实现本申请技术方案的过程中发现,特效处理过程的错误可以通过特效参数得以反映。通过获取特效处理过程中采集的目标特效参数并显示,用户可以通过观察发现出现问题的目标特效参数,从而将渲染问题定位到该目标特效参数对应的代码。具体某个特效参数对应的代码量远远小于完整的图像特效的代码量,因此可以达到快速定位渲染问题代码的目的。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
上述所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。