EP2229628A2 - Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant - Google Patents

Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant

Info

Publication number
EP2229628A2
EP2229628A2 EP08865136A EP08865136A EP2229628A2 EP 2229628 A2 EP2229628 A2 EP 2229628A2 EP 08865136 A EP08865136 A EP 08865136A EP 08865136 A EP08865136 A EP 08865136A EP 2229628 A2 EP2229628 A2 EP 2229628A2
Authority
EP
European Patent Office
Prior art keywords
user
virtual environment
transfer
representations
virtual
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
EP08865136A
Other languages
German (de)
English (en)
Inventor
Louis Pare
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.)
Orange SA
Original Assignee
France Telecom SA
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 France Telecom SA filed Critical France Telecom SA
Publication of EP2229628A2 publication Critical patent/EP2229628A2/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5033Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering data affinity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/535Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for monitoring, e.g. of user parameters, terminal parameters, application parameters, network parameters
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar

Definitions

  • a method of managing a set of control entities of a virtual environment, device, and corresponding computer program product is a method of managing a set of control entities of a virtual environment, device, and corresponding computer program product.
  • the present invention relates to the computer management of virtual environments, for example "virtual worlds", for example enabling users to meet in a virtual manner, via their respective terminals. More specifically, the invention relates to the management of a set of entities (servers or software) each managing one of these environments or virtual worlds, in a virtual world management computer system.
  • a virtual environment can be seen as a representation of a particular universe in which real-world users are present, in the form of avatars.
  • An avatar is a representation, using a set of parameters, of a user.
  • Such a representation can be in the form of an image or an animated object.
  • immersion such a representation generally corresponds to the result of calculations, sometimes complex, made from different parameters specific to a user.
  • Such a representation can be in two or three dimensions and evolve in real time as well according to parameters and / or actions performed by the user in the virtual world as a function of actions performed by other users (or by their respective avatars) evolving within the same virtual world.
  • a virtual world is said to be "immersive" when the user is immersed in it by means of a representation of a space and users, for example in three dimensions. We are talking about immersion of the user. 2 SOLUTIONS OF THE PRIOR ART In a virtual world, encounters between avatars allow the interlocutors represented by these avatars to exchange with each other. When a virtual world is successful, it raises a particular issue related to the influx generated by the attractiveness of users for this virtual world.
  • the resources needed to manage all the avatars of a virtual world are not extensible indefinitely. Indeed, to implement a virtual world, a set of resources must be available. These include computer resources (such as servers or network means) that a service provider is provided with. Such computer servers have as their main task the repercussion of the evolutions of each avatar with all the other avatars present in the same virtual world they share. When the number of avatars present in a virtual world increases, the server (or the group of servers) managing this world must manage such evolutions, most often linear, sometimes even exponentially in terms of climb, or more generally load variations.
  • the display of all avatars present may therefore pose load management problems when the number of these avatars increases significantly, especially for low power terminals.
  • resources are often used, within the client stations (that is to say posts of the users of the virtual world) to calculate and realize the display of scenes (using specific languages, such as VRML, from "Virtual Reality Modeling Language” for "Virtual Reality Modeling Language”).
  • Such calculations are power consumers on user terminals (use of one or more microprocessors, virtual memory, etc.).
  • a high number of avatars also poses a direct problem for the user, who then has difficulties to understand all the avatars present in his environment. For example, in the case of a virtual world intended to encourage meetings with other people in the virtual world by avatar interposed, the presence of a thousand avatars may be counterproductive (in the same way that it would be difficult to establish a meeting in a crowd of a thousand people).
  • a commonly accepted current limitation of avatars management within a virtual world is about a few hundred avatars simultaneously hosted on an entry-level hardware server. This limit is quickly reached in the virtual worlds put on line on the Internet, or even exceeded by several thousand simultaneous users in the case of successful online sites.
  • a problem with this technique of the prior art therefore lies in the manner of managing the change of world from the point of view of the users and from the point of view of the control entities on the servers. Indeed, this architecture obligatorily causes a partitioning of the worlds.
  • service providers build several virtual worlds connected by more or less visible passages, often called "doors". The problem then lies technically in the synchronization of the "doors" between the worlds, and economically in the cost of achieving the design of each of these worlds.
  • This approach however, has the advantage of transparency for the customer but at the cost of a high cost and a long implementation of server equipment extensions, that is to say additional servers.
  • the solution proposed by the invention does not have these disadvantages of the prior art. It concerns a method of managing a set of entities each controlling a virtual environment in which user representations evolve.
  • such a method comprises the following steps: monitoring at least one characteristic of each of said entities and / or at least one characteristic of said corresponding virtual environment; proposing the transfer and / or transfer of at least one of said user representations from a first virtual environment to a second virtual environment, depending on the one or more monitored characteristics.
  • a control entity of a virtual environment may in particular be a server, or an instance of a control program of a virtual environment (or world), especially in the case where the same server controls several virtual environments. According to the invention, it is the device for managing virtual environments
  • the transfer proposal made by the management device is not random, but takes into account objective, technical characteristics (server load for example) or representative of the state of the virtual world considered (number and / or typology of representations). .
  • This approach implemented by the management device, can also make it possible, at least in certain embodiments, to optimize objectively the chances of success (for example the chances of a wanted person meeting) for each user.
  • the method comprises, prior to said step of proposing transfer and / or transfer, a step of controlling a possibility of transferring said at least one user representation to said second virtual environment.
  • control step comprises the following sub-steps: detecting the existence of a communication initiated between said user representation and at least one other user representation; authorization of said step of proposing transfer and / or transfer if said detection is negative.
  • the method of the invention makes it possible to prevent a representation of the user from being transferred to a virtual environment even though this user is not available to do so. Thus, for example, if a user has entered into communication with another user through his representation, he is not moved to the destination virtual environment.
  • the invention makes it possible to respect the actions that are performed by the avatar of the user.
  • said transfer and / or transfer proposal step comprises the following sub-steps: a proposal made to said user to transfer his representation of said first virtual environment to said second virtual environment; processing a response received from said user following said proposal sub-step so as to determine his agreement or refusal on a transfer of his representation; in case of agreement of said user, transferring the representation of said user from said first virtual environment to said second virtual environment.
  • the invention makes it possible to subordinate the transfer to an agreement of the user.
  • the user thus has a right to look at his transfer. It can refuse this transfer and stay in the virtual environment in which it is located. Such a case may for example occur when the user wants to meet an avatar of another user at a specific time and he does not want to change location.
  • said monitoring step comprises the following sub-steps: obtaining at least one piece of information representative of a characteristic of said user, called user data; comparing said one or more user data with corresponding data from at least one other user present in each of the virtual environments; selecting said second virtual environment in which a transfer is to be operated, based on the results of said comparison.
  • said comparison step implements a calculation of a distance between the one or more user data, in order to determine in each of said environments at least one set of representations of close users, according to said distance, of the user representation. to transfer, and in that said selecting step selects a virtual environment in which said one or more sets, determined in said comparing step, comprise the largest number of representations.
  • the invention makes it possible to take into account the characteristics of the user when identifying a destination virtual environment. Such consideration of the user thus makes it possible to transfer the user to an environment that suits him. Indeed, the load balancing achieved by the method of the invention then allows in addition to satisfy the user since we take into account its characteristics.
  • a characteristic taken into account can be, for example, the age, the sex, the size of the user as such, or of a person that this user would like to meet.
  • This list of characteristics is of course not limiting and may include any characteristic that can be defined for a user.
  • the selection of a destination virtual environment is then carried out taking into account the population contained in this virtual environment, namely the set of characteristics of other users that best correspond to the characteristics of the user to be transferred.
  • said monitoring step comprises a substep of controlling the distribution of user representations in each of said virtual environments, according to at least one predetermined distribution parameter.
  • said predetermined distribution parameter belongs to the group comprising at least: a number of user representations per virtual environment; a parameter representative of a predefined distribution, in terms of number of representations, between at least two groups of users each having at least one similar characteristic; a load balancing parameter of at least one management entity of at least one virtual environment.
  • the invention makes it possible to adjust the load of the servers implementing the virtual environments while respecting distribution parameters representations of these users within the virtual environments in which they are transferred.
  • a distribution parameter can be: two hundred simultaneous representations in the virtual environment and / or an equal distribution of men and women and / or a Gaussian distribution of representations according to the size of the users to which the representations belong and / or a uniform distribution of representations according to the hair color of the users to which the representations belong and / or a load of fifty percent of machine power consumption on the server in nominal mode, etc.
  • said monitored characteristics belong to the group comprising at least: information representative of consumption by said entity of a resource greater than a determined ceiling; an information representative of a consumption by said entity of a resource below a determined threshold; a number of user representations lower than a determined threshold in said first virtual environment; a number of user representations greater than a determined threshold in said first virtual environment; a scheduled triggering period periodically; a triggering moment randomly programmed.
  • the invention makes it possible to condition the occurrence of a transfer of a representation of a user to a particular event.
  • the invention therefore makes it possible not to constantly transfer a user, which guarantees an optimum quality of service with respect to the user.
  • the transfer of the user can thus take place, for example, when the server that hosts the virtual environment in which its representation is reached reaches a ceiling of resource consumption determined (for example a consumption in terms of memory on the server, in terms of bandwidth for exchanges between servers, a load of a microprocessor on the server ...), which can lead to a bad quality of service (because the interaction with this virtual environment becomes slower) or when contrary, a threshold of resource consumption on the server is reached or when, during a continuous update procedure, a transfer initiation time is programmed for the representation of the user.
  • a ceiling of resource consumption determined for example a consumption in terms of memory on the server, in terms of bandwidth for exchanges between servers, a load of a microprocessor on the server .
  • the invention also relates to a device for managing a set of entities each controlling a virtual environment in which representations of a user evolve.
  • a device for managing a set of entities each controlling a virtual environment in which representations of a user evolve comprises: means for monitoring at least one characteristic of each of said entities and / or at least one characteristic of said corresponding virtual environment; proposing means for transferring and / or transferring at least one of said user representations from a first virtual environment to a second virtual environment, according to the one or more monitored characteristics.
  • Such a device is particularly suitable for implementing the management method described above.
  • This is for example a central server managing servers, or entities on servers, hosting one or more virtual environments as described above. It can also be a server hosting one or more virtual environments and also managing other servers hosting other virtual environments.
  • the invention also relates to a computer program product downloadable from a communication network and / or stored on a computer readable medium and / or executable by a microprocessor, comprising program code instructions for executing the management method. as previously described. 4 LIST OF FIGURES
  • FIG. 1 illustrates an example of a general system for implementing the method of the invention
  • Figure 2 shows the main steps of the method according to one embodiment of the invention, in a system such as that shown in Figure 1
  • FIG. 3 shows a sequence diagram for triggering the process by a first event
  • Fig. 4 shows a sequence diagram for triggering the process by a second event
  • FIG. 5 shows the structure of a transfer device implementing the transfer method according to a particular embodiment of the invention.
  • the invention makes it possible to optimize the management of servers, or control entities on servers that support the implementation of virtual worlds, in terms of load and / or response to users' expectations, by proposing data transfers. avatar based on one or more characteristics monitored by a management device.
  • the invention makes it possible to propose a transfer and / or to transfer representations of users in a destination virtual world based on server characteristics monitoring, or control entities on servers, controlling the virtual worlds and / or features of virtual worlds themselves, without prior research or action on the part of the 'user.
  • the monitored characteristics can for example be the load, the consumption of one or more resources ...
  • the monitored characteristics can for example be a distribution of avatars within each monitored world such as for example two hundred avatars at the same time in the same virtual world, an equal distribution of men and women, a Gaussian or uniform distribution of avatars according to characteristics such as the size, the hair color of the users represented, etc.
  • the monitored characteristics can also correspond to a calculation of the distance between the characteristics of the different users, if necessary with appropriate weightings, so as to distribute the users in order to place them in the "best of all worlds", or the corresponding world. a priori and objectively the most to their expectations, for example a world in which they have the best chance of meeting other users who correspond to them, while optimizing the distribution of the load of each control entity or of each server.
  • the implementation of the invention therefore assumes the presence of a plurality (at least two) virtual worlds.
  • These virtual worlds may be the same (or similar) in terms of environment, but are different, of course, by the avatars present in each of them. They may also differ in terms of the environment, in other embodiments.
  • the transfer of a representation of a user, or avatar, from a first virtual world to a second virtual world (destination world) allows, at least according to some embodiments, to ensure that the load of the server, or of the control entity on the server, will be regulated, because there is a strong relationship between the number of user representations in a world and the load of the server, or the control entity on the server, hosting this world .
  • the invention makes it possible, in some embodiments, to regulate the load by optimally distributing, according to a predetermined algorithm, the representations of the users connected to the virtual worlds so that these representations are not automatically placed in virtual worlds. which do not suit them.
  • the invention makes it possible to propose to a user, at any time, or at predetermined times (and not only at the moment of entry into the virtual worlds), a transfer to a virtual world that would correspond to it a priori better.
  • the implementation of the invention is based on at least some of the following technical aspects, depending on the embodiments: - the permanent or periodic monitoring of the state of the different virtual worlds; the occurrence of an event initiating a transfer; searching for a destination virtual world based on this event, which identifies a virtual world in which the representation of the user will be transferred; verifying that the destination world identified is capable of receiving the representation of the user; the actual transfer of the representation of the user to lower the load of the server, or the control entity on the server, which hosts the virtual world from which this representation comes.
  • the proposed solution consists in particular of a management method of control entities on servers each associated with a virtual world, ensuring a distribution, or distribution proposal, of user representations on control entities reproducing the same virtual world.
  • the method of the invention is implemented, proposing a new distribution of user representations within the virtual worlds. User representations change or do not change control entity according to the result of the distribution calculation.
  • the time of implementation of the process may be a function of an event occurring in the real world (overload of a server, increase or decrease of populations in a given world, etc.).
  • Such an event can be for example: an occurrence of an overload of a server equipment, or of a control entity on a server, namely the reaching of a threshold or a ceiling predefined consumption of a resource.
  • the general load of an equipment can be the result of a calculation of consumption of at least one of the resources of the equipment. For example: when the processor time consumed reaches 80% or the network rate is greater than 600kbit / s and the number of packets transmitted is greater than 10 000 p / s. an occurrence of a result of a calculation on the number of user representations or the number of a particular type of user representation in the virtual world. When this result reaches a predefined threshold or ceiling, the transfer can be performed.
  • the method is implemented for transferring representations of surplus users or for realizing a new one. global distribution of all user representations of this virtual world. Taking into account such an event makes it possible to control the peaks of charge before their occurrences and to balance the distribution of the representations between the virtual worlds.
  • Continuous monitoring of the various virtual worlds can also be implemented, for example to propose to a user a transfer to another virtual world which seems, at the moment considered (that is to say according to the users present in this world at this moment), more adapted.
  • the implementation of the method can be performed for all the representations of all the users of all the virtual worlds at a given moment, thus causing a general distribution of the load on all the servers, or on all the control entities on the servers.
  • the method of the invention can also be implemented over water, that is to say throughout the life of the virtual worlds, in order to regulate the load continuously and / or to optimize the satisfaction of the user.
  • the identification of the destination world of the representation of the user can also be realized in several different ways: randomly: a world will be randomly identified and the user's representation will be transferred to it; according to a deterministic algorithm: for example by taking into account the number of users present in each world, and by selecting the least populated world; taking into account the exchanges in progress between the representations of the users: for example, if a representation of a user communicates with another representation of another user, either one does not carry out the transfer, or one precedes the transfer of these two representations simultaneously; according to user characteristics: a virtual world is identified which corresponds to the characteristics of the user to transfer his representation in a suitable world. For example, for a user who loves football, the virtual world of destination identified will be the one where there are the most football fans.
  • the invention also makes it possible to optimize the operation seen by the user, insofar as: his transfer to the destination world is carried out automatically: this means that the user does not have to take care of realizing his transfer; the servers are always able to render an optimal service.
  • the servers, the load of which is controlled by the method of the invention can respond without delay to the interactions of user representations, thus making the immersion experience in the virtual world more pleasant.
  • the invention makes it possible, from the point of view of a user, to best adapt the virtual world to his needs and to hide the technical limits.
  • managing server load balancing has no impact on user immersion.
  • the method of the invention can be applied to any virtual world (2D or 3D) where user representations represent users of the real world.
  • 2D or 3D virtual world
  • the invention makes it possible to limit the costs of setting up additional resources.
  • a further advantage of the invention lies in the increased opportunities for meetings offered to users.
  • each user 12 accesses a virtual world 20, via an immersion terminal 11 (such as a computer, but any other immersion system is of course conceivable, for example a phone, PDA, ...);
  • an immersion terminal 11 such as a computer, but any other immersion system is of course conceivable, for example a phone, PDA, ...;
  • Each virtual world 20 comprises: one or more virtual spaces 21; user representations, or avatars, representing the real world users;
  • Such a system also comprises: a communication network 30 enabling the immersion terminals 11 to communicate with each other as well as with servers 40; servers, or control entities on servers, 40 providing a coordinating, broadcasting and memorizing role.
  • a user 12 of the real world 10 is represented by his avatar 22.
  • the user 12 controls his user representation 22 and sees the visual field seen by this avatar 22 to the 11.
  • the method of the invention is implemented using physical parameters of the real world. These parameters are of several kinds: the parameters related to the support servers, or hosting, virtual worlds. These are concrete parameters related to a present or future situation concerning, for example, the processing load to be performed on the servers in question; settings related to users with representations, such as eye color, size, gender, interests, etc. These are characteristics previously entered by users in order to define for example their appearances, their tastes, their preferences, their expectations or their respective occupations in the real world.
  • a monitoring step 1 various characteristics are monitored, in order to trigger a transfer if one or more of these characteristics take a predetermined value, or evolve in a particular way and so on.
  • it can be a monitoring of the load, one or more servers controlling the different virtual worlds considered. It can also be the monitoring 3 of the distinctive signs associated with the previously described avatars (for example the monitoring of the green colored spheres visible by a given avatar).
  • This monitoring step 1 triggers a search 5 of the best possible destination for the avatar concerned. Indeed, in this embodiment, the transfer of an avatar, triggered by the result of the monitoring step 1, is proposed so that the avatar is found in a virtual world more suitable than that in which it was. This step of finding a most suitable destination is also described in more detail below. This research can also take into account the results of monitoring steps 2, 3 or 4.
  • a transfer step 6 is implemented, comprising a transfer proposal sub-step 7 and, in case of agreement, a substep of carrying out the transfer 8.
  • the transfer proposal can be submitted to the user of the avatar that is to be transferred, for the user's agreement.
  • the transfer proposal may also be submitted to the identified destination virtual world management entity, for example to check the load, or to a distribution criterion.
  • the parameters related to the connected users 12 are taken into account via their systems 11.
  • Each user has, within the virtual world 20, a representation 22, such as an avatar. It can be a three-dimensional representation, which in this case is modeled and displayed by appropriate mechanisms implemented in a system 11 or a server 40. It can also be a representation in two dimensions , in the form of, for example, a graphic file previously determined and configured. The user 12 can also modify other characteristics, which may or may not be integrated into his representation: appearance, taste, occupation ...
  • the user 12 can also report one or more characteristics that he wishes to find among the users he is able to meet through his representation 22 in the virtual world 20.
  • the user 12 can thus wish get in touch with people who love football or people with special physical characteristics.
  • the representations 22 of the users 12 can be completed to show a degree of correspondence between the characteristics sought by a user and the characteristics sought by another user he encounters.
  • This degree of correspondence is materialized, within the virtual world, and in this embodiment, by a distinctive sign, or indicator, associated with the representations of users.
  • this distinctive sign may be a colored geometric shape (an arc of a circle, a sphere) placed above the head of an avatar. The color of this geometric shape varies according to the degree of correspondence with the characteristics sought by the users.
  • a representation of a first user perfectly corresponding to the characteristics sought by a second user will have a geometric shape of green color, if the characteristics sought by this first user also correspond perfectly to the characteristics of the first user (ie ie, if there is reciprocity).
  • Other means indicating can of course be considered.
  • a representation of a user does not correspond at all to the characteristics sought by another user or will not have any geometric shape, or a distinctive geometric shape, for example black or red color.
  • An intermediate color (orange for example) can be presented if only certain criteria are respected (for example a sharing of certain interests), or if there is no reciprocity.
  • Such an implementation allows users to immediately recognize, within the virtual world, other users who have identical or similar characteristics and to participate in making the immersion interesting for the user.
  • a representation of a first user perfectly matching the characteristics sought by a second user will have a geometric shape of green color is called thereafter "winning representation".
  • the management system can use this information to identify the "best of all worlds", ie the one with the most important set of green indicators (and, where appropriate, also taking into account the sets orange indicators).
  • different characteristics can be monitored to then trigger the transfer of one or more users to other servers, or control entities servers: - the variation of the virtual world population according to arrivals and departures users.
  • an additional server can be added.
  • a server can be deleted.
  • the calculation of the new distribution ie the distribution of users on the different servers
  • Such a variation of the population has a direct effect on the load of the server associated with the virtual world which undergoes the variation; - the result of a calculation concerning the population of users.
  • the user is not in communication with another user, he is proposed to join the server where he will have a greater number of winning representations.
  • the transfer in the new virtual world is, in this embodiment, subject to the agreement of the user.
  • FIGS. 1 and 4 show an embodiment of an identification of a virtual world of destination during a variation of the population of the virtual world according to the arrivals and departures of the users.
  • an immersion device allows the user 11 to modify in a container 300 (via a dedicated application, for example) its characteristics 301 called "possessed” (ie say its own characteristics) and in a container 302 the characteristics 303 called
  • the container 300 for example a file or database, stores the possessed features 301 of each user in the real world (e.g., eye color, size, favorite sports, etc.).
  • the container 302 e.g. a file or database, stores the desired features 303 by each user of the real world (e.g., eye color, size, favorite sports, etc.).
  • the container 304 for example a file or a database, stores identification information of the server 305 of each user (i.e., the virtual world in which the representation of the user is located).
  • the identification then comprises: a calculation step 105 of the load on all the servers (or entities). If a server reaches the configured maximum load threshold (and no other server has availability), a new server is enabled. If a server reaches the set minimum load threshold, it is considered disabled in the calculation of the new distribution.
  • a command 306 for launching the calculation of a new optimal distribution for the servers is transmitted; a calculation step 106 of the meeting possibilities on the active servers for each user representation present on the overloaded server, from the owned features 301 from the container
  • the best distribution 502 providing the maximum of meeting opportunities to each user is obtained for example by a calculation of a decision tree segmented by the characteristics of the users; a transfer step 107 (or transfer proposals) representations of selected users 203 on their new servers, from the new distribution 502 to instantiate. 5.2.3.2 Calculation over water
  • FIGS. 1 and 3 show an embodiment of an identification of a destination virtual world during a continuous update of the population, which corresponds to an "underwater” calculation. (that is, without user intervention), as it goes (ie, continuously).
  • an immersion terminal allows the user 11 to modify in a container 300 (via a dedicated application, for example) its characteristics 301 called “owned” (ie say its own characteristics) and in a container 302 the characteristics 303 called
  • the container 300 for example a file or database, stores the possessed features 301 of each user in the real world (e.g., eye color, size, favorite sports, etc.).
  • a container 304 for example a file or a database, stores identification information of the server 305 of each user (i.e., the virtual world in which the representation of the user is located).
  • the identification then comprises: a calculation step 102 (for example in the form of a mathematical distance) of the chances of success of a meeting 401 on all the servers for each present user representation, from the characteristics possessed 301 from the container 300 and the desired characteristics 303 from the container 302 and for the server 305 of the user and for all other active servers (not shown); a comparison step 103 of the chances of success of a meeting 401 with each other for each user representation.
  • the comparison 103 delivers representative information 501 of a destination world to an interface 104 (of the device 11).
  • This can be implemented in the form of a calculation of distance between the characteristics of the different users, if necessary with appropriate weights.
  • the comparison of meeting possibilities can be set either according to a fixed threshold (the new virtual world of destination must offer at least twenty additional possibilities), either according to a fixed rate (the new virtual world of destination must offer at least fifty percent of possibilities additional) a proposed transfer and / or transfer step: the representative information 501 sent to the real / virtual interface 104 and to an interface
  • the management system preferentially does not only take into account the characteristics of each user. It also tries to take into account the technical aspects (load of the servers for example) and the balances of each world (number of people, aspects relating to the diversity and / or the homogeneity of the distributions, ).
  • Pure load management is a first variant of calculating a new distribution of user representations.
  • the fact that the value of the charge passes above a given ceiling or below a certain threshold is therefore the triggering event of the allocation.
  • This first example is based primarily on the management of the load inherent in a given virtual world (thus the responsibility of the server or the control entity on a server hosting this world).
  • this virtual world is duplicated (that is to say a copy is created) according to an algorithm of duplication which distributes the representations by taking into account a logic of the genres if it is necessary (as for example a homogeneous distribution of men and women) and by seeking a distribution which ensures for each user a maximum number of representations which correspond to its characteristics (that is to say a maximum of green distinguishing signs in the example described above).
  • This algorithm is implemented only on the "mother” world and does not take into consideration the other virtual worlds during operation.
  • the new distribution of user representations is therefore linked to the only representations contained in the "mother” world.
  • the algorithm of calculation of the correspondences of characteristics puts in coherence the elements of research: sex, age, city (the sex and the city being previously treated during the connection to the service, that is to say that these data already have have been processed during the initial assignment of the user representation at the time of its connection).
  • a similar procedure is implemented when the load of two worlds passes under a determined threshold. In this case, these two worlds "merge”.
  • a continuous smoothing of the load is carried out by performing identification of a destination virtual world for each user representation over water, that is to say user by user.
  • the event that causes the search and identification of a virtual world of destination is a moment of beginning of implementation of the research.
  • An invisible calculation for the user is made periodically to identify the best situation a priori of the representation of this user with respect to all the virtual worlds available (that is to say with respect to all the duplications of the same world virtual origin).
  • a calculation time (that is to say the "processor” processing time) is given priority over the representations of users having the lowest "r” ratio. next: number of winning performances total number of performances
  • Each active world with active user representations will be successively computed to identify the best virtual world of connected and online representations in which the user representation can be transferred, that is, that is, in which the number of winning representations relative to the user is maximum.
  • the allocation of a calculation time for the identification of a new destination world can also be engaged if a threshold of winning representations is crossed (for example, less than thirty).
  • the allocation of a calculation time is performed so as not to induce a slowdown in the implementation of the virtual world while satisfying the users.
  • the destination world has been identified, the agreement of the user is requested prior to its transfer.
  • the load of the servers implementing the virtual world is smoothed because: a concordance between a maximum number of representations of connected users and non-connected users is established, in order to maintain a good overall impression of the world's population virtual by users. This allows, at the server level, to keep available resources for the connected users; the number of disconnected user representations is decreased as other users are connected to the virtual world.
  • these representations of disconnected users can be transferred to another virtual world in order to maintain, on all virtual worlds, a homogeneous population density and therefore a homogeneous load on all servers. representations of disconnected users are processed faster in the virtual world;
  • Such collection equipment comprises a memory 51 constituted by a buffer memory, a processing unit 52, equipped for example with a microprocessor P, and driven by the computer program 53, implementing the management method according to the invention. 'invention.
  • the code instructions of the computer program 53 are for example loaded into a RAM before being executed by the processor of the processing unit 52.
  • the processing unit 52 receives as input at least a characteristic of each of said entities and / or at least one characteristic of the corresponding virtual world.
  • the microprocessor of the processing unit 53 implements the steps of the management method described above, according to the instructions of the computer program 53, to decide whether a representation transfer of a user can be proposed.
  • the management device comprises, in addition to the buffer memory 51, means for monitoring at least one characteristic of each of said entities and / or at least one characteristic of the corresponding virtual world and means for proposing transfer and / or transferring at least one of said user representations from a first virtual world to a second virtual world, according to the one or more monitored characteristics.
  • These means are controlled by the microprocessor of the processing unit 52.
  • Such a device is in particular a centralized server managing the different servers and control entities of the servers in a system comprising a plurality of virtual worlds.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

L'invention concerne un procédé de gestion d'un ensemble d'entités contrôlant chacune un environnement virtuel dans lequel des représentations d'utilisateurs évoluent. Selon l'invention, un tel procédé comprend les étapes suivantes : surveillance d'au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique d'un environnement virtuel correspondant; proposition de transfert et/ou transfert d'au moins une desdites représentations d'utilisateur d'un premier environnement virtuel à un second environnement virtuel, en fonction de la ou desdites caractéristiques surveillées.

Description

Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant.
1 DOMAINE DE L'INVENTION La présente invention concerne la gestion informatique d'environnements virtuels, par exemple des « mondes virtuels », permettant par exemple à des utilisateurs de se rencontrer de façon virtuelle, par l'intermédiaire de leurs terminaux respectifs. Plus précisément, l'invention se rapporte à la gestion d'un ensemble d'entités (serveurs ou logiciels) gérant chacune l'un de ces environnements ou mondes virtuels, dans un système informatique de gestion de monde virtuel.
Dans la suite de ce document on emploiera indifféremment les notions d'environnements ou de mondes virtuels, sans que cela n'ait d'influence sur la compréhension de l'invention. Un environnement virtuel peut être vu comme une représentation d'un univers particulier au sein duquel des utilisateurs du monde réel sont présents, sous la forme d'avatars. Un avatar est une représentation, à l'aide d'un ensemble de paramètres, d'un utilisateur. Une telle représentation peut se présenter sous la forme d'une image ou d'un objet animé. Ainsi, au sein d'un monde virtuel dit « immersif », une telle représentation correspond généralement au résultat de calculs, parfois complexes, réalisés à partir de différents paramètres propres à un utilisateur. Une telle représentation peut être en deux ou en trois dimensions et évoluer en temps réel aussi bien en fonction de paramètres et/ou d'actions réalisées par l'utilisateur dans le monde virtuel qu'en fonction d'actions réalisées par d'autres utilisateurs (ou par leurs avatars respectifs) évoluant au sein d'un même monde virtuel. Un monde virtuel est dit « immersif » quand l'utilisateur se trouve plongé au sein de celui-ci par l'intermédiaire d'une représentation d'un espace et d'utilisateurs, par exemple en trois dimensions. On parle alors d'immersion de l'utilisateur. 2 SOLUTIONS DE L'ART ANTERIEUR Dans un monde virtuel, des rencontres entre avatars permettent aux interlocuteurs représentés par ces avatars d'échanger entre eux. Lorsqu'un monde virtuel a du succès, il se pose notamment une problématique liée à l'affluence générée par l'attrait des utilisateurs pour ce monde virtuel. D'un point de vue technique, les ressources nécessaires à la gestion de tous les avatars d'un monde virtuel ne sont pas extensibles indéfiniment. En effet, pour mettre en œuvre un monde virtuel, un ensemble de ressources doivent être disponibles. Il s'agit notamment de ressources informatiques (tels que des serveurs ou des moyens réseaux) dont est pourvu un fournisseur de services. De tels serveurs informatiques ont pour tâche principale la répercussion des évolutions de chaque avatar auprès de tous les autres avatars présents dans un même monde virtuel qu'ils partagent. Lorsque le nombre d'avatars présents au sein d'un monde virtuel augmente, le serveur (ou le groupe de serveurs) assurant la gestion de ce monde doit gérer de telles évolutions, le plus souvent linéaire, voire parfois de façon exponentielle en termes de montée, ou plus généralement de variations de charge.
Du côté d'un utilisateur connecté au monde virtuel, l'affichage de tous les avatars présents peut donc poser des problèmes de gestion de la charge lorsque le nombre de ces avatars augmente sensiblement, notamment pour des terminaux de faible puissance. En effet, dans les mécanismes généraux de gestion des mondes virtuels, des ressources sont souvent utilisées, au sein des postes clients (c'est-à- dire des postes des utilisateurs du monde virtuel) pour calculer et réaliser l'affichage de scènes (en utilisant des langages spécifiques, tels que le VRML, de l'anglais « Virtual Reality Modeling Language » pour « Langage de Modélisation de Réalité Virtuelle »). De tels calculs sont consommateurs de puissance sur les terminaux des utilisateurs (utilisation d'un ou plusieurs micro-processeurs, mémoire virtuelle, etc.).
Un nombre élevé d'avatars pose également un problème direct à l'utilisateur, qui a alors des difficultés pour appréhender l'ensemble des avatars présents dans son environnement. Par exemple, dans le cas d'un monde virtuel destiné à favoriser les rencontres avec d'autres personnes présentes dans le monde virtuel par avatar interposé, la présence d'un millier d'avatars risque d'être contre- productive (de la même façon qu'il serait difficile d'établir une rencontre dans une foule d'un millier de personnes). Une limite actuelle communément admise de gestion d'avatars au sein d'un monde virtuel est d'environ quelques centaines d'avatars simultanément hébergés sur un serveur matériel d'entrée de gamme. Cette limite est rapidement atteinte dans les mondes virtuels mis en ligne sur l'Internet, voire largement dépassée jusqu'à plusieurs milliers d'utilisateurs simultanés dans le cas de sites en ligne à succès.
Des techniques permettent de contourner ces limites en construisant plusieurs mondes virtuels qui sont alors supportés sur un ou plusieurs équipements serveurs différents. Dans le cas d'un équipement serveur contrôlant plusieurs mondes virtuels, on peut distinguer sur ce serveur plusieurs entités, appelées entités de gestion ou de contrôle, chacune étant dédiée à la gestion d'un monde virtuel. Il devient alors possible d'assimiler une entité de contrôle sur un équipement serveur à un monde virtuel spécifique. Dans une telle architecture, chaque terminal d'un utilisateur d'un de ces mondes spécifiques n'a alors besoin d'afficher que les avatars des utilisateurs connectés à son monde et qui entrent dans son champ de vision. De plus, chaque entité de contrôle sur un équipement serveur n'a besoin de disposer que des ressources nécessaires à la gestion d'un sous-ensemble des utilisateurs (c'est-à-dire les utilisateurs du monde spécifique). Cependant, les mondes virtuels sont cloisonnés de facto.
Un problème de cette technique de l'art antérieur réside donc dans la manière de gérer le changement de monde du point de vue des utilisateurs et du point de vue des entités de contrôle sur les serveurs. En effet, cette architecture provoque obligatoirement un cloisonnement des mondes. Pour pallier ce cloisonnement, des fournisseurs de services construisent plusieurs mondes virtuels reliés par des passages plus ou moins visibles, souvent dénommés « portes ». Le problème réside alors techniquement dans la synchronisation des « portes » entre les mondes, et économiquement dans le coût de réalisation de la stylique de chacun de ces mondes. Cette approche présente cependant l'avantage de la transparence pour le client mais au prix d'un coût élevé et d'une mise en œuvre longue des extensions d'équipements serveurs, c'est-à-dire des serveurs supplémentaires.
D'autres fournisseurs de services économisent le coût de la stylique des mondes en reprenant la même stylique à chaque fois mais avec un cloisonnement total entre chacun des mondes clones. L'utilisateur doit ainsi, préalablement à son immersion, choisir le monde où se rendre. Lorsqu'il veut rencontrer des avatars des autres mondes, il doit changer de monde. Cette approche présente l'avantage d'un coût réduit et d'une mise en œuvre rapide des extensions d'équipements serveurs, mais au prix d'un fort désagrément pour l'utilisateur, rendant négative son appréciation globale et son expérience du service. En effet, celui-ci ne peut pas, au sein d'un même monde, rencontrer tous les avatars qu'il est susceptible de connaître ou avec lesquels il peut avoir des affinités. L'utilisateur est donc obligé de changer de monde pour rencontrer d'autres avatars. Il doit donc effectuer une opération manuelle de déconnexion du monde virtuel courant puis de reconnexion à un autre monde virtuel, ce qui est peu pratique, et constitue un frein à l'utilisation de tels services.
En outre, ces différentes approches ne résolvent en rien le problème de charge des entités de contrôle sur les serveurs, puisque l'utilisateur peut toujours choisir de pénétrer dans un monde virtuel en surcharge. C'est d'ailleurs ce choix qu'il effectuera le plus souvent, assimilant la charge au succès, ou à l'efficacité, du monde virtuel.
Un autre inconvénient de ces approches est que, dans ces différents mondes virtuels, des déséquilibres peuvent apparaître (par exemple, pour un site de rencontres, entre le nombre de femmes et le nombre d'hommes) et qu'un utilisateur ne sait pas, a priori, dans le cas où tous les mondes virtuels sont identiques en termes de construction, quel monde virtuel est le plus approprié à ses attentes.
3 RESUME DE L'INVENTION
La solution proposée par l'invention ne présente pas ces inconvénients de l'art antérieur. Elle concerne en effet un procédé de gestion d'un ensemble d'entités contrôlant chacune un environnement virtuel dans lequel des représentations d'utilisateurs évoluent.
Selon l'invention, un tel procédé comprend les étapes suivantes : surveillance d'au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique dudit environnement virtuel correspondant ; proposition de transfert et/ou transfert d'au moins une desdites représentations d'utilisateurs d'un premier environnement virtuel vers un second environnement virtuel, en fonction de la ou desdites caractéristiques surveillées.
Une entité de contrôle d'un environnement virtuel peut notamment être un serveur, ou une instance d'un programme de contrôle d'un environnement (ou monde) virtuel, notamment dans le cas où un même serveur contrôle plusieurs environnements virtuels. Selon l'invention, c'est le dispositif de gestion des environnements virtuels
(classiquement un serveur de gestion) qui propose des transferts, et/ou qui les réalise. Ce n'est donc pas l'utilisateur qui, de sa seule initiative, décide de changer de monde (même si l'on peut prévoir que cette possibilité existe).
La proposition de transfert faite part le dispositif de gestion n'est pas aléatoire, mais tient compte de caractéristiques objectives, techniques (charge du serveur par exemple) ou représentatives de l'état du monde virtuel considéré (nombre et/ou typologie des représentations).
Cette approche, mise en œuvre par le dispositif de gestion, peut également permettre, au moins dans certains modes de réalisation, d'optimiser objectivement les chances de succès (par exemple les chances de rencontre d'une personne recherchée) pour chaque utilisateur.
Selon un mode de réalisation particulier de l'invention, le procédé comprend, préalablement à ladite étape de proposition de transfert et/ou de transfert, une étape de contrôle d'une possibilité de transfert de ladite au moins une représentation d'utilisateur vers ledit second environnement virtuel.
En particulier, ladite étape de contrôle comprend les sous-étapes suivantes : détection de l'existence d'une communication engagée entre ladite représentation d'utilisateur et au moins une autre représentation d'utilisateur ; autorisation de ladite étape de proposition de transfert et/ou transfert si ladite détection est négative.
Ainsi, le procédé de l'invention permet d'éviter qu'une représentation de l'utilisateur ne soit transférée dans un environnement virtuel alors même que cet utilisateur n'est pas disponible pour le faire. Ainsi, par exemple, si un utilisateur est entré en communication avec un autre utilisateur par l'intermédiaire de sa représentation, il n'est pas déplacé dans l'environnement virtuel de destination.
Ainsi, l'invention permet de respecter les actions qui sont effectuées par l'avatar de l'utilisateur.
Selon une caractéristique particulière, ladite étape de transfert et/ou de proposition de transfert comprend les sous-étapes suivantes : proposition faite audit utilisateur de transférer sa représentation dudit premier environnement virtuel vers ledit second environnement virtuel ; - traitement d'une réponse reçue dudit utilisateur suite à ladite sous-étape de proposition, de façon à déterminer son accord ou son refus sur un transfert de sa représentation ; en cas d'accord dudit utilisateur, transfert de la représentation dudit utilisateur dudit premier environnement virtuel vers ledit second environnement virtuel. Ainsi, l'invention permet de subordonner le transfert à un accord de l'utilisateur. L'utilisateur dispose ainsi d'un droit de regard quant à son transfert. Il peut refuser ce transfert et rester dans l'environnement virtuel dans lequel il se trouve. Un tel cas peut par exemple se produire lorsque l'utilisateur souhaite rencontrer un avatar d'un autre utilisateur à une heure déterminée et qu'il ne souhaite pas changer d'endroit.
Selon un aspect particulier de l'invention, ladite étape de surveillance comprend les sous-étapes suivantes : obtention d'au moins une information représentative d'une caractéristique dudit utilisateur, dite donnée utilisateur ; comparaison de la ou desdites données utilisateur avec des données correspondantes d'au moins un autre utilisateur présent dans chacun des environnements virtuels ; sélection dudit second environnement virtuel dans lequel un transfert doit être opérer, en fonction des résultats de ladite comparaison.
En particulier, ladite étape de comparaison met en œuvre un calcul d'une distance entre la ou lesdites données utilisateurs, pour déterminer dans chacun desdits environnements au moins un ensemble de représentations d'utilisateurs proches, selon ladite distance, de la représentation d'utilisateur à transférer, et en ce que ladite étape de sélection sélectionne un environnement virtuel dans lequel le ou lesdits ensembles, déterminés à ladite étape de comparaison, comprennent le plus grand nombre de représentations.
Ainsi, l'invention permet de tenir compte des caractéristiques de l'utilisateur lors de l'identification d'un environnement virtuel de destination. Une telle prise en compte de l'utilisateur permet ainsi de transférer l'utilisateur dans un environnement qui lui convient. En effet, l'équilibrage de charge réalisé par le procédé de l'invention permet alors en plus de satisfaire l'utilisateur puisque l'on tient compte de ses caractéristiques.
Une caractéristique prise en compte peut être par exemple l'âge, le sexe, la taille soit de l'utilisateur en tant que tel, soit d'une personne que cet utilisateur souhaite rencontrer. Cette liste de caractéristiques n'est bien sûr pas limitative et peut comprendre toute caractéristique qui peut être définie pour un utilisateur.
La sélection d'un environnement virtuel de destination est alors réalisée en tenant compte de la population contenue dans cet environnement virtuel, à savoir l'ensemble des caractéristiques d'autres utilisateurs qui correspondent le mieux aux caractéristiques de l'utilisateur à transférer.
Selon un mode de réalisation particulier de l'invention, ladite étape de surveillance comprend une sous-étape de contrôle de la répartition des représentations d'utilisateurs dans chacun desdits environnements virtuels, selon au moins un paramètre de répartition prédéterminé.
Par exemple, ledit paramètre de répartition prédéterminé appartient au groupe comprenant au moins : un nombre de représentations d'utilisateurs par environnement virtuel ; un paramètre représentatif d'une répartition prédéfinie, en terme de nombres de représentations, entre au moins deux groupes d'utilisateurs présentant chacun au moins une caractéristique similaire ; un paramètre de répartition de charge d'au moins une entité de gestion d'au moins un environnement virtuel.
Ainsi, l'invention permet d'ajuster la charge des serveurs mettant en œuvre les environnements virtuels tout en respectant des paramètres de répartition des représentations de ces utilisateurs au sein des environnements virtuels dans lesquels ils sont transférés.
Ces paramètres de répartition permettent d'obtenir une répartition déterministe car un algorithme déterministe est mis en œuvre conjointement à ces paramètres. Ainsi, la mise en œuvre d'un tel algorithme déterministe permet d'obtenir une répartition homogène des représentations qui assure également un équilibrage de charge des serveurs.
Un paramètre de répartition peut être par exemple : deux cents représentations au plus simultanément dans l'environnement virtuel et/ou une répartition égalitaire d'hommes et de femmes et/ou une répartition gaussienne des représentations selon la taille des utilisateurs auxquels appartiennent les représentations et/ou une répartition uniforme des représentations selon la couleur des cheveux des utilisateurs auxquels appartiennent les représentations et/ou une charge de cinquante pour cent de consommation de puissance machine sur le serveur en mode nominal, etc.
En particulier, lesdites caractéristiques surveillées appartiennent au groupe comprenant au moins : une information représentative d'une consommation par ladite entité d'une ressource supérieure à un plafond déterminé ; - une information représentative d'une consommation par ladite entité d'une ressource inférieure à un seuil déterminé ; un nombre de représentations d'utilisateur inférieur à un seuil déterminé dans ledit premier environnement virtuel ; un nombre de représentations d'utilisateur supérieur à un seuil déterminé dans ledit premier environnement virtuel ; un moment de déclenchement programmé périodiquement ; un moment de déclenchement programmé aléatoirement.
Ainsi, l'invention permet de conditionner la survenance d'un transfert d'une représentation d'un utilisateur à un événement particulier. L'invention permet donc de ne pas transférer sans cesse un utilisateur, ce qui garantit une qualité de services optimale vis-à-vis de l'utilisateur. Le transfert de l'utilisateur peut ainsi avoir lieu, par exemple, quand le serveur qui héberge l'environnement virtuel dans lequel sa représentation se trouve atteint un plafond de consommation de ressource déterminé (par exemple une consommation en terme de mémoire sur le serveur, en terme de bande passante pour les échanges entre serveurs, une charge d'un microprocesseur sur le serveur ...), qui peut entraîner une mauvaise qualité de service (car l'interaction avec cet environnement virtuel devient alors plus lente) ou quand au contraire, un seuil de consommation de ressource sur le serveur est atteint ou encore quand, au cours d'une procédure de mise à jour en continu, un instant de déclenchement du transfert est programmé pour la représentation de l'utilisateur.
L'invention concerne encore un dispositif de gestion d'un ensemble d'entités contrôlant chacune un environnement virtuel dans lequel des représentations d'un utilisateur évoluent. Selon l'invention, un tel dispositif comprend : des moyens de surveillance d'au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique dudit environnement virtuel correspondant ; des moyens de proposition de transfert et/ou de transfert d'au moins une desdites représentations d'utilisateur d'un premier environnement virtuel à un second environnement virtuel, en fonction de la ou desdites caractéristiques surveillées.
Un tel dispositif est notamment apte à mettre en œuvre le procédé de gestion décrit précédemment. Il s'agit par exemple d'un serveur central assurant la gestion des serveurs, ou entités sur des serveurs, hébergeant un ou plusieurs environnements virtuels tels que décrit précédemment. Il peut également s'agir d'un serveur hébergeant un ou plusieurs environnements virtuels et assurant également la gestion des autres serveurs hébergeant d'autres environnements virtuels. L'invention concerne aussi un produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, comprenant des instructions de code de programme pour l'exécution du procédé de gestion tel que décrit précédemment. 4 LISTE DES FIGURES
D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - la figure 1 illustre un exemple de système général de mise en œuvre du procédé de l'invention ; la figure 2 présente les principales étapes du procédé selon un mode de réalisation de l'invention, dans un système tel que celui représenté en figure 1 ; - la figure 3 présente un diagramme de séquences pour un déclenchement du procédé par un premier événement ; la figure 4 présente un diagramme de séquences pour un déclenchement du procédé par un deuxième événement ; la figure 5 présente la structure d'un dispositif de transfert mettant en œuvre le procédé de transfert selon un mode de réalisation particulier de l'invention. 5 DESCRIPTION DETAILLEE DE L'INVENTION
5.1 Rappel du principe de l'invention
L'invention permet d'optimiser la gestion des serveurs, ou d'entités de contrôle sur des serveurs qui supportent l'implémentation des mondes virtuels, en termes de charge et/ou de réponse aux attentes des utilisateurs, en proposant des transferts d'avatar en fonction d'une ou plusieurs caractéristiques surveillées par un dispositif de gestion.
Ainsi, à la différence du mécanisme de cloisonnement de l'art antérieur dans lequel l'utilisateur doit effectuer lui-même un changement manuel de monde virtuel, l'invention permet de proposer un transfert et/ou de transférer des représentations d'utilisateurs dans un monde virtuel de destination en fonction d'une surveillance de caractéristiques des serveurs, ou entités de contrôle sur des serveurs, contrôlant les mondes virtuels et/ou de caractéristiques des mondes virtuels eux-mêmes, sans recherche ou action préalable de la part de l'utilisateur.
Au niveau des entités de contrôle sur les serveurs, les caractéristiques surveillées peuvent par exemple être la charge, la consommation d'une ou plusieurs ressources...
Au niveau des mondes virtuels, les caractéristiques surveillées peuvent par exemple être une répartition d'avatars au sein de chaque monde surveillé telle que par exemple deux cents avatars au plus simultanément dans un même monde virtuel, une répartition égalitaire d'hommes et de femmes, une répartition gaussienne ou uniforme des avatars selon des caractéristiques telles que la taille, la couleur des cheveux des utilisateurs représentés, etc. Les caractéristiques surveillées peuvent également correspondre à un calcul de distance entre les caractéristiques des différents utilisateurs, le cas échéant avec des pondérations adaptées, de manière à répartir les utilisateurs dans le but de les placer dans le "meilleur des mondes", ou le monde correspondant a priori et objectivement le plus à leurs attentes, par exemple un monde dans lequel ils ont le plus de chance de rencontrer d'autres utilisateurs qui leur correspondent, tout en optimisant la répartition de la charge de chaque entité de contrôle ou de chaque serveur.
La mise en œuvre de l'invention suppose donc la présence d'une pluralité (au moins deux) mondes virtuels. Ces mondes virtuels peuvent être identiques (ou similaires) en termes d'environnement, mais sont différents, bien sûr, par les avatars présents dans chacun d'entre eux. Ils peuvent également différer en termes d'environnement, dans d'autres modes de réalisation.
Le transfert d'une représentation d'un utilisateur, ou avatar, d'un premier monde virtuel à un deuxième monde virtuel (monde de destination) permet, au moins selon certains modes de réalisation, d'assurer que la charge du serveur, ou de l'entité de contrôle sur le serveur, sera régulée, car il existe une relation forte entre le nombre de représentations d'utilisateurs dans un monde et la charge du serveur, ou de l'entité de contrôle sur le serveur, hébergeant ce monde. Plus il y a de représentations, plus la charge est élevée et vice versa. L'invention permet, dans certains modes de réalisation, de réguler la charge en distribuant de façon optimisée, selon un algorithme préalablement déterminé, les représentations des utilisateurs connectés aux mondes virtuels afin que ces représentations ne soient pas placées d'office dans des mondes virtuels qui ne leur conviennent pas.
Selon un autre aspect, l'invention permet de proposer à un utilisateur, à tout moment, ou à des moments prédéterminés (et non seulement au moment de l'entrée dans les mondes virtuels), un transfert vers un monde virtuel qui lui correspondrait a priori mieux.
La mise en oeuvre de l'invention repose sur au moins certains des aspects techniques suivants, selon les modes de réalisation : - la surveillance permanente ou périodique de l'état des différents mondes virtuels ; la survenance d'un événement, initiateur d'un transfert ; la recherche d'un monde virtuel de destination en fonction de cet événement, qui permet d'identifier un monde virtuel dans lequel la représentation de l'utilisateur sera transférée ; la vérification que le monde de destination identifié est apte à recevoir la représentation de l'utilisateur ; le transfert effectif de la représentation de l'utilisateur permettant de faire baisser la charge du serveur, ou de l'entité de contrôle sur le serveur, qui héberge le monde virtuel dont cette représentation provient.
En d'autres termes, la solution proposée consiste notamment en un procédé de gestion d'entités de contrôle sur des serveurs associées chacune à un monde virtuel, assurant une répartition, ou une proposition de répartition, de représentations des utilisateurs sur des entités de contrôle reproduisant le même monde virtuel. A tout moment, ou à des moments donnés, le procédé de l'invention est mis en œuvre, proposant une nouvelle distribution des représentations des utilisateurs au sein des mondes virtuels. Les représentations des utilisateurs changent ou ne changent pas d'entité de contrôle selon le résultat du calcul de distribution. Le moment de mise en œuvre du procédé peut être fonction d'un événement survenant dans le monde réel (surcharge d'un serveur, augmentation ou diminution des populations dans un monde donné, etc.). Un tel événement peut être par exemple : une occurrence d'une surcharge d'un équipement serveur, ou d'une entité de contrôle sur un serveur, à savoir l'atteinte d'un seuil ou d'un plafond prédéfini de consommation d'une ressource. La charge générale d'un équipement peut être le résultat d'un calcul de consommation d'une au moins des ressources de l'équipement. Par exemple : lorsque le temps processeur consommé atteint 80% ou le débit réseau est supérieur à 600kbit/s et le nombre de paquets transmis est supérieur à 10 000 p/s. une occurrence d'un résultat d'un calcul sur le nombre de représentations d'utilisateurs ou le nombre d'un type particulier de représentations d'utilisateurs dans le monde virtuel. Lorsque ce résultat atteint un seuil ou un plafond prédéfini, le transfert peut être effectué. Par exemple, lorsqu'il y a plus de 200 représentations d'utilisateurs "homme" et plus de 200 représentations d'utilisateurs "femme", le procédé est mis en œuvre pour transférer des représentations d'utilisateurs en surnombre ou pour réaliser une nouvelle répartition globale de toutes les représentations d'utilisateurs de ce monde virtuel. La prise en compte d'un tel événement permet de contrôler les pics de charge préalablement à leurs occurrences et d'équilibrer les répartitions des représentations entre les mondes virtuels.
Une surveillance permanente des différents mondes virtuels peut également être mise en œuvre, par exemple pour proposer à un utilisateur un transfert vers un autre monde virtuel qui semble, à l'instant considéré (c'est-à-dire en fonction des utilisateurs présents dans ce monde à cet instant), plus adapté.
La mise en œuvre du procédé peut être effectuée, pour l'ensemble des représentations de tous les utilisateurs de tous les mondes virtuels à un instant donné, provoquant ainsi une répartition générale de la charge sur tous les serveurs, ou sur toutes les entités de contrôle sur les serveurs. Le procédé de l'invention peut également être mis en œuvre au fil de l'eau, c'est-à-dire tout au long de la vie des mondes virtuels, afin de réguler la charge de manière continue et/ou d'optimiser la satisfaction de l'utilisateur.
L'identification du monde de destination de la représentation de l'utilisateur peut également être réalisée de plusieurs manières différentes : au hasard : un monde sera identifié au hasard et la représentation de l'utilisateur y sera transférée ; selon un algorithme déterministe : par exemple en tenant compte du nombre d'utilisateurs présents dans chaque monde, et en sélectionnant le monde le moins peuplé ; en tenant compte des échanges en cours entre les représentations des utilisateurs : par exemple, si une représentation d'un utilisateur communique avec une autre représentation d'un autre utilisateur, soit on ne procède pas au transfert, soit on précède au transfert de ces deux représentations simultanément ; selon des caractéristiques des utilisateurs : on procède à une identification d'un monde virtuel qui correspond aux caractéristiques de l'utilisateur pour transférer sa représentation dans un monde qui convient. Par exemple, pour un utilisateur qui aime le football, le monde virtuel de destination identifié sera celui où il y a le plus d'amateurs de football.
L'invention permet également d'optimiser le fonctionnement vu de l'utilisateur, dans la mesure où : son transfert vers le monde de destination est effectué de manière automatique : cela signifie que l'utilisateur n'a pas à s'occuper de réaliser son transfert ; les serveurs sont toujours à même de rendre un service optimal. Cela signifie que les serveurs, dont la charge est contrôlée par le procédé de l'invention, peuvent répondre sans délai aux interactions de représentations des utilisateurs, rendant ainsi l'expérience d'immersion dans le monde virtuel plus agréable.
Selon une caractéristique particulière de l'invention, il est également possible de subordonner le transfert de la représentation de l'utilisateur à un accord de celui-ci. Ainsi, par exemple, lorsqu'un premier utilisateur est en contact avec un second utilisateur, ou attend l'arrivée d'un deuxième utilisateur, dans un monde virtuel, ce premier utilisateur n'est pas directement transféré dans un autre monde, sans son accord.
Ainsi, l'invention permet, du point de vue d'un utilisateur, d'adapter au mieux le monde virtuel à son besoin et de masquer les limites techniques. Côté technique, la gestion de la répartition de charge des serveurs n'a pas d'impact sur l'immersion des utilisateurs.
Le procédé de l'invention peut s'appliquer à tout monde virtuel (2D ou 3D) où des représentations d'utilisateurs représentent des utilisateurs du monde réel. Lorsque l'affluence devient trop importante, l'invention permet de limiter les coûts de mise en place de ressources supplémentaires. Un intérêt supplémentaire de l'invention réside dans l'accroissement des possibilités de rencontres offertes aux utilisateurs.
Par la suite, on présente notamment le cas d'une implémentation du procédé de l'invention dans un système comprenant une pluralité de mondes virtuels, offrant aux utilisateurs la possibilité de se rencontrer, et de communiquer. Il est clair cependant que l'invention ne se limite pas à cette application particulière, mais peut également être mise en œuvre dans de nombreux autres domaines où un équilibrage de charge et/ou une optimisation de la répartition des utilisateurs sont souhaitables. 5.2 Description d'un mode de réalisation
On présente, en relation avec la figure 1, dans ce mode de réalisation, le principe général de mise en œuvre du procédé de l'invention.
Dans le monde réel 10, chaque utilisateur 12 accède à un monde virtuel 20, par l'intermédiaire d'un terminal d'immersion 11 (tels qu'un ordinateur, mais tout autre système d'immersion est bien entendu envisageable, par exemple un téléphone, un PDA, ...) ;
Chaque monde virtuel 20 comprend : un ou plusieurs espaces virtuels 21 ; des représentations d'utilisateurs, ou avatars, 22 représentant les utilisateurs 12 du monde réel ; Un tel système comprend également : un réseau 30 de communication permettant aux terminaux d'immersion 11 de communiquer entre eux ainsi qu'avec des serveurs 40 ; des serveurs, ou entités de contrôle sur des serveurs, 40 assurant un rôle de coordination, de diffusion et de mémorisation.
Dans le monde virtuel 20, un utilisateur 12 du monde réel 10 est représenté par son avatar 22. Dans le monde réel 10, l'utilisateur 12 pilote sa représentation d'utilisateur 22 et voit le champ visuel vu par cet avatar 22 à l'aide du terminal d'immersion 11. Dans ce mode de réalisation, le procédé de l'invention est mis en œuvre en utilisant des paramètres physiques du monde réel. Ces paramètres sont de plusieurs natures : les paramètres liés aux serveurs de support, ou d'hébergement, des mondes virtuels. Ce sont des paramètres concrets liés à une situation présente ou à venir concernant par exemple la charge des traitements à réaliser sur les serveurs considérés ; les paramètres liés aux utilisateurs disposant de représentations, tels que la couleur des yeux, la taille, le sexe, les centres d'intérêts, etc. Ce sont des caractéristiques préalablement saisies par les utilisateurs afin de définir par exemple leurs apparences, leurs goûts, leurs préférences, leurs attentes ou leurs occupations respectives dans le monde réel.
On présente maintenant, en relation avec la figure 2, les principales étapes du procédé selon l'invention, dans ce mode de réalisation.
Lors d'une étape 1 de surveillance, divers caractéristiques sont surveillées, afin de déclencher un transfert si l'une ou plusieurs de ces caractéristiques prennent une valeur prédéterminée, ou évoluent d'une façon particulière etc.
Par exemple, il peut s'agir d'une surveillance 2 de la charge, d'un ou plusieurs serveurs contrôlant les différents mondes virtuels considérés. II peut également s'agir de la surveillance 3 des signes distinctifs associés aux avatars précédemment décrits (par exemple la surveillance des sphères de couleur verte visibles par un avatar donné).
Il peut également s'agir de la surveillance 4 d'une répartition particulière des avatars dans chacun des mondes virtuels, par exemple la surveillance d'une équité entre les avatars homme et les avatars femme.
Ces différentes caractéristiques sont décrites plus en détail dans la suite de la description.
Cette étape de surveillance 1 déclenche une recherche 5 de la meilleure destination possible pour l'avatar concerné. En effet, dans ce mode de réalisation, le transfert d'un avatar, déclenché par le résultat de l'étape de surveillance 1, est proposé de façon à ce que l'avatar se retrouve dans un monde virtuel plus adapté que celui dans lequel il était. Cette étape 5 de recherche d'une destination la plus appropriée est également décrite plus en détail ci-dessous. Cette recherche peut d'ailleurs tenir compte des résultats des étapes de surveillance 2, 3 ou 4.
Une fois le monde "meilleur" identifié, une étape de transfert 6 est mise en œuvre, comprenant une sous-étape de proposition de transfert 7 et en cas d'accord, d'une sous-étape de réalisation du transfert 8.
La proposition de transfert peut être soumise à l'utilisateur de l'avatar que l'on souhaite transférer, pour accord de l'utilisateur. La proposition de transfert peut également être soumise à l'entité de gestion du monde virtuel de destination identifié, pour vérification de la charge par exemple, ou d'un critère de répartition.
5.2.1 Représentations des utilisateurs
Dans ce mode de réalisation, il est tenu compte de paramètres liés aux utilisateurs 12 connectés, par l'intermédiaire de leurs systèmes 11.
Chaque utilisateur possède, au sein du monde virtuel 20, une représentation 22, telle qu'un avatar. Il peut s'agir d'une représentation en trois dimensions, qui dans ce cas est modélisée et affichée par des mécanismes adéquats mis en œuvre dans un système 11 ou un serveur 40. Il peut également s'agir d'une représentation en deux dimensions, sous la forme, par exemple, d'un fichier graphique préalablement déterminé et configuré. L'utilisateur 12 peut également modifier d'autres caractéristiques, qui peuvent ou non faire l'objet d'une intégration au sein de sa représentation : apparence, goût, occupation...
L'utilisateur 12 peut également faire état d'une ou plusieurs caractéristiques qu'il souhaite trouver chez les utilisateurs qu'il est à même de rencontrer par le biais de sa représentation 22 dans le monde virtuel 20. L'utilisateur 12 peut ainsi souhaiter entrer en relation avec des personnes aimant le football ou des personnes présentant des caractéristiques physiques particulières. Au sein du monde virtuel 20, les représentations 22 des utilisateurs 12 peuvent donc être complétées afin de faire apparaître un degré de correspondance entre des caractéristiques recherchées par un utilisateur et des caractéristiques recherchées par un autre utilisateur qu'il rencontre.
Ce degré de correspondance est matérialisé, au sein du monde virtuel, et dans ce mode de réalisation, par un signe distinctif, ou indicateur, associé aux représentations d'utilisateurs. Par exemple, ce signe distinctif peut être une forme géométrique colorée (un arc de cercle, une sphère) placée au-dessus de la tête d'un avatar. La couleur de cette forme géométrique varie en fonction du degré de correspondance par rapport aux caractéristiques recherchées par les utilisateurs. Ainsi, par exemple, une représentation d'un premier utilisateur correspondant parfaitement aux caractéristiques recherchées par un deuxième utilisateur possédera une forme géométrique de couleur verte, si les caractéristiques recherchées par ce premier utilisateur correspondent également parfaitement aux caractéristiques du premier utilisateur (c'est-à-dire s'il y a réciprocité). D'autres moyens indicateurs (luminosité, couleur, clignotement...) peuvent bien sûr être envisagés.
Une représentation d'un utilisateur ne correspondant pas du tout aux caractéristiques recherchées par un autre utilisateur soit ne possédera aucune forme géométrique, soit une forme géométrique distinctive, par exemple de couleur noire ou rouge. Une couleur intermédiaire (orange par exemple) pourra être présentée s'il seulement certains critères sont respectés (par exemple un partage de certains centres d'intérêts), ou s'il n'y a pas de réciprocité.
Une telle mise en œuvre permet aux utilisateurs de reconnaître immédiatement, au sein du monde virtuel, les autres utilisateurs qui possèdent des caractéristiques identiques ou similaires et de participer à rendre l'immersion intéressante pour l'utilisateur. Bien entendu, du point de vue de l'utilisateur, plus les représentations d'autres utilisateurs comportent de formes géométriques vertes dans leurs voisinages respectifs, plus l'utilisateur a, statistiquement, de chances d'être satisfait. Par la suite, une représentation d'un premier utilisateur correspondant parfaitement aux caractéristiques recherchées par un deuxième utilisateur possédera une forme géométrique de couleur verte est appelée par la suite « représentation gagnante ».
Le dispositif de gestion pourra utiliser ces informations pour identifier le « meilleur des mondes », c'est-à-dire celui comportant l'ensemble le plus important d'indicateurs verts (et, le cas échéant, en prenant en compte également les ensembles d'indicateurs orange).
Des sous-ensembles distincts pourront être pris en compte, dans certains modes de réalisation, selon que les représentations sont actives (« on-line », ou connectées) ou inactives (« off-line », ou déconnectées).
5.2.2 Caractéristiques surveillées
Dans ce mode de réalisation, différentes caractéristiques peuvent être surveillées pour déclencher ensuite le transfert d'un ou plusieurs utilisateurs vers d'autres serveurs, ou entités de contrôle des serveurs : - la variation de la population du monde virtuel selon les arrivées et les départs des utilisateurs. Dans le cas d'une augmentation de la population (celle-ci dépassant un seuil prédéterminé), un serveur supplémentaire peut être ajouté. Dans le cas d'une diminution de la population (celle-ci passant sous un seuil prédéterminé), un serveur peut être supprimé. Le calcul de la nouvelle distribution (c'est-à-dire la répartition des utilisateurs sur les différents serveurs) peut par exemple reposer sur les caractéristiques ou critères déclarés par les utilisateurs. Une telle variation de la population a un effet direct sur la charge du serveur associé au monde virtuel qui subit la variation ; - le résultat d'un calcul portant sur la population des utilisateurs. Pour chaque utilisateur, un calcul est réalisé afin de déterminer le nombre de représentations gagnantes sur le serveur (le monde virtuel) auquel il est actuellement connecté et sur les autres serveurs (autres mondes virtuels). Si, sur un autre serveur, le nombre de représentations gagnantes est significativement supérieur, le transfert est déclenché.
Si, lors de la mise en œuvre du procédé, l'utilisateur n'est pas en communication avec un autre utilisateur, il lui est proposé de rejoindre le serveur où il aura un nombre de représentations gagnantes plus important. Le transfert dans le nouveau monde virtuel est, dans ce mode de réalisation, subordonné à l'accord de l'utilisateur.
5.2.3 Identification d'un monde virtuel de destination On présente, ci-après, deux exemples de mise en œuvre de l'identification d'un monde virtuel de destination, relativement aux caractéristiques surveillées présentées préalablement. 5.2.3.1 Variation de la population
On présente, en relation avec les figures 1 et 4, un mode de réalisation d'une identification d'un monde virtuel de destination lors d'une variation de la population du monde virtuel selon les arrivées et les départs des utilisateurs.
Dans le monde réel 10, un dispositif d'immersion permet à l'utilisateur 11 de modifier dans un container 300 (par l'intermédiaire d'une application dédiée, par exemple) ses caractéristiques 301 dites "possédées" (c'est-à-dire ses propres caractéristiques) et dans un conteneur 302 les caractéristiques 303 dites
"cherchées" chez des utilisateurs qu'il désire rencontrer. Le conteneur 300, par exemple un fichier ou une base de données, mémorise les caractéristiques possédées 301 de chaque utilisateur dans le monde réel (par exemple la couleur des yeux, la taille, les sports favoris, etc.).
Le conteneur 302, par exemple un fichier ou une base de données, mémorise les caractéristiques cherchées 303 par chaque utilisateur du monde réel (par exemple la couleur des yeux, la taille, les sports favoris, etc.).
Le conteneur 304, par exemple un fichier ou une base de données, mémorise une information d'identification du serveur 305 de chaque utilisateur (c'est-à-dire du monde virtuel dans lequel la représentation de l'utilisateur se trouve).
L'identification comprend alors : une étape de calcul 105 de la charge sur tous les serveurs (ou entités). Si un serveur atteint le seuil de charge maximale paramétré (et si aucun autre serveur ne possède de disponibilité), un nouveau serveur est activé. Si un serveur atteint le seuil de charge minimale paramétré, il est considéré comme désactivé dans le calcul de la nouvelle distribution. Une commande 306 de lancement du calcul d'une nouvelle distribution optimale pour les serveurs est transmise ; une étape de calcul 106 des possibilités de rencontres sur les serveurs actifs pour chaque représentation d'utilisateur présent sur le serveur surchargé, à partir des caractéristiques possédées 301 issues du conteneur
300 et des caractéristiques cherchées 303 issues du conteneur 302. La meilleure distribution 502 procurant le maximum de possibilités de rencontre à chaque utilisateur s'obtient par exemple par un calcul d'un arbre de décision segmenté par les caractéristiques des utilisateurs ; une étape de transfert 107 (ou de propositions de transfert) des représentations d'utilisateurs choisis 203 sur leurs nouveaux serveurs, à partir de la nouvelle distribution 502 à instancier. 5.2.3.2 Calcul au fil de l'eau
On présente, en relation avec les figures 1 et 3, un mode de réalisation d'une identification d'un monde virtuel de destination lors d'une mise à jour continue de la population, qui correspond donc à un calcul « sous-marin » (c'est- à-dire sans intervention des utilisateurs), au fil de l'eau (c'est-à-dire en permanence).
Dans le monde réel 10, un terminal d'immersion permet à l'utilisateur 11 de modifier dans un conteneur 300 (par l'intermédiaire d'une application dédiée, par exemple) ses caractéristiques 301 dites "possédées" (c'est-à-dire ses propres caractéristiques) et dans un conteneur 302 les caractéristiques 303 dites
"cherchées" des utilisateurs qu'il désire discerner.
Le conteneur 300, par exemple un fichier ou une base de données, mémorise les caractéristiques possédées 301 de chaque utilisateur dans le monde réel (par exemple la couleur des yeux, la taille, les sports favoris, etc.). Le conteneur 302, par exemple un fichier ou une base de données, mémorise les caractéristiques cherchées 303 par chaque utilisateur du monde réel (par exemple la couleur des yeux, la taille, les sports favoris, etc.).
Un conteneur 304, par exemple un fichier ou une base de données, mémorise une information d'identification du serveur 305 de chaque utilisateur (c'est-à-dire le monde virtuel dans lequel la représentation de l'utilisateur se trouve).
L'identification comprend alors : une étape de calcul 102 (par exemple sous la forme d'une distance mathématique) des chances de succès d'une rencontre 401 sur tous les serveurs pour chaque représentation d'utilisateur présent, à partir des caractéristiques possédées 301 issues du conteneur 300 et des caractéristiques cherchées 303 issues du conteneur 302 et ce pour le serveur 305 de l'utilisateur et pour tous les autres serveurs actifs (non représentés) ; une étape de comparaison 103 des chances de succès d'une rencontre 401 entre elles pour chaque représentation d'utilisateur. Pour une représentation d'utilisateur, lorsqu'il y a significativement plus de possibilités sur un autre serveur que sur le serveur où il est, la comparaison 103 délivre une information représentative 501 d'un monde de destination à une interface 104 (du dispositif 11). Ceci peut être mis en œuvre sous la forme d'un calcul de distance entre les caractéristiques des différents utilisateurs, le cas échéant avec des pondérations adaptées. La comparaison des possibilités de rencontre est paramétrable soit selon un seuil fixe (le nouveau monde virtuel de destination doit offrir au moins vingt possibilités supplémentaires), soit selon un taux fixe (le nouveau monde virtuel de destination doit offrir au moins cinquante pour cent de possibilités supplémentaires) ; une étape de proposition de transfert et/ou de transfert : l'information représentative 501 envoyée à l'interface réel/virtuel 104 et à une interface
201 (dans le monde virtuel) provoque un affichage graphique 202, associé à la proposition de participer à la nouvelle distribution dans le monde virtuel 20. Si l'utilisateur accepte cette proposition, il est transféré sur le serveur conformément à la nouvelle distribution. 5.2.4 Exemples de distributions
Le système de gestion ne tient préférentiellement pas uniquement compte des caractéristiques de chaque utilisateur. Il tente également avantageusement de prendre en compte les aspects techniques (charge des serveurs par exemple) et les équilibres de chaque monde (nombre de personnes, aspects relatifs à la diversité et/ou à l'homogénéité des répartitions,...).
On présente, ci-après, trois exemples de distributions de représentations d'utilisateurs pouvant être mis en œuvre lors de l'identification du monde virtuel de destination d'une représentation d'un utilisateur. 5.2.4.1 Lissage événementiel de la charge
La gestion pure de la charge est une première variante de calcul d'une nouvelle distribution des représentations d'utilisateurs. Le fait que la valeur de la charge passe au dessus d'un plafond déterminé ou en dessous d'un seuil déterminé constitue donc l'événement déclencheur de la répartition.
Ce premier exemple est basé en premier lieu sur la gestion de la charge inhérente à un monde virtuel donné (donc à la charge du serveur ou de l'entité de contrôle sur un serveur hébergeant ce monde). Dans cet exemple de distribution, dès qu'un monde virtuel approche un plafond de charge prédéfini (par exemple 90%), ce monde virtuel est dupliqué (c'est-à-dire qu'une copie en est créée) selon un algorithme de duplication qui répartit les représentations en tenant compte d'une logique des genres si elle s'impose (comme par exemple une répartition homogène des hommes et des femmes) et en recherchant une répartition qui assure pour chaque utilisateur un nombre maximum de représentations qui correspondent à ses caractéristiques (c'est-à-dire un maximum de signes distinctifs verts dans l'exemple décrit précédemment).
Cet algorithme n'est mis en œuvre que sur le monde "mère" et ne prend donc pas en considération les autres mondes virtuels en cours d'opération. La nouvelle distribution des représentations d'utilisateurs est donc liée aux seules représentations contenues dans le monde "mère". L'algorithme de calcul des correspondances de caractéristiques met en cohérence les éléments de recherche : sexe, âge, ville (le sexe et la ville étant préalablement traités lors de la connexion au service, c'est-à-dire que ces données ont déjà été traitées lors de l'affectation initiale de la représentation de l'utilisateur au moment de sa connexion). Un mode opératoire similaire est mis en œuvre lorsque la charge de deux mondes passe sous un seuil déterminée. Dans ce cas, ces deux mondes « fusionnent ». Ainsi, lorsqu'une charge atteint un seuil déterminé, sur deux mondes virtuels considérés (dès que deux mondes ont un taux d'occupation inférieur à cinquante pour cent par exemple) et que l'addition des charges des deux mondes donne un taux d'occupation inférieur à soixante quinze pour cent, par exemple), alors ces deux mondes sont fusionnés.
5.2.4.2 Lissage en continu de la charge
Dans cette deuxième variante, un lissage continu de la charge est réalisé, en effectuant une identification d'un monde virtuel de destination pour chaque représentation d'utilisateur au fil de l'eau, c'est-à-dire utilisateur par utilisateur. En d'autre terme, l'événement qui provoque la recherche et l'identification d'un monde virtuel de destination est un instant de début de mise en œuvre de la recherche. Un calcul invisible pour l'utilisateur est réalisé périodiquement pour identifier la meilleure situation a priori de la représentation de cet utilisateur par rapport à tous les mondes virtuels disponibles (c'est-à-dire par rapport à toutes les duplications d'un même monde virtuel d'origine).
Dans cet exemple de distribution, selon l'invention, on attribue un temps de calcul (c'est-à-dire du temps de traitement « processeur ») de façon prioritaire donné aux représentations d'utilisateurs ayant le plus faible rapport « r » suivant : nombre de représentations gagnantes nombre total de représentations
Chaque monde en activité comportant des représentations d'utilisateurs actives fera successivement l'objet d'un calcul afin d'identifier le meilleur monde virtuel de représentations connectées et en ligne dans lequel la représentation de l'utilisateur peut être transférée, c'est-à-dire dans lequel le nombre de représentations gagnantes par rapport à l'utilisateur est maximum.
Outre la valeur du rapport « r », l'attribution d'un temps de calcul pour l'identification d'un nouveau monde de destination peut également être engagée si un seuil de représentations gagnantes est franchi (par exemple, inférieur à trente).
L'attribution d'un temps de calcul, selon l'invention, est réalisée afin de ne pas induire de ralentissement dans la mise en œuvre du monde virtuel tout en satisfaisant les utilisateurs. Lorsque le monde de destination a été identifié, l'accord de l'utilisateur est demandé préalablement à son transfert.
En d'autres termes, dans cette variante de calcul d'une distribution : dès qu'un monde virtuel est constitué, une liste de tous les utilisateurs connectés à ce monde est dressée. Un tri est régulièrement effectué pour identifier les utilisateurs qui possèdent le moins de « représentations gagnantes » dans ce monde ; dès qu'un utilisateur se retrouve sous un seuil « S » (par exemple, avec moins de trente représentations gagnantes proposées), la recherche d'un monde de destination débute (par exemple en interrogeant séquentiellement tous les autres mondes virtuels disponibles pour connaître le nombre de représentations gagnantes potentielles pour cet utilisateur). Si cette recherche donne une possibilité supérieure au nombre de représentations gagnantes proposées dans le monde virtuel actuel de l'utilisateur, une indication peut lui être fournie et une fonctionnalité peut être activée afin de lui faire part de la possibilité d'un transfert ; si le client active le transfert, il est transféré dans le monde virtuel de destination.
5.2.4.3 Lissage « en ligne / hors ligne » Dans cette troisième variante de calcul d'une nouvelle distribution de lissage de la charge, les activités des représentations d'utilisateurs sont prises en compte.
En effet, afin de rendre l'immersion dans un monde virtuel agréable, il est nécessaire de toujours avoir un nombre minimum d'actions tangibles (c'est à dire des actions qui entraînent des interactions).
Pour répondre à cette dynamique, on introduit un mode d'insertion de représentations d'utilisateurs non connectés dans le monde virtuel afin qu'un utilisateur puisse rencontrer, au sein du monde virtuel, les représentations des utilisateurs qui ne sont pas connectés. En effet, des utilisateurs qui sont inscrits aux services accessibles dans le monde virtuels, mais qui en sont déconnectés (c'est-à-dire qu'ils n'interagissent pas dans le monde virtuel) sont tout de même intégrés à la dynamique du monde virtuel. Une telle intégration, dans la mesure où les utilisateurs n'agissent pas sur leurs représentations, n'entraîne pas de montée en charge notable. Ainsi, il est possible d'intégrer un grand nombre de représentations d'utilisateurs déconnectés, tout en conservant l'affichage des représentations gagnantes (même sur ces représentations des utilisateurs déconnectés). Ainsi, la charge des serveurs mettant en œuvre le monde virtuel est lissée, car : une concordance entre un nombre maximum de représentations d'utilisateurs connectés et d'utilisateurs non connectés est établie, afin de conserver une bonne impression globale de la population du monde virtuel par les utilisateurs. Ceci permet, au niveau du serveur, de conserver des ressources disponibles pour les utilisateurs connectés ; le nombre de représentations d'utilisateurs déconnectés est diminué au fur et à mesure de la connexion d'autres utilisateurs au monde virtuel. Alternativement, selon l'invention, plutôt que d'être supprimées du monde virtuel, ces représentations d'utilisateurs déconnectés peuvent être transférées dans un autre monde virtuel afin de conserver, sur l'ensemble des mondes virtuels, une densité de population homogène et donc une charge homogène sur l'ensemble des serveurs. les représentations des utilisateurs déconnectées font l'objet d'un traitement plus rapide au sein du monde virtuel ;
5.3 Structure d'un dispositif de gestion d'un ensemble d'entités de contrôle de mondes virtuels
On présente finalement, en relation avec la figure 5, la structure simplifiée d'un dispositif de gestion d'un ensemble d'entités contrôlant chacune un monde virtuel, mettant en œuvre le procédé de gestion selon le mode de réalisation particulier décrit ci-dessus.
Un tel équipement de collecte comprend une mémoire 51 constituée d'une mémoire tampon, une unité de traitement 52, équipée par exemple d'un microprocesseur P, et pilotée par le programme d'ordinateur 53, mettant en œuvre le procédé de gestion selon l'invention.
A l'initialisation, les instructions de code du programme d'ordinateur 53 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 52. L'unité de traitement 52 reçoit en entrée au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique du monde virtuel correspondant. Le microprocesseur de l'unité de traitement 53 met en œuvre les étapes du procédé de gestion décrit précédemment, selon les instructions du programme d'ordinateur 53, pour décider si un transfert de représentation d'un utilisateur peut être proposé. Pour cela, le dispositif de gestion comprend, outre la mémoire tampon 51, des moyens de surveillance d'au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique du monde virtuel correspondant et des moyens de proposition de transfert et/ou de transfert d'au moins une desdites représentations d'utilisateur d'un premier monde virtuel à un second monde virtuel, en fonction de la ou desdites caractéristiques surveillées. Ces moyens sont pilotés par le microprocesseur de l'unité de traitement 52.
Un tel dispositif est notamment un serveur centralisé gérant les différents serveurs et entités de contrôle des serveurs dans un système comprenant une pluralité de mondes virtuels.

Claims

REVENDICATIONS
1. Procédé de gestion d'un ensemble d'entités contrôlant chacune un environnement virtuel dans lequel des représentations d'utilisateurs évoluent, caractérisé en ce qu'il comprend les étapes suivantes : - surveillance d'au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique dudit environnement virtuel correspondant ; proposition de transfert et/ou transfert d'au moins une desdites représentations d'utilisateur d'un premier environnement virtuel vers un second environnement virtuel, en fonction de la ou desdites caractéristiques surveillées.
2. Procédé selon la revendication 1, caractérisé en ce qu'il comprend, préalablement à ladite étape de proposition de transfert et/ou de transfert, une étape de contrôle d'une possibilité de transfert de ladite au moins une représentation d'utilisateur vers ledit second environnement virtuel.
3. Procédé selon la revendication 2, caractérisé en ce que ladite étape de contrôle comprend les sous-étapes suivantes : détection de l'existence d'une communication engagée entre ladite représentation d'utilisateur et au moins une autre représentation d'utilisateur ; autorisation de ladite étape de proposition de transfert et/ou transfert si ladite détection est négative.
4. Procédé selon la revendication 1, caractérisé en ce que ladite étape de transfert et/ou de proposition de transfert comprend les sous-étapes suivantes : - proposition faite audit utilisateur de transférer sa représentation dudit premier environnement virtuel vers ledit second environnement virtuel ; traitement d'une réponse reçue dudit utilisateur suite à ladite sous-étape de proposition, de façon à déterminer son accord ou son refus sur un transfert de sa représentation ; - en cas d'accord dudit utilisateur, transfert de la représentation dudit utilisateur dudit premier environnement virtuel vers ledit second environnement virtuel.
5. Procédé selon les revendications 1 à 4, caractérisé en ce que ladite étape de surveillance comprend les sous-étapes suivantes : - obtention d'au moins une information représentative d'une caractéristique dudit utilisateur, dite donnée utilisateur ; comparaison de la ou desdites données utilisateur avec des données correspondantes d'au moins un autre utilisateur présent dans chacun des environnements virtuels ; - sélection dudit second environnement virtuel dans lequel un transfert doit être opérer, en fonction des résultats de ladite comparaison.
6. Procédé selon la revendication 5, caractérisé en ce que ladite étape de comparaison met en œuvre un calcul d'une distance entre la ou lesdites données utilisateurs, pour déterminer dans chacun desdits environnements au moins un ensemble de représentations d'utilisateurs proches, selon ladite distance, de la représentation d'utilisateur à transférer, et en ce que ladite étape de sélection sélectionne un environnement virtuel dans lequel le ou lesdits ensembles, déterminés à ladite étape de comparaison, comprennent le plus grand nombre de représentations.
7. Procédé selon les revendications 1 à 6, caractérisé en ce que ladite étape de surveillance comprend une sous-étape de contrôle de la répartition de représentations d'utilisateur dans chacun desdits environnements virtuels, selon au moins un paramètre de répartition prédéterminé.
8. Procédé selon la revendication 7, caractérisé en ce que ledit paramètre de répartition prédéterminé appartient au groupe comprenant au moins : un nombre de représentations d'utilisateurs par environnement virtuel ; un paramètre représentatif d'une répartition prédéfinie, en terme de nombres de représentations, entre au moins deux groupes d'utilisateurs présentant chacun au moins une caractéristique similaire ; - un paramètre de répartition de charge d'au moins une entité de gestion d'au moins un environnement virtuel.
9. Procédé selon les revendications 1 à 8, caractérisé en ce que lesdites caractéristiques surveillées appartiennent au groupe comprenant au moins : une information représentative d'une consommation par ladite entité d'une ressource supérieure à un plafond déterminé ; une information représentative d'une consommation par ladite entité d'une ressource inférieure à un seuil déterminé ; un nombre de représentations d'utilisateur inférieur à un seuil déterminé dans ledit premier environnement virtuel ; - un nombre de représentations d'utilisateur supérieur à un seuil déterminé dans ledit premier environnement virtuel ; un moment de déclenchement programmé périodiquement ; un moment de déclenchement programmé aléatoirement.
10. Dispositif de gestion d'un ensemble d'entités contrôlant chacune un environnement virtuel dans lequel des représentations d'utilisateurs évoluent, caractérisé en ce qu'il comprend : des moyens de surveillance d'au moins une caractéristique de chacune desdites entités et/ou d'au moins une caractéristique de l'environnement virtuel correspondant ; - des moyens de proposition de transfert et/ou de transfert d'au moins une desdites représentations d'utilisateur d'un premier environnement virtuel à un second environnement virtuel, en fonction de la ou desdites caractéristiques surveillées.
11. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou stocké sur un support lisible par ordinateur et/ou exécutable par un microprocesseur, caractérisé en ce qu'il comprend des instructions de code de programme pour l'exécution du procédé de gestion selon l'une au moins des revendications 1 à 9, lorsqu'il est exécuté sur un ordinateur.
EP08865136A 2007-12-07 2008-12-05 Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant Withdrawn EP2229628A2 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0759658 2007-12-07
PCT/FR2008/052213 WO2009080946A2 (fr) 2007-12-07 2008-12-05 Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant

Publications (1)

Publication Number Publication Date
EP2229628A2 true EP2229628A2 (fr) 2010-09-22

Family

ID=39637628

Family Applications (1)

Application Number Title Priority Date Filing Date
EP08865136A Withdrawn EP2229628A2 (fr) 2007-12-07 2008-12-05 Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant

Country Status (4)

Country Link
US (1) US8887072B2 (fr)
EP (1) EP2229628A2 (fr)
CA (1) CA2705403A1 (fr)
WO (1) WO2009080946A2 (fr)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9254438B2 (en) 2009-09-29 2016-02-09 International Business Machines Corporation Apparatus and method to transition between a media presentation and a virtual environment
US9256347B2 (en) * 2009-09-29 2016-02-09 International Business Machines Corporation Routing a teleportation request based on compatibility with user contexts
US20110231781A1 (en) * 2010-03-19 2011-09-22 International Business Machines Corporation System and method for virtual object sharing and management in virtual worlds
EP3543958B1 (fr) * 2010-09-13 2020-11-11 Barry Lynn Jenkins Système et procédé de fourniture et de commande de diffusion multimédia interactive comprenant des paquets prédéterminés de données géométriques, de textures, d'éclairage et d'autres données rendues sur un dispositif de réception
US9501919B2 (en) * 2011-03-11 2016-11-22 Elisabeth Laett Method and system for monitoring the activity of a subject within spatial temporal and/or behavioral parameters
EP2500823A1 (fr) 2011-03-15 2012-09-19 Siemens Aktiengesellschaft Fonctionnement d'un réseau de traitement de données doté de plusieurs centres de données géographiquement distancés
US8375085B2 (en) 2011-07-06 2013-02-12 Avaya Inc. System and method of enhanced collaboration through teleportation
CN103970609B (zh) * 2014-04-24 2017-03-08 南京信息工程大学 一种基于改进蚁群算法的云数据中心任务调度方法
CN104915557B (zh) * 2015-06-04 2017-09-01 中山大学 一种基于双目标蚁群算法的云任务分配方法
US10110914B1 (en) * 2016-09-15 2018-10-23 Google Llc Locally adaptive warped motion compensation in video coding
CN106991013B (zh) * 2017-04-18 2018-09-07 腾讯科技(深圳)有限公司 一种对资源请求进行处理的方法及装置
US11087136B2 (en) * 2018-04-13 2021-08-10 Apple Inc. Scene classification

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5951694A (en) * 1995-06-07 1999-09-14 Microsoft Corporation Method of redirecting a client service session to a second application server without interrupting the session by forwarding service-specific information to the second server

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4479051B2 (ja) * 2000-04-28 2010-06-09 ソニー株式会社 情報処理装置および方法、並びに記録媒体
US20020116458A1 (en) * 2000-12-14 2002-08-22 Jonathan Bricklin Web-based dating service
GB0407336D0 (en) * 2004-03-31 2004-05-05 British Telecomm Pathfinding system
US8443372B2 (en) * 2006-03-23 2013-05-14 International Business Machines Corporation Methods and systems for partitioning data in parallel processing systems

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5951694A (en) * 1995-06-07 1999-09-14 Microsoft Corporation Method of redirecting a client service session to a second application server without interrupting the session by forwarding service-specific information to the second server

Also Published As

Publication number Publication date
CA2705403A1 (fr) 2009-07-02
WO2009080946A3 (fr) 2009-08-20
WO2009080946A2 (fr) 2009-07-02
US20100299618A1 (en) 2010-11-25
US8887072B2 (en) 2014-11-11

Similar Documents

Publication Publication Date Title
EP2229628A2 (fr) Procédé de gestion d'un ensemble d'entités de contrôle d'un environnement virtuel, dispositif, et produit programme d'ordinateur correspondant
US8151199B2 (en) Computational delivery system for avatar and background game content
US9177288B2 (en) System and method for customized experiences in a shared online environment
US8365076B2 (en) System for concurrently managing multiple avatars
US9472014B2 (en) Alternative representations of virtual content in a virtual universe
US9256347B2 (en) Routing a teleportation request based on compatibility with user contexts
US8281240B2 (en) Avatar aggregation in a virtual universe
KR20070061359A (ko) 디지털 미디어 캐릭터 대체에 사용하기 위한 개인화된 규칙세트들의 브로커링
CN111385594B (zh) 一种虚拟角色互动方法、装置和存储介质
WO2001088779A1 (fr) Procede et systeme de simulation comportementale d'une pluralite de consommateurs, par simulation multi-agents
CN113966247A (zh) 预测性数据预加载
US10747685B2 (en) Expiring virtual content from a cache in a virtual universe
US9805492B2 (en) Pre-fetching virtual content in a virtual universe
JP2023551476A (ja) ビデオゲームのコンテンツに含めるためのグラフィックインターチェンジフォーマットファイル識別
CN111768478B (zh) 一种图像合成方法、装置、存储介质和电子设备
US8655674B2 (en) Personal service assistance in a virtual universe
US20180225873A1 (en) Systems and methods to provide narrative experiences for users of a virtual space
CN109376310A (zh) 用户推荐方法、装置、电子设备和计算机可读存储介质
Best Raymond Williams and the structure of feeling of reality TV
US8938681B2 (en) Method and system for filtering movements between virtual environments
Dong et al. Exploring Avatar Experiences in Social VR: A Comprehensive Analysis of User Reviews
US20100162136A1 (en) Degrading avatar appearances in a virtual universe
US9894145B2 (en) Method and system for filtering movements between virtual environments
CN117014401A (zh) 一种社交处理方法及相关设备
WO2014006508A2 (fr) Plate-forme de réseau social collaboratif

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: 20100601

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA MK RS

DAX Request for extension of the european patent (deleted)
RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ORANGE

17Q First examination report despatched

Effective date: 20160627

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: A63F 13/30 20140101ALI20170130BHEP

Ipc: G06F 9/50 20060101AFI20170130BHEP

Ipc: G06T 7/00 20170101ALI20170130BHEP

Ipc: G06F 19/00 20110101ALI20170130BHEP

INTG Intention to grant announced

Effective date: 20170220

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: 20170704