CN109562297A - 分区地形编辑 - Google Patents

分区地形编辑 Download PDF

Info

Publication number
CN109562297A
CN109562297A CN201780036919.8A CN201780036919A CN109562297A CN 109562297 A CN109562297 A CN 109562297A CN 201780036919 A CN201780036919 A CN 201780036919A CN 109562297 A CN109562297 A CN 109562297A
Authority
CN
China
Prior art keywords
landform
terrain
data set
user
section
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.)
Pending
Application number
CN201780036919.8A
Other languages
English (en)
Inventor
S·V·卡罗乐维茨
Z·C·贝瑟尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of CN109562297A publication Critical patent/CN109562297A/zh
Pending legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/63Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by the player, e.g. authoring using a level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/825Fostering virtual characters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本文描述了用于分区地形编辑的技术。在一些示例中,可以将与视频游戏的虚拟区域的至少一部分相关联的地形划分为多个地形区段。所述地形区段中的每一个可以具有一个或多个相关联数据集合,所述一个或多个相关联数据集合存储与它们相关联的区段有关的地形数据。这可以使得多个不同的用户能够同时编辑地形的不同部分,同时预期并确信他们的编辑将被成功保存,并且将不会与其他用户所做的编辑相冲突。在一些示例中,每个地形区段可以具有多个不同的相关联数据集合,例如与不同类型的地形编辑操作相关联。这可以通过允许多个不同的用户同时检出并获取同一地形区段的不同地形数据上的锁来提供进一步的效率。

Description

分区地形编辑
相关申请的交叉引用
本申请要求2016年6月13日提交的美国专利申请号15/180,640的权益,所述申请的公开内容以引用方式整体并入本文。
背景技术
近年来,以电子方式呈现的内容项(诸如视频游戏和其他媒体项)的流行度急剧增加。在一些示例中,为了吸引更多的玩家并增加他们的游戏的流行度,视频游戏设计人员可以创建具有丰富细节和视觉特征的复杂虚拟游戏世界。虚拟游戏世界的一个重要方面是其地形的设计。视频游戏设计人员通常可能在地形设计上花费大量时间和精力。在一些情况下,设计人员可能会编辑与地形高度、地形植被、地形纹理、地形图层和其他地形特征相关的特征。由于地形设计通常可能需要大量的工作,因此通常可能需要多个设计人员和其他用户参与到过程中并且彼此协同工作。然而,常规的开发接口通常可能受限于它们允许地形设计人员之间的有效协作的能力。例如,常规的开发接口可以通过将地形数据存储在单个大文件中来操作,这可能降低多个用户同时协作的效率,或者直接阻止这种协作。这可能增加游戏开发过程的成本和复杂性并且导致不期望的混淆和延迟。
附图说明
结合附图阅读时,可以更好地理解以下详细描述。出于说明的目的,附图中展示本公开的各个方面的示例性实施方案;然而,本发明并不限于所公开的具体方法和手段。
图1是示出根据本公开可以使用的示例性分区地形编辑系统的图示。
图2A-2B是示出根据本公开可以使用的示例性分区地形数据的图示。
图3是示出根据本公开可以使用的另一个示例性分区地形编辑系统的图示。
图4是示出根据本公开可以使用的示例地形编辑界面的图示。
图5A-5B是示出根据本公开可以使用的地形区段访问级别的示例指示的图示。
图6A-6D是示出根据本公开可以使用的地形区段的示例加载和卸载的图示。
图7A-7C是示出根据本公开可以使用的地形区段锁定状态的示例指示的图示。
图8是示出根据本公开可以使用的示例性分区地形编辑过程的流程图。
图9是示出根据本公开可以使用的用于传输和提供数据的示例系统的图示。
图10是示出根据本公开可以使用的示例计算系统的图示。
具体实施方式
本文描述了用于分区地形编辑的技术。具体地,在一些示例中,可以将与视频游戏或其他以电子方式呈现的内容项的虚拟区域的至少一部分相关联的地形划分为多个地形区段。所述地形区段中的每一个可以具有一个或多个相关联数据集合,所述一个或多个相关联数据集合存储与它们相关联的区段有关的地形数据。以这种方式组织地形并存储其相关联的地形数据可以提供关于地形的设计和编辑的许多优点。例如,各种不同地形设计人员和其他用户可以同时检出并获取不同地形区段上的锁。这可以使得多个不同的用户能够同时编辑地形的不同部分,同时预期并确信他们的编辑将被成功保存,并且将不会与其他用户所做的编辑相冲突。
在一些示例中,每个地形区段可以具有多个不同的相关联数据集合,例如与不同类型的地形编辑操作相关联。例如,在一些情况下,每个地形区段可以具有与高度数据相关联的一个数据集合、与植被数据相关联的另一个数据集合、与纹理数据相关联的另一个数据集合以及与图层数据相关联的另一个数据集合。例如,通过允许多个不同的用户同时检出并获取同一地形区段的不同地形数据上的锁,可以为每个地形区段的多个数据集合的使用提供进一步的效率。例如,在一些情况下,一个用户可以检出并编辑特定区段的高度数据,而另一个用户可以同时检出并编辑同一区段的植被数据。
另外,在一些示例中,可以提供易于使用且直观的用户界面,其允许用户有效地选择用于编辑的地形区段,选择他们希望执行的编辑操作的类型(例如,高度、植被、纹理、图层等),以及检出和以其他方式获取访问并操纵地形区段。在一些情况下,界面还可以方便且自然的方式提供各种地形区段的状态信息。例如,在一些情况下,可以通过界面使用一个或多个指示(诸如颜色编码的区段边界)来指示与一个或多个地形区段相关联的用户的访问级别(例如,检出、可写、只读等)。此外,在一些示例中,可以采用多色(例如,虚线)区段边框,例如以指示具有不同的相应用户访问级别的不同类型地形数据的区段。作为另一个示例,一个或多个地形区段的锁定状态(例如,完全锁定、部分锁定、未锁定等)也可以由界面使用一个或多个指示来指示。
地形编辑界面也可以使得能够执行各种其他操作。例如,在一些情况下,当特定用户可对特定地形区段进行只读访问时,界面可能允许所述用户卸载与所述地形区段相关联的地形数据。这可以减少用户系统加载的数据量,从而降低复杂性并且可能提高性能。此外,由于这个区段的地形数据是只读的并且不能进行编辑,因此用户可以通过为这个区段加载地形数据来实现最小的(如果有的话)益处。另外,在一些示例中,例如,如果稍后需要的话,还可以重新加载未加载地形区段的数据。
图1是示出根据本公开可以使用的示例性分区地形编辑系统的图示。如图1所示,多个客户端110A-N可以执行地形编辑界面111A-N,以便设计和编辑以电子方式呈现的内容项(诸如视频游戏和其他媒体项)的地形数据。如下文将详细描述,地形编辑界面111A-N通常可以允许设计和编辑各种类型的地形特征,诸如高度、植被、纹理、图层和其他特征。在一些示例中,为了帮助设计和编辑过程,地形编辑界面可以显示地形的所有或任何部分的图形表示。还如图1所示,地形编辑界面111A-N可以通过客户端110A-N与分区地形数据管理器120通信,所述分区地形数据管理器例如可以在一个或多个服务器计算节点上执行。客户端110A-N和分区地形数据管理器120可以通过一个或多个通信网络、例如一个或多个局域网(LAN)或一个或多个广域网(WAN)(诸如互联网)进行通信。
分区地形数据管理器120可以接收关于视频游戏或正在设计和编辑地形的其他内容项的虚拟区域210的信息。如图1所示,分区地形数据管理器120可以将虚拟区域210划分为多个不同的地形区段211-226。例如,可以为每个地形区段211-226指派特定的相关联坐标值(例如,X和Y坐标值)或识别和定义虚拟区域210内的地形区段211-226的其他位置标识符。在图1的特定示例中,虚拟区域210是正方形的虚拟区域,其被分成十六个相等大小的正方形地形区段211-226。然而,应注意,这仅仅是地形区段的非限制性示例,并且所公开的技术可以用于将任何形状和大小的虚拟区域划分为相对于彼此具有相同或不同的形状和/或大小的任何数量的区段。
如下文将详细描述,分区地形数据管理器120通常可以管理,包括保存、更新和调节分区地形数据121以及提供对分区地形数据121的访问。分区地形数据121包括与虚拟区域210相关的地形数据,诸如高度数据、植被数据、纹理数据、图层数据和其他数据。具体地,在一些示例中,分区地形数据可以包括描述与其相关联的地形的各种特征的可扩展标记语言(XML)或者其他语言或格式的数据。在一些示例中,分区地形数据121可以包括用于地形区段211-226中的每一个的一个或多个单独的(例如,可独立访问的)数据集合。例如,现在参考图2A,可以看出示例性分区地形数据121A包括地形数据集合234,所述地形数据集合包括与地形区段214相关联的地形数据。分区地形数据121A还包括另一个单独的数据集合238,所述数据集合包括与地形区段218相关联的地形数据。分区地形数据121A还可以包括与其他地形区段211-213、215-217以及219-226中的每一个相关联的其他单独的数据集合(未展示)。
以这种方式划分地形及其相关联的地形数据可以提供关于地形的设计和编辑的许多优点。例如,各种不同地形设计人员和其他用户可以同时检出并获取不同地形区段上的锁。如上所述,这可以使得多个不同的用户能够同时编辑地形的不同部分,同时预期并确信他们的编辑将被成功保存,并且将不会与其他用户所做的编辑相冲突。在图1的特定示例中,展示了客户端110A已经检出并获取了地形区段211的地形数据上的锁(如通过描绘与客户端110A相邻的具有虚线轮廓的地形区段211所示)。另外,客户端110B已经检出并获取了地形区段215的地形数据上的锁(如通过描绘与客户端110B相邻的具有虚线轮廓的地形区段215所示)。此外,客户端110N已经检出并获取了地形区段220和221的地形数据上的锁(如通过描绘与客户端110N相邻的具有虚线轮廓的地形区段220和221所示)。
在一些示例中,检出、编辑和检入数据可由客户端110A-N和地形数据管理器120共同执行。例如,在一些情况下,客户端110A可以通过地形编辑界面111A向分区地形数据管理器120发出请求,以便检出与地形区段211相关联的地形数据。分区地形数据管理器随后可以将锁应用于与地形区段211相关联的地形数据集合,由此除了客户端110A的用户之外的其他用户不可以在与地形区段211相关联的地形数据集合被锁定时保存对它的改变。客户端110A随后可以使用地形编辑界面111A来对地形区段211的地形进行各种编辑。客户端110A随后可以通过地形编辑界面111A向分区地形数据管理器120发出请求,以便检入与地形区段211相关联的地形数据。分区地形数据管理器120随后可以将与一个或多个编辑相关联的数据保存到与地形区段211相关联的地形数据集合并解锁所述数据集合。
在一些示例中,每个地形区段可以具有多个不同的相关联数据集合,例如与不同类型的地形编辑操作相关联。例如,在一些情况下,每个地形区段可以具有与高度数据相关联的一个数据集合、与植被数据相关联的另一个数据集合、与纹理数据相关联的另一个数据集合以及与图层数据相关联的另一个数据集合。地形高度数据例如可以包括与虚拟区域中的各种位置的高度值(例如,X、Y坐标值)相关联的数据,诸如可以基于各种地理地形类型(例如,山脉、悬崖、山谷、水体等)。地形植被数据例如可以包括与地形植被类型(例如,草、植物、叶子等)、位置、数量、密度和其他数据相关联的数据。地形纹理数据可以包括例如与漫反射纹理、位置颜色值、纹理图层和其他数据相关的数据。地形图层数据可以包括例如与地形对象(例如,岩石、树木等)、位置、数量、密度和其他数据相关联的数据。
现在参考图2B,可以看出示例性分区地形数据121B包括多个单独的数据集合234A-D,所述数据集合包括与地形区段214相关联的地形数据。具体地,高度数据集合234A包括与地形区段214相关联的地形高度数据。植被数据集合234B包括与地形区段214相关联的地形植被数据。纹理数据集合234C包括与地形区段214相关联的地形纹理数据。图层数据集合234D包括与地形区段214相关联的地形图层数据。分区地形数据121B还包括多个单独的数据集合238A-D,所述数据集合包括与地形区段218相关联的地形数据。分区地形数据121B还可以包括与其他地形区段211-213、215-217以及219-226中的每一个相关联的其他多个单独的数据集合(未展示)。
如上所述,例如,通过允许多个不同的用户同时检出并获取同一地形区段的不同地形数据上的锁,可以为每个地形区段的多个数据集合的使用提供进一步的效率。现在参考图3,展示了多个不同的用户同时检出并编辑同一地形区段的不同类型的地形数据的示例。在图3的特定示例中,展示了客户端110A已经检出并获取了地形区段211的高度数据上的锁(如通过与客户端110A相邻的虚线框211A所示)。另外,客户端110B已经检出并获取了地形区段211的植被数据上的锁(如通过与客户端110B相邻的虚线框211B所示)。此外,客户端110N已经检出并获取了地形区段211的纹理和图层数据上的锁(如通过与客户端110N相邻的虚线框211B和211C所示)。
因此,如上所述,分区地形和地形数据可以允许高效且可靠的多用户协作以编辑和设计地形。现在将详细描述根据所公开的技术的地形编辑界面的一些示例特征。具体地,现在参考图4,示例地形编辑界面111包括区段编辑区域450和检出区段工具410。通常,区段编辑区域450可以使得能够执行各种类型的地形编辑操作,诸如高度、植被、纹理、图层和其他地形特征的编辑。在图4的特定示例中,区段编辑区域450包括地形区段211-226的表示。在一些示例中,区段编辑区域450可以提供其包括的地形区段内的地形的图形表示。例如,区段编辑区域450可以包括地形区段211-226的图形表示,例如包括地形特征(诸如高度、植被、纹理、图层和其他地形特征)的图形描绘。区段编辑区域450还可以允许用户在各种地形区段中进行选择和导航。
如下文将详细描述,检出区段工具410可以使得能够执行关于地形区段及其相关联的数据集合的各种操作,诸如检出、恢复、加载、卸载、刷新、展示数据、检入、显示区段边界、显示区段信息等。具体地,检出按钮421可以允许用户检出与一个或多个地形区段相关联的一个或多个数据集合。例如,在一些情况下,用户可以在区段编辑区域450中选择一个或多个地形区段以供检出。在图4的特定示例中,可以看出选择了地形区段216、217、220和221,如由环绕这些地形区段的加粗线所指示。在一些示例中,可以使用鼠标、触摸屏、键盘和/或其他输入控件来选择地形区段216、217、220和221。除了选择地形区段之外,例如还可以使用检出区段工具410的复选框411-414来选择与所选择的地形区段相关联的一种或多种特定类型的数据。具体地,复选框411用于选择高度数据集合,复选框412用于选择植被数据集合,复选框413用于选择纹理数据集合,并且复选框414用于选择图层数据集合。在图4的特定示例中,选择了植被复选框412和纹理复选框413。然而,应注意,在其他示例中,可以选择复选框411-414的其他不同组合,例如包括复选框411-414中的任一个或全部。
在一些示例中,在选择一个或多个地形区段(例如,图4中的区段216、217、220和221)和一种或多种数据类型(例如,图4中的植被和纹理)时,用户可以采用检出区段工具410来执行关于这些选择的一个或多个操作。具体地,选择检出按钮421可以致使所选择数据类型的所选择区段被检出,诸如上文所述。选择恢复按钮422可以致使所选择数据类型的所选择区段被恢复,这可以致使对所选择区段的编辑被移除并且将所选择区段恢复到它们的上次保存或同步状态。选择按钮423或424可以致使所选择区段被加载或卸载,这将在下文参考图6A-C进行详细描述。选择检入按钮427可以致使所选择数据类型的所选择区段被检入,诸如上文所述。在一些情况下,例如为了有助于避免无意或错误的检入,可以采用其他控件来检入地形数据,诸如请求检入确认的弹出消息、检出区段工具410外部的控件等。
选择刷新按钮425可以对所有地形区段211-226进行操作,并且可以使地形区段211-226的锁定状态与其来自分区地形数据管理器120的对应状态同步。有时可以采用刷新按钮425,例如在用户最近已经离线工作的情况下(例如,未连接到分区地形数据管理器120)或者在某些数据集合被检入到分区地形数据管理器120的情况下。选择展示数据按钮426可以致使分区地形数据121内的一个或多个数据集合的基础XML或其他数据被显示给用户。除了按钮421-427之外,检出区段工具410还包括复选框441和442,它们可以为地形编辑界面111的用户提供用于显示信息的其他选项。具体地,可以选择复选框441以致使区段编辑区域450展示区段211-226的边界,例如如图4所描绘。取消选择(例如,取消选中)复选框441可以致使致不展示区段边界。如下文将更详细描述,可以选择复选框442以致使区段编辑区域450展示关于各种地形区段211-226的信息,诸如它们是检出、可写、只读信息还是其他信息。
应注意,图4的地形编辑界面111仅仅提供作为非限制性的示例地形编辑界面,并且根据所公开的技术可以采用具有附加或替代控件和功能的许多其他界面。例如,在一些情况下,如果用户开始对未被检出给用户的地形区段和/或地形数据的类型(例如,高度、植被、纹理、图层)进行编辑,则地形编辑界面111可以例如使用弹出消息或其他指示来提示用户,所述地形区段和/或地形数据类型未被检出给用户和/或被另一个用户锁定。在一些示例中,可以向用户提供联系信息和/或界面(例如,聊天、电子邮件、文本、电话等),用于联系其他用户以请求检出地形区段和/或数据类型,或者以其他方式进一步与其他用户协作。另外,在一些示例中,即使当用户正在编辑检出给用户的地形区段和/或地形数据类型时,地形编辑界面111也可以确定用户正在进行的编辑可能使另一个用户正在进行的编辑无效或以其他方式对另一个用户正在进行的编辑产生负面影响。例如,当第一用户正在编辑地形区段的高度时,可以确定这些高度编辑可能使纹理编辑无效,所述纹理编辑具有由同一地形区段中的第二用户作出的斜率限制。在诸如这些的示例中,可以向潜在冲突的第一用户或第二用户显示警告或其他指示,以及其他受影响用户的联系信息或其他信息。
因此,如上所述,地形编辑界面111可以允许检出并执行对所选择区段和所选择地形数据类型的各种其他操作。在一些示例中,地形编辑界面111可以有利地提供各种地形区段的状态信息,例如以允许用户快速且容易地确定他们与地形区段相关联的访问级别(例如,检出、本地可写、只读等)。在一些情况下,地形编辑界面111可以使用一个或多个视觉指示(诸如颜色编码的区段边界)来提供这种状态信息。现在参考图5A,现在将详细描述地形区段访问级别的一些示例视觉指示。具体地,图5A描绘了六个地形区段511-516的示例表示,诸如可以在地形编辑界面的区段编辑区域内显示。如图5A所示,地形区段511-516各自具有与地形编辑界面的用户相关的至少部分不同的访问级别状态。具体地,地形区段511具有完全只读状态,这意味着用户可对区段511的所有数据类型(例如,高度、植被、纹理、图层)进行只读访问。在特定地形区段中可进行只读访问的数据类型在所述地形区段中不能进行编辑。地形区段512具有完全可写状态,这意味着用户可对区段512的所有数据类型进行可写访问。在特定地形区段中可进行可写访问的数据类型可在所述地形区段中进行编辑,但是可以由另一个用户检出。地形区段513具有完全检出状态,这意味着用户已经检出了区段513的所有数据类型。地形区段514和515具有部分只读和部分检出状态,这意味着用户可对区段514和515中的每一个的一种或多种数据类型进行只读访问,并且已经检出了区段514和515中的每一个的一种或多种数据类型。地形区段516具有部分只读、部分检出和部分可写状态,这意味着用户可对区段516的一种或多种数据类型进行只读访问,已经检出了区段516的一种或多种数据类型,并且可对区段516的一种或多种数据类型进行可写访问。
还如图5A所示,除了区段514与515之间的边框之外,描绘了区段511-516各自的边框。在图5A的示例中,未展示区段514与515之间的边框,这是因为如上所述,区段514和515共享相同的状态(即,部分检出和部分只读状态)。因此,移除这些区段之间的边框允许用户快速且容易地识别它们共享相同的状态。另外,在图5A的示例中,所显示的边框可以是颜色编码的,以帮助用户快速且容易地识别由这些边框环绕的特定地形区段的状态。例如,图5A中每个显示的地形区段边框具有颜色指示标签500,其包括指示对应边框的颜色的缩写。具体地,如要点510所示,缩写R指示红色实线边框,其指示完全只读状态。缩写B指示蓝色实线边框,其指示完全可写状态。缩写G指示绿色实线边框,其指示完全检出状态。缩写RG指示红色和绿色虚线边框,其指示部分只读和部分检出状态。缩写RGB指示红色、绿色和蓝色虚线边框,其指示部分只读、部分检出和部分可写状态。
在图5A的示例中,地形区段511被红色实线边框环绕(或部分地环绕),以指示地形区段511是完全只读的。应注意,地形区段511的顶部和左侧边框是不与任何其他显示的地形区段共享的非共享边框。因此,在这个示例中,用于地形区段511的顶部和左侧边框的颜色指示标签500包括缩写R,以指示它们将使用红色实线展示。相反,地形区段511的底部和右侧边框是与其他地形区段共享的共享边框。例如,地形区段511的右侧边框与地形区段512共享。因此,在这个示例中,用于地形区段511的右侧边框的颜色指示标签500包括缩写R/B,以指示这个边框可以使用红色实线(对应于地形区段511)或者使用蓝色实线(对应于地形区段512)展示。如要点510所指示,颜色指示标签500中的正斜杠(/)符号指示共享边框,所述共享边框可以包括其所界定的任一地形区段的颜色。
除了地形区段511之外,图5A还展示地形区段512被蓝色实线边框环绕(或部分地环绕),以指示地形区段511是完全可写的。地形区段513被绿色实线边框环绕(或部分地环绕),以指示地形区段513是完全检出的。地形区段514和515被红色和绿色虚线边框环绕(或部分地环绕),以指示地形区段514和515是部分只读和部分检出的。地形区段516被红色、绿色和蓝色虚线边框环绕(或部分地环绕),以指示地形区段516是部分只读、部分检出和部分可写的。在一些示例中,图5A的颜色编码的边框指示出于以下多种原因可能是有利的:例如因为在一些情况下,它们可以容易地被用户识别和区分,同时提供对基础图形数据或其他数据的最小(如果有的话)干扰或阻塞。然而,应注意,图5A的颜色编码的边框指示仅仅是地形区段状态的一些示例指示,并且可以根据所公开的技术采用许多其他附加或替代的指示,包括其他视觉、听觉、触觉指示和更多类型的指示。
在一些示例中,地形编辑界面可以提供各种地形区段的状态的更详细描述。现在参考图5B,可以看出地形编辑界面有时可以提供每个地形区段511-516的每种单独数据类型的状态的视觉指示。例如,针对地形区段516,环绕(或部分地环绕)地形区段516的红色、绿色和蓝色边框可以指示部分只读、部分检出和部分可写状态。然而,即使具有这种颜色编码的边框,用户可能仍然不知道哪些单独的数据类型(例如,高度、植被、纹理、图层)是只读的、可写的或检出的。然而,在图5B的示例中,在地形部分516中显示附加的文本信息,以指示针对地形部分516,用户已经检出了高度数据、可对植被数据进行可写访问并且可对纹理和图层数据进行只读访问。另外,在地形区段514和515中显示附加的文本信息,以指示针对地形区段514和515,用户已经检出了植被数据并且可对高度、纹理和图层数据进行只读访问。在一些示例中,用户可以例如通过选择显示区段信息按钮442来请求地形区段状态信息,诸如图5A和/或图5B所示,所述地形区段状态信息将使用图4的检出区段工具410进行显示。
如上所述,在一些情况下,地形编辑界面111可以显示各种地形区段的地形的图形表示。应理解,地形特征的图形显示可以在设计和编辑地形的过程帮助地形设计人员。然而,与地形特征的图形显示相关的一个缺点是,在一些情况下,它可能需要将大量的数据加载到存储器中,特别是对于包括大量地形的较大虚拟区域的显示。在一些情况下,这可能潜在地降低响应性并且以其他方式阻碍地形编辑界面111的性能。在一些示例中,为了有助于减少存储在存储器中的数据量,地形编辑界面可以允许卸载完全只读地形区段的地形数据,这可以有助于管理所显示地形的复杂性并且提高地形编辑界面111的响应性和性能。另外,在一些示例中,如果用户随后需要这种数据,则用户还可以请求由地形编辑界面111重新加载所述数据,例如使得地形特征可以再次显示给用户。
现在将相对于图6A-6D来描述地形区段的加载和卸载的一些示例。具体地,参考图6A,可以看出用户已经选择了完全只读地形区段511,如由环绕地形区段511的加粗边框指示。在图6A的示例中,当前加载了地形区段511的地形数据。然而,在图6A中还可以看出,用户处于选择卸载按钮424的过程中,如由环绕卸载按钮424的加粗边框指示。在被选择之后,卸载按钮424将致使与地形区段511相关联的地形数据被地形编辑界面111从存储器中卸载。图6B表示在选择卸载按钮424之后的地形区段511。如图6B所示,与地形区段511相关联的地形数据已经从存储器中卸载,如由图6B中显示在地形区段511之上的加粗X指示。卸载地形区段511的地形数据可以致使在区段编辑区域450中停止显示地形区段511的地形特征的图形表示。因此,在一些示例中,与由如图6B所示的X覆盖相反,地形区段511的区域可以替代地由黑框或其他指示覆盖,所述指示即这个区域的地形的图形显示已经被移除。
如上所述,在一些示例中,用户还可以为已经被卸载地形数据的地形区段加载或重新加载地形数据。现在参考图6C,可以看出用户已经再次选择了只读地形区段511,如由图6C中环绕地形区段511的加粗边框指示。在图6C的示例中,当前卸载了地形区段511的地形数据,如由X覆盖的地形区段511指示。然而,在图6C中还可以看出,用户处于选择加载按钮423的过程中,如由环绕加载按钮423的加粗边框指示。在被选择之后,加载按钮423将致使与地形区段511相关联的地形数据被地形编辑界面111加载到存储器中。图6D表示在选择加载按钮423之后的地形区段511。如图6D所示,与地形区段511相关联的地形数据已经被加载到存储器中,如通过移除先前在图6B和图6C中显示在地形区段511之上的加粗X指示。加载地形区段511的地形数据可以允许在区段编辑区域450中再次显示地形区段511的地形特征的图形表示。
如上文相对于图5A和图5B所述,地形编辑界面111可以提供关于各种地形区段的用户的访问级别的指示。另外,在一些示例中,地形编辑界面111还可以提供关于一个或多个地形区段的锁定状态(例如,完全锁定、不部分锁定、未锁定等)的指示。现在参考图7A-7C,现在将详细描述地形区段锁定状态的一些示例视觉指示。具体地,图7A描绘了地形区段711的示例表示,诸如可以在地形编辑界面的区段编辑区域内显示。如图7A所示,地形区段711包括完全锁定的文本指示,这意味着所有数据类型(例如,高度、植被、纹理、图层)由地形编辑界面111的一个或多个其他用户检出。现在参考图7B,展示了第二示例,其中地形区段711包括其被部分锁定的文本指示,这意味着至少一种数据类型由地形编辑界面111的至少一个其他用户检出。然而,应注意,图7B的指示没有指定哪些单独的数据类型被检出以及由哪些特定的其他用户检出。最后,参考图7C,展示了第三示例,其中地形区段711包括哪些单独的数据类型被检出以及由哪些特定的其他用户检出的文本指示。具体地,图7C指示,在这个示例中,高度数据由用户X检出,而植被、纹理和图层数据是只读的并且因此未被检出给其他用户。如上所述,在一些示例中,还可以为用户X提供联系信息和/或通信接口,以允许用户查看图7C中的指示以便联系用户X并请求针对地形区段711的检出和/或进一步协作。
图8是示出根据本公开可以使用的示例性分区地形编辑过程的流程图。如图所示,图8的过程在操作810处开始,在所述操作处,将与以电子方式呈现的内容项(诸如视频游戏)相关联的虚拟区域的至少一部分的地形划分为多个地形区段。例如,可以通过将不同的坐标(例如,X、Y坐标)范围或值或者其他位置标识符与不同的地形区段相关联或指派给不同的地形区段来执行操作810。在图1的特定示例中,将虚拟区域210划分为十六个相等大小的正方形地形区段211-226。如上所述,根据所公开的技术,也可以采用地形部分的其他数量、形状、大小等。
在操作812处,例如通过图1的区段地形数据管理器120来维持与所述多个地形区段相关联的多个地形数据集合。如上所述,在一些示例中,所述多个地形区段中的每一个可以具有所述多个地形数据集合中的至少一个相关联地形数据集合。例如,在一些情况下,例如如图2A所示,可以在与地形区段相关联的单个地形数据集合中维持每个地形区段的所有地形数据。在其他示例中,一个或多个地形区段可以各自具有一组相关联的多个相关联地形数据集合,例如与多个不同类型的地形编辑操作相关联。例如,在一些情况下,诸如图2B所示,每个地形区段可以具有一组相关联的地形数据集合,其包括与地形高度数据相关联的数据集合、与地形植被数据相关联的数据集合、与地形纹理数据相关联的数据集合以及与地形图层数据相关联的数据集合。还如上所述,在一些示例中,可以使同一组数据集合中的地形数据集合可用于由相同或不同的用户同时检出。
在操作814处,例如通过地形编辑界面111和/或分区地形数据管理器120,将与第一地形区段相关联的第一地形数据集合检出给第一用户。可以检出第一地形数据集合以便在地形编辑界面111中编辑第一地形区段的地形。如上所述,在一些示例中,第一用户可以通过以下方式请求检出第一地形数据集合:在图4的区段编辑区域450中选择第一地形区段,在图4的检出区段工具410中选择地形数据类型(例如,通过复选框411-414或其他控件),以及选择检出控件(例如,检出按钮421)。在其他示例中,可以提示第一用户检出第一数据集合,例如当第一用户在地形编辑界面中对相关联地形数据进行编辑并且确定第一地形数据集合尚未检出给第一用户时。如上所述,将第一地形数据集合检出给第一用户可以包括锁定第一地形数据集合和/或触发第一地形数据集合的锁定,使得除了第一用户之外的用户在第一数据集合被第一用户检出/锁定的时间内不能保存对第一地形数据集合的改变。
在操作815A处,在第一地形数据集合被检出给第一用户的时间的至少一部分期间,使得与一个或多个其他地形区段相关联的一个或多个其他地形数据集合可用于检出给除了第一用户之外的一个或多个其他用户。例如,如图1所示,第一用户(例如,客户端110A的用户)可能已经检出了与地形区段211相关联的地形数据集合,而第二用户(例如,客户端110B的用户)可能已经同时检出了与地形区段215相关联的地形数据集合,并且第三用户(例如,客户端110N的用户)可能已经同时检出了与地形区段220和221相关联的地形数据集合。如上所述,这可以使得多个不同的用户能够同时编辑地形的不同部分,同时预期并确信他们的编辑将被成功保存,并且将不会与其他用户所做的编辑相冲突。
在815B处,如果不存在与第一地形区段相关联的其他地形数据集合,则过程前进到操作816。相反,如果在815B处存在与第一地形区段相关联的其他地形数据集合,则过程前进到操作815C,在所述操作中,使得与第一地形区段相关联的一个或多个其他地形数据集合对除了第一用户之外的一个或多个用户可用。例如,如图1所示,第一用户(例如,客户端110A的用户)可能已经检出了与地形区段211的地形植被数据相关联的地形数据集合,而第二用户(例如,客户端110B的用户)可能已经同时检出了与地形区段211的地形高度数据相关联的地形数据集合,并且第三用户(例如,客户端110N的用户)可能已经同时检出了与地形区段211的地形纹理数据和地形图层数据相关联的地形数据集合。如上所述,这可以使得多个不同的用户能够同时对地形的相同部分执行不同类型的编辑操作,同时预期并确信他们的编辑将被成功保存,并且将不会与其他用户所做的编辑相冲突。
在操作816处,例如通过地形编辑界面111和/或分区地形数据管理器120,从第一用户检入第一地形数据集合。如上所述,在一些示例中,第一用户可以使用检入按钮427和/或其他控件来请求检入第一地形数据集合。还如上所述,从第一用户检入第一地形数据集合可以包括解锁第一地形数据集合和/或触发第一地形数据集合的解锁,使得除了第一用户之外的用户可以检出第一地形数据集合。在操作818处,在第一数据集合被检出给第一用户的时间期间,对应于由第一用户所做的与第一地形数据集合相关联的一个或多个编辑的数据被保存到第一数据集合。应注意,为了确保第一用户对第一地形数据集合的编辑被正确地保存,可以在允许任何其他用户检出第一地形数据集合之前,执行在操作818处执行的数据保存。
还如上所述,结合图8的编辑过程,根据所公开的技术的地形编辑界面可以提供许多附加特征,以帮助有效地协作进行地形编辑操作。例如,如上所述,地形编辑界面可以提供以下各项中的一个或多个指示:地形区段是否具有作为第一用户检出、第一用户可写或第一用户可只读访问中的至少一项的至少一个相关联地形数据集合。这些指示可以包括例如一个或多个颜色编码的地形区段边框,诸如图5A-5B的示例中所示。另外,在一些示例中,地形编辑界面可以允许从存储器中卸载与用户可进行只读访问的地形区段相关联的地形数据,诸如图6A-6D的示例中所示。此外,在一些示例中,地形编辑界面提供地形区段被锁定或部分锁定的一个或多个指示,以及针对其他用户地形区段被锁定的指示,诸如图7A-7C的示例中所示。上文还详细描述了地形编辑界面的许多其他附加特征,这里不再重复。
现在将详细描述用于传输和提供数据的示例系统。具体地,图9示出可以实现本文所述实施方案的示例性计算环境。图9是示意性地示出可以通过用户计算机72a和72b(其在本文中可以单数形式称为单个计算机72或以复数形式称为多个计算机72)、经由通信网络73向用户70a和70b(其在本文中可以单数形式称为单个用户70或以复数形式称为多个用户70)提供计算资源的数据中心85的示例的图示。数据中心85可以被配置成提供计算资源以便永久地或根据需要执行应用程序。由数据中心85提供的计算资源可以包括各种类型的资源,诸如网关资源、负载均衡资源、路由资源、网络资源、计算资源、易失性和非易失性存储器资源、内容传递资源、数据处理资源、数据存储资源、数据通信资源等。每种类型的计算资源可以在许多特定配置中可用。例如,数据处理资源可以作为虚拟机实例使用,所述虚拟机实例可以被配置成提供各种web服务。另外,资源的组合可以通过网络提供,并且可以被配置为一个或多个web服务。所述实例可以被配置成执行应用程序,包括web服务,诸如应用程序服务、媒体服务、数据库服务、处理服务、网关服务、存储服务、路由服务、安全服务、加密服务、负载平衡服务、应用程序服务等。这些服务可以使用设置或自定义应用程序进行配置,并且可以在大小、执行、成本、等待时间、类型、持续时间、可访问性方面和任何其他维度上进行配置。这些web服务可以被配置为用于一个或多个客户端的可用基础设施,并且可以包括被配置为用于一个或多个客户端的平台或软件的一个或多个应用程序。可以通过一个或多个通信协议来使这些web服务可用。这些通信协议可以包括例如超文本传送协议(HTTP)或非HTTP协议。这些通信协议还可以包括例如更可靠的转送层协议(诸如传输控制协议(TCP)),以及不太可靠的转送层协议(诸如用户数据报协议(UDP))。数据存储资源可以包括文件存储装置、块存储装置等。
每种类型或配置的计算资源可以不同的大小提供,诸如由许多处理器、大量存储器和/或大存储容量组成的大型资源,以及由较少处理器、较少量存储器和/或较小存储容量组成的小型资源。例如,顾客可以选择将许多小型处理资源分配为web服务器和/或将一个大型处理资源分配为数据库服务器。
数据中心85可以包括提供计算资源的服务器76a和76b(其在本文中可以单数形式称为单个服务器76或以复数形式称为多个服务器76)。这些资源可以作为裸金属资源或作为虚拟机实例78a-d(其在本文中可以单数形式称为单个虚拟机实例78或以复数形式称为多个虚拟机实例78)使用。虚拟机实例78c和78d是分区地形编辑虚拟机(“STEVM”)实例。STEVM虚拟机实例78c和78d可以被配置成执行单例协调技术的全部或任何部分和/或根据本公开并且上文详细描述的任何其他公开技术。应理解,虽然图9所示的特定示例在每个服务器中包括一个STEVM虚拟机,但是这仅仅是示例。服务器可以包括多于一个STEVM虚拟机或者可以不包括任何STEVM虚拟机。
用于计算硬件的虚拟化技术的可用性已经提供了为顾客提供大规模计算资源并且允许在多个顾客之间有效且安全地共享计算资源的益处。例如,虚拟化技术可以通过向每个用户提供由物理计算装置托管的一个或多个虚拟机实例来允许物理计算装置在多个用户之间共享。虚拟机实例可以是充当不同逻辑计算系统的特定物理计算系统的软件模拟。这种虚拟机实例在共享给定物理计算资源的多个操作系统之间提供隔离。此外,一些虚拟化技术可以提供跨越一个或多个物理资源的虚拟资源,诸如具有跨越多个不同物理计算系统的多个虚拟处理器的单个虚拟机实例。
参考图9,通信网络73例如可以是链接网络的公共可访问网络,并且可能由各种不同方(例如互联网)操作。在其他实施方案中,通信网络73可以是专用网络,诸如非特权用户完全或部分无法访问的公司或大学网络。在另外一些实施方案中,通信网络73可以包括可访问互联网和/或可从互联网访问的一个或多个专用网络。
通信网络73可以提供对计算机72的访问。用户计算机72可以是由用户70或数据中心85的其他顾客使用的计算机。例如,用户计算机72a或72b可以是服务器、台式或膝上型个人计算机、平板计算机、无线电话、个人数字助理(PDA)、电子书阅读器、游戏控制台、机顶盒或能够访问数据中心85的任何其他计算装置。用户计算机72a或72b可以直接连接到互联网(例如,通过电缆调制解调器或数字订户线路(DSL))。虽然仅描绘了两个用户计算机72a和72b,但是应理解,可以存在多个用户计算机。
用户计算机72还可以用于配置由数据中心85提供的计算资源的各方面。在这方面,数据中心85可以提供网关或web接口,经由所述网关或web接口,可以通过使用在用户计算机72上执行的web浏览器应用程序来配置其操作的各方面。替代地,在用户计算机72上执行的独立应用程序可以访问由数据中心85公开的应用程序编程接口(API)以执行配置操作。还可以使用用于配置在数据中心85处可用的各种web服务的操作的其他机制。
图9所示的服务器76可以是被适当配置用于提供上述计算资源的服务器,并且可以提供用于执行一个或多个web服务和/或应用程序的计算资源。在一个实施方案中,计算资源可以是虚拟机实例78。在虚拟机实例的示例中,服务器76中的每一个可以被配置成执行能够执行虚拟机实例78的实例管理器80a或80b(其在本文中可以单数形式称为单个实例管理器80或以复数形式称为多个实例管理器80)。例如,实例管理器80可以是虚拟机监视器(VMM)或被配置成能够在服务器76上执行虚拟机实例78的另一种类型的程序。如上文所讨论,虚拟机实例78中的每一个可以被配置成执行应用程序的全部或一部分。
应理解,虽然上文所公开的实施方案讨论了虚拟机实例的上下文,但是其他类型的实现方式也可以与本文公开的概念和技术一起使用。例如,本文公开的实施方案也可以与不利用虚拟机实例的计算系统一起使用。
在图9所示的示例性数据中心85中,可以利用路由器71来将服务器76a和76b互连。路由器71还可以连接到网关74,所述网关连接到通信网络73。路由器71可以连接到一个或多个负载平衡器,并且可以单独或以组合方式管理数据中心85中的网络内的通信,例如,通过基于此类通信的特性(例如,包括源地址和/或目的地地址、协议标识符、大小、处理要求等的报头信息)和/或专用网络的特性(例如,基于网络拓扑结构的路由等)适当地转发数据包或其他数据通信。应理解,为简单起见,在没有示出某些常规细节的情况下,示出了这个示例的计算系统和其他装置的各个方面。在其他实施方案中,附加的计算系统和其他装置可以互连,并且可以不同方式互连。
在图9所示的示例性数据中心85中,服务器管理器75还用于至少部分地引导通往服务器76a和76b、来自服务器76a和76b和/或在服务器76a与76b之间的各种通信。虽然图9描绘了定位在网关74与服务器管理器75之间的路由器71,但是这仅仅是示例性配置。在一些情况下,例如,服务器管理器75可以定位在网关74与路由器71之间。在一些情况下,服务器管理器75可以审查来自用户计算机72的传入通信的部分,以确定用于接收和/或处理传入的通信的一个或多个适当服务器76。服务器管理器75可以基于以下因素来确定用于接收和/或处理传入的通信的适当服务器:诸如与用户计算机72相关联的身份、位置或其他属性;与通信相关联的任务的性质;与通信相关联的任务的优先级;与通信相关联的任务的持续时间;与通信相关联的任务的大小和/或估计资源使用情况以及许多其他因素。服务器管理器75例如可以收集或以其他方式访问与各种任务相关联的状态信息和其他信息,以便例如帮助管理与此类任务相关联的通信和其他操作。
应理解,图9所示的网络拓扑结构已经极大地简化并且更多的网络和联网装置可以用于将本文公开的各种计算系统互连。这些网络拓扑结构和装置对于本领域技术人员是显而易见的。
还应理解,图9所描述的数据中心85仅仅是说明性的并且可以使用其他实现方式。还应理解,服务器、网关或其他计算装置可以包括能够交互并执行所描述类型的功能的硬件或软件的任何组合,包括但不限于:台式或其他计算机、数据库服务器、网络存储装置和其他网络装置、PDA、平板电脑、手机、无线电话、寻呼机、电子组织器、互联网设备、基于电视机的系统(例如,使用机顶盒和/或个人/数字视频记录器)以及包括适当通信能力的各种其他消费产品。
在至少一些实施方案中,实现本文所述的一种或多种技术的一部分或全部的服务器可以包括计算机系统,所述计算机系统包括或被配置成访问一个或多个计算机可访问介质。图10描绘了包括或被配置成访问一个或多个计算机可访问介质的计算机系统。在所示的实施方案中,计算装置15包括通过输入/输出(I/O)接口30耦接到系统存储器20的一个或多个处理器10a、10b和/或10n(其在本文中可以单数形式称为“单个处理器10”或以复数形式称为“多个处理器10”)。计算装置15还包括耦接到I/O接口30的网络接口40。
在各种实施方案中,计算装置15可以是包括一个处理器10的单处理器系统,或包括若干处理器10(例如,两个、四个、八个或另一合适数量)的多处理器系统。处理器10可以是能够执行指令的任何合适的处理器。例如,在各种实施方案中,处理器10可以是实现多种指令集架构(ISA)中的任何一种的嵌入式处理器,所述架构诸如x86、PowerPC、SPARC或MIPSISA或任何其他合适的ISA。在多处理器系统中,处理器10中的每一个可以通常但不一定实现相同的ISA。
系统存储器20可以被配置成存储可由处理器10访问的指令和数据。在各种实施方案中,系统存储器20可以使用任何合适的存储器技术来实现,诸如静态随机存取存储器(SRAM)、同步动态RAM(SDRAM)、非易失性/型存储器或任何其他类型的存储器。在所示的实施方案中,实现一个或多个期望功能的程序指令和数据(诸如上述那些方法、技术和数据)被展示作为代码25和数据26存储在系统存储器20内。
在一个实施方案中,I/O接口30可以被配置成协调处理器10、系统存储器20以及装置中的任何外围装置之间的I/O流量,所述外围装置包括网络接口40或其他外围接口。在一些实施方案中,I/O接口30可以执行任何必需协议、时序或其他数据变换以将来自一个部件(例如,系统存储器20)的数据信号转换成适于供另一部件(例如,处理器10)使用的格式。在一些实施方案中,I/O接口30可以包括支持通过各种类型的外围总线(举例来说,诸如外围部件互连(PCI)总线标准或通用串行总线(USB)标准的变体)附接的器件。在一些实施方案中,I/O接口30的功能可以分成两个或两个以上不同部件,举例来说,诸如北桥和南桥。此外,在一些实施方案中,I/O接口30的一些或所有功能,诸如到系统存储器20的接口,可以直接并入处理器10中。
例如,网络接口40可以被配置成允许数据在计算装置15与附接到一个或多个网络50的一个或多个其他装置60(例如像其他计算机系统或装置)之间进行交换。在各种实施方案中,网络接口40可以支持通过任何合适的有线或无线通用数据网络(例如像以太网网络类型)进行通信。另外,网络接口40可以支持通过电信/电话网络(诸如模拟语音网络或数字光纤通信网络)、通过存储区域网络(诸如光纤信道SAN(存储区域网络))或通过任何其他合适类型的网络和/或协议进行通信。
在一些实施方案中,系统存储器20可以是计算机可访问介质的一个实施方案,所述计算机可访问介质被配置成存储如上所述的程序指令和数据以便实现对应方法和设备的实施方案。然而,在其他实施方案中,程序指令和/或数据可以被接收、发送或存储在不同类型的计算机可访问介质上。一般来说,计算机可访问介质可以包括非暂时性存储介质或存储器介质,诸如磁性介质或光学介质,例如通过I/O接口30耦接到计算装置15的磁盘或DVD/CD。非暂时性计算机可访问存储介质还可以包括任何易失性或非易失性介质,诸如RAM(例如SDRAM、DDR SDRAM、RDRAM、SRAM等)、ROM(只读存储器)等,所述介质可以作为系统存储器20或另一种类型的存储器包括在计算装置15的一些实施方案中。此外,计算机可访问介质可以包括传输介质或通过通信介质(诸如网络和/或无线链路)传送的信号(诸如电信号、电磁信号或数字信号),诸如可以通过网络接口40实现的那些传输介质或信号。
由诸如公司或公共部门组织的实体建立来提供一组分布式客户端可通过互联网和/或其他网络访问的一个或多个web服务(诸如各种类型的基于云的计算或存储)的网络可以称为提供商网络。这种提供商网络可以包括托管各种资源池(诸如物理和/或虚拟化计算机服务器、存储装置、联网设备等的集合)的许多数据中心,所述资源池是实现和分布由提供商网络提供的基础设施和web服务所需要的。在一些实施方案中,资源可以与web服务相关的各种单元提供给客户端,诸如用于存储的存储容量、用于处理的处理能力、作为实例、作为相关服务的集合等。虚拟计算实例例如可以包括具有指定计算容量(所述计算容量可以通过指示CPU的类型和数量、主存储器大小等来指定)和指定软件栈(例如,特定版本的操作系统,所述操作系统继而可以在管理程序之上运行)的一个或多个服务器。
计算节点(其也可以称为运算节点)可以在多种计算环境上实现,诸如商品-硬件计算机、虚拟机、web服务、计算集群和计算设备。为方便起见,这些计算装置或环境中的任何一个都可以被描述为计算节点。
多种不同类型的计算装置可以单独或以组合的方式使用,以便在不同实施方案中实现提供商网络的资源,例如计算机服务器、存储装置、网络装置等。在一些实施方案中,可以向客户端或用户提供对资源实例的直接访问权,例如通过给予用户管理员登录权和密码。在其他实施方案中,提供商网络运营商可以允许客户端指定指定客户端应用程序的执行要求,并且在适合于应用程序的执行平台(诸如应用服务器实例、JavaTM虚拟机(JVM)、通用或专用操作系统、支持各种解译或编译的编程语言(诸如Ruby、Perl、Python、C、C++等)的平台或高性能计算平台)上代表客户端安排应用程序的执行,而(例如)不需要客户端直接访问实例或执行平台。在一些实现方式中,给定的执行平台可以使用一个或多个资源实例;在其他实现方式中,可以将多个执行平台映射到单个资源实例。
在许多环境中,实现不同类型的虚拟化计算、存储和/或其他网络可访问功能的提供商网络的运营商可以允许顾客在各种资源获取模式中保留或购买对资源的访问权。计算资源提供商可以为顾客提供设施以选择和启动期望的计算资源,将应用程序部件部署到计算资源并且维护在环境中执行的应用程序。此外,计算资源提供商可以为顾客提供进一步的设施,以便随着应用程序的需求或容量要求的改变,手动地或通过自动缩放快速且容易地放大或缩小分配给应用程序的资源的数量和类型。由计算资源提供商提供的计算资源可以离散单元提供,所述离散单元可以称为实例。实例可以表示物理服务器硬件平台、在服务器上执行的虚拟机实例或两者的某种组合。可以使各种类型和配置的实例可用,包括执行不同操作系统(OS)和/或管理程序的不同大小的资源,并且具有各种安装的软件应用程序、运行时等。例如,实例可以进一步在特定的可用区中可用,所述可用区表示逻辑区域、容错区域、数据中心或底层计算硬件的其他地理位置。可以在可用区内或跨可用区复制实例以改善实例的冗余,并且可以在特定的可用区内或跨可用区迁移实例。作为一个示例,客户端与可用区中的特定服务器通信的等待时间可能小于客户端与不同服务器通信的等待时间。这样,可以将实例从较高等待时间服务器迁移到较低等待时间服务器以改善整体客户端体验。
在一些实施方案中,提供商网络可以被组织成多个地理区域,并且每个区域可以包括一个或多个可用区。可用区(其也可以称为可用性容器)又可以包括一个或多个不同的位置或数据中心,所述可用区以这样的方式配置:使得给定可用区中的资源可以与其他可用区中的故障隔离或隔绝。也就是说,预期一个可用区中的故障可能不会导致任何其他可用区中的故障。因此,资源实例的可用性简档旨在独立于不同可用区中的资源实例的可用性简档。客户端可以能够通过在相应的可用区中启动多个应用程序实例来保护其应用程序免于在单个位置发生故障。同时,在一些实现方式中,可以在驻留在同一地理区域内的资源实例之间提供廉价且低等待时间的网络连接(并且同一可用区的资源之间的网络传输可以甚至更快)。
如上所述,内容提供商可以将内容提供给一个或多个客户端。如本文所使用的术语内容是指任何可呈现的信息,并且如本文所使用的术语内容项是指任何此类可呈现信息的任何集合。内容提供商例如可以提供一个或多个内容提供服务,用于向客户端提供内容。内容提供服务可以驻留在一个或多个服务器上。内容提供服务可以是可缩放的以满足一个或多个顾客的需求,并且可以基于传入的客户端请求的数量和类型来增加或减少能力。还可以迁移部分内容提供服务以便将其放置在具有请求客户端的等待时间减少的位置。例如,内容提供商可以确定与在物理上和/或逻辑上最接近特定客户端的内容提供服务相关联的系统或网络的“边缘”。然后,内容提供商可以例如“启用”、迁移资源或以其他方式使用与所确定的边缘相关联的部件来与特定客户端交互。在一些情况下,这种边缘确定过程可以提供用于识别和使用非常适合与特定客户端交互的部件的有效技术,并且在一些实施方案中,可以减少内容提供商与一个或多个客户端之间的通信的等待时间。
另外,在一些实现方式中,可以省略某些方法或过程块。本文描述的方法和过程也不限于任何特定的顺序,并且与其相关的块或状态可以其他适当的顺序执行。例如,所描述的块或状态可以与具体公开次序不同的次序执行,或者多个块或状态可以被组合成单个块或状态。示例块或状态可以串行、并行或以某种其他方式执行。可以向所公开的示例性实施方案添加块或状态或从其中移除块或状态。
还应理解,各种项目被示为在使用时存储在存储器中或存储装置上,并且出于存储器管理和数据完整性的目的,这些项目或其部分可以在存储器与其他存储装置之间传送。替代地,在其他实施方案中,一些或所有软件模块和/或系统可以在另一个装置上的存储器中执行,并且通过计算机间通信与所示的计算系统通信。此外,在一些实施方案中,系统和/或模块中的一些或全部可以其他方式实现或提供,诸如至少部分地在固件和/或硬件中实现或提供,所述固件和/或硬件包括但不限于一个或多个专用集成电路(ASIC)、标准集成电路、控制器(例如,通过执行适当的指令,并且包括微控制器和/或嵌入式控制器)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)等。模块、系统和数据结构中的一些或全部也可以存储在计算机可读介质上(例如,作为软件指令或结构化数据),所述计算机可读介质诸如硬盘、存储器、网络或者将通过适当的驱动器或通过适当的连接读取的便携式介质物品。系统、模块和数据结构还可以作为生成的数据信号(例如,作为载波或其他模拟或数字传播信号的一部分)在多种计算机可读传输介质(包括基于无线和基于有线/电缆的介质)上传输,并且可以采用多种形式(例如,作为单个模拟信号或多路复用模拟信号的一部分,或者作为多个离散数字数据包或帧)。在其他实施方案中,此类计算机程序产品也可以采用其他形式。因此,可以在具有其他计算机系统配置的情况下实践本发明。
本文所使用的诸如尤其是“可”、“可以”、“可能”、“例如”等条件语言,除非另外明确声明或在使用的背景下以其他方式进行理解,否则通常旨在传达:某些实施方案包括某些特征、元件和/或状态,而其他实施方案不包括所述某些特征、元件和/或状态。因此,这种条件语言通常不旨在暗示一个或多个实施方案以任何方式需要特征、元件和/或步骤,或者一个或多个实施方案必须包括用于在具有或不具有作者输入或提示的情况下进行判定的逻辑,而不管这些特征、元件和/或步骤是包括在任何特定实施方案中还是将在任何特定实施方案中执行。术语“包含”、“包括”、“具有”等是同义的并且以开放式的方式包含使用,并且不排除附加的元件、特征、动作、操作等。此外,术语“或”用于包含含义(而不是排他性含义),使得在用于例如连接元件列表时,术语“或”表示所述列表中的一个、一些或所有元件。
虽然已经描述了某些示例性实施方案,但是这些实施方案仅作为示例呈现,并且不旨在限制本文公开的发明的范围。因此,先前描述中的任何内容都不旨在暗示任何特定的特征、特性、步骤、模块或块是必需的或必不可少的。实际上,本文描述的新颖方法和系统可以多种其他形式体现;此外,在不脱离本文公开的发明的精神的情况下,可以对本文描述的方法和系统的形式进行各种省略、替换和改变。所附权利要求书及其等效物旨在涵盖落入本文公开的某些发明的范围和精神内的此类形式或修改。

Claims (20)

1.一种用于分区地形编辑的计算系统,其包括:
一个或多个处理器;以及
一个或多个存储器,所述一个或多个存储器具有存储在其中的指令,所述指令在由所述一个或多个处理器执行时,致使所述计算系统执行包括以下各项的操作:
将与视频游戏相关联的虚拟区域的至少一部分的地形划分为多个地形区段;
维持与所述多个地形区段相关联的多个地形数据集合,所述多个地形区段中的每一个具有所述多个地形数据集合中的至少一个相关联地形数据集合;
将与所述多个地形区段中的第一地形区段相关联的所述多个地形数据集合中的第一地形数据集合检出给第一用户,以便在地形编辑界面中编辑所述第一地形区段的地形;
从所述第一用户检入所述第一地形数据集合;以及
在所述第一数据集合被检出给所述第一用户的时间期间,将与所述第一用户对所述第一数据集合所做的一个或多个编辑相关联的数据保存到所述第一数据集合,
其中在所述第一地形数据集合被检出给所述第一用户的时间的至少一部分期间,使得与所述多个地形区段中的第二地形区段相关联的所述多个地形数据集合中的第二地形数据集合可用于检出给第二用户。
2.根据权利要求1所述的计算系统,其中所述多个地形数据集合中的第一组地形数据集合与所述第一地形区段相关联,所述第一组地形数据集合与多种类型的地形编辑操作相关联。
3.根据权利要求2所述的计算系统,其中使得所述第一组地形数据集合可用于同时检出给不同用户。
4.根据权利要求2所述的计算系统,其中所述第一组地形数据集合包括与地形高度数据相关联的地形数据集合、与地形植被数据相关联的地形数据集合、与地形纹理数据相关联的地形数据集合以及与地形图层数据相关联的地形数据集合。
5.一种用于分区地形编辑的方法,其包括:
维持与跟内容项相关联的虚拟区域的至少一部分的地形的多个地形区段相关联的多个地形数据集合,所述多个地形区段中的每一个具有所述多个地形数据集合中的至少一个相关联地形数据集合;
将与所述多个地形区段中的第一地形区段相关联的所述多个地形数据集合中的第一地形数据集合检出给第一用户,以便编辑所述第一地形区段的地形;
从所述第一用户检入所述第一地形数据集合;以及
在所述第一数据集合被检出给所述第一用户的时间期间,将与所述第一用户所做的跟所述第一数据集合相关联的一个或多个编辑相对应的数据保存到所述第一数据集合,
其中在所述第一地形数据集合被检出给所述第一用户的时间的至少一部分期间,使得与所述多个地形区段中的第二地形区段相关联的所述多个地形数据集合中的第二地形数据集合可用于检出给第二用户。
6.根据权利要求5所述的方法,其中所述多个地形数据集合中的第一组地形数据集合与所述第一地形区段相关联,所述第一组地形数据集合与多种类型的地形编辑操作相关联。
7.根据权利要求6所述的方法,其中使得所述第一组地形数据集合可用于同时检出给不同用户。
8.根据权利要求6所述的方法,其中所述第一组地形数据集合包括与地形高度数据相关联的地形数据集合、与地形植被数据相关联的地形数据集合、与地形纹理数据相关联的地形数据集合以及与地形图层数据相关联的地形数据集合。
9.根据权利要求5所述的方法,其还包括向所述第一用户提供以下各项中的一个或多个指示:地形区段是否具有作为所述第一用户检出、所述第一用户可写或所述第一用户可只读访问中的至少一项的至少一个相关联地形数据集合。
10.根据权利要求9所述的方法,其中所述一个或多个指示包括一个或多个颜色编码的地形区段边框。
11.根据权利要求5所述的方法,其还包括向所述第一用户提供地形区段被锁定或部分锁定的一个或多个指示。
12.根据权利要求5所述的方法,其还包括从存储器中卸载与所述第一用户可进行只读访问的地形区段相关联的地形数据。
13.根据权利要求5所述的方法,其还包括提供显示所述第一地形区段的所述地形的至少一部分的图形表示。
14.根据权利要求5所述的方法,其还包括将与所述内容项相关联的所述虚拟区域的至少一部分的所述地形划分为所述多个地形区段。
15.根据权利要求5所述的方法,其中所述内容项包括视频游戏。
16.一种或多种非暂时性计算机可读存储介质,其上存储有指令,所述指令在由一个或多个计算装置执行时,致使所述一个或多个计算节点执行包括以下各项的操作:
维持与跟内容项相关联的虚拟区域的至少一部分的地形的多个地形区段相关联的多个地形数据集合,其中所述多个地形区段中的第一地形区段具有所述多个地形数据集合中的第一组相关联地形数据集合;
将与所述第一地形区段相关联的所述第一组地形数据集合中的第一地形数据集合检出给第一用户,以便编辑所述第一地形区段的地形;
从所述第一用户检入所述第一地形数据集合;以及
在所述第一数据集合被检出给所述第一用户的时间期间,将与所述第一用户所做的跟所述第一数据集合相关联的一个或多个编辑相对应的数据保存到所述第一数据集合,
其中在所述第一地形数据集合被检出给所述第一用户的时间的至少一部分期间,使得与所述第一地形区段相关联的所述第一组地形数据集合中的第二地形数据集合可用于检出给第二用户。
17.根据权利要求16所述的一种或多种非暂时性计算机可读存储介质,其中所述第一组地形数据集合与多种类型的地形编辑操作相关联。
18.根据权利要求16所述的一种或多种非暂时性计算机可读存储介质,其中在所述第一地形数据集合被检出给所述第一用户的时间的至少一部分期间,使得与所述多个地形区段中的第二地形区段相关联的所述多个地形数据集合中的第三地形数据集合可用于检出给所述第二用户。
19.根据权利要求16所述的一种或多种非暂时性计算机可读存储介质,其中所述第一组地形数据集合包括与地形高度数据相关联的地形数据集合、与地形植被数据相关联的地形数据集合、与地形纹理数据相关联的地形数据集合以及与地形图层数据相关联的地形数据集合。
20.根据权利要求16所述的一种或多种非暂时性计算机可读存储介质,其中所述操作还包括向所述第一用户提供以下各项中的一个或多个指示:地形区段是否具有作为所述第一用户检出、所述第一用户可写或所述第一用户可只读访问中的至少一项的至少一个相关联地形数据集合。
CN201780036919.8A 2016-06-13 2017-06-07 分区地形编辑 Pending CN109562297A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/180,640 US10245512B2 (en) 2016-06-13 2016-06-13 Sectional terrain editing
US15/180,640 2016-06-13
PCT/US2017/036348 WO2017218259A1 (en) 2016-06-13 2017-06-07 Sectional terrain editing

Publications (1)

Publication Number Publication Date
CN109562297A true CN109562297A (zh) 2019-04-02

Family

ID=59227903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780036919.8A Pending CN109562297A (zh) 2016-06-13 2017-06-07 分区地形编辑

Country Status (6)

Country Link
US (1) US10245512B2 (zh)
EP (1) EP3468684A1 (zh)
JP (1) JP2019524178A (zh)
KR (1) KR102191661B1 (zh)
CN (1) CN109562297A (zh)
WO (1) WO2017218259A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112750181A (zh) * 2021-01-22 2021-05-04 珠海优特电力科技股份有限公司 图形处理方法和装置、存储介质及电子设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109718541B (zh) * 2018-11-07 2022-07-15 苏州蜗牛数字科技股份有限公司 一种模型交互实现方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6058397A (en) * 1997-04-08 2000-05-02 Mitsubishi Electric Information Technology Center America, Inc. 3D virtual environment creation management and delivery system
WO2003088562A1 (fr) * 2002-04-17 2003-10-23 Nagravision Sa Procédé de chiffrement de données numériques
CN1568466A (zh) * 2001-09-26 2005-01-19 交互设备有限公司 用于传递媒体信号的系统和方法
CN102819391A (zh) * 2012-07-24 2012-12-12 华平信息技术(南昌)有限公司 一种多场景下具有并行性的多点触摸手势反馈系统及方法
CN104050708A (zh) * 2014-06-09 2014-09-17 无锡梵天信息技术股份有限公司 一种3d游戏引擎lod系统的实现方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5897642A (en) * 1997-07-14 1999-04-27 Microsoft Corporation Method and system for integrating an object-based application with a version control system
US8207966B2 (en) * 2004-05-26 2012-06-26 Sony Online Entertainment Llc Terrain editor tool for rule-based procedural terrain generation
US8115765B2 (en) * 2004-05-26 2012-02-14 Sony Online Entertainment Llc Rule-based procedural terrain generation
TWI267003B (en) * 2005-07-05 2006-11-21 Inventec Corp Development system and method for computer game
WO2007027847A2 (en) * 2005-09-01 2007-03-08 Geosim Systems Ltd. System and method for cost-effective, high-fidelity 3d-modeling of large-scale urban environments
US8010507B2 (en) * 2007-05-24 2011-08-30 Pado Metaware Ab Method and system for harmonization of variants of a sequential file
US20090083268A1 (en) * 2007-09-25 2009-03-26 International Business Machines Corporation Managing variants of artifacts in a software process
US9747582B2 (en) 2013-03-12 2017-08-29 Dropbox, Inc. Implementing a consistent ordering of operations in collaborative editing of shared content items

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6058397A (en) * 1997-04-08 2000-05-02 Mitsubishi Electric Information Technology Center America, Inc. 3D virtual environment creation management and delivery system
CN1568466A (zh) * 2001-09-26 2005-01-19 交互设备有限公司 用于传递媒体信号的系统和方法
WO2003088562A1 (fr) * 2002-04-17 2003-10-23 Nagravision Sa Procédé de chiffrement de données numériques
CN102819391A (zh) * 2012-07-24 2012-12-12 华平信息技术(南昌)有限公司 一种多场景下具有并行性的多点触摸手势反馈系统及方法
CN104050708A (zh) * 2014-06-09 2014-09-17 无锡梵天信息技术股份有限公司 一种3d游戏引擎lod系统的实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TS0818: "《版本控制系统 (VCS) 和 Git》", 24 April 2016 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112750181A (zh) * 2021-01-22 2021-05-04 珠海优特电力科技股份有限公司 图形处理方法和装置、存储介质及电子设备
CN112750181B (zh) * 2021-01-22 2024-05-31 珠海优特电力科技股份有限公司 图形处理方法和装置、存储介质及电子设备

Also Published As

Publication number Publication date
JP2019524178A (ja) 2019-09-05
KR102191661B1 (ko) 2020-12-17
KR20190028437A (ko) 2019-03-18
US10245512B2 (en) 2019-04-02
US20170354890A1 (en) 2017-12-14
WO2017218259A1 (en) 2017-12-21
EP3468684A1 (en) 2019-04-17

Similar Documents

Publication Publication Date Title
US10481875B2 (en) Generation of an application from template
CN103916455B (zh) 用于数据复制的方法和系统
CN105446793B (zh) 迁移虚拟资产的方法和设备
CN104205056B (zh) 跨多个云的工作负荷的动态分配的方法和系统
US8326855B2 (en) System and method for abstraction of objects for cross virtual universe deployment
US9134962B1 (en) Interactive content development
CN112585919A (zh) 利用基于云的应用管理技术来管理应用配置状态的方法
US10949600B2 (en) Semiconductor package floating metal checks
CN109062663A (zh) 镜像分发方法、装置及存储介质
CN109562297A (zh) 分区地形编辑
US20190377850A1 (en) Semiconductor package metal shadowing checks
US20190173759A1 (en) Network traffic management for virtualized graphics devices
CN102821144B (zh) 一种在云中部署网络服务的方法
CN108734698A (zh) 用于检测形状的交叉的可高度并行化算法
US9189544B2 (en) Graphically representing tags in a networked computing environment
CN106161516A (zh) 用于存储数据的方法、装置以及系统
US10067775B2 (en) Guided authoring of interactive content
CN108364327A (zh) 一种图数据处理的方法及装置
US11552859B2 (en) Interactive graphical model-based configuration control of networked physical assets using logical transactional configuration change rules
US20190102504A1 (en) Semiconductor package via stack checking
CN117332916A (zh) 数据资产展示方法、装置、设备及存储介质
CN107656795A (zh) 一种VMware平台的虚拟机转换到WinServer平台的实现方法及装置
Kim et al. Single image–based 3D tree and growth models reconstruction
US11625229B1 (en) Context for components in an application
Tan et al. Modeling quality attributes in software product line architecture

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190402