CN101847269B - 多图层动画渲染系统及方法 - Google Patents
多图层动画渲染系统及方法 Download PDFInfo
- Publication number
- CN101847269B CN101847269B CN200910048462XA CN200910048462A CN101847269B CN 101847269 B CN101847269 B CN 101847269B CN 200910048462X A CN200910048462X A CN 200910048462XA CN 200910048462 A CN200910048462 A CN 200910048462A CN 101847269 B CN101847269 B CN 101847269B
- Authority
- CN
- China
- Prior art keywords
- layer
- attribute
- selecting
- cartoon rendering
- currency
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
一种多图层动画渲染方法,该方法包括步骤:查找需要渲染的图层;按照可视树的层次遍历的顺序选择一个需要渲染的图层;根据需要重新绘制该选择的图层;更新该选择的图层的属性的当前值;将该选择的图层合成到渲染结果缓冲区;及若有其他需要渲染的图层,则选择下一个需要渲染的图层。本发明还提供一种多图层动画渲染系统。本发明能够简单、快捷、高效地实现多图层动画渲染。
Description
技术领域
本发明涉及一种动画渲染系统及方法,特别是关于一种多图层动画渲染系统及方法。
背景技术
动画是用多幅静止画面连续播放,利用视觉暂留形成连续影像。随着动画制作技术的发展,动画在很多领域得到了广泛应用。在网络上,动画经常被放在网页中的某个区域,用以强调某项内容,如用作广告宣传。在电子产品中,动画越来越多地用来改善用户界面,开发新功能,提高用户体验。例如,将动画应用于手机彩信,使用户能够传递更加活泼生动的信息。
动画一般是用多个图层制作,每一个图层好象是一个纸片,每个纸片上有独立的内容。将各个图层按一定的顺序叠放在一起,就形成了一个完整的画面。对一个图层进行修改,不会对其他的图层造成影响。
动画渲染存在数据量大,渲染速度缓慢的问题。这个问题在嵌入式系统中尤为突出。由于存储空间、处理速度的限制,手机、个人数字助理(PDA)等嵌入式系统难以完成复杂性较高的动画渲染,并且难以满足实时性的要求。
发明内容
鉴于以上内容,有必要提供一种能够简单、快捷、高效地完成多图层动画渲染任务的多图层动画渲染系统。
此外,还有必要提供一种能够简单、快捷、高效地完成多图层动画渲染任务的多图层动画渲染方法。
一种多图层动画渲染系统,该多图层动画渲染系统包括:查找模块,用于查找需要渲染的图层;选择模块,用于按照与动画相对应的可视树的层次遍历的顺序逐一选择需要渲染的图层;绘制模块,用于根据需要重新绘制选择的图层;更新模块,用于根据选择的图层的属性的目标值更新选择的图层的属性的当前值,属性的当前值表示该属性的当前状态,属性的目标值表示该属性将要进入的状态;及合成模块,用于根据对选择的图层的重新绘制及属性当前值的更新,将选择的图层合成到渲染结果缓冲区。
一种多图层动画渲染方法,该方法包括步骤:查找需要渲染的图层;按照与动画相对应的可视树的层次遍历的顺序选择一个需要渲染的图层;根据需要重新绘制选择的图层中的内容;根据选择的图层的属性的目标值更新选择的图层的属性的当前值,属性的当前值表示该属性的当前状态,属性的目标值表示该属性将要进入的状态;根据对选择的图层的重新绘制及属性当前值的更新,将选择的图层合成到渲染结果缓冲区;及若还有其他需要渲染的图层,则返回选择一个需要渲染的图层的步骤。
本发明根据与动画相对应的可视树逐一对各个需要渲染的图层进行渲染,从而简单、快捷、高效地实现多图层动画渲染。
附图说明
图1为可视树的示意图。
图2为本发明多图层动画渲染系统的功能模块图。
图3为本发明多图层动画渲染方法的流程图。
具体实施方式
动画是由多个帧组成的,一帧就是一个静止的画面。在多图层动画中,每一帧由多个图层叠合而成。每个图层上可以绘制任何想要的内容。每个图层具有一个深度,如Z序,用以表示该图层在画面中的前后顺序。深度小的图层在前面,深度大的图层在后面,深度小的图层会遮挡深度大的图层。
每个图层具有位置、高度、宽度及透明度等属性。位置就是图层的坐标,包括横坐标和纵坐标。例如,用(x,y)表示图层的位置,x表示横坐标,y表示纵坐标。一个文字的移动,就是改变文字图层的位置。高度和宽度表示图层的大小。透明度表示图层内容显示的清晰程度,通过调节图层的透明度可以实现各种半透明效果。
本发明利用动画的可视树实现多图层动画渲染。可视树是动画的各个图层的一个树形数据结构。可视树的每个节点代表一个图层。节点的深度对应相应图层在画面中的深度。各个节点根据可视关系形成父子关系。一个节点的子节点表示该子节点在该节点的前面。参阅图1所示,是可视树的示意图。Node0代表根节点,根据实际情况可以代表一个窗口或整个屏幕。Node0~Node6分别对应于图层0~图层6。其中,Node1、Node2、Node3是Node0的子节点,Node4、Node5是Node1的子节点,Node6是Node3的子节点。也就是说,图层1、图层2、图层3位于图层0之前,图层4、图层5位于图层1之前,图层6位于图层3之前。
参阅图2所示,是本发明多图层动画渲染系统的功能模块图。
所述多图层动画渲染系统20包括查找模块201、选择模块202、绘制模块203、更新模块204及合成模块205。
所述查找模块201用于查找需要渲染的图层。在本实施例中,利用脏矩形(Dirty Rectangle)技术确定需要渲染的图层。在脏矩形技术中,发生变化的区域称为脏矩形。
脏矩形一般由图层的属性发生变化而产生。例如,假设一个图层的位置为(0,0),宽为100,高为200,将该图层移动到位置(0,50)。则图层移动到位置(0,50)所产生的脏矩形的位置为(0,0),宽为150,高为200。如果一个图层和脏矩形有交集,则该图层是需要渲染的图层。利用脏矩形技术减少了需要处理的数据量,提高了动画渲染的效率。
在本实施例中,进一步地,查找模块201还根据各个图层的可视关系,从需要渲染的图层中剔除不可见图层。所述不可见图层是指完全被其他图层挡住的图层。可以通过从前向后遍历各个图层(即从下往上遍历可视树),以判断是否存在完全被其他图层遮挡的图层。如果某一图层是完全不透明的,则将该图层没有挡住的区域划分成若干矩形,判断该图层后面的图层是否与矩形有交集,若有交集就是可见图层,若没有交集就是不可见图层。不可见图层的查找在算法上可以用栈来实现。
所述选择模块202用于按照可视树层次遍历的顺序逐一选择需要渲染的图层。层次遍历的顺序是指从下到上、从左到右的顺序。也就是说,采用由深至浅(即由后往前)的顺序逐一对各个需要渲染的图层进行渲染。
所述绘制模块203用于根据需要重新绘制该选择的图层。例如,若需要增加新的内容、删除原有的内容或者修改原有的内容,则绘制模块203重新绘制该选择的图层。
所述更新模块204用于根据该选择的图层的属性的目标值更新该选择的图层的属性的当前值。属性的当前值表示该属性的当前状态,目标值表示该属性将要进入的状态。例如,假设一个图层的位置的x坐标的当前值为0,目标值为100。假设动画有100帧,则需要将该图层的x坐标从0依次更新为1,2,3,......,98,99,100。若选择的图层的属性的目标值等于当前值,则不需要更新该选择的图层的属性的当前值。
所述合成模块205用于根据对该选择的图层的重新绘制及属性当前值的更新,将该选择的图层合成到渲染结果缓冲区,亦即把变化后的图层输出到渲染结果缓冲区。渲染结果缓存区相当于一个画布,各个图层相当于一个个纸片,将一个图层合成到渲染结果缓冲区就相当于把相应的一个纸片帖到画布上。本步骤即为把变化后的图层输出到渲染结果缓冲区。
参阅图3所示,是本发明多图层动画渲染方法的流程图。该方法适用于各种数据处理系统,例如,手机、个人数字助理(PDA)等嵌入式系统。下面以动画的一帧为例进行说明。
步骤S301,查找模块201查找需要渲染的图层。在本实施例中,利用脏矩形(Dirty Rectangle)技术确定需要渲染的图层。在脏矩形技术中,发生变化的区域称为脏矩形。
脏矩形一般由图层的属性发生变化而产生。例如,假设一个图层的位置为(0,0),宽为100,高为200,该图层将要移动到位置(0,50)。图层移动到位置(0,50)所产生的脏矩形的位置为(0,0),宽为150,高为200。如果一个图层和脏矩形有交集,则该图层是需要渲染的图层。利用脏矩形技术减少了需要处理的数据量,提高了动画渲染的效率。
在本实施例中,进一步地,查找模块201根据各个图层的可视关系,从需要渲染的图层中剔除不可见图层。所述不可见图层是指完全被其他图层挡住的图层。可以通过从前向后遍历各个图层(即从下往上遍历可视树),以判断是否存在完全被其他图层遮挡的图层。如果某一图层是完全不透明的,则将该图层没有挡住的区域划分成若干矩形,判断该图层后面的图层是否与矩形有交集,若有交集就是可见图层,若没有交集就是不可见图层。不可见图层的查找在算法上可以用栈来实现。
步骤S302,选择模块202按照可视树层次遍历的顺序选择一个需要渲染的图层。层次遍历的顺序是指从下到上、从左到右的顺序。也就是说,采用由深至浅(即由后往前)的顺序逐一对各个需要渲染的图层进行渲染。
步骤S303,绘制模块203根据需要重新绘制该选择的图层。例如,若需要增加新的内容、删除原有的内容或者修改原有的内容,则绘制模块203重新绘制该选择的图层。若不需要改变该选择的图层的内容,则进入下一步骤。
步骤S304,更新模块204根据该选择的图层的属性的目标值更新该选择的图层的属性的当前值。属性的当前值表示该属性的当前状态,目标值表示该属性将要进入的状态。例如,假设一个图层的位置的x坐标的当前值为0,目标值为100。假设动画有100帧,则需要将该图层的x坐标从0依次更新为1,2,3,......,98,99,100。若选择的图层的属性的目标值等于当前值,则进入下一步骤。
步骤S305,合成模块205根据对选择的图层的重新绘制及属性当前值的更新,将该选择的图层合成到渲染结果缓冲区,亦即把变化后的图层合成到渲染结果缓冲区。渲染结果缓存区相当于一个画布,各个图层相当于一个个纸片,将一个图层合成到渲染结果缓冲区就相当于把相应的一个纸片帖到画布上。
步骤S306,判断是否还有其他需要渲染的图层。若没有其他需要渲染的图层,则流程结束。否则,若还有其他需要渲染的图层,则返回步骤S302,按照可视树层次遍历的顺序选择下一个需要渲染的图层。
Claims (10)
1.一种多图层动画渲染系统,其特征在于,该多图层动画渲染系统包括:
查找模块,用于查找需要渲染的图层;
选择模块,用于按照与动画相对应的可视树的层次遍历的顺序逐一选择需要渲染的图层;
绘制模块,用于根据需要重新绘制选择的图层;
更新模块,用于根据选择的图层的属性的目标值更新选择的图层的属性的当前值,属性的当前值表示该属性的当前状态,属性的目标值表示该属性将要进入的状态;及
合成模块,用于根据对选择的图层的重新绘制及属性当前值的更新,将选择的图层合成到渲染结果缓冲区。
2.如权利要求1所述的多图层动画渲染系统,其特征在于,所述可视树的每个节点代表一个图层,节点的深度对应相应图层的深度,各个节点根据可视关系形成父子关系。
3.如权利要求1所述的多图层动画渲染系统,其特征在于,所述查找模块利用脏矩形技术确定需要渲染的图层。
4.如权利要求1所述的多图层动画渲染系统,其特征在于,所述查找模块还用于根据各个图层的可视关系,从需要渲染的图层中剔除不可见图层,所述不可见图层是指完全被其他图层挡住的图层。
5.如权利要求4所述的多图层动画渲染系统,其特征在于,该多图层动画渲染系统适用于嵌入式系统。
6.一种多图层动画渲染方法,其特征在于,该方法包括步骤:
查找需要渲染的图层;
按照与动画相对应的可视树的层次遍历的顺序选择一个需要渲染的图层;
根据需要重新绘制选择的图层中的内容;
根据选择的图层的属性的目标值更新选择的图层的属性的当前值,属性的当前值表示该属性的当前状态,属性的目标值表示该属性将要进入的状态;
根据对选择的图层的重新绘制及属性当前值的更新,将选择的图层合成到渲染结果缓冲区;及
若还有其他需要渲染的图层,则返回选择一个需要渲染的图层的步骤。
7.如权利要求6所述的多图层动画渲染方法,其特征在于,所述可视树的每个节点代表一个图层,节点的深度对应相应图层的深度,各个节点根据可视关系形成父子关系。
8.如权利要求6所述的多图层动画渲染方法,其特征在于,所述查找需要渲染的图层是利用脏矩形技术进行查找。
9.如权利要求6所述的多图层动画渲染方法,其特征在于,所述查找需要渲染的图层的步骤还包括:根据各个图层的可视关系,从需要渲染的图层中剔除不可见图层,所述不可见图层是指完全被其他图层挡住的图层。
10.如权利要求9所述的多图层动画渲染方法,其特征在于,该多图层动画渲染方法适用于嵌入式系统。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910048462XA CN101847269B (zh) | 2009-03-27 | 2009-03-27 | 多图层动画渲染系统及方法 |
HK11102969.0A HK1148854A1 (en) | 2009-03-27 | 2011-03-24 | A method to efficiently render multiple animation layers in a graphics system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910048462XA CN101847269B (zh) | 2009-03-27 | 2009-03-27 | 多图层动画渲染系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101847269A CN101847269A (zh) | 2010-09-29 |
CN101847269B true CN101847269B (zh) | 2011-11-09 |
Family
ID=42771881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910048462XA Expired - Fee Related CN101847269B (zh) | 2009-03-27 | 2009-03-27 | 多图层动画渲染系统及方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101847269B (zh) |
HK (1) | HK1148854A1 (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102903143A (zh) * | 2011-07-27 | 2013-01-30 | 国际商业机器公司 | 用于将二维图像三维化的方法和系统 |
CN102346916A (zh) * | 2011-09-26 | 2012-02-08 | 深圳市万兴软件有限公司 | 一种图层渲染方法及装置 |
CN102509323B (zh) * | 2011-11-14 | 2015-04-08 | 厦门吉比特网络技术股份有限公司 | 一种基于硬件加速渲染技术的显存控制处理方法 |
CN103390288B (zh) * | 2012-05-09 | 2016-04-27 | 上海幻维数码创意科技有限公司 | 三维渲染文件批量拆分渲染层处理系统 |
CN103049924B (zh) * | 2012-12-11 | 2016-03-02 | 广东威创视讯科技股份有限公司 | 多图层分布式渲染方法及系统 |
CN103035164B (zh) * | 2012-12-24 | 2015-03-25 | 广东威创视讯科技股份有限公司 | 一种地理信息系统渲染方法及系统 |
CN103247068B (zh) * | 2013-04-03 | 2016-03-30 | 上海晨思电子科技有限公司 | 一种渲染方法和装置 |
CN103295181B (zh) * | 2013-05-08 | 2019-04-26 | 新奥特(北京)视频技术有限公司 | 一种粒子文件与视频的叠加方法和装置 |
CN103544727B (zh) * | 2013-06-26 | 2017-02-15 | Tcl集团股份有限公司 | 一种基于预测分支的场景渲染优化方法、系统和移动终端 |
CN104299253B (zh) * | 2013-07-19 | 2017-05-31 | 广州欧划动画技术有限公司 | 一种面向全高清数字电影动画的智能渲染方法和装置 |
CN103606179B (zh) * | 2013-12-02 | 2017-05-03 | 珠海金山办公软件有限公司 | 一种动画图像显示方法及装置 |
CN105335410B (zh) * | 2014-07-31 | 2017-06-16 | 优视科技有限公司 | 一种基于合成渲染加速的网页更新方法和装置 |
CN104740873A (zh) * | 2015-04-13 | 2015-07-01 | 四川天上友嘉网络科技有限公司 | 游戏中的图像渲染方法 |
CN105511890B (zh) * | 2016-01-29 | 2018-02-23 | 腾讯科技(深圳)有限公司 | 一种图形界面更新方法和装置 |
CN106504305A (zh) * | 2016-10-25 | 2017-03-15 | 天脉聚源(北京)传媒科技有限公司 | 一种动画处理方法及装置 |
CN106951055B (zh) | 2017-03-10 | 2019-07-12 | Oppo广东移动通信有限公司 | 一种移动终端的显示控制方法、装置及移动终端 |
CN108540849A (zh) * | 2018-03-20 | 2018-09-14 | 厦门星罗网络科技有限公司 | 视频相册的生成方法及装置 |
CN112073794B (zh) * | 2019-06-11 | 2022-12-23 | 腾讯科技(深圳)有限公司 | 动画处理方法、装置、计算机可读存储介质和计算机设备 |
CN112819926A (zh) * | 2019-10-31 | 2021-05-18 | 腾讯科技(深圳)有限公司 | 一种数据编辑方法、装置、设备及存储介质 |
CN111111175A (zh) * | 2019-12-18 | 2020-05-08 | 北京智明星通科技股份有限公司 | 一种游戏画面生成方法、装置和移动终端 |
CN111013144B (zh) * | 2019-12-18 | 2023-10-27 | 北京智明星通科技股份有限公司 | 一种游戏画面绘制渲染方法、装置和移动终端 |
WO2021226919A1 (en) * | 2020-05-14 | 2021-11-18 | Qualcomm Incorporated | Removing invisible layers from rendering queue |
CN114065329B (zh) * | 2021-11-22 | 2023-07-21 | 费哲软件无锡有限公司 | 一种可视化室内地图的网页绘制方法、绘制系统及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774572A (en) * | 1984-12-20 | 1998-06-30 | Orbotech Ltd. | Automatic visual inspection system |
US6424351B1 (en) * | 1999-04-21 | 2002-07-23 | The University Of North Carolina At Chapel Hill | Methods and systems for producing three-dimensional images using relief textures |
US6954202B2 (en) * | 2001-06-29 | 2005-10-11 | Samsung Electronics Co., Ltd. | Image-based methods of representation and rendering of three-dimensional object and animated three-dimensional object |
CN1795468A (zh) * | 2003-06-26 | 2006-06-28 | 佳能株式会社 | 在基于扫描线的光栅图像处理器中跟踪深度的方法 |
CN101188025A (zh) * | 2007-11-30 | 2008-05-28 | 电子科技大学 | 一种高效实时的群体动画框架 |
-
2009
- 2009-03-27 CN CN200910048462XA patent/CN101847269B/zh not_active Expired - Fee Related
-
2011
- 2011-03-24 HK HK11102969.0A patent/HK1148854A1/xx not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774572A (en) * | 1984-12-20 | 1998-06-30 | Orbotech Ltd. | Automatic visual inspection system |
US6424351B1 (en) * | 1999-04-21 | 2002-07-23 | The University Of North Carolina At Chapel Hill | Methods and systems for producing three-dimensional images using relief textures |
US6954202B2 (en) * | 2001-06-29 | 2005-10-11 | Samsung Electronics Co., Ltd. | Image-based methods of representation and rendering of three-dimensional object and animated three-dimensional object |
CN1795468A (zh) * | 2003-06-26 | 2006-06-28 | 佳能株式会社 | 在基于扫描线的光栅图像处理器中跟踪深度的方法 |
CN101188025A (zh) * | 2007-11-30 | 2008-05-28 | 电子科技大学 | 一种高效实时的群体动画框架 |
Also Published As
Publication number | Publication date |
---|---|
HK1148854A1 (en) | 2011-09-16 |
CN101847269A (zh) | 2010-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101847269B (zh) | 多图层动画渲染系统及方法 | |
CN103699576B (zh) | 一种用于提供搜索结果的方法与设备 | |
CN100485683C (zh) | 信息处理装置以及信息处理方法 | |
US20210235151A1 (en) | Moving video tags | |
US9552129B2 (en) | Interactive visual representation of points of interest data | |
CN102289834B (zh) | 一种微动画编辑器及其编辑方法 | |
US8117204B2 (en) | Video browser for navigating linear video on small display devices using a similarity-based navigation hierarchy of temporally ordered video keyframes with short navigation paths | |
CN107272994A (zh) | 视窗切换界面 | |
US11461943B1 (en) | Mosaic display systems and methods for intelligent media search | |
US20170024404A1 (en) | System and Method for Dynamic Predictive Analytics for Pattern Search and Publishing Engine for with Constraint Satisfaction | |
CN106610976B (zh) | 一种poi标注方法及装置 | |
CN105898495A (zh) | 一种移动终端推荐信息的推送方法及移动终端 | |
US20170024363A1 (en) | System and Method for Dynamic Predictive Analytics for Pattern Search and Publishing Engine | |
North et al. | Online hierarchical graph drawing | |
CN109493402A (zh) | 一种剧情动画的制作方法和装置 | |
CN107765938A (zh) | 一种图片交互方法与装置 | |
CN111159547A (zh) | 一种信息展示方法及装置、电子设备、计算机存储介质 | |
US10304493B2 (en) | Cartoon content editing method and cartoon content editing apparatus | |
CN102722323B (zh) | 图片标签管理方法 | |
TW201322180A (zh) | 重疊物件的繪製方法及裝置 | |
US20140205266A1 (en) | Method, Apparatus and Computer Program Product for Summarizing Media Content | |
US20010033302A1 (en) | Video browser data magnifier | |
CN106998489A (zh) | 一种焦点越界搜索方法及装置 | |
KR20200068512A (ko) | 맞춤형 vr 컨텐츠 제공하는 포탈 서비스 객체 시스템 및 그 구동방법 | |
CN115309299A (zh) | 桌面卡片的显示方法、装置、终端、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1148854 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1148854 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111109 Termination date: 20170327 |
|
CF01 | Termination of patent right due to non-payment of annual fee |