多用户虚拟空间中控制用户的方法及多用户虚拟空间系统的制作方法

文档序号:6413952阅读:377来源:国知局
专利名称:多用户虚拟空间中控制用户的方法及多用户虚拟空间系统的制作方法
方法及多用户虚拟空间系统本发明涉及在多用户虚拟空间中控制用户的方法及多用户虚拟空间系统,更具体地,涉及围绕一固定点来划分多用户虚拟空间以控制该虚拟空间中用户的方法及系统。
通常,需要用于控制三维虚拟域(virtual world)及其用户的服务器(Server),以便多个用户在三维虚拟空间中的网络上相互联系。尤其是,三维虚拟空间比二维图形环境(two dimensional graphic environment)更加需要操作。
多用户虚拟实际业务(reality service)是由用户的用户软件及服务器软件组成的。用户可导航三维环境并与另外各用户共同地相互联系。服务器将关于三维环境状态及各用户位置及方向的信息发送给个别用户。
为了控制服务器的三维信息,传统的三维虚拟空间被划分成六面体网络或“蜂窝”(hornet’snest)的形状,并计算例如固定在划分的虚拟空间中的建筑与导航虚拟空间的用户或多用户的冲突这样的相互影响。经计算的相互影响的信息被传送给通过服务器导航虚拟空间的所有用户。
三维虚拟空间的典型建筑是不规则布置的。

图1表示被划分成六面体网格形状的传统的三维虚拟空间。参照图1,该空间被划分成预定尺寸的块,并具有用于控制每个划分的块的服务器。例如,当一个建筑‘O’位于块之间的边界上时,很难确定用于控制该建筑的服务器。并且,计算不规则定位的建筑与移动用户‘X’的冲突的过程是复杂的。
本发明的目的是提供一种在多用户虚拟空间中控制用户的方法,其中围绕固定的建筑来划分三维虚拟空间及将用户分配到最接近用户的划分空间,由此减少用于计算例如是否与用户有冲突的相互影响所需的时间量,及提供一种使用以上方法的多用户虚拟空间系统。
因此,为了实现上述本发明的目的,提供了一种在多用户虚拟空间中控制用户的方法,它包括步骤a)将通过连接固定点得到的线垂直及相等地划分后所形成的线连接,这些固定点是三维虚拟空间中固定物体的中心点,由此来划分该空间;b)计算新用户位置及每个划分的子空间的固定点之间的距离及将新用户分配给具有最短距离的被划分的子空间;c)检验并控制每个用户的位置、运动及旋转的信息;及d)重复检验是否具有新用户,当具有新用户时,由此重复执行步骤b)和c)。
并且,用于控制多用户虚拟空间中用户的系统包括一个主服务器,用于围绕一固定点划分多用户虚拟空间及控制划分的空间,并计算新用户和固定点之间的距离,由此将新用户分配给具有最短距离的子空间;及多个子服务器,用于控制参与由主服务器划分的虚拟空间的用户。
通过参照附图对其优选实施例的详细描述,将使本发明的上述目的和优点变得更加清楚,其中图1表示被划分成六面体网络状的传统三维虚拟空间;图2是根据本发明的在多用户虚拟空间中控制用户的方法的流程图;图3表示Voronoi图的例子;及图4表示根据本发明的在多用户虚拟空间中控制用户的系统。
参照图2,在多用户虚拟空间中控制用户的方法包括以下步骤使用Voronoi图划分虚拟空间(步骤200),在服务器中寄存划分的虚拟空间(步骤202),确定是否有一个终止服务器操作的指令(步骤204),确定是否具有一个新用户(步骤206),将一个新用户寄存在相应的被划分的空间中(步骤208)及控制用户的信息(步骤210)。
建立一个三维虚拟空间并划分该虚拟空间(步骤200)。该空间按与Voronoi图相同的方式划分。在该虚拟空间中,固定建筑的中心点被设成在Voronoi图上的点。这些固定点彼此相连接,由此形成虚拟线,这些虚拟线被垂直及相等地划分,由此形成垂直线,及将这些垂直线彼此相连接,由此划分该空间。该Voronoi图表示由连接线划分的一个平面或空间,其中被划分的空间是该空间中各个点的领域。这就是,根据数学特性,在被划分空间内的任意点和在同一被划分的空间内的另外点之间的欧几里德距离被缩短了。
参照图3中的Voronoi图,指示用户的点○最靠近固定点中相应被划分空间内的点●。图3中的S1和S2表示用于控制被划分的空间的服务器。Voronoi图的说明详细地公开在Franco P.Preparata及Michaellan Shamos著的“计算几何”(“Computational Geometry”)中。
在服务器中寄存并控制被划分的虚拟空间(步骤202)。当输入了结束服务器操作的指令时,结束该操作(步骤204)。当未输入结束服务器操作的指令时,作出检验以确定是否具有一个新用户(步骤206)。如果具有一个新用户,则计算一个新用户的位置与被划分空间的固定点之间的欧几里德距离,然后将该新用户寄存在用来控制最接近该用户的被划分的空间的服务器中(步骤208)。该服务器保持新用户或三维空间中通常用户的位置信息,并当用户旋转或移动时计算及管理关于位置、距离、角度等的信息。当用户移动时,用户的位置信息通过服务器被另外的用户共享,并且该移动用户参与的服务器将确定是否具有与建筑或另外用户的冲突以避免其冲突(步骤210)。
当新用户不存在时,在步骤206中检验是否具有一个新用户。
参照图4,在多用户虚拟空间中控制用户的系统包括一个主服务器400;与主服务器400相连接的子服务器410;通过网络420与各自子服务器410相连接的用户430。
主服务器400包括一个空间划分器/控制器(spacedivider/controller)402,用于使用Voronoi图围绕一固定点划分三维虚拟空间及控制被划分的空间;及一个用户控制器404,用于将新用户分配给被划分的空间并通知新用户位置的另外用户。
子服务器S1、S2、…SN410控制被划分的空间中的用户U1、U2、…UN,保持关于该空间中建筑(buildings)及用户位置的信息,并当用户移动时确定是否具有建筑与用户之间的冲突及用户之间的冲突。并且,用户的位置信息及被子服务器控制的被划分空间中的冲突结果将与主服务器400共享。用户430从控制相应空间的子服务器S1、S2、…SN410接收或向其发送关于位置、旋转方向及冲突检验的信息。
根据本发明,将围绕在虚拟空间中不规则布置的固定点划分三维虚拟空间,并根据固定点和用户的距离将一空间及一服务器分配给各用户。
因此,当用户移动时,减少了如冲突检验这样的事件的计算量并同时可使更多的用户能加入到该系统中。
权利要求
1.一种在多用户虚拟空间中控制用户的方法,包括以下步骤a)将通过连接固定点得到的线根据垂直及相等地划分后所形成的线进行连接,这些固定点是三维虚拟空间中固定物体的中心点,由此来划分该空间;b)计算新用户位置及每个被划分子空间的固定点之间的距离及将新用户分配给具有最短距离的被划分子空间;c)检验并控制每个用户的位置;运动及旋转的信息;及d)重复检验是否具有新用户,当具有新用户时,由此重复执行步骤b)和c)。
2.根据根据要求1的方法,其中,步骤b)中的距离是由欧几里德距离计算获得的。
3.一种用于控制多用户虚拟空间中用户的系统,包括一个主服务器,用于围绕一固定点划分多用户虚拟空间及控制被划分的空间,并计算新用户和固定点之间的距离,由此将新用户分配给具有最短距离的子空间;及多个子服务器,用于控制参与由主服务器划分的虚拟空间的用户。
全文摘要
一种多用户虚拟空间中控制用户的方法及系统,该方法包括步骤:a)将通过连接固定点得到的线依据垂直及相等地划分后所形成的线进行连接,b)计算新用户位置及每个被划分子空间的固定点之间的距离及将新用户分配给具有最短距离的被划分子空间;c)检验并控制每个用户的位置、运动及旋转的信息;及d)重复检验是否具有新用户,当具有新用户时,由此重复执行步骤b)和c)。因此,围绕在虚拟空间中不规则布置的固定点划分三维空间,并根据固定点和用户的距离将一空间及一服务器分配给各用户。
文档编号G06T19/00GK1205478SQ9810556
公开日1999年1月20日 申请日期1998年3月13日 优先权日1997年7月15日
发明者刘炫硕 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1