一种场景显示方法和装置制造方法及图纸

技术编号:20724080 阅读:26 留言:0更新日期:2019-03-30 17:31
本发明专利技术实施例公开了一种场景显示方法和装置,对该场景中的每层按照预设划分方式划分为多个区域,其中,该预设划分方式根据屏幕的尺寸确定;对各层中对应的区域建立映射关系;确定场景中的任一层中位于屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有映射关系的其它层对应的区域集记作目标区域;将所确定的目标区域作为待显示的场景。这样,即使对于包括多层且每层的节点较多的场景,也无需对每层的每个节点依次进行计算和判断,即可快速、方便的确定出该场景中需要显示的区域,不仅可以大大节约计算资源,而且还高效的完成了在场景移动过程中显示的控制,提高了用户体验。

【技术实现步骤摘要】
一种场景显示方法和装置
本专利技术涉及计算机
,特别是涉及一种场景显示方法和装置。
技术介绍
Cocos2d-x作为开源的开发框架,由于其易于使用、免费、易扩展等特点,被应用的开发者尤其是游戏开发者广泛的使用,高效、灵活的开发出众多应用。对于Cocos2d-x开发的每个场景,通常会存在很多层(CCLayer),每层中存在多个节点(CCNode),每个节点例如可以是:图片、粒子、骨骼动画、帧动画、3d模型等,随着场景的移动,需要不断的确定各个节点是否需要在屏幕中显示。具体确定的过程包括:第一步,将各个层中的所有节点在各层的层坐标系中的坐标值转换到屏幕坐标系中,获得所有节点在屏幕坐标系下转换后的坐标值;第二步,分别判断各个节点转换后的坐标值是否在视口(即,屏幕可视区域)范围内,如果是,则将该节点的状态设置为显示状态,否则,将该节点设置为非显示状态。但是,如果场景和屏幕一旦发生相对移动,就对场景中所有层的所有节点都进行一次计算和判断,尤其是当场景相对复杂,例如场景中包括较多的层且每层包括大量的节点,将导致计算量巨大,不仅浪费计算资源,而且处理效率也会非常低下。因此,急需提供一种优化的场景显示方法,可以高效的完成在场景移动过程中显示控制。
技术实现思路
为了解决上述问题,本专利技术实施例提供了一种场景显示方法和装置,以使得即使对于包括多层且每层的节点较多的场景,也能够快速、方便的确定出该场景中需要显示的区域,从而能够在节约计算资源的基础上,高效的完成场景移动过程中显示控制,提高了用户体验。第一方面,提供了一种场景显示方法,包括:对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;对各层中对应的区域建立映射关系;确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;将所述目标区域作为待显示的场景。可选地,所述预设划分方式包括:将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。可选地,所述确定任一层中位于所述屏幕的视口中的区域集,包括:获取所述屏幕的中心点所在的区域,记作中心区域;将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。可选地,所述获取所述屏幕的中心点所在的区域,记作中心区域,包括:计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;确定所述坐标值属于的区域,记作中心区域。可选地,该方法还包括:对所述目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;在所述屏幕的中显示所述显示场景中的所有节点。第二方面,提供了一种场景显示装置,包括:划分单元,用于对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;建立单元,用于对各层中对应的区域建立映射关系;确定单元,用于确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;设置单元,用于将所述目标区域作为待显示的场景。可选地,所述预设划分方式包括:将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。可选地,所述确定单元,包括:获取子单元,用于获取所述屏幕的中心点所在的区域,记作中心区域;确定子单元,用于将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。可选地,所述获取子单元,具体用于:计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;并确定所述坐标值属于的区域,记作中心区域。可选地,该装置还包括:裁剪单元,用于对所述目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;显示单元,用于在所述屏幕的中显示所述显示场景中的所有节点。在本专利技术实施例中,对于包括多层的场景,可以先对该场景中的每层按照预设划分方式划分为多个区域,其中,所述预设划分方式根据屏幕的尺寸确定;然后,对各层中对应的区域建立映射关系;接着,对于场景中的任一层,确定该层中位于屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;最终,可以将所确定的目标区域作为待显示的场景。这样,即使对于包括多层且每层的节点较多的场景,也无需对每层的每个节点依次进行计算和判断从而确定场景中各个节点是否显示,利用本专利技术实施例提供的场景显示方法,一方面,将多个节点划分为不同的区域,并对于多个层的相应区域,进行统一管理;另一方面,只需要确定其中一层位于屏幕视口中的区域集,即可将各层中对应的区域集均设置为显示状态,以便在屏幕中显示该场景,如此,能够快速、方便的确定出该场景中需要显示的区域,不仅可以大大节约计算资源,而且还高效的完成了在场景移动过程中显示的控制,提高了用户体验。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。图1为本专利技术实施例中一种场景显示方法的流程示意图;图2为本专利技术实施例中一种场景显示方法中一示例的示意图;图3为本专利技术实施例中步骤103的一示例的方法的流程示意图;图4为本专利技术实施例中一种场景显示装置的结构示意图。具体实施方式目前,利用Cocos2d-x开发的应用中,每个场景通常会存在很多层,每层中存在多个节点,随着场景的移动,需要不断的确定各个层中各个节点是否需要在屏幕中显示,以实现将场景显示在屏幕中。但是,专利技术人经过研究发现,该场景显示方法中,不仅需要计算各个节点在屏幕坐标系中对应的坐标值并通过比较判断各节点是否在屏幕的视口中,而且对该场景中各个层均要进行上述计算和判断的过程,才可以对该包括多层且每层有众多节点的场景进行显示的控制,即,每当场景和屏幕一旦发生相对移动,就要对该场景中所有层的所有节点都进行一次上述计算和判断的过程,导致计算量巨大,不仅浪费计算资源,而且处理效率也会非常低下,很可能影响该应用的显示效果,从而无法尽可能的提高用户使用该应用的体验。基于此,本专利技术提供了一个解决方案,即,将场景的每层划分为多个区域,每个区域中包括多个节点,这样,只要以区域为单位进行各层的显示控制,即,每个区域可以统一管理该区域中所包括的节点。具体的场景显示的过程可以包括:第一步,将各个层中的各个区域的坐标信息转换到屏幕坐标系中,获得各个区域在屏幕坐标系下转换后的坐标信息;第二步,分别判断各个区域转换后的坐标信息是否在视口范围内,如果是,则将该节点区域的状态设置为显示状态,即,该区域中所有节点均为显示状态;第三步,对于其他层的区域,也分别执行上述第一步和第二步,从而确定该场景中所有层中需要显示的区域。这样,相较于以节点为单位进行计算和判断从而确定节点的显示状态,虽然在一定程度上减少了计算量,缓解了计算资源的压力,但是,如果该场景中包括的层很多,即,该场景很复杂,那么,该场景显示方式仍然无法快速、有效的使该场景被准确的显示在屏幕中。本文档来自技高网...

【技术保护点】
1.一种场景显示方法,其特征在于,包括:对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;对各层中对应的区域建立映射关系;确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;将所述目标区域作为待显示的场景。

【技术特征摘要】
1.一种场景显示方法,其特征在于,包括:对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;对各层中对应的区域建立映射关系;确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;将所述目标区域作为待显示的场景。2.根据权利要求1所述的方法,其特征在于,所述预设划分方式包括:将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。3.根据权利要求1所述的方法,其特征在于,所述确定任一层中位于所述屏幕的视口中的区域集,包括:获取所述屏幕的中心点所在的区域,记作中心区域;将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。4.根据权利要求3所述的方法,其特征在于,所述获取所述屏幕的中心点所在的区域,记作中心区域,包括:计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;确定所述坐标值属于的区域,记作中心区域。5.根据权利要求1所述的方法,其特征在于,还包括:对所述目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;在所述屏幕的中显示所述显示场景中的所有节点。6.一种场景显示装置,其特征...

【专利技术属性】
技术研发人员:刘思阳
申请(专利权)人:北京龙创悦动网络科技有限公司
类型:发明
国别省市:北京,11

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

1