CN109542573B - 一种场景显示方法和装置 - Google Patents
一种场景显示方法和装置 Download PDFInfo
- Publication number
- CN109542573B CN109542573B CN201811436531.XA CN201811436531A CN109542573B CN 109542573 B CN109542573 B CN 109542573B CN 201811436531 A CN201811436531 A CN 201811436531A CN 109542573 B CN109542573 B CN 109542573B
- Authority
- CN
- China
- Prior art keywords
- screen
- scene
- region
- layer
- area
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例公开了一种场景显示方法和装置,对该场景中的每层按照预设划分方式划分为多个区域,其中,该预设划分方式根据屏幕的尺寸确定;对各层中对应的区域建立映射关系;确定场景中的任一层中位于屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有映射关系的其它层对应的区域集记作目标区域;将所确定的目标区域作为待显示的场景。这样,即使对于包括多层且每层的节点较多的场景,也无需对每层的每个节点依次进行计算和判断,即可快速、方便的确定出该场景中需要显示的区域,不仅可以大大节约计算资源,而且还高效的完成了在场景移动过程中显示的控制,提高了用户体验。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种场景显示方法和装置。
背景技术
Cocos2d-x作为开源的开发框架,由于其易于使用、免费、易扩展等特点,被应用的开发者尤其是游戏开发者广泛的使用,高效、灵活的开发出众多应用。
对于Cocos2d-x开发的每个场景,通常会存在很多层(CCLayer),每层中存在多个节点(CCNode),每个节点例如可以是:图片、粒子、骨骼动画、帧动画、3d模型等,随着场景的移动,需要不断的确定各个节点是否需要在屏幕中显示。具体确定的过程包括:第一步,将各个层中的所有节点在各层的层坐标系中的坐标值转换到屏幕坐标系中,获得所有节点在屏幕坐标系下转换后的坐标值;第二步,分别判断各个节点转换后的坐标值是否在视口(即,屏幕可视区域)范围内,如果是,则将该节点的状态设置为显示状态,否则,将该节点设置为非显示状态。
但是,如果场景和屏幕一旦发生相对移动,就对场景中所有层的所有节点都进行一次计算和判断,尤其是当场景相对复杂,例如场景中包括较多的层且每层包括大量的节点,将导致计算量巨大,不仅浪费计算资源,而且处理效率也会非常低下。因此,急需提供一种优化的场景显示方法,可以高效的完成在场景移动过程中显示控制。
发明内容
为了解决上述问题,本发明实施例提供了一种场景显示方法和装置,以使得即使对于包括多层且每层的节点较多的场景,也能够快速、方便的确定出该场景中需要显示的区域,从而能够在节约计算资源的基础上,高效的完成场景移动过程中显示控制,提高了用户体验。
第一方面,提供了一种场景显示方法,包括:
对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;
对各层中对应的区域建立映射关系;
确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;
将所述目标区域作为待显示的场景。
可选地,所述预设划分方式包括:
将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。
可选地,所述确定任一层中位于所述屏幕的视口中的区域集,包括:
获取所述屏幕的中心点所在的区域,记作中心区域;
将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。
可选地,所述获取所述屏幕的中心点所在的区域,记作中心区域,包括:
计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;
确定所述坐标值属于的区域,记作中心区域。
可选地,该方法还包括:
对所述目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;
在所述屏幕的中显示所述显示场景中的所有节点。
第二方面,提供了一种场景显示装置,包括:
划分单元,用于对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;
建立单元,用于对各层中对应的区域建立映射关系;
确定单元,用于确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;
设置单元,用于将所述目标区域作为待显示的场景。
可选地,所述预设划分方式包括:
将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。
可选地,所述确定单元,包括:
获取子单元,用于获取所述屏幕的中心点所在的区域,记作中心区域;
确定子单元,用于将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。
可选地,所述获取子单元,具体用于:
计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;并确定所述坐标值属于的区域,记作中心区域。
可选地,该装置还包括:
裁剪单元,用于对所述目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;
显示单元,用于在所述屏幕的中显示所述显示场景中的所有节点。
在本发明实施例中,对于包括多层的场景,可以先对该场景中的每层按照预设划分方式划分为多个区域,其中,所述预设划分方式根据屏幕的尺寸确定;然后,对各层中对应的区域建立映射关系;接着,对于场景中的任一层,确定该层中位于屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;最终,可以将所确定的目标区域作为待显示的场景。这样,即使对于包括多层且每层的节点较多的场景,也无需对每层的每个节点依次进行计算和判断从而确定场景中各个节点是否显示,利用本发明实施例提供的场景显示方法,一方面,将多个节点划分为不同的区域,并对于多个层的相应区域,进行统一管理;另一方面,只需要确定其中一层位于屏幕视口中的区域集,即可将各层中对应的区域集均设置为显示状态,以便在屏幕中显示该场景,如此,能够快速、方便的确定出该场景中需要显示的区域,不仅可以大大节约计算资源,而且还高效的完成了在场景移动过程中显示的控制,提高了用户体验。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种场景显示方法的流程示意图;
图2为本发明实施例中一种场景显示方法中一示例的示意图;
图3为本发明实施例中步骤103的一示例的方法的流程示意图;
图4为本发明实施例中一种场景显示装置的结构示意图。
具体实施方式
目前,利用Cocos2d-x开发的应用中,每个场景通常会存在很多层,每层中存在多个节点,随着场景的移动,需要不断的确定各个层中各个节点是否需要在屏幕中显示,以实现将场景显示在屏幕中。
但是,发明人经过研究发现,该场景显示方法中,不仅需要计算各个节点在屏幕坐标系中对应的坐标值并通过比较判断各节点是否在屏幕的视口中,而且对该场景中各个层均要进行上述计算和判断的过程,才可以对该包括多层且每层有众多节点的场景进行显示的控制,即,每当场景和屏幕一旦发生相对移动,就要对该场景中所有层的所有节点都进行一次上述计算和判断的过程,导致计算量巨大,不仅浪费计算资源,而且处理效率也会非常低下,很可能影响该应用的显示效果,从而无法尽可能的提高用户使用该应用的体验。
基于此,本发明提供了一个解决方案,即,将场景的每层划分为多个区域,每个区域中包括多个节点,这样,只要以区域为单位进行各层的显示控制,即,每个区域可以统一管理该区域中所包括的节点。具体的场景显示的过程可以包括:第一步,将各个层中的各个区域的坐标信息转换到屏幕坐标系中,获得各个区域在屏幕坐标系下转换后的坐标信息;第二步,分别判断各个区域转换后的坐标信息是否在视口范围内,如果是,则将该节点区域的状态设置为显示状态,即,该区域中所有节点均为显示状态;第三步,对于其他层的区域,也分别执行上述第一步和第二步,从而确定该场景中所有层中需要显示的区域。这样,相较于以节点为单位进行计算和判断从而确定节点的显示状态,虽然在一定程度上减少了计算量,缓解了计算资源的压力,但是,如果该场景中包括的层很多,即,该场景很复杂,那么,该场景显示方式仍然无法快速、有效的使该场景被准确的显示在屏幕中。
因此,本发明实施例不仅对场景中层的节点进行区域的划分,而且,对多层划分后的区域进行关联,实现对具有映射关系的区域的统一管理;基于此,只需要对场景中任一层进行状态的标记,即可实现对整个场景中所有层的显示控制。这样,不再需要各个层进行分别控制,只对其中一层进行状态设置,即可完成对整个场景的显示控制,不仅能够快速、方便的确定出该场景中需要显示的区域,而且还可以大大的节约计算资源,高效的完成在场景移动过程中显示的控制,提高了用户体验。
下面结合附图,通过实施例来详细说明本发明实施例中一种场景显示方法和装置的具体实现方式。
图1为本发明实施例提供的一种场景显示方法的流程示意图。参见图1,该方法具体可以包括:
步骤101,对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定。
可以理解的是,场景和屏幕发生相对移动时,需要确定场景中的节点是否要显示在屏幕的视口中,具体需要确定场景中每一层的每个节点应该处于的显示状态,将需要显示的节点确定为待显示的场景中的节点,其状态可以被设置为显示状态。
具体实现时,为了能够对场景中节点进行合理的划分,可以预先设置预设划分方式,并按照预设长度对场景中的每层进行划分,划分后每层均可以得到多个区域。例如:可以按照预设面积对场景进行划分,也可以按照预设形状和尺寸对场景进行划分,具体的划分依据在本发明中不作具体限定。
作为一个示例,可以按照屏幕的尺寸,将场景中的每层划分为预设长度的正方形,并设置预设长度。那么,步骤101具体可以包括:获取屏幕的尺寸;按照该屏幕的尺寸设置预设长度;按照预设长度将场景中的所有层划分为多个区域。在一个实例中,为了可以让后续确定的目标区域可以全面覆盖该屏幕,可以设置该预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一,例如:假设屏幕的尺寸为5厘米*9厘米,那么,预设长度可以大于3厘米且不大于5厘米的长度值,如预设长度取4.5厘米。那么,对于18厘米*18厘米的场景,可以对场景中的每层划分为4*4=16个区域。
这样,根据屏幕的尺寸设置预设划分方式,例如:设置预设形状和预设长度,划分屏幕中的各层,得到多个区域,不仅为后续场景显示提供了数据基础,而且还可以一定程度上简化确定需要显示的区域的操作步骤,即,只需要确定一个覆盖屏幕视口中心的区域和其周围区域,作为显示区域进行相应设置,如此,需要确定的区域仅为一个,简化操作且节约计算资源。
步骤102,对各层中对应的区域建立映射关系。
可以理解的是,经过步骤101之后,场景中的所有层均被划分得到多个区域,如图2所示,假设场景包括3层,那么,第一层被划分为区域1,1,区域1,2,……,区域1,16;同理,第二层也被划分为区域2,1,区域2,2,……,区域2,16;第三层也被划分为区域3,1,区域3,2,……,区域3,16。
需要说明的是,映射关系,具体是指按照步骤101将各层按照相同的预设划分方式划分为多个区域后,各层中对应区域之间设置的关联关系,用于对各层中对应的区域进行统一管理,例如:统一设置区域是否显示、统一操作等。具体实现时,假设该场景中包括两层,可以将第一层的第一区域与第二层的第一区域建立映射关系,将第一层的第二区域与第二层的第二区域建立映射关系。
可以理解的是,对于场景中的每层,均使用重叠的坐标系,那么,为了对场景中的多层划分后的区域中相对应的区域进行统一的管理,可以预先对各层中对应区域建立映射关系,那么,可以根据映射关系关联到该映射关系中各个层对应的区域。例如:可以将第一层的区域1,1、第二层的区域2,1和第三层的区域3,1建立映射关系1;将第一层的区域1,2、第二层的区域2,2和第三层的区域3,2建立映射关系2;等等。
这样,假设确定区域1,1需要显示,设置其状态为显示状态;那么,不仅将该区域1,1中的节点的状态同步为显示状态,还将该区域1,1所属的映射关系1中的其他区域:区域2,1和区域3,1的状态同步为显示状态,简化了显示控制的计算量和复杂程度,为有效的场景显示打好了基础。
步骤103,确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域。
可以理解的是,由于场景中所有层的均采用重叠的显示坐标系,那么,可以从中任选一个层,作为操作的目标对象层,确定该目标对象层位于屏幕的视口中的区域集,该区域集中的区域,包括两种区域:节点均在视口中的区域,以及节点部分在视口中部分不在视口中的区域。
具体实现时,步骤103中确定目标对象层中位于所述屏幕的视口中的区域集,包括两个步骤:第一步,确定节点均位于视口中的区域;第二步,根据第一步确定的区域确定节点不全在视口中的区域;第三部,将第一步和第二步确定的区域作为所确定的目标对象层中位于屏幕的视口中的区域集。
作为一个示例,该步骤103中确定任一层中位于所述屏幕的视口中的区域集,如图3所示,具体可以包括:
步骤301,获取所述屏幕的中心点所在的区域,记作中心区域。
在一些实现方式中,步骤301具体可以通过下述步骤实现:
S1,计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;
S2,确定所述坐标值属于的区域,记作中心区域。
可以理解的是,由于屏幕坐标系和场景中的显示坐标系属于同一空间,所以,可以计算屏幕的视口中心点的坐标值,例如,假设屏幕的尺寸为5厘米*12厘米,且屏幕右下角顶点处为坐标原点,1厘米为一个坐标单位,那么,该屏幕的视口中心点的坐标值(6,2.5)。如果第一层为目标对象层,那么,可以确定S1计算得到的坐标值属于区域1,6,并将该第一层的区域1,6确定为中心区域。
步骤302,将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。
具体实现时,在确定目标对象层的中心区域后,还可以根据实际需要以及预设长度和屏幕尺寸的大小关系,选择与该中心区域相邻的相邻区域,作为需要显示的区域,即,选择区域集中的相邻区域。
例如,假设预设长度小于所述屏幕短边的长度,且大于所述屏幕长边的长度的三分之一,可以确定选择的中心区域基本可以占据屏幕视口的大部分区域,那么,可以将与所述中心区域相邻的八个区域作为相邻区域,并将中心区域和相邻区域一共九个区域作为位于屏幕的视口中的区域集。另一种情况下,如果预设长度较小,确定选择的中心区域占据屏幕视口的小部分区域,那么,可以将与所述中心区域相邻的二十四个区域作为相邻区域,并将中心区域和相邻区域一共二十五个区域作为位于屏幕的视口中的区域集。
例如,假设第一层为目标对象层,确定中心区域为区域1,6后,可以确定相邻区域为:区域1,1、区域1,2、区域1,3、区域1,5、区域1,7、区域1,9、区域1,10和区域1,11,并确定上述9个区域为位于屏幕视口中的区域集。
这样,可以确保确定的区域集覆盖屏幕的整个视口,为设置区域集中区域的状态为显示状态提供了可靠的数据依据,可以确保需要显示的节点均显示。
作为另一个示例,步骤103的实现过程还可以包括:确定所述场景中任一层划分的区域中,与所述屏幕的视口的交集非空集的区域为所述屏幕的视口中的区域集;确定所述场景中任一层划分的区域中,与所述屏幕的视口的交集为空集的区域为所述屏幕的视口之外的区域。
需要说明的是,根据步骤103的上述描述确定目标对象层的区域集后,可以由步骤102建立的映射关系,将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域。
例如:假设区域集包括:区域1,1、区域1,2、区域1,3、区域1,5、区域1,6、区域1,7、区域1,9、区域1,10和区域1,11,那么,可以根据映射关系1确定第二层的区域2,1以及第三层的区域3,1也为需要显示区域;根据映射关系2确定第二层的区域2,2以及第三层的区域3,2也为需要显示区域;直到根据映射关系11确定第二层的区域2,11以及第三层的区域3,11也为需要显示区域。那么,确定的需要显示的目标区域包括:第一层的区域1,1、区域1,2、区域1,3、区域1,5、区域1,6、区域1,7、区域1,9、区域1,10和区域1,11,区域2,1、区域2,2、区域2,3、区域2,5、区域2,6、区域2,7、区域2,9、区域2,10和区域2,11,区域3,1、区域3,2、区域3,3、区域3,5、区域3,6、区域3,7、区域3,9、区域3,10和区域3,11。
步骤104,将所述目标区域作为待显示的场景。
可以理解的是,所确定的目标区域,即为当前需要显示的区域的集合,那么,可以将所有区域的状态设置为显示状态,以实现将需要显示的区域作为待显示的场景,将该待显示的场景内的节点在屏幕的视口中显示。
需要说明的是,为了设置方便,也可以设置具有映射关系的区域开放自动同步状态的功能,那么,步骤103中可以只确定目标对象层中位于屏幕视口中的区域集为目标区域,且步骤104中也只设置该目标对象层中的目标区域的状态为显示状态,那么,根据开放的自动同步状态的功能,与目标区域具有所述映射关系的其它层对应的区域也将自动同步为显示状态。
在一些实现方式中,本发明实施例中还可以确定所述区域集中不完全在所述屏幕的视口中的区域,记作待处理区域;然后,判断所述待处理区域中的各节点是否属于所述屏幕的视口中;接着,将属于所述屏幕的视口中的第一节点,设置为待显示的节点;且,将不属于所述屏幕的视口中的第二节点,设置为不显示的节点。
在另一些实现方式中,被设置为显示状态的目标区域中,可能存在节点不在屏幕的视口中的情况,对于该类节点,为了节省显示资源,本发明实施例还可以包括:对目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;在所述屏幕的中显示所述显示场景中的所有节点。
例如:假设每个区域的预设长度为4.5厘米,确定的目标区域的尺寸为13.5厘米*13.5厘米,而屏幕的尺寸为5厘米*12厘米,那么,经过步骤104后,13.5厘米*13.5厘米的目标区域的尺寸为内的节点均为显示状态,此时,可以根据屏幕的尺寸,以视口中心点为基准,对目标区域进行裁剪,得到5厘米*12厘米的显示场景,或者,得到5.5厘米*12.5厘米的显示场景,以便对该显示场景中的节点进行显示。
这样,可以实现更加精确的显示,在提高显示效率和时效性的基础上,准确的确定要显示的节点,最大程度的节约了显示效率。
可见,利用本发明实施例中,对于包括多层的场景,可以先对该场景中的每层按照预设划分方式划分为多个区域,其中,所述预设划分方式根据屏幕的尺寸确定;然后,对各层中对应的区域建立映射关系;接着,对于场景中的任一层,确定该层中位于屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;最终,可以将所确定的目标区域作为待显示的场景。如此,即使对于包括多层且每层的节点较多的场景,也无需对每层的每个节点依次进行计算和判断从而确定场景中各个节点是否显示,利用本发明实施例提供的场景显示方法,能够快速、方便的确定出该场景中需要显示的区域,不仅可以大大节约计算资源,而且还高效的完成了在场景移动过程中显示的控制,提高了用户体验。
相应的,本发明实施例还提供了一种场景显示装置,如图4所示,该装置具体可以包括:
划分单元401,用于对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;
建立单元402,用于对各层中对应的区域建立映射关系;
确定单元403,用于确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;
设置单元404,用于将所述目标区域作为待显示的场景。
可选地,所述预设划分方式包括:
将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。
可选地,所述确定单元403,包括:
获取子单元,用于获取所述屏幕的中心点所在的区域,记作中心区域;
确定子单元,用于将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。
可选地,所述获取子单元,具体用于:
计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;并确定所述坐标值属于的区域,记作中心区域。
可选地,该装置还包括:
裁剪单元,用于对所述目标区域按照所述屏幕的尺寸进行裁剪,获得显示场景;
显示单元,用于在所述屏幕的中显示所述显示场景中的所有节点。
需要说明的是,上述为本发明实施例提供的场景显示装置的相关描述,具体实现方式以及达到的效果可以参见图1对应的场景显示方法,在此不再赘述。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,ROM)/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的优选实施方式,并非用于限定本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种场景显示方法,其特征在于,包括:
对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;
对各层中对应的区域建立映射关系;
确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;
将所述目标区域作为待显示的场景。
2.根据权利要求1所述的方法,其特征在于,所述预设划分方式包括:
将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。
3.根据权利要求1所述的方法,其特征在于,所述确定任一层中位于所述屏幕的视口中的区域集,包括:
获取所述屏幕的中心点所在的区域,记作中心区域;
将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。
4.根据权利要求3所述的方法,其特征在于,所述获取所述屏幕的中心点所在的区域,记作中心区域,包括:
计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;
确定所述坐标值属于的区域,记作中心区域。
5.根据权利要求1所述的方法,其特征在于,还包括:
根据所述屏幕的尺寸,以视口中心点为基准,对所述目标区域进行裁剪,获得显示场景;
在所述屏幕的视口中显示所述显示场景中的所有节点。
6.一种场景显示装置,其特征在于,包括:
划分单元,用于对场景中的每层按照预设划分方式划分为多个区域;其中,所述预设划分方式根据屏幕的尺寸确定;
建立单元,用于对各层中对应的区域建立映射关系;
确定单元,用于确定任一层中位于所述屏幕的视口中的区域集,并将该区域集以及与该区域集中区域具有所述映射关系的其它层对应的区域集记作目标区域;
设置单元,用于将所述目标区域作为待显示的场景。
7.根据权利要求6所述的装置,其特征在于,所述预设划分方式包括:
将所述场景中的每层划分为预设长度的正方形,所述预设长度不大于所述屏幕短边的长度,且所述预设长度大于所述屏幕长边的长度的三分之一。
8.根据权利要求6所述的装置,其特征在于,所述确定单元,包括:
获取子单元,用于获取所述屏幕的中心点所在的区域,记作中心区域;
确定子单元,用于将所述中心区域以及与所述中心区域相邻的相邻区域,确定为位于所述屏幕的视口中的区域集。
9.根据权利要求8所述的装置,其特征在于,所述获取子单元,具体用于:
计算所述屏幕的中心点的坐标值;其中,所述场景中的层和所述屏幕采用同一坐标系;并确定所述坐标值属于的区域,记作中心区域。
10.根据权利要求6所述的装置,其特征在于,还包括:
裁剪单元,用于根据所述屏幕的尺寸,以视口中心点为基准,对所述目标区域进行裁剪,获得显示场景;
显示单元,用于在所述屏幕的视口中显示所述显示场景中的所有节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811436531.XA CN109542573B (zh) | 2018-11-28 | 2018-11-28 | 一种场景显示方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811436531.XA CN109542573B (zh) | 2018-11-28 | 2018-11-28 | 一种场景显示方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109542573A CN109542573A (zh) | 2019-03-29 |
CN109542573B true CN109542573B (zh) | 2021-12-07 |
Family
ID=65852029
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811436531.XA Active CN109542573B (zh) | 2018-11-28 | 2018-11-28 | 一种场景显示方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109542573B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011013263A1 (ja) * | 2009-07-28 | 2011-02-03 | 株式会社ソニー・コンピュータエンタテインメント | 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、および画像処理方法 |
US8091030B1 (en) * | 2006-12-14 | 2012-01-03 | Disney Enterprises, Inc. | Method and apparatus of graphical object selection in a web browser |
CN102343152A (zh) * | 2010-07-30 | 2012-02-08 | 京乐产业.株式会社 | 游戏机、游戏显示控制方法以及游戏显示控制程序 |
CN103295466A (zh) * | 2012-03-02 | 2013-09-11 | 阿里巴巴集团控股有限公司 | 在地图上局部渲染的方法和装置 |
CN103986935A (zh) * | 2014-04-30 | 2014-08-13 | 华为技术有限公司 | 编码方法、编码器、屏幕共享设备及*** |
CN105126343A (zh) * | 2015-08-27 | 2015-12-09 | 网易(杭州)网络有限公司 | 一种2d游戏的遮罩显示方法及装置 |
CN105740275A (zh) * | 2014-12-10 | 2016-07-06 | 北京神州泰岳软件股份有限公司 | 地图显示方法及装置 |
CN107423445A (zh) * | 2017-08-10 | 2017-12-01 | 腾讯科技(深圳)有限公司 | 一种地图数据处理方法、装置及存储介质 |
CN108434739A (zh) * | 2018-01-30 | 2018-08-24 | 网易(杭州)网络有限公司 | 游戏场景中虚拟资源的处理方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7873697B2 (en) * | 2006-01-17 | 2011-01-18 | Carbon Project, Inc. | Locating and sharing geospatial information in a peer-to-peer network |
US20110199318A1 (en) * | 2010-02-12 | 2011-08-18 | Microsoft Corporation | Multi-layer user interface with flexible parallel movement |
-
2018
- 2018-11-28 CN CN201811436531.XA patent/CN109542573B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8091030B1 (en) * | 2006-12-14 | 2012-01-03 | Disney Enterprises, Inc. | Method and apparatus of graphical object selection in a web browser |
WO2011013263A1 (ja) * | 2009-07-28 | 2011-02-03 | 株式会社ソニー・コンピュータエンタテインメント | 画像ファイル生成装置、画像処理装置、画像ファイル生成方法、および画像処理方法 |
CN102343152A (zh) * | 2010-07-30 | 2012-02-08 | 京乐产业.株式会社 | 游戏机、游戏显示控制方法以及游戏显示控制程序 |
CN103295466A (zh) * | 2012-03-02 | 2013-09-11 | 阿里巴巴集团控股有限公司 | 在地图上局部渲染的方法和装置 |
CN103986935A (zh) * | 2014-04-30 | 2014-08-13 | 华为技术有限公司 | 编码方法、编码器、屏幕共享设备及*** |
CN105740275A (zh) * | 2014-12-10 | 2016-07-06 | 北京神州泰岳软件股份有限公司 | 地图显示方法及装置 |
CN105126343A (zh) * | 2015-08-27 | 2015-12-09 | 网易(杭州)网络有限公司 | 一种2d游戏的遮罩显示方法及装置 |
CN107423445A (zh) * | 2017-08-10 | 2017-12-01 | 腾讯科技(深圳)有限公司 | 一种地图数据处理方法、装置及存储介质 |
CN108434739A (zh) * | 2018-01-30 | 2018-08-24 | 网易(杭州)网络有限公司 | 游戏场景中虚拟资源的处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109542573A (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020098531A1 (zh) | 对象的加载方法和装置、存储介质、电子装置 | |
CN110706341B (zh) | 一种城市信息模型的高性能渲染方法、装置及存储介质 | |
EP3882862A1 (en) | Picture rendering method and apparatus, and storage medium and electronic apparatus | |
CN110335345B (zh) | 幕墙节点渲染方法、装置、计算机设备和存储介质 | |
CN109753641B (zh) | 一种更改对象位置的方法、装置、电子设备及存储介质 | |
CN103886638A (zh) | 在划分为多个区域的三维场景中对对象的物理行为仿真 | |
CN106658139B (zh) | 一种焦点控制方法及装置 | |
CN111191311A (zh) | 高效审图方法、高效审图***、终端以及可读存储介质 | |
CN110478898B (zh) | 游戏中虚拟场景的配置方法及装置、存储介质及电子设备 | |
CN110070616A (zh) | 存储器、基于gis平台的统计数据呈现方法、装置和设备 | |
CN111899323B (zh) | 三维地球的绘制方法及装置 | |
CN111143039A (zh) | 一种虚拟机的调度方法、装置及计算机存储介质 | |
WO2022257692A1 (zh) | 虚拟场景变换方法、装置、设备、存储介质及程序产品 | |
KR20230163921A (ko) | 목표 대상의 상호작용적 재구성을 위한 제어 방법, 장치, 기기 및 저장 매체 | |
CN114463473A (zh) | 图像渲染的处理方法和装置、存储介质及电子设备 | |
CN110709891A (zh) | 虚拟现实场景模型建立方法、装置、电子设备和存储介质 | |
CN115170740A (zh) | 特效处理方法、装置、电子设备及存储介质 | |
CN109542573B (zh) | 一种场景显示方法和装置 | |
CN111898276A (zh) | 架空线路的模型处理方法、装置、计算机设备和介质 | |
CN110705158A (zh) | 激光选区熔化气液固三相行为的预测方法、装置和设备 | |
CN115131531A (zh) | 虚拟对象显示方法、装置、设备及存储介质 | |
CN116681857A (zh) | 一种空间碰撞检测方法、装置及电子设备 | |
CN114299202A (zh) | 虚拟场景制作的处理方法及装置、存储介质、终端 | |
CN109872280B (zh) | 一种三维植物叶片点云的去噪与简化方法、装置及*** | |
CN114117161A (zh) | 展示方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |