EP1453582A1 - Procede de creation et de gestion d univers virtuel - Google Patents

Procede de creation et de gestion d univers virtuel

Info

Publication number
EP1453582A1
EP1453582A1 EP02799767A EP02799767A EP1453582A1 EP 1453582 A1 EP1453582 A1 EP 1453582A1 EP 02799767 A EP02799767 A EP 02799767A EP 02799767 A EP02799767 A EP 02799767A EP 1453582 A1 EP1453582 A1 EP 1453582A1
Authority
EP
European Patent Office
Prior art keywords
space
virtual
universe
avatar
user
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.)
Withdrawn
Application number
EP02799767A
Other languages
German (de)
English (en)
Inventor
Guillaume Pelletier
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.)
Dotvision
Original Assignee
Dotvision
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 Dotvision filed Critical Dotvision
Publication of EP1453582A1 publication Critical patent/EP1453582A1/fr
Withdrawn 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
    • A63F13/12
    • 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/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers

Definitions

  • the present invention relates generally to the creation and management of virtual digital spaces. More specifically, the invention relates to a method for creating and managing virtual universes, authorizing simultaneous and interactive access of the virtual universe to several users via a network.
  • the invention also relates to a system making it possible to implement such a method.
  • Methods and systems of the type mentioned above are already known.
  • Such a virtual object is designated by the term "avatar”.
  • An avatar thus constitutes a particular virtual object.
  • FIG. 1 thus schematically represents a known system, in which two terminals PC1, PC2 associated with two different respective users are connected to the same network 10.
  • Network 10 can be any public or private network. It can for example be the world wide web.
  • a server S in association with which the data of a virtual space E is stored, is connected to this same network.
  • the PC1 and PC2 terminals can be any type of digital terminal provided with a memory, processing means, an interface allowing a user to enter instructions (for example a keyboard), and means of connection to the network. 10.
  • the terminals also include a visual interface (of the screen type) allowing a user to view the virtual space.
  • a visual interface of the screen type
  • the terminals can thus be personal computers, but also any type of device meeting the above criteria (personal assistant, mobile phone, game console, etc.).
  • the user associated with the terminal can access virtual space E, the user associated with the terminal.
  • PC1 downloads via the network 10 the data from space E to its terminal PC1.
  • the user has opened a session on the server S.
  • means are provided at the server S to create an avatar A1 of the terminal PC1, that is to say a virtual object capable of moving in space E.
  • the server S stores, in association with the avatar A1: • the network address of the terminal PC1 (address which is typically an IP address - Internet Protocol), as well as “the coordinates of A1 in space E.
  • space E is associated with a “physical” coordinate system which corresponds to a coordinate system such as those which allow users to locate themselves in the real world (typically, but not limited to, a two-dimensional coordinate system of type (OXY ) or of type (latitude, longitude), or a three-dimensional coordinate system of type (OXYZ) or of type (latitude, longitude, altitude)).
  • a coordinate system such as those which allow users to locate themselves in the real world (typically, but not limited to, a two-dimensional coordinate system of type (OXY ) or of type (latitude, longitude), or a three-dimensional coordinate system of type (OXYZ) or of type (latitude, longitude, altitude)).
  • OXY two-dimensional coordinate system of type
  • OXYZ three-dimensional coordinate system of type
  • the coordinates of the avatar A1 are thus permanently stored in a memory associated with the server S, with the network address of the terminal PC1.
  • the user associated with the terminal PC1 can, by entering appropriate instructions on this terminal, order actions of the avatar A1 (movement in space E or other actions), as well as changes of state of this avatar.
  • Resources can also be associated with avatar A1.
  • These resources can be of any type (multimedia object for example, but also any type of attribute or behavior law specific to the avatar), and can be stored anywhere in the network 10.
  • Each resource is thus identified in the network by an address (typically of URL type according to the English acronym of Uniform Resource Locator).
  • This user can also view the effects of such instructions on his terminal PC1.
  • PC1 can also include the representation of other avatars, associated with other terminals and whose movements, actions and changes of state are controlled by other users.
  • the avatar (here A1) associated with the terminal constitutes a “communication channel” from the server to the terminal PC1: each time there is a change in space E (introduction or disappearance of an avatar, change of position or status of an avatar, or any other change in the environment, etc.), the change is signaled by a message from the server S addressed to the terminals which have logged in to it.
  • Each terminal being identified by its network address stored in the server S in association with the corresponding avatar, the terminals effectively receive such messages.
  • each user can thus view on their terminal the virtual space, with the other avatars corresponding to the other users.
  • They can also control the actions of their avatar, which can also interact with space, space objects, and other avatars.
  • the known systems and methods which operate in particular according to the principles set out above with respect to FIG. 1 allow a plurality of users to share a virtual experience (for video game purposes for example, but also simulation for all purposes - industrial, economic or other).
  • This limitation may result, among other things, in the limitation
  • Physical dimensions of the virtual space in which a user can navigate, and / or the quality of the representation (level of detail, textures, number of avatars - and more generally of virtual objects - can be included in the space ).
  • An object of the invention is to allow these limitations to be overcome.
  • the invention provides a method for creating and managing virtual universes, allowing simultaneous and interactive access of the virtual universe to several users via a network, characterized in that that a common coordinate system is associated with the virtual universe and the virtual spaces it contains, and in that the method comprises:
  • the method comprises the connection of a respective terminal of each user with a universe management server, which comprises means for creating an avatar for the user that the user will be able to move around in the universe,
  • each user can move his avatar between elementary spaces of the virtual universe, by entering in his terminal an instruction to move the avatar or an instruction of geographic coordinates, the universe management server then ensuring:
  • Said sending of data from the universe management server to the user's terminal is carried out as a function of the movement instructions supplied by the user to his terminal,
  • the user can control the memorization of the coordinates of a specific point of an elementary virtual space, and the user can then call these memorized coordinates,
  • the process includes:> The direct call from the server designated by the network address in order to transfer the avatar to this new server,> The introduction of the new avatar in the new space , at the desired point,
  • Said storage is made in association with the avatar, or by storing this information on the terminal,
  • FIG. 2a is a diagram illustrating a general principle of spatial division making it possible to associate with different virtual spaces of a virtual universe spatial coordinates, this spatial division being able to implement different levels of division, the cells of which form a more spatial partition. or less detailed,
  • FIG. 2b illustrates the cooperation of one of the cutting levels mentioned above with the virtual universe, this cooperation making it possible to locate the virtual spaces of the virtual universe spatially
  • FIG. 3 represents a tree structure organized according to the levels mentioned above, in which the nodes of the tree structure correspond to the cells of the different levels of division mentioned above, and in which network addresses corresponding to servers are associated with certain nodes.
  • FIG. 2a there is shown very schematically a virtual universe U, which in this case is two-dimensional.
  • the universe U includes, as shown in FIG. 2a, a plurality of virtual spaces E1, E2, ... En. These spaces will be called elementary spaces in this text, and they will be designated collectively by the reference Ei.
  • Each space Ei is included in the universe U.
  • the spaces Ei can form a spatial (or "geographical", these two terms being equivalent in the present text) partition of the universe U (that is to say that their meeting is equivalent to the universe U). It is this configuration which is represented in FIGS. 2a and 2b.
  • each space Ei can have any shape and orientation - there is no need to align the boundaries of the spaces Ei in any direction.
  • Each space Ei can thus have borders and arbitrary dimensions.
  • each elementary space is defined by: • its spatial borders (we will find later in this text a description of the data associated with the borders of each space, which include the network addresses of the two spaces located on each side of the border),
  • the space data is stored on a network server •
  • the data of each space can be stored on a respective server on the network.
  • each server hosting the data in an Ei space includes a network address (of the IP address type).
  • FIG. 2a represents above the universe U a plurality of grids G1, G2, G3.
  • Each of these grids corresponds to a different partition of the universe U. These partitions are defined by cells associated with each grid. More precisely, in the example of FIG. 2a, the grid G1 defines a general framework corresponding to the spatial boundaries of the universe U. This grid G1 thus only has one cell, referenced C.
  • the universe U can therefore have any shape (curved surface, regular or not, and more generally universe of any shape and dimensions).
  • the common spatial coordinate system is used to define the limits of the cells (and also as we will see to allow users to find their bearings in the universe U and in the spaces it contains).
  • coordinates of type X, Y
  • latitude, longitude a notion of time beam
  • time beam like the terrestrial reference UTM
  • G1 four cells C1, C2, C3, C4 are thus defined.
  • G3 therefore corresponds to a different partition from grid G1, performed at a finer level of detail: G3 somehow corresponds to a "zoom" on grid G1. Note here that the partition of G3 is not regular
  • the G3 grid thus includes:
  • the grids G1 to G3 thus form a set of ordered grids constituted according to the principle for example of “quadtree” or “octree” (one will thus find at the address
  • the grid G1 is a “high level” grid, which defines the external boundaries of the universe that we wish to make available to users,
  • the grid G2 is a grid of immediately lower level, the cells of which “zoom” on certain parts of the grid G1 in order to define more detailed cells (in the example of FIG. 2a, this zoom is carried out in four equal quarters - however any distribution of the space corresponding to the grid G2 - and therefore to the universe U - is possible), "the grid G3 being a grid of even lower level, which defines even more detailed cells.
  • the ordering of the grids defines a tree structure, whose nodes correspond to the cells.
  • a tree structure is schematically exposed in FIG. 3.
  • On this tree are represented in the form of nodes the cells associated with the three grids G1 to G3.
  • the names of the grids are recalled next to each corresponding level of tree structure.
  • the universe U is represented with its elementary spaces, on which is superimposed the grid of the lowest level (G3 in this case - the thickness of the limits of the cells of G3 has been exaggerated for better view them).
  • nodes which correspond to the most detailed level cells for a given spatial area, and which we will name “leaves” of the tree structure - in the rest of this text for the sake of simplification we will assimilate the leaf, the associated cell and the corresponding tree node) are associated with additional information.
  • each elementary space thus covered at least partially by a sheet the following are stored in association with the sheet: • an identifier of the elementary space, • the network address of the server hosting the data of this elementary space, • information on the boundaries of space.
  • This information is in the form of a header corresponding to each boundary segment of the space (each boundary segment of the space being parameterized by an equation implementing the defined coordinate system).
  • Each header corresponding to a border segment includes:
  • this information includes the two network addresses of the two servers on which the data of the two respective spaces are stored.
  • universe U can be a space of any dimension, and that the example described here in detail and involving a universe U in two dimensions is in no way limiting.
  • each header corresponding to a border segment comprises, in addition to the geometric definition of the border segment, information making it possible to identify each of the adjacent elementary spaces to the border segment (this information thus comprising the network addresses of each of the servers on which the data of the respective spaces are stored, the number of which is thus not limited to two. It should however be specified that in a variant of the invention the header does not directly contain the network addresses of the adjacent elementary spaces; in this case the header contains information allowing access to these network addresses.).
  • each sheet is associated with a respective network address, which is the network address at which said data associated with the sheet are stored.
  • the data of each sheet can thus be stored on an individual server having an address different from that of the other servers corresponding to the other sheets.
  • certain server addresses for data of 5 different sheets can be the same (several sheets have their data stored on the same server).
  • each node of the tree structure (that is to say each cell of the set of grids G1, G2, G3) can be associated itself with a network address, even if it is not not a lower level node (of a leaf).
  • Such an address is called an intermediate node address.
  • the user knows the network address of said server.
  • a universe management server For the user, it constitutes a “gateway” to the U universe.
  • universe management server to which the user is connected comprises means for connecting himself to each of the servers hosting the data of the various elementary spaces Ei.
  • the management program When the user connects to the universe management server, the management program creates an “avatar” for the user, ie a virtual object that the user will be able to move in the universe U .
  • the geographic coordinate system of the universe U is the only repository known by the user's terminal, the network addresses of the various servers corresponding to the various elementary spaces not being known to this terminal: the user only needs to know a network address, that of the universe management server to which it wishes to connect.
  • an instruction to move the avatar typically corresponding to a speed vector in the universe U
  • an instruction for geographic coordinates instruction indicating the coordinates of the universe U to which the user wants to locate his avatar
  • Each universe management server can also be a server of the network with which an elementary space is associated.
  • each server on the network which stores the data of an elementary space can be a universe management server - that is to say that the universe management program U, which allows to manage the displacements, actions and changes of state of the avatars of the users in the various elementary spaces of the universe U.
  • the user cannot “force” a geographic address in the system (that is to say spatial coordinates of P “virtual place” which he wishes to make enter an avatar in the universe U).
  • the universe management server to which the user is initially connected which imposes a geographic framework (this imposed geographic framework typically corresponding to the elementary space associated with the universe management server concerned ).
  • the user's avatar retrieves the data from this profile.
  • the avatar can enter a location specific to the user, and with a state and conditions also specific: for example a fixed origin location can be assigned to this user, or the avatar can enter the universe U in a geographical location corresponding to the last movement of the user in the virtual universe U during his last connection,
  • a second variant implementation of the invention it is however possible to allow the user to "force" geographic coordinates when he first connects to a universe management server.
  • these initial coordinates can be provided automatically by a device of the GPS type, connected to the network (via the terminal, or else the GPS constituting itself the terminal).
  • the initial coordinates can be the real coordinates where the user is located (in the case of a universe U representing the surface of the earth, for example).
  • the user must therefore provide the universe management server, via his terminal, the initial spatial coordinates of the virtual place to which he wishes to make an avatar enter the universe. U.
  • the universe management server to which the user has connected causes a search to be made in the tree structure of the grids, to identify the sheet containing the initial coordinates.
  • this universe management server can use any known technique.
  • the universe management server sends to the user's terminal the network address of cell C of the highest level grid (we said that the cells which are not leaves may have intermediate node addresses).
  • the terminal connects directly to this address and the search is continued with the initial coordinates: the server associated with cell C also receives these initial coordinates, and determines, thanks to a program loaded on all the servers of the system, that of the cells of lower level which contains the point of the corresponding universe (for this purpose, the addresses of intermediate node of the cells of lower level which represent the partition of cell C are known to the server associated with cell C).
  • the intermediate node address of the selected lower level cell is then transmitted to the user's terminal, which connects directly to the server of this last address.
  • the process then continues by descending the levels of the tree structure, the user terminal successively connecting to the servers of the addresses of intermediate nodes of descending level, until connecting to the server corresponding to the sheet sought.
  • the universe management server itself performs the search for the terminal, by calling that of the servers associated with an intermediate node address which corresponds to the lower level node containing the initial coordinates, this server selecting itself a lower level server, etc. until identifying the network address of the sought-after sheet, which is transmitted to the terminal. The terminal will then connect directly to this address.
  • the server associated with the sheet Once connected to the server associated with the sheet sought, the user's terminal sends this server the initial contact details. Based on these initial coordinates, the server associated with the sheet identifies the elementary space which contains the point corresponding to these initial coordinates.
  • the server associated with the sheet can thus identify the elementary space which contains the point corresponding to the initial coordinates. It has also been said that in association with the boundary characteristics of each space, the network address hosting the data of the space is stored.
  • the terminal has knowledge of this network address of the elementary space (this address being transmitted to it by the sheet server).
  • the terminal will then connect to the server corresponding to the network address of the elementary space.
  • the terminal remains connected only to the universe management server throughout its session, the universe management server connecting itself to the elementary space servers called In both cases, this server will then create an avatar for the user, as in the prior art described in the introduction to this text.
  • an avatar already created by the user has been memorized by the universe management server (in the manner of an avatar "cookie", which would record the characteristics and properties of the avatar) - in this case the data of this avatar can be automatically loaded into the server corresponding to the network address of the elementary space.
  • the user's terminal will also load data from the elementary space to the server associated with the elementary space, in a similar manner to what occurs in the prior art.
  • the terminal does not load all of the data of the elementary space into its memory (whereas this is the case in the systems known from the state of the technical).
  • the terminal only loads the data necessary for the reconstruction of the portions of the elementary space which must be visible to the user (the dimensions of these portions varying according to the type of display - by example overflight or immersive), depending on the position of the avatar: only the portions surrounding the avatar will be loaded (within a radius to be defined).
  • streaming is controlled by the movements of the avatar, themselves controlled by the user via his terminal, increases the responsiveness and ergonomics of the system.
  • the operation of the server associated with the elementary space in which the avatar was created is also similar to the operation described in the introduction to the state of the art systems (evolution in space, visualization of other avatars and interaction with space and other avatars ).
  • the invention allows the avatar to continue his displacement, instead of "hitting" on the border of space as in the case of known systems.
  • the space data comprising, as has been said, the network addresses of the two elementary spaces located on either side of each boundary segment
  • the server associated with the elementary space whose avatar is in going out has the network address of the server associated with the elementary space located on the other side of the border.
  • the server associated with the elementary space from which the avatar is leaving therefore transmits:
  • the user's avatar is then created in the “new” elementary space located on the other side of the border, and this avatar evolves in this new elementary space, in which he can interact with the other avatars of this space, as well as with the various virtual objects of this new space.
  • the avatar created in this way inherits the input coordinates, the kinematic parameters and possibly other state parameters of P "old” avatar, which in turn may have been destroyed from the memory of the server of P " old "elementary space.
  • the avatar can be created in the new space by being stored there with the network address of the user's terminal: in this way, the avatar takes the initiative of sending space change information to the terminal elementary.
  • the user has the illusion of always flying the same avatar, having changed elementary space (this change can quite be imperceptible to the user).
  • avatars can moreover, as has been mentioned in connection with the state of the art, be associated with resources of their own.
  • the invention provides means for distributing the network addresses of these different servers, from a “geographic” distribution key, the coordinates implemented in the universe U being able to be any type of natural and intuitive coordinates. It is also possible to implement the invention to allow a user to change elementary space "at high level”.
  • a user may want to move from Paris to San Francisco in a universe U corresponding to the surface of the earth.
  • the user has the possibility of indicating by an appropriate command sent to the server of the space in which the avatar of the user is located, that he wishes to move “at a high level”.
  • the server associated with the space in which the avatar is located will treat such a request as a border crossing - the only difference with what has been explained above concerning the “classic” border crossing being that in this case the server to which the data linked to the avatar will be directed, a server which will itself create a new corresponding avatar, is a server of an intermediate node located "above" the starting space in the tree.
  • the avatar can thus be transferred between intermediate nodes of the same level, these intermediate nodes do not correspond to elementary spaces but with cells of a certain level of grid making it possible to "move" the avatar in space with no significant space.
  • the user's terminal can store the coordinates of a specific point in an elementary virtual space, in association with the avatar or by storing this information on the terminal.
  • This storage is controlled by an adapted instruction that the user enters on his terminal.
  • the coordinates are stored with the network address of the server hosting the data of the elementary space whose geographic limits contain the coordinates of the chosen point.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Processing Or Creating Images (AREA)

Abstract

La présente invention concerne un procédé de création et de gestion d'univers virtuel U, autorisant l'accís simultané et interactif de l'univers virtuel à plusieurs utilisateurs par l'intermédiaire d'un réseau, caractérisé en ce qu'un systíme de coordonnées commun est associé à l'univers virtuel et aux espaces virtuels qu'il contient, et en ce que le procédé comprend la définition d'au moins deux espaces virtuels distincts dudit univers, ainsi que pou chaque espace virtuel la mémorisation sur un serveur du réseau, de données comprenant: des données permettant de caractériser intrinsíquement ledit espace, et des données

Description

PROCEDE DE CREATION ET DE GESTION D'UNIVERS VIRTUEL La présente invention concerne de manière générale la création et la gestion d'espaces numériques virtuels. Plus précisément, l'invention concerne un procédé de création et de gestion d'univers virtuel, autorisant l'accès simultané et interactif de l'univers virtuel à plusieurs utilisateurs par l'intermédiaire d'un réseau.
L'invention concerne également un système permettant de mettre en œuvre un tel procédé. On connaît déjà des procédés et systèmes du type mentionné ci- dessus.
On sait ainsi créer un univers virtuel composé d'un espace virtuel en modélisant par des données numériques les caractéristiques (limites et contours géométriques, aspect, voire caractéristiques locales correspondant à des conditions physiques du type luminosité, régime de vents ...) de cet espace.
On sait également mettre à la disposition d'utilisateurs un tel espace virtuel, par exemple en permettant à des utilisateurs disposant chacun d'un terminal respectif relié à un même réseau, de charger sur leur terminal respectif les données d'un serveur connecté au même réseau, pour importer sur ledit terminal l'espace virtuel correspondant à ces données.
Il est également connu de permettre en outre à l'utilisateur de naviguer dans l'espace virtuel ainsi importé sur son terminal, par exemple en commandant le déplacement d'un objet virtuel dans ledit espace qui se trouve mémorisé sur le terminal de l'utilisateur.
Un tel objet virtuel est désigné par le terme d' « avatar ». Un avatar constitue ainsi un objet virtuel particulier.
La figure 1 représente ainsi schématiquement un système connu, dans lequel deux terminaux PC1 , PC2 associés à deux utilisateurs respectifs différents sont connectés à un même réseau 10. Le réseau 10 peut être tout réseau public ou privé. Il peut par exemple s'agir du world wide web.
Un serveur S, en association avec lequel sont mémorisées les données d'un espace virtuel E, est connecté à ce même réseau. Les terminaux PC1 et PC2 peuvent être tout type de terminal numérique pourvu d'une mémoire, de moyens de traitement, d'une interface permettant à un utilisateur d'entrer des instructions (par exemple un clavier), et de moyens de connexion au réseau 10.
De préférence, les terminaux comportent également une interface visuelle (du type écran) permettant à un utilisateur de visualiser l'espace virtuel.
Les terminaux peuvent ainsi être des ordinateurs personnels, mais également tout type de dispositif répondant aux critères ci-dessus (assistant personnel, téléphone portable, console de jeux, etc.). Pour accéder à l'espace virtuel E, l'utilisateur associé au terminal
PC1 télécharge par l'intermédiaire du réseau 10 les données de l'espace E sur son terminal PC1.
A cet égard, l'utilisateur a ouvert une session sur le serveur S. En outre, il est prévu au niveau du serveur S des moyens pour créer un avatar A1 du terminal PC1 , c'est à dire un objet virtuel susceptible de se déplacer dans l'espace E.
Le serveur S mémorise, en association avec l'avatar A1 : • l'adresse de réseau du terminal PC1 (adresse qui est typiquement une adresse IP - Internet Protocol), ainsi que « les coordonnées de A1 dans l'espace E.
En effet, l'espace E est associé à un repère « physique » qui correspond à un repère tel que ceux qui permettent aux utilisateurs de se repérer dans le monde réel (typiquement, mais de manière non limitative, un repère bidimensionnel de type (OXY) ou de type (latitude, longitude), ou encore un repère tridimensionnel de type (OXYZ) ou de type (latitude, longitude, altitude)). Et les coordonnées de A1 dans E sont celles qui permettent de situer A1 dans l'espace E.
Les coordonnées de l'avatar A1 sont ainsi mémorisées en permanence dans une mémoire associée au serveur S, avec l'adresse de réseau du terminal PC1.
Et l'utilisateur associé au terminal PC1 peut, en entrant des instructions appropriées sur ce terminal, commander des actions de l'avatar A1 (déplacement dans l'espace E ou autres actions), ainsi que des changements d'état de cet avatar. Des ressources peuvent également être associées à l'avatar A1.
Ces ressources peuvent être de tout type (objet multimédia par exemple, mais également tout type d'attribut ou de loi de comportement spécifique à l'avatar), et être mémorisée en tout endroit du réseau 10.
Chaque ressource est ainsi repérée dans le réseau par une adresse (typiquement de type URL selon l'acronyme anglo-saxon de Uniform Resource Locator).
Et une telle URL est mémorisée en association avec les autres données relatives à l'avatar A1 , dans la mémoire associée au serveur S.
On a vu que l'utilisateur associé au terminal PC1 pouvait commander des actions et des changements d'état de l'avatar A1 , par des instructions appropriées.
Cet utilisateur peut également visualiser les effets de telles instructions sur son terminal PC1.
En effet, un programme du serveur, qui a été chargé sur le terminal PC1 en même temps que les données de l'espace E, permet à l'utilisateur de visualiser l'espace E.
Il est ainsi possible d'avoir sur l'écran de PC1 une vue de type survol, dans laquelle l'utilisateur a l'impression de survoler certaines portions de l'espace E (visualisation de type « bird eye view » selon l'expression anglo-saxonne).
Il est également possible en variante d'avoir une vue « immersive », dans laquelle l'utilisateur voit « par les yeux » de l'avatar. Dans tous les cas, la partie de l'espace E qui est visualisée par l'utilisateur est déterminée par les déplacements et les attitudes de l'avatar.
Ce qui vient d'être dit à propos du terminal PC1 et de l'avatar associé A1 est applicable au terminal PC2, et à l'avatar associé A2. Dans tous les cas, la vision offerte à l'utilisateur d'un terminal donné
(par exemple PC1) peut également comporter la représentation d'autres avatars, associés à d'autres terminaux et dont les déplacements, actions et changements d'état sont commandés par d'autres utilisateurs.
A cet effet, l'avatar (ici A1) associé au terminal constitue un « canal de communication » du serveur vers le terminal PC1 : à chaque changement intervenant dans l'espace E (introduction ou disparition d'un avatar, changement de position ou d'état d'un avatar, ou encore tout autre changement d'environnement ...), le changement est signalé par un message du serveur S adressé aux terminaux qui lui ont ouvert une session.
Chaque terminal étant repéré par son adresse de réseau mémorisée dans le serveur S en association avec l'avatar correspondant, les terminaux reçoivent effectivement de tels messages.
Et chaque utilisateur peut ainsi visualiser sur son terminal l'espace virtuel, avec les autres avatars correspondant aux autres utilisateurs.
Ils peuvent également commander les actions de leur avatar, qui peut aussi interagir avec l'espace, des objets de l'espace, et avec les autres avatars.
Ainsi, les systèmes et procédés connus qui fonctionnent en particulier selon les principes exposés ci-dessus à propos de la figure 1 permettent-ils à une pluralité d'utilisateurs de partager une expérience virtuelle (à des fins de jeu vidéo par exemple, mais aussi de simulation à toutes fins - industrielle, économique ou autre).
Mais une limitation importante liée à ces procédés et systèmes connus est que l'élaboration d'un espace virtuel nécessite généralement la mise en œuvre de nombreuses données qui occupent un espace de mémoire important sur le serveur qui héberge les données correspondantes à l'espace.
Et cette limitation concerne également les terminaux des utilisateurs, qui doivent pouvoir stocker les données correspondant à l'espace E qu'ils souhaitent visualiser et dans lequel ils souhaitent avoir une expérience virtuelle.
Cette limitation peut se traduire entre autres par la limitation
« physique » des dimensions de l'espace virtuel dans lequel un utilisateur a la possibilité de naviguer, et/ou de la qualité de la représentation (niveau de détail, textures, nombre d'avatars - et de manière plus générale d'objets virtuels - pouvant être compris dans l'espace...).
On précise qu'on connaît par l'article de Barrus J W et al : « Locales : supporting large multiuser virtual environments » un système permettant à des utilisateurs d'avoir accès à un univers virtuel. Ce système implique des relations locales entre des espaces virtuels élémentaires, en mettant en œuvre différents systèmes de coordonnées locaux, et chaque espace virtuel élémentaire ayant son propre système de coordonnées.
Une telle approche ne permet pas de s'affranchir des limitations évoquées ci-dessus.
Un but de l'invention est de permettre de s'affranchir de ces limitations.
Et un autre but de l'invention est de permettre de manière générale d'améliorer l'ergonomie de l'expérience virtuelle offerte à un utilisateur. Afin d'atteindre ces buts, l'invention propose un procédé de création et de gestion d'univers virtuel, autorisant l'accès simultané et interactif de l'univers virtuel à plusieurs utilisateurs par l'intermédiaire d'un réseau, caractérisé en ce qu'un système de coordonnées commun est associé à l'univers virtuel et aux espaces virtuels qu'il contient, et en ce que le procédé comprend :
• la définition d'au moins deux espaces virtuels distincts dudit univers, • ainsi que pour chaque espace virtuel la mémorisation sur un serveur du réseau, de données comprenant :
> des données permettant de caractériser intrinsèquement ledit espace, et > des données contenant les adresses de réseau des espaces voisins dudit espace.
Des aspects préférés, mais non limitatifs de ce procédé sont les suivants :
• l'univers virtuel est partitionné selon une ensemble de grilles hiérarchisées,
• les données associées à chaque espace virtuel peuvent être mémorisées sur un serveur respectif différent du réseau,
• le procédé comprend la connexion d'un terminal respectif de chaque utilisateur avec un serveur de gestion d'univers, qui comprend des moyens pour créer un avatar pour l'utilisateur que l'utilisateur va pouvoir déplacer dans l'univers,
• chaque utilisateur peut déplacer son avatar entre des espaces élémentaires de l'univers virtuel, en entrant dans son terminal une instruction de déplacement de l'avatar ou une instruction de coordonnées géographiques, le serveur de gestion d'univers assurant ensuite :
> la connexion avec le serveur de l'espace élémentaire visé par le déplacement de l'avatar,
> et l'envoi des données correspondant à l'espace élémentaire visé vers le terminal d'utilisateur,
• ledit envoi de données du serveur de gestion d'univers vers le terminal de l'utilisateur est effectué en fonction des instructions de déplacement fournies par l'utilisateur à son terminal,
• en fonction des déplacements de l'avatar, les données correspondant à des nouvelles portions de l'espace élémentaire qui doivent être visualisées seront chargées par le terminal, tandis que les données correspondant aux portions de l'espace que l'avatar « quitte » sont déchargées de la mémoire du terminal,
• l'utilisateur peut commander la mémorisation des coordonnées d'un point spécifique d'un espace virtuel élémentaire, et l'utilisateur peut ensuite appeler ces coordonnées mémorisées,
• en association avec les coordonnées, une adresse de réseau d'un serveur hébergeant des données d'un espace élémentaire dont les limites géographiques contiennent lesdites coordonnées est mémorisée,
• suite à l'appel des coordonnées mémorisées, le procédé comprend : > L'appel direct du serveur désigné par l'adresse de réseau afin de transférer vers ce nouveau serveur l'avatar, > L'introduction du nouvel avatar dans le nouvel espace, au point désiré,
• ladite mémorisation est faite en association avec l'avatar, ou en mémorisant cette information sur le terminal,
• les coordonnées sont mémorisées avec l'adresse de réseau du serveur hébergeant les données de l'espace élémentaire qui contient le point choisi.
D'autres aspects, buts et avantages de l'invention apparaîtront mieux à la lecture de la description suivante d'une forme de réalisation de l'invention, faite en référence aux dessins annexés sur lesquels, outre la figure 1 qui a déjà été commentée ci-dessus à propos de l'état de la technique :
• la figure 2a est un schéma illustrant un principe général de découpage spatial permettant d'associer à différents espaces virtuels d'un univers virtuel des coordonnées spatiales, ce découpage spatial pouvant mettre en œuvre différents niveaux de découpage dont les cellules forment une partition spatiale plus ou moins détaillée,
• la figure 2b illustre la coopération d'un des niveaux de découpage mentionnés ci-dessus avec l'univers virtuel, cette coopération permettant de repérer spatialement les espaces virtuels de l'univers virtuel, • la figure 3 représente une arborescence organisée selon les niveaux évoqués ci-dessus, dans laquelle les nœuds de l'arborescence correspondent aux cellules des différents niveaux de découpage évoqués ci-dessus, et dans laquelle des adresses de réseau correspondant à des serveurs sont associées à certains nœuds.
En référence tout d'abord à la figure 2a, on a représenté de manière très schématique un univers virtuel U, qui dans le cas présent est bidimensionnel.
On précise que si la description qui va suivre est faite en référence à un tel univers bidimensionnel, et met en œuvre des grilles bidimensionnelles (le rôle de ces grilles va être défini ci-après), l'invention est applicable à des univers virtuels tridimensionnels et, de manière plus générale, de dimensions quelconques.
On précise également que cette description utilise comme base certains éléments de la description précédente qui a été faite de l'état de la technique.
Ainsi, on se trouve ici encore dans une configuration où des utilisateurs différents, associés à des terminaux respectifs, souhaitent avoir accès à un espace virtuel par l'intermédiaire d'un même réseau.
L'univers U comporte comme représenté sur la figure 2a une pluralité d'espaces virtuels E1 , E2, ... En. On appellera dans ce texte ces espaces des espaces élémentaires, et on les désignera collectivement par la référence Ei.
Chaque espace Ei est inclus dans l'univers U.
Les espaces Ei peuvent former une partition spatiale (ou « géographique », ces deux termes étant équivalents dans le présent texte) de l'univers U (c'est à dire que leur réunion est équivalente à l'univers U). C'est cette configuration qui est représentée sur les figures 2a et 2b.
La réunion des espaces Ei peut également être incluse dans l'univers U, mais ne pas être égale à celui-ci. Dans ce dernier cas, certaines zones de l'univers U ne correspondent à aucun espace élémentaire. Ces zones sont dites des zones « mortes », dans lesquelles aucun utilisateur ne pourra pénétrer.
Et il est possible de définir de la sorte une partition quelconque de l'univers U ou, de manière plus générale, une répartition quelconque des espaces élémentaires dans l'univers U.
Plus particulièrement, les frontières de chaque espace Ei peuvent avoir une forme et une orientation quelconques - il n'est nullement nécessaire d'aligner les frontières des espaces Ei selon une direction quelconque. Chaque espace Ei peut ainsi avoir des frontières et des dimensions quelconques.
On précise que deux espaces élémentaires ne peuvent se chevaucher en comportant des parties communes.
Et chaque espace élémentaire est défini par : • ses frontières spatiales (on trouvera plus loin dans ce texte une description des données associées aux frontières de chaque espace, qui comprennent les adresses de réseau des deux espaces se trouvant de chaque côté de la frontière),
• ainsi que par des paramètres d'environnement « locaux » à l'espace, qui permettent de caractériser intrinsèquement l'espace :
> texture et aspect des différentes régions de l'espace,
> conditions telles que par exemple le vent ou l'ensoleillement pour une représentation physique,
> mais de manière plus générale lois de comportement des différents objets virtuels pouvant se trouver dans l'espace.
Pour chaque espace, la somme des données correspondant à la définition des frontières (en-têtes de frontières, qui seront définis en détail plus loin dans le texte), et de celles correspondant aux paramètres d'environnement locaux de l'espace, forme ce que l'on appellera « données d'espace ».
Et pour chaque espace, les données d'espace sont mémorisées sur un serveur du réseau, les données de chaque espace pouvant être mémorisées sur un serveur respectif du réseau. On reviendra sur cet aspect.
En tout état de cause, chaque serveur hébergeant les données d'un espace Ei comporte une adresse de réseau (du type adresse IP). La figure 2a représente au-dessus de l'univers U une pluralité de grilles G1 , G2, G3.
Chacune de ces grilles correspond à une partition différente de l'univers U. Ces partitions sont définies par des cellules associées à chaque grille. Plus précisément, dans l'exemple de la figure 2a la grille G1 définit un cadre général correspondant aux frontières spatiales de l'univers U. Cette grille G1 ne comporte ainsi qu'une cellule, référencée C.
On rappelle que les grilles ont la même dimension que l'univers U - dans le cas d'un univers tridimensionnel ces grilles auront donc la forme de matrices tridimensionnelles.
Et si dans l'exemple simplifié des figures 2a et 2b l'univers U est plan, ceci n'est non plus pas obligatoire.
L'univers U peut donc avoir une forme quelconque (surface courbe, régulière ou non, et de manière plus générale univers de forme et de dimensions quelconques).
Quelles que soient la dimension et la forme de l'espace U (et donc des grilles G1 , G2 et G3), un système unique de coordonnées spatiales commun est associé aux grilles (et comme on le verra également à l'univers et aux espaces élémentaires qu'il contient). On remarquera à cet égard que l'invention adopte une approche totalement opposée à celle divulguée dans l'article de Barrus J W et al : « Locales : supporting large multiuser virtual environments ».
Le système de coordonnées spatiales commun est utilisé pour définir les limites des cellules (et également comme on le verra pour permettre aux utilisateurs de se repérer dans l'univers U et dans les espaces qu'il contient). Dans le cas d'un espace bidimensionnel, on pourra ainsi utiliser par exemple des coordonnées de type (X, Y), ou (latitude, longitude), ou encore des coordonnées utilisant une notion de faisceau horaire (à l'instar du repère terrestre UTM). La grille G2 définit une partition de la cellule unique C de la grille
G1 : quatre cellules C1 , C2, C3, C4 sont ainsi définies.
On précise que le découpage de la cellule C en quatre cellules égales et régulières n'est nullement impératif ; on pourra pour constituer la grille G2 effectuer une partition quelconque de la cellule C. La grille G3 correspond à son tour à une réunion des partition des différentes cellules de G2.
G3 correspond donc à une partition différente de la grille G1 , effectuée à un niveau de détail plus fin : G3 correspond en quelque sorte à un « zoom » sur la grille G1. On remarquera ici que la partition de G3 n'est pas régulière
(comme il a été dit que celle de G2 ne l'était pas nécessairement non plus).
En effet, si chacune des cellules C1 , C3 et C4 de G2 est partitionnée en quatre cellules respectives de G3, la cellule C2 de G2 n'est quant à elle pas partitionnée dans G3. La grille G3 comporte ainsi :
• quatre cellules C11 , C12, C13, C14 qui forment une partition de la cellule C1 de la grille G2,
• quatre cellules C31 , C32, C33, C34 qui forment une partition de la cellule C3 de la grille G2, • quatre cellules C41 , C42, C43, C44 qui forment une partition de la cellule C4 de la grille G2,
• et une cellule C21 qui reprend les limites de la cellule C2 de la grille G2.
Les grilles G1 à G3 forment ainsi un ensemble de grilles ordonnées constituées selon le principe par exemple des « quadtree » ou « octree » (on trouvera ainsi à l'adresse
<http://wvvw.andrew.cmu.edu/user/sowen/topics/octree.html> un exemple de description d'un tel ordonnancement). • la grille G1 est une grille de « niveau haut », qui définit les frontières externes de l'univers que l'on souhaite mettre à disposition des utilisateurs,
• la grille G2 est une grille de niveau immédiatement inférieur, dont les cellules « zooment » sur certaines parties de la grille G1 afin de définir des cellules plus détaillées (dans l'exemple de la figure 2a, ce zoom est effectué en quatre quartiers égaux - toutefois toute répartition de l'espace correspondant à la grille G2 - et donc à l'univers U - est possible), « la grille G3 étant une grille de niveau encore inférieur, qui définit des cellules encore plus détaillées.
Il est ainsi possible selon l'invention de définir un ensemble de grilles recouvrant le même espace, avec :
• un nombre quelconque de niveaux. Plus ce nombre est important, plus la grille de niveau le plus bas (G3 dans le cas de la figure 2a) offrira une vue à un niveau de détail poussé de certaines parties au moins de l'univers U couvert par les grilles,
• des règles quelconques de partition de l'espace à chaque niveau (lesdites règles étant définies en utilisant le système de coordonnées choisi). Il est possible de partitionner une cellule donnée d'une grille de toute manière que l'on désire, pour constituer les cellules correspondantes de la grille de niveau inférieur.
Et il est possible de partitionner ou non chaque cellule d'un niveau donné, dans la grille de niveau inférieur. Ainsi certaines zones de l'univers U pourront être couvertes par des cellules définissant un niveau de détail très poussé, alors que d'autres zones de l'univers ne seront associées à aucune cellule de petites dimensions.
Dans tous les cas, l'ordonnancement des grilles définit une arborescence, dont les nœuds correspondent aux cellules. Une telle arborescence est schématiquement exposée en figure 3. Sur cette arborescence sont représentées sous forme de nœuds les cellules associées aux trois grilles G1 à G3. Les noms des grilles sont rappelés en regard de chaque niveau d'arborescence correspondant.
Revenant à la figure 2b, on a représenté l'univers U avec ses espaces élémentaires, sur lequel est superposée la grille de niveau le plus inférieur (G3 en l'occurrence - l'épaisseur des limites des cellules de G3 a été exagérée pour mieux les visualiser).
Une fonction importante des grilles est de permettre de localiser dans le système de coordonnées spatiales choisies chaque espace élémentaire Ei.
En effet, partant d'une situation où on dispose de coordonnées (par exemple d'une paire (longitude, latitude)), on peut descendre l'arborescence de la figure 3 pour identifier la cellule de niveau le plus bas contenant le point correspondant à ces coordonnées. Et aux nœuds de plus bas niveau de l'arborescence de la figure 3
(nœuds qui correspondent aux cellules de niveau le plus détaillé pour une zone spatiale donnée, et que l'on nommera « feuilles » de l'arborescence - dans la suite de ce texte par souci de simplification on assimilera la feuille, la cellule associée et le nœud d'arborescence correspondant) sont associées des informations supplémentaires.
Plus précisément, en association avec chaque feuille sont mémorisés des paramètres associés à ceux des espaces élémentaires de l'univers U dont la position spatiale dans cet univers U est telle que une partie au moins de l'espace élémentaire s'étend dans une zone couverte par la feuille.
Et pour chaque espace élémentaire ainsi couvert au moins partiellement par une feuille, sont mémorisées en association avec la feuille : • un identifiant de l'espace élémentaire, • l'adresse de réseau du serveur hébergeant les données de cet espace élémentaire, • des informations sur les frontières de l'espace. Ces informations se présentent sous la forme d'un en-tête correspondant à chaque segment de frontière de l'espace (chaque segment de frontière de l'espace étant paramétré par une équation mettant en œuvre le système de coordonnées défini). Chaque en-tête correspondant à un segment de frontière comprend :
> la définition géométrique du segment de frontière (l'équation de ce segment dans le système de coordonnées),
> ainsi qu'une information permettant d'identifier chacun des deux espaces élémentaires se trouvant de part et d'autre du segment de frontière. De préférence, cette information comprend les deux adresses de réseau des deux serveurs sur lesquels sont mémorisées les données des deux espaces respectifs.
On rappelle ici que l'univers U peut être un espace de dimension quelconque, et que l'exemple décrit ici en détail et faisant intervenir un univers U à deux dimensions n'est nullement limitatif.
Ainsi, de manière générale, dans le cas d'un univers U de dimension N, chaque en-tête correspondant à un segment de frontière comprend, outre la définition géométrique du segment de frontière, une information permettant d'identifier chacun des espaces élémentaires adjacents au segment de frontière (cette information comprenant ainsi les adresses de réseau de chacun des serveurs sur lesquels sont mémorisées les données des espaces respectifs, dont le nombre n'est ainsi pas limité à deux. On précise toutefois que dans une variante de l'invention l'en-tête ne contient pas directement les adresses de réseau des espaces élémentaires adjacents ; dans ce cas l'en-tête contient des informations permettant d'accéder à ces adresses de réseau.).
On a dit que les données évoquées ci-dessus étaient mémorisées en association avec la feuille correspondante de la grille de plus bas niveau. Plus précisément, dans l'arborescence de la figure 3 chaque feuille est associée à une adresse respective du réseau, qui est l'adresse de réseau à laquelle sont mémorisées lesdites données associées à la feuille. Les données de chaque feuille peuvent ainsi être mémorisées sur un serveur individuel ayant une adresse différente de celle des autres serveurs correspondant aux autres feuilles.
En variante, certaines adresses de serveur pour des données de 5 feuilles différentes peuvent être les mêmes (plusieurs feuilles ont leurs données mémorisées sur un même serveur).
Et il est même possible de mémoriser les données de toutes les feuilles sur le même serveur. La répartition des données de feuille entre différents serveurs est une question d'optimisation de mémorisation, et par l o suite de trafic de données.
Cette répartition sera donc décidée par le gestionnaire de l'univers (la personne ou le groupe de personnes qui définit l'univers et gère son fonctionnement).
Toute la structure décrite ci-dessus à propos de l'invention doit être 15 paramétrée par le gestionnaire d'univers. Doivent en particulier être paramétrés :
• l'univers U (avec ses frontières et son système de coordonnées spatiales associé),
• les espaces élémentaires Ei avec leurs frontières et toutes leurs
20 données, ainsi que le serveur qui héberge ces données et son adresse de réseau,
• l'arborescence des grilles de partitionnement spatial, ainsi que le partitionnement associé à chaque niveau,
• les adresses de réseau pour les données de feuille.
25 En outre, chaque nœud de l'arborescence (c'est à dire chaque cellule de l'ensemble de grilles G1 , G2, G3) peut être associé lui-même à une adresse de réseau, même s'il ne s'agit pas d'un nœud de plus bas niveau (d'une feuille).
Une telle adresse est nommée adresse de nœud intermédiaire.
30 Ceci permet de mémoriser sur un serveur de ladite adresse de réseau des caractéristiques applicables à l'ensemble de la cellule subordonnée au nœud. De telles caractéristiques peuvent par exemple être des conditions « physiques » (ensoleillement, vent ...), ou toute loi applicable aux objets virtuels susceptibles de se trouver dans un espace couvert par la cellule (la loi pouvant n'être applicable qu'à certains objets). En outre, la définition d'une adresse de nœud intermédiaire permet également à un utilisateur d'évoluer dans l'univers U à un « niveau supérieur » (cet aspect va être détaillé plus loin dans ce texte).
Partant maintenant d'une situation dans laquelle un utilisateur associé à un terminal veut se connecter à l'univers virtuel U, l'utilisateur doit commencer par se connecter à un serveur du réseau qui héberge un programme de gestion de l'univers U, pour ouvrir une session virtuelle dans l'univers U.
A cet égard, l'utilisateur connaît l'adresse de réseau dudit serveur.
On appellera un tel serveur un serveur de gestion d'univers. Il constitue pour l'utilisateur une « porte d'entrée » à l'univers U.
Et le serveur de gestion d'univers auquel l'utilisateur est connecté comprend des moyens pour se connecter lui-même à chacun des serveurs hébergeant les données des différents espaces élémentaires Ei.
Lors de la connexion de l'utilisateur au serveur de gestion d'univers, le programme de gestion crée un « avatar » pour l'utilisateur, c'est à dire un objet virtuel que l'utilisateur va pouvoir déplacer dans l'univers U.
On précise que le système de coordonnées géographiques de l'univers U est le seul référentiel connu par le terminal de l'utilisateur, les adresses de réseau des différents serveurs correspondant aux différents espaces élémentaires n'étant pas connues de ce terminal : l'utilisateur n'a besoin de connaître qu'une adresse de réseau, celle du serveur de gestion d'univers auquel il désire se connecter.
Ainsi, lorsque l'utilisateur désire déplacer son avatar dans le système de coordonnées géographiques de l'univers U, il entre dans son terminal une instruction de déplacement de l'avatar (instruction cinématique de mouvement - typiquement correspondant à un vecteur vitesse dans l'univers U), ou encore une instruction de coordonnées géographiques (instruction indiquant les coordonnées de l'univers U auxquelles l'utilisateur veut situer son avatar).
Et c'est ensuite le serveur de gestion d'univers qui va assurer :
• la connexion avec le serveur de l'espace élémentaire visé par le déplacement de l'avatar (déplacement continu par franchissement de frontière suite à une instruction cinématique, ou déplacement pouvant être de point à point dans le cas d'une instruction de changement de coordonnées),
• et l'envoi des données correspondant à l'espace élémentaire visé vers le terminal d'utilisateur (cet envoi étant effectué en prenant en compte les modalités de chargement en continu de type « streaming » évoquées ci-dessous).
On précise qu'il est possible de prévoir un nombre quelconque de serveurs de gestion d'univers pour mettre en l'œuvre l'invention, l'utilisateur pouvant se connecter à l'un quelconque de ces serveurs de gestion d'univers pour son expérience virtuelle.
Chaque serveur de gestion d'univers peut également être un serveur du réseau auquel est associé un espace élémentaire.
Et inversement, chaque serveur du réseau qui mémorise les données d'un espace élémentaire peut être un serveur de gestion d'univers - c'est à dire qu'on a chargé sur ledit serveur le programme de gestion de l'univers U, qui permet de gérer les déplacements, actions et changements d'état des avatars des utilisateurs dans les différents espaces élémentaires de l'univers U. Plusieurs possibilités sont offertes à un utilisateur désirant se connecter à l'univers virtuel U, par l'intermédiaire d'un serveur de gestion d'univers :
• dans une première variante de mise en œuvre de l'invention, l'utilisateur ne peut pas « forcer » dans le système une adresse géographique (c'est-à-dire des coordonnées spatiales de P« endroit virtuel » auquel il souhaite faire pénétrer un avatar dans l'univers U). Dans cette variante, c'est donc le serveur de gestion d'univers auquel l'utilisateur s'est initialement connecté qui impose un cadre géographique (ce cadre géographique imposé correspondant typiquement à l'espace élémentaire associé au serveur de gestion d'univers concerné).
Plus précisément encore :
> soit l'utilisateur pénétrant dans ledit cadre géographique imposé par le serveur de gestion d'univers auquel il s'est initialement connecté fait obligatoirement pénétrer son avatar dans l'univers virtuel U à un point d'entrée « origine » prédéfini et imposé dudit cadre géographique,
> soit, dans le cas où l'utilisateur dispose d'un profil mémorisé dans le serveur de gestion d'univers auquel il s'est connecté, l'avatar de l'utilisateur récupère les données de ce profil. Dans ce cas, l'avatar peut pénétrer à un endroit spécifique à l'utilisateur, et avec un état et des conditions également spécifiques : par exemple un endroit origine fixe peut être attribué à cet utilisateur, ou encore l'avatar peut pénétrer l'univers U en un endroit géographique correspondant au dernier déplacement de l'utilisateur dans l'univers virtuel U lors de sa dernière connexion ,
• dans une deuxième variante de mise en œuvre de l'invention, il est cependant possible de permettre à l'utilisateur de « forcer » des coordonnées géographiques lors de sa première connexion sur un serveur de gestion d'univers. Et dans cette deuxième variante de mise en œuvre de l'invention, on précise que ces coordonnées initiales peuvent être fournies automatiquement par un dispositif du type GPS, relié au réseau (par l'intermédiaire du terminal, ou bien le GPS constituant lui-même le terminal). Dans ce cas, les coordonnées initiales peuvent être les coordonnées réelles où se trouve l'utilisateur (dans le cas d'un univers U représentant la surface de la terre, par exemple). Pour mettre en œuvre cette deuxième variante, l'utilisateur doit donc fournir au serveur de gestion d'univers, par l'intermédiaire de son terminal, les coordonnées initiales spatiales de l'endroit virtuel auquel il souhaite faire pénétrer un avatar dans l'univers U. En fonction de ces cordonnées initiales fournies par l'utilisateur, le serveur de gestion d'univers auquel l'utilisateur s'est connecté fait exécuter une recherche dans l'arborescence des grilles, pour identifier la feuille contenant les coordonnées initiales.
Pour mener cette recherche, ce serveur de gestion d'univers peut utiliser toute technique connue.
En particulier, il peut mettre en œuvre une des deux techniques suivantes :
• selon une première technique, le serveur de gestion d'univers fait parvenir au terminal de l'utilisateur l'adresse de réseau de la cellule C de la grille de plus haut niveau (on a dit que les cellules qui ne sont pas des feuilles peuvent avoir des adresses de nœud intermédiaire). Dans ce cas, le terminal se connecte directement à cette adresse et la recherche est poursuivie avec les coordonnées initiales : le serveur associé à la cellule C reçoit également ces coordonnées initiales, et détermine, grâce à un programme chargé sur tous les serveurs du système, celle des cellules de niveau inférieur qui contient le point de l'univers correspondant (à cet effet, les adresses de nœud intermédiaire des cellules de niveau inférieur qui représentent la partition de la cellule C sont connues du serveur associé à la cellule C). L'adresse de nœud intermédiaire de la cellule de niveau inférieur sélectionnée est alors transmise au terminal de l'utilisateur, qui se connecte directement au serveur de cette dernière adresse. Le processus se poursuit ensuite en descendant les niveaux de l'arborescence, le terminal d'utilisateur se connectant successivement aux serveurs des adresses de nœud intermédiaires de niveau descendant, jusqu'à se connecter au serveur correspondant à la feuille recherchée. • En alternative et selon une deuxième technique, le serveur de gestion d'univers effectue lui-même la recherche pour le terminal, en appelant celui des serveurs associés à une adresse de nœud intermédiaire qui correspond au nœud de niveau inférieur contenant les coordonnées initiales, ce serveur sélectionnant lui-même un serveur de niveau inférieur, etc.. jusqu'à identifier l'adresse de réseau de la feuille recherchée, qui est transmise au terminal. Le terminal se connectera ensuite directement à cette adresse.
Une fois connecté au serveur associé à la feuille recherchée, le terminal de l'utilisateur fait parvenir à ce serveur les coordonnées initiales. En fonction de ces coordonnées initiales, le serveur associé à la feuille identifie l'espace élémentaire qui contient le point correspondant à ces coordonnées initiales.
En effet, on a dit que les caractéristiques des espaces élémentaires couverts au moins partiellement par une feuille - et entre autres les équations des frontières - étaient mémorisées en association avec la feuille, sur le serveur associé à la feuille.
Le serveur associé à la feuille peut ainsi identifier l'espace élémentaire qui contient le point correspondant aux coordonnées initiales. On a également dit qu'en association avec les caractéristiques de frontière de chaque espace était mémorisée l'adresse de réseau hébergeant les données de l'espace.
Ainsi, une fois l'espace élémentaire recherché identifié, le terminal a connaissance de cette adresse de réseau de l'espace élémentaire (cette adresse lui étant transmise par le serveur de feuille).
Et le terminal va ensuite se connecter au serveur correspondant à l'adresse de réseau de l'espace élémentaire.
En variante, il est possible que le terminal reste connecté uniquement au serveur de gestion d'univers pendant toute sa session, le serveur de gestion d'univers se connectant lui-même aux serveurs d'espace élémentaire appelés Dans les deux cas, ce serveur va alors créer pour l'utilisateur un avatar, comme dans l'état de la technique décrit en introduction de ce texte.
On précise que ce qui a été décrit ci-dessus est applicable non seulement à l'introduction de l'avatar en un « endroit » désiré, mais également au déplacement point à point - non continu dans le repère géographique - d'un avatar.
En variante, il est possible qu'un avatar déjà créé par l'utilisateur ait été mémorisé par le serveur de gestion d'univers (à la manière d'un « cookie » d'avatar, qui enregistrerait les caractéristiques et propriétés de l'avatar) - dans ce cas les données de cet avatar peuvent être automatiquement chargées dans le serveur correspondant à l'adresse de réseau de l'espace élémentaire.
Le terminal de l'utilisateur va également charger du serveur associé à l'espace élémentaire des données de l'espace élémentaire, de manière similaire à ce qui se produit dans l'état de la technique.
Il est toutefois à noter que selon une variante avantageuse de l'invention, le terminal ne charge pas la totalité des données de l'espace élémentaire dans sa mémoire (alors que c'est le cas dans les systèmes connus de l'état de la technique). Dans le cas de l'invention au contraire, le terminal ne charge que les données nécessaires à la reconstitution des portions de l'espace élémentaire qui doivent être visibles par l'utilisateur (les dimensions de ces portions variant selon le type de visualisation - par exemple survol ou immersive), selon la position de l'avatar : seules les portions entourant l'avatar seront chargées (dans un rayon à définir).
A cet égard, en fonction des déplacements de l'avatar, les données correspondant à des nouvelles portions de l'espace élémentaire qui doivent être visualisées seront chargées par le terminal.
Et dans le même temps, les données correspondant aux portions de l'espace que l'avatar « quitte » - c'est à dire que l'utilisateur n'est plus censé visualiser - sont déchargées de la mémoire du terminal. Cette disposition de chargement « en continu » (« streaming » en anglais) permettent d'améliorer les performances du système.
Et le fait que le streaming soit commandé par les déplacements de l'avatar, eux-mêmes commandés par l'utilisateur via son terminal, augment la réactivité et l'ergonomie du système.
Le fonctionnement du serveur associé à l'espace élémentaire dans lequel l'avatar a été créé est par ailleurs similaire au fonctionnement décrit en introduction à propos des systèmes de l'état de la technique (évolution dans l'espace, visualisation d'autres avatars et interaction avec l'espace et les autres avatars...).
Et c'est ce serveur associé à l'espace élémentaire qui va gérer les déplacements de l'avatar, commandés par l'utilisateur (toujours comme dans le cas de l'état de la technique décrit précédemment).
Lorsque maintenant lors de ses déplacements, l'avatar d'un utilisateur arrive à un segment de frontière de l'espace élémentaire dans lequel il se trouve, l'invention permet à l'avatar de poursuivre son déplacement, au lieu de « buter » sur la frontière de l'espace comme dans le cas des système connus.
En effet, les données d'espace comprenant comme cela a été dit les adresses de réseau des deux espaces élémentaires se trouvant de part et d'autre de chaque segment de frontière, le serveur associé à l'espace élémentaire dont l'avatar est en train de sortir dispose de l'adresse de réseau du serveur associé à l'espace élémentaire situé de l'autre côté de la frontière. Le serveur associé à l'espace élémentaire dont l'avatar est en train de sortir transmet donc :
• Au terminal de l'utilisateur (dont il a l'adresse de réseau, associée à l'avatar)
> les coordonnées spatiales de l'avatar, « Au serveur associé à l'espace élémentaire situé de l'autre côté de la frontière,
> une requête de connexion pour autoriser la connexion du terminal, et > des paramètres d'état de l'avatar (coordonnées de l'endroit de passage de frontière, vitesse et sens de déplacement, éventuellement d'autres paramètres d'état ...), afin que le serveur associé au nouvel espace élémentaire gère dans la continuité la pénétration de l'avatar. Ces paramètres sont transmis par des protocoles et selon les formats connus (XML®, sérialisation).
L'avatar de l'utilisateur est alors créé dans le « nouvel » espace élémentaire situé de l'autre côté de la frontière, et cet avatar évolue dans ce nouvel espace élémentaire, dans lequel il peut interagir avec les autres avatars de cet espace, ainsi qu'avec les divers objets virtuels de ce nouvel espace.
Et l'avatar créé de la sorte hérite des coordonnées d'entrée, des paramètres cinématiques et éventuellement d'autres paramètres d'état de P « ancien » avatar, qui peut quant à lui avoir été détruit de la mémoire du serveur de P « ancien » espace élémentaire.
L'avatar peut être créé dans le nouvel espace en y étant mémorisé avec l'adresse de réseau du terminal de l'utilisateur : de la sorte, l'avatar prend l'initiative d'envoyer au terminal une information de changement d'espace élémentaire. L'utilisateur a quant à lui l'illusion de piloter toujours le même avatar, en ayant changé d'espace élémentaire (ce changement pouvant tout à fait être imperceptible à l'utilisateur).
Il est à noter que les avatars peuvent par ailleurs, comme cela a été mentionné à propos de l'état de la technique, être associés à des ressources qui leur sont propres.
Ces ressources demeurent mémorisées en un endroit du réseau qui demeure fixe, et qui est repéré par une adresse de réseau URL (ou une adresse géographique), mémorisée en permanence avec l'avatar, dans le serveur correspondant à l'espace élémentaire dans lequel l'avatar évolue. II apparaît ainsi que l'invention permet à des utilisateurs non seulement de se connecter par l'intermédiaire d'un même réseau pour partager une expérience virtuelle, mais également de passer sans aucune limitation spatiale d'un espace élémentaire à l'autre.
Et les données des différents espaces élémentaires pouvant être répartis sur un nombre quelconque de serveurs, les dimensions de l'univers offert aux utilisateurs sont illimitées.
L'invention fournit des moyens de répartition d'adresses de réseau de ces différents serveurs, à partir d'une clé de répartition « géographique », les coordonnées mises en œuvre dans l'univers U pouvant être tout type de coordonnées naturelles et intuitives. II est également possible de mettre en œuvre l'invention pour permettre à un utilisateur de changer d'espace élémentaire « à haut niveau ».
Cette possibilité est intéressante dans le cas de déplacements « point a point ». Un utilisateur se trouvant dans un espace élémentaire peut en effet désirer déplacer son avatar vers un autre espace élémentaire, situé à grande distance (en utilisant une « distance » fondée sur le système de coordonnées géographiques utilisé).
Par exemple, un utilisateur peut vouloir se déplacer de Paris à San Francisco dans un univers U correspondant à la surface de la terre.
A cet effet, l'utilisateur a la possibilité d'indiquer par une commande appropriée envoyée au serveur de l'espace dans lequel l'avatar de l'utilisateur se trouve, qu'il souhaite se déplacer « à haut niveau ».
Le serveur associé à l'espace dans lequel l'avatar se trouve va traiter une telle requête comme un passage de frontière - la seule différence avec ce qui a été exposé plus haut à propos du passage de frontière « classique » étant que dans ce cas le serveur vers lequel les données liées à l'avatar vont être dirigées, serveur qui va lui-même créer un nouvel avatar correspondant, est un serveur d'un nœud intermédiaire situé « au-dessus » de l'espace de départ dans l'arborescence.
Et l'avatar pourra ainsi être transféré entre nœuds intermédiaires du même niveau, ces nœuds intermédiaires ne correspondant pas à des espaces élémentaires mais à des cellules d'un certain niveau de grille permettant de « déplacer » l'avatar dans l'espace avec des pas d'espace importants.
Il est également possible au terminal de l'utilisateur de mémoriser les coordonnées d'un point spécifique d'un espace virtuel élémentaire, en association avec l'avatar ou en mémorisant cette information sur le terminal.
Cette mémorisation est commandée par une instruction adaptée que l'utilisateur entre sur son terminal. Dans tous les cas, les coordonnées sont mémorisées avec l'adresse de réseau du serveur hébergeant les données de l'espace élémentaire dont les limites géographiques contiennent les coordonnées du point choisi.
Et la mémorisation de ces données (coordonnées + adresse de réseau du serveur correspondant) permet de constituer un repère (« bookmark » selon la terminologie anglo-saxonne répandue) auquel l'utilisateur peut à tout moment faire appel pour :
• provoquer un appel direct du serveur désigné par l'adresse de réseau, appel effectué par le serveur de gestion d'univers auquel l'utilisateur est connecté, afin de « transférer » vers ce nouveau serveur l'avatar (plus précisément d'y recréer un avatar héritant de paramètres de l'ancien avatar),
• et introduire le nouvel avatar dans le nouvel espace au point désiré.
On précise que dans le cas où les déplacements de l'avatar d'un utilisateur sont limités à l'intérieur du même espace élémentaire, il est possible de constituer des bookmarks simplifiés ne comprenant que les coordonnées géographiques du point associé.
Dans ce cas en effet, il n'est pas nécessaire de mémoriser une adresse du réseau d'un serveur différent du serveur de gestion d'univers sur lequel l'utilisateur se connecte normalement.

Claims

REVENDICATIONS
1. Procédé de création et de gestion d'univers virtuel (U), autorisant 5 l'accès simultané et interactif de l'univers virtuel à plusieurs utilisateurs par l'intermédiaire d'un réseau (10), caractérisé en ce qu'un système de coordonnées commun est associé à l'univers virtuel et aux espaces virtuels qu'il contient, et en ce que le procédé comprend :
• la définition d'au moins deux espaces virtuels (Ei) distincts dudit 0 univers,
• ainsi que pour chaque espace virtuel la mémorisation sur un serveur du réseau, de données comprenant :
> des données permettant de caractériser intrinsèquement ledit espace, et 5 > des données contenant les adresses de réseau des espaces voisins dudit espace.
2. Procédé selon la revendication précédente, caractérisée en ce que chaque espace virtuel est défini par ses frontières spatiales, ainsi que o par des paramètres d'environnement locaux à l'espace.
3. Procédé selon l'une des revendications précédentes, caractérisé en ce que les données mémorisées pour chaque espace virtuel comprennent : 5 • un identifiant de l'espace virtuel,
• l'adresse de réseau du serveur hébergeant les données de cet espace virtuel,
• des informations sur les frontières de l'espace.
0 4. Procédé selon la revendication précédente, caractérisé en ce que lesdites informations sur les frontières de l'espace se présentent sous la forme d'un en-tête correspondant à chaque segment de frontière de l'espace, chaque en-tête comprenant :
• la définition géométrique du segment de frontière,
• une information permettant d'identifier chacun des espaces virtuels 5 se trouvant de part et d'autre du segment de frontière.
5. Procédé selon la revendication précédente, caractérisé en ce que ladite information permettant d'identifier chacun des espaces virtuels se trouvant de part et d'autre du segment de frontière, comprend les deux 0 adresses de réseau des deux serveurs sur lesquels sont mémorisées les données des deux espaces virtuels respectifs.
6. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'univers virtuel est partitionné selon un ensemble de grilles (G1 , 5 G2, G3) hiérarchisées, chacune de ces grilles correspondant à une partition différente de l'univers virtuel.
7. Procédé selon l'une des revendications précédentes, caractérisé en ce que les données associées à chaque espace virtuel peuvent être o mémorisées sur un serveur respectif différent du réseau.
8. Procédé selon l'une des revendications précédentes, caractérisé en ce que le procédé comprend la connexion d'un terminal respectif de chaque utilisateur avec un serveur de gestion d'univers, qui comprend 5 des moyens pour créer un avatar pour l'utilisateur que l'utilisateur va pouvoir déplacer dans l'univers.
9. Procédé selon la revendication précédente, caractérisé en ce que chaque utilisateur peut déplacer son avatar entre des espaces 0 élémentaires de l'univers virtuel, en entrant dans son terminal une instruction de déplacement de l'avatar ou une instruction de coordonnées géographiques, le serveur de gestion d'univers assurant ensuite :
• la connexion avec le serveur de l'espace élémentaire visé par le déplacement de l'avatar, • et l'envoi des données correspondant à l'espace élémentaire visé vers le terminal d'utilisateur.
10. Procédé selon l'une des revendications précédentes, caractérisé en ce que ledit envoi de données du serveur de gestion d'univers vers le terminal de l'utilisateur est effectué en fonction des instructions de déplacement fournies par l'utilisateur à son terminal.
11. Procédé selon la revendication précédente, caractérisé en ce que en fonction des déplacements de l'avatar, les données correspondant à des nouvelles portions de l'espace élémentaire qui doivent être visualisées seront chargées par le terminal, tandis que les données correspondant aux portions de l'espace que l'avatar « quitte » sont déchargées de la mémoire du terminal.
12. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'utilisateur peut commander la mémorisation des coordonnées d'un point spécifique d'un espace virtuel élémentaire, et l'utilisateur peut ensuite appeler ces coordonnées mémorisées.
13. Procédé selon la revendication précédente, caractérisé en ce que en association avec les coordonnées, une adresse de réseau d'un serveur hébergeant des données d'un espace élémentaire dont les limites géographiques contiennent lesdites coordonnées est mémorisée.
14. Procédé selon la revendication précédente, caractérisé en ce que suite à l'appel des coordonnées mémorisées, le procédé comprend : • L'appel direct du serveur désigné par l'adresse de réseau afin de transférer vers ce nouveau serveur l'avatar,
• L'introduction du nouvel avatar dans le nouvel espace, au point désiré.
15. Procédé selon l'une des deux revendications précédentes, caractérisé en ce que ladite mémorisation est faite en association avec l'avatar, ou en mémorisant cette information sur le terminal.
16. Procédé selon l'une des trois revendications précédentes, caractérisé en ce que les coordonnées sont mémorisées avec l'adresse de réseau du serveur hébergeant les données de l'espace élémentaire qui contient le point choisi.
EP02799767A 2001-12-03 2002-12-03 Procede de creation et de gestion d univers virtuel Withdrawn EP1453582A1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0115583A FR2833101B1 (fr) 2001-12-03 2001-12-03 Procede de creation et de gestion d'univers virtuel
FR0115583 2001-12-03
PCT/FR2002/004148 WO2003047709A1 (fr) 2001-12-03 2002-12-03 Procede de creation et de gestion d'univers virtuel

Publications (1)

Publication Number Publication Date
EP1453582A1 true EP1453582A1 (fr) 2004-09-08

Family

ID=8870033

Family Applications (1)

Application Number Title Priority Date Filing Date
EP02799767A Withdrawn EP1453582A1 (fr) 2001-12-03 2002-12-03 Procede de creation et de gestion d univers virtuel

Country Status (4)

Country Link
US (1) US20060031578A1 (fr)
EP (1) EP1453582A1 (fr)
FR (1) FR2833101B1 (fr)
WO (1) WO2003047709A1 (fr)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050081086A1 (en) * 2003-10-10 2005-04-14 Xiotech Corporation Method, apparatus and program storage device for optimizing storage device distribution within a RAID to provide fault tolerance for the RAID
JP4898529B2 (ja) * 2007-04-06 2012-03-14 株式会社エヌ・ティ・ティ・ドコモ エリア案内装置およびプログラム
CN101071457B (zh) * 2007-04-28 2010-05-26 腾讯科技(深圳)有限公司 一种网络游戏中改变角色形象的方法、装置以及服务器
US8713181B2 (en) * 2007-08-03 2014-04-29 International Business Machines Corporation Method for transferring inventory between virtual universes
JP2009059091A (ja) * 2007-08-30 2009-03-19 Sega Corp 仮想空間提供システム、仮想空間提供サーバ、仮想空間提供方法及び仮想空間提供プログラム
US8140982B2 (en) * 2007-11-08 2012-03-20 International Business Machines Corporation Method and system for splitting virtual universes into distinct entities
US8167724B2 (en) * 2007-12-10 2012-05-01 Gary Stephen Shuster Guest management in an online multi-player virtual reality game
US8606610B2 (en) * 2007-12-20 2013-12-10 Ncr Corporation Business process simulation testing for bank branches using avatars
US20090193343A1 (en) * 2008-01-24 2009-07-30 International Business Machines Corporation Method for avoiding virtual world fatigue by maintaining avatar characteristics in an avatar wallet
US7921128B2 (en) * 2008-02-05 2011-04-05 International Business Machines Corporation Method and system for merging disparate virtual universes entities
US8539364B2 (en) * 2008-03-12 2013-09-17 International Business Machines Corporation Attaching external virtual universes to an existing virtual universe
US8358302B2 (en) * 2008-04-22 2013-01-22 International Business Machines Corporation Dynamic creation of virtual regions
US7870074B2 (en) 2008-05-14 2011-01-11 International Business Machines Corporation Dynamic transferring of avatars between virtual universes
US8248404B2 (en) * 2008-05-19 2012-08-21 International Business Machines Corporation Event determination in a virtual universe
US8271475B2 (en) * 2008-05-27 2012-09-18 International Business Machines Corporation Application of user context to searches in a virtual universe
US8799787B2 (en) * 2008-05-27 2014-08-05 International Business Machines Corporation Explicit use of user context objects in a virtual universe
KR20100002756A (ko) * 2008-06-30 2010-01-07 삼성전자주식회사 매트릭스 블로깅 시스템 및 서비스 제공 방법
US8681144B2 (en) 2008-12-19 2014-03-25 International Business Machines Corporation Prioritized rendering of objects in a virtual universe
US9805492B2 (en) 2008-12-31 2017-10-31 International Business Machines Corporation Pre-fetching virtual content in a virtual universe
US10290007B2 (en) * 2009-01-22 2019-05-14 International Business Machines Corporation Method and system for turning virtual world participants into real life leads
US8441486B2 (en) * 2009-04-27 2013-05-14 Jagex Ltd. Position tracking in a virtual world
US8990306B2 (en) 2009-05-28 2015-03-24 International Business Machines Corporation Pre-fetching items in a virtual universe based on avatar communications
US9256896B2 (en) * 2009-08-27 2016-02-09 International Business Machines Corporation Virtual universe rendering based on prioritized metadata terms
US8326855B2 (en) * 2009-12-02 2012-12-04 International Business Machines Corporation System and method for abstraction of objects for cross virtual universe deployment
WO2012053001A2 (fr) * 2010-10-18 2012-04-26 Tata Consultancy Services Limited Environnement de bureau virtuel
US10521520B2 (en) * 2013-02-14 2019-12-31 Nocturnal Innovations LLC Highly scalable cluster engine for hosting simulations of objects interacting within a space
US10188952B1 (en) * 2015-12-18 2019-01-29 Controlled Protocols, Inc. Method for dynamically mapping servers
CN114595299B (zh) * 2022-02-13 2024-05-17 厦门精图信息技术有限公司 基于三维gis平台的元宇宙时空编码方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659691A (en) * 1993-09-23 1997-08-19 Virtual Universe Corporation Virtual reality network with selective distribution and updating of data to reduce bandwidth requirements
US6020885A (en) * 1995-07-11 2000-02-01 Sony Corporation Three-dimensional virtual reality space sharing method and system using local and global object identification codes
US5956028A (en) * 1995-09-14 1999-09-21 Fujitsu Ltd. Virtual space communication system, three-dimensional image display method, and apparatus therefor
US6219045B1 (en) * 1995-11-13 2001-04-17 Worlds, Inc. Scalable virtual world chat client-server system
JPH1040232A (ja) * 1996-07-19 1998-02-13 Fujitsu Ltd 通信装置
US5802296A (en) * 1996-08-02 1998-09-01 Fujitsu Software Corporation Supervisory powers that provide additional control over images on computers system displays to users interactings via computer systems
US5675721A (en) * 1996-08-08 1997-10-07 Freedman; Aaron S. Computer network data distribution and selective retrieval system
JP3799134B2 (ja) * 1997-05-28 2006-07-19 ソニー株式会社 システムおよび通知方法
GB9722343D0 (en) * 1997-10-22 1997-12-17 British Telecomm Distributed virtual environment
US6396509B1 (en) * 1998-02-21 2002-05-28 Koninklijke Philips Electronics N.V. Attention-based interaction in a virtual environment
US6380952B1 (en) * 1998-04-07 2002-04-30 International Business Machines Corporation System for continuous display and navigation in a virtual-reality world
US6731314B1 (en) * 1998-08-17 2004-05-04 Muse Corporation Network-based three-dimensional multiple-user shared environment apparatus and method
JP2000076487A (ja) * 1998-09-03 2000-03-14 Sony Corp 情報処理装置および方法、並びに提供媒体
JP4232231B2 (ja) * 1998-09-30 2009-03-04 ソニー株式会社 情報処理装置および方法、並びに記録媒体
JP4232232B2 (ja) * 1998-09-30 2009-03-04 ソニー株式会社 情報処理装置および方法、並びに記録媒体
US6628287B1 (en) * 2000-01-12 2003-09-30 There, Inc. Method and apparatus for consistent, responsive, and secure distributed simulation in a computer network environment
GB2359704B (en) * 2000-02-26 2002-05-08 Proksim Software Inc Sharing a computer-generated environment
GB0008836D0 (en) * 2000-04-12 2000-05-31 Univ Nottingham Virtual environments
JP2002197376A (ja) * 2000-12-27 2002-07-12 Fujitsu Ltd ユーザに応じてカストマイズされた仮想世界を提供する方法および装置
US7269632B2 (en) * 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO03047709A1 *

Also Published As

Publication number Publication date
FR2833101A1 (fr) 2003-06-06
WO2003047709A1 (fr) 2003-06-12
US20060031578A1 (en) 2006-02-09
FR2833101B1 (fr) 2004-07-02

Similar Documents

Publication Publication Date Title
EP1453582A1 (fr) Procede de creation et de gestion d univers virtuel
Westphal Challenges in networking to support augmented reality and virtual reality
US6708172B1 (en) Community-based shared multiple browser environment
EP1457023B1 (fr) Procede de transmission d&#39;objets entre un serveur et un terminal client mettant en oeuvre une gestion de cache
Botev et al. The HyperVerse: concepts for a federated and Torrent-based'3D Web'
Neumann et al. Challenges in peer-to-peer gaming
EP2511842B1 (fr) Consultation de maquettes numériques à partir de postes légers
FR2842057A1 (fr) Procede et dispositif de traitement de donnees dans un reseau de communication
Nguyen et al. Optimal assignment of distributed servers to virtual partitionsfor the provision of immersive voice communicationin massively multiplayer games
Hu et al. Peer-to-peer 3d streaming
Moll et al. A Quadtree-based synchronization protocol for inter-server game state synchronization
Chewslack-Postava et al. A scalable server for 3D metaverses
US20070180385A1 (en) Apparatus for visual navigation of large, complex out-of-band and in-band network management and access entities
Horn et al. Scaling virtual worlds with a physical metaphor
Li et al. Determining optimal update period for minimizing inconsistency in multi-server distributed virtual environments
FR2836731A1 (fr) Procede pour la realisation et la mise en oeuvre d&#39;un systeme de communication multifonctionnel et systeme obtenu conformement audit procede
Oliveira et al. Analysis domain model for shared virtual environments
Manriquez et al. A digital TV-based distributed image processing platform for natural disasters
Rischbeck et al. A scalable, multi-user VRML server
US11943265B2 (en) Videoconferencing meeting slots via specific secure deep links
US20240048599A1 (en) Videoconferencing meeting slots via specific secure deep links
WO2001046840A2 (fr) Environnement d&#39;exploration multiple partage communautaire
Chan et al. Secure peer-to-peer 3d streaming
Karunasekera et al. P2p middleware for massively multi-player online games
FR3003717A1 (fr) Environnement informatique pour executer de facon partagee sur les postes clients des applications avec contenus et actions synchronises

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20040705

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SI SK TR

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: DOTVISION

17Q First examination report despatched

Effective date: 20080102

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20110217