Generating data for managing encounters in a virtual world environment

Information

  • Patent Grant
  • 10627983
  • Patent Number
    10,627,983
  • Date Filed
    Monday, June 2, 2014
    10 years ago
  • Date Issued
    Tuesday, April 21, 2020
    4 years ago
Abstract
Embodiments of the invention provide techniques for providing information for avoiding specific users of an immersive virtual environment. Generally, a primary user may specify other users to be avoided in a blacklist. The blacklisted users may be specified to be avoided at all times, or may be specified to be avoided in certain situations. In one embodiment, a user may be added to the blacklist during a specific situation, resulting in the characteristics of the situation being automatically stored in the blacklist. Subsequently, the blacklist may be used to determine the locations of the blacklisted users matching the current situation. The primary user may then avoid the locations having the greatest probability of encountering blacklisted users.
Description
BACKGROUND OF THE INVENTION
Field of the Invention

Embodiments of the invention relate to the use of immersive virtual environments. More specifically, embodiments of the invention relate to avoiding specific users of an immersive virtual environment.


Description of the Related Art

A virtual world is a simulated environment which users may inhabit and in which the users may interact with virtual objects and locations of the virtual world. Users may also interact with one another via avatars. An avatar generally provides a graphical representation of an individual within the virtual world environment. Avatars are usually presented to other users as two or three-dimensional graphical representations of humanoids. Frequently, virtual worlds allow for multiple users to enter and interact with one another. Virtual worlds provide an immersive environment as they typically appear similar to the real world, with real world rules such as gravity, topography, locomotion, real-time actions, and communication. Communication may be in the form of text messages sent between avatars, real-time voice communication, gestures displayed by avatars, symbols visible in the virtual world, and the like.


Virtual worlds may be persistent. A persistent world provides an immersive environment (e.g., a fantasy setting used as a setting for a role-playing game, or a virtual world complete with land, buildings, towns, and economies) that is generally always available, and world events happen continually, regardless of the presence of a given avatar. Thus, unlike more conventional online games or multi-user environments, the virtual world continues to exist, and plots and events continue to occur as users enter (and exit) the virtual world.


SUMMARY OF THE INVENTION

One embodiment of the invention includes a computer-implemented method. The method generally includes: receiving, from a first user, a selection indicating a preference of the first user towards encountering the second user while present in a virtual world; determining a current situational context for the first user within the virtual world; and storing the selection of the second user together with the current situational context in a searchable data structure.


Another embodiment of the invention includes a computer-readable storage medium including a program, which when executed on a processor performs an operation. The operation may generally include: receiving, from a first user, a selection indicating a preference of the first user towards encountering the second user while present in a virtual world; determining a current situational context for the first user within the virtual world; and storing the selection of the second user together with the current situational context in a searchable data structure.


Still another embodiment of the invention includes a system having a processor and a memory. The memory may store a program, which when executed by the processor, is configured to perform the steps of: receiving, from a first user, a selection indicating a preference of the first user towards encountering the second user while present in a virtual world; determining a current situational context for the first user within the virtual world; and storing the selection of the second user together with the current situational context in a searchable data structure.





BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features, advantages and objects of the present invention are attained and can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to the embodiments thereof which are illustrated in the appended drawings.


It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.



FIG. 1 is a block diagram that illustrates a client server view of computing environment, according to one embodiment of the invention.



FIG. 2 illustrates a user display for a user participating in a virtual world, according to one embodiment of the invention.



FIG. 3 is a flow diagram illustrating a method for generating a blacklist for use in avoiding specific users of an immersive virtual environment, according to one embodiment of the invention.



FIG. 4 is a flow diagram illustrating a method for avoiding specific users of an immersive virtual environment by using blacklists, according to one embodiment of the invention.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A virtual world is a simulated environment in which users may be represented by avatars. An avatar may be used to “travel” through locations of the virtual world, such as virtual streets, buildings, rooms, etc. While in a given location, an avatar may also be used to interact with objects or other avatars present therein. For example, an avatar may be able to approach another avatar, and may interact with the other avatar by communicating, performing financial transactions, and the like. Thus, multiple users, although in different physical locations, may be present in the same virtual location, and may interact therein by using their respective avatars.


However, in some situations, a first user may wish to avoid other users within the virtual world. For example, in a situation where the first user is participating in a professional activity (e.g., a virtual business meeting), he may wish to avoid casual friends who may behave unprofessionally, and thus cause embarrassment. In another example, the first user may have gone through a divorce, and may wish to go on a date in the virtual world without running into the former spouse.


Embodiments of the invention provide techniques for providing information for avoiding specific users of an immersive virtual environment. In one embodiment, a primary user may specify other users to be avoided in a blacklist. The blacklisted users may be specified to be avoided at all times, or may be specified to be avoided in certain situations. In one embodiment, a user may be added to the blacklist during a specific situation, resulting in the characteristics of the situation being automatically stored in the blacklist. Subsequently, the blacklist may be used to determine the locations of the blacklisted users matching the current situation. The primary user may then avoid the locations having the greatest probability of encountering blacklisted users.


In the following, reference is made to embodiments of the invention. However, it should be understood that the invention is not limited to specific described embodiments. Instead, any combination of the following features and elements, whether related to different embodiments or not, is contemplated to implement and practice the invention. Furthermore, in various embodiments the invention provides numerous advantages over the prior art. However, although embodiments of the invention may achieve advantages over other possible solutions and/or over the prior art, whether or not a particular advantage is achieved by a given embodiment is not limiting of the invention. Thus, the following aspects, features, embodiments and advantages are merely illustrative and are not considered elements or limitations of the appended claims except where explicitly recited in a claim(s). Likewise, reference to “the invention” shall not be construed as a generalization of any inventive subject matter disclosed herein and shall not be considered to be an element or limitation of the appended claims except where explicitly recited in a claim(s).


One embodiment of the invention is implemented as a program product for use with a computer system. The program(s) of the program product defines functions of the embodiments (including the methods described herein) and can be contained on a variety of computer-readable storage media. Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive and DVDs readable by a DVD player) on which information is permanently stored; and (ii) writable storage media (e.g., floppy disks within a diskette drive, a hard-disk drive or random-access memory) on which alterable information is stored. Such computer-readable storage media, when carrying computer-readable instructions that direct the functions of the present invention, are embodiments of the present invention. Other media include communications media through which information is conveyed to a computer, such as through a computer or telephone network, including wireless communications networks. The latter embodiment specifically includes transmitting information to/from the Internet and other networks. Such communications media, when carrying computer-readable instructions that direct the functions of the present invention, are embodiments of the present invention. Broadly, computer-readable storage media and communications media may be referred to herein as computer-readable media.


In general, the routines executed to implement the embodiments of the invention, may be part of an operating system or a specific application, component, program, module, object, or sequence of instructions. The computer program of the present invention typically is comprised of a multitude of instructions that will be translated by the native computer into a machine-readable format and hence executable instructions. Also, programs are comprised of variables and data structures that either reside locally to the program or are found in memory or on storage devices. In addition, various programs described hereinafter may be identified based upon the application for which they are implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature.



FIG. 1 is a block diagram that illustrates a client server view of computing environment 100, according to one embodiment of the invention. As shown, computing environment 100 includes client computers 110, network 115 and server system 120. In one embodiment, the computer systems illustrated in environment 100 may include existing computer systems, e.g., desktop computers, server computers, laptop computers, tablet computers, and the like. The computing environment 100 illustrated in FIG. 1, however, is merely an example of one computing environment. Embodiments of the present invention may be implemented using other environments, regardless of whether the computer systems are complex multi-user computing systems, such as a cluster of individual computers connected by a high-speed network, single-user workstations, or network appliances lacking non-volatile storage. Further, the software applications illustrated in FIG. 1 and described herein may be implemented using computer software applications executing on existing computer systems, e.g., desktop computers, server computers, laptop computers, tablet computers, and the like. However, the software applications described herein are not limited to any currently existing computing environment or programming language, and may be adapted to take advantage of new computing systems as they become available.


As shown, each client computer 110 includes a central processing unit (CPU) 102, which obtains instructions and data via a bus 111 from client memory 107 and client storage 104. CPU 102 is a programmable logic device that performs all the instruction, logic, and mathematical processing in a computer. Client storage 104 stores application programs and data for use by client computer 110. Client storage 104 includes hard-disk drives, flash memory devices, optical media and the like. Client computer 110 is operably connected to the network 115. Client memory 107 includes an operating system (OS) 108 and a client application 109. Operating system 108 is the software used for managing the operation of the client computer 110. Examples of OS 108 include UNIX, a version of the Microsoft Windows® operating system, and distributions of the Linux® operating system. (Note, Linux is a trademark of Linus Torvalds in the United States and other countries.)


In one embodiment, the client application 109 provides a software program that allows a user to connect to a virtual world 130 on the server 120, and once connected, to perform various user actions. Such actions may include exploring virtual locations, interacting with other avatars, and interacting with virtual objects. Further, the client application 109 may be configured to generate and display a visual representation of the user within the immersive environment, generally referred to as an avatar. The avatar of the user is generally visible to other users in the virtual world, and the user may view avatars representing the other users. The client application 109 may also be configured to generate and display the immersive environment to the user and to transmit the user's desired actions to the virtual world 130. Such a display may include content from the virtual world determined from the user's line of sight at any given time. For the user, the display may present a third-person perspective, meaning a view from a location other than that of the user's avatar, and which may include the image of the user's avatar within the virtual world. Alternatively, the display may present a first-person perspective, meaning a view of the virtual world as would be seen through the eyes of the avatar representing the user.


By way of example, FIG. 2 illustrates a user display 200 showing a third-person view presented to a user participating in a virtual world, according to one embodiment of the invention. In this example, the primary user (i.e., the user viewing the user display 200) is represented by avatar 270, and is present in a virtual town square. The primary user may interact with elements of the virtual world, including objects, locations, and other users. For example, as illustrated in FIG. 2, the avatar 270 is interacting with an avatar 260 of a second user, thus enabling the primary user to communicate with the second user.


In some situations, the primary user may wish to avoid contact with a third user, illustrated by avatar 280. For example, the primary user may be using avatar 270 to conduct a business negotiation with avatar 260, and may wish to avoid a casual friend represented by avatar 280. However, as in the situation illustrated in FIG. 2, being present in the same virtual location may result in avatar 270 having an unwanted encounter with avatar 280. More specifically, in the event that avatar 270 comes into a line of sight of the user of avatar 280, an unwanted encounter may occur.


In one embodiment, the line of sight of a user will depend on the type of view of the virtual world being used by that user. That is, if the user of avatar 280 is viewing a first-person perspective of the virtual world (i.e., seeing through the avatar's eyes), he may be able to see a fourth avatar 250, since he has an unobstructed line of sight 284 (shown as a dotted line) to the fourth avatar 250. In contrast, the user of avatar 280 may not be able to see the avatar 270, since a second line of sight 282 to avatar 270 may be obstructed by the virtual objects 132. Further, in the situation that the user of avatar 280 is viewing a third-person view of the virtual world (i.e., similar to user display 200 shown in FIG. 2), his perspective may be that of a “camera eye” floating over the scene, and would thus allow him to see the avatar 270 over and/or around the virtual objects 132. In one embodiment, the line of sight of a user may also depend on the distance between the user's avatar and another avatar. That is, the virtual world 130 may include predefined limits on distances at which two avatars may view each other.


Returning to FIG. 1, the user may view the virtual world using a display device 140, such as an LCD or CRT monitor display, and interact with the client application 109 using input devices 150. Further, in one embodiment, the user may interact with the client application 109 and the virtual world 130 using a variety of virtual reality interaction devices 160. For example, the user may don a set of virtual reality goggles that have a screen display for each lens. Further, the goggles could be equipped with motion sensors that cause the view of the virtual world presented to the user to move based on the head movements of the individual. As another example, the user could don a pair of gloves configured to translate motion and movement of the user's hands into avatar movements within the virtual reality environment. Of course, embodiments of the invention are not limited to these examples and one of ordinary skill in the art will readily recognize that the invention may be adapted for use with a variety of devices configured to present the virtual world to the user and to translate movement/motion or other actions of the user into actions performed by the avatar representing that user within the virtual world 130.


As shown, the server system 120 includes a CPU 122, which obtains instructions and data via a bus 121 from memory 126 and storage 124. The processor 122 could be any processor adapted to support the methods of the invention. The memory 126 is any memory sufficiently large to hold the necessary programs and data structures. Memory 126 could be one or a combination of memory devices, including Random Access Memory, nonvolatile or backup memory, (e.g., programmable or Flash memories, read-only memories, etc.). In addition, memory 126 and storage 124 may be considered to include memory physically located elsewhere in a server 120, for example, on another computer coupled to the server 120 via bus 121. The server system 120 may be operably connected to the network 115, which generally represents any kind of data communications network. Accordingly, the network 115 may represent both local and wide area networks, including the Internet.


In one embodiment, storage 123 may include a set of blacklists 124 and a movement history 125. The movement history 125 may store data describing past locations and movements of avatars within the virtual world 130. Each blacklist 124 may be a data structure corresponding to a given user (hereafter referred to as the primary user), and may be configured to store characteristics of other users (hereafter referred to as blacklisted users) that the primary user may wish to avoid. That is, the blacklist 124 may describe the primary user's preferences with regards to avoiding contact with the blacklisted users while present in the virtual world. A method for adding a user to the blacklist 124 is described below with reference to FIG. 3. Generally, the blacklist 124 may represent any data structure suited to the current application, such as a database table, XML document, flat file, and the like.


In one embodiment, the characteristics stored in the blacklist 124 may include an identifier and an avoidance level assigned to each blacklisted user. The avoidance level may indicate a degree to which the primary user wishes to avoid the blacklisted user having the avoidance level. For example, in a situation where the primary user must come into contact with either of two blacklisted users, the primary user will usually choose to come into contact with the user having a lower avoidance level.


In one embodiment, the blacklist 124 may describe a user as being on an absolute (unconditional) blacklist, meaning that the primary user wishes to avoid any contact with the blacklisted user in all circumstances. Alternatively, the blacklist 124 may describe a user as being on a situational (conditional) blacklist, meaning the primary user wishes to avoid contact with the blacklisted user only in defined situations. A situational blacklist may be defined in terms of characteristics of the primary user's situation, such as a location (e.g., avoid at my office, avoid in public spaces, etc.), companions (e.g., avoid when I am with my boss, avoid when I am with clients, etc.), or time frame (e.g., avoid from 8 AM to 4 PM each day). Further, a situational blacklist may also be defined in terms of the primary user's current profile, meaning a general description of the primary user's intended activity or mode of interacting while in the virtual world. For example, a situational blacklist may specify that a blacklisted user is to be avoided while the primary user is in a “Work” profile (i.e., the primary user is conducting business affairs). Furthermore, a situational blacklist may be defined in terms of the primary user's current activity (e.g., avoid while I am working, avoid while I am talking, etc.).


In one embodiment, the characteristics stored in the blacklist 124 may be defined in terms of groups of users of the virtual world. That is, the blacklist 124 may include defined groups of users to avoid, either conditionally or unconditionally. For example, the blacklist 124 may specify that the group “Competitors” should always be avoided at all times, and that the group “Friends” should be avoided when the primary user is using a “Work” profile, or is at an office location. Further, the blacklist 124 may specify a group to avoid when the primary user is in the company of another person or group (e.g., avoid the group “Friends” when I am in the company of the group “Business Clients”). Furthermore, the blacklist 124 may specify a user to avoid when that user is in the company of another person or group (e.g., avoid user “John” when he is in the company of user “Jane”).


As shown, memory 126 includes a virtual world 130, a visibility engine 127 and a blacklist engine 128. In one embodiment, the virtual world 130 may be a software application that allows a user to explore and interact with an immersive environment. As described, the user may access the virtual world 130 by using the client application 109, according to one embodiment. The virtual world 130 may include virtual objects 132, such as buildings, trees, houses, etc.


The blacklist engine 128 may be a software application configured to enable a primary user to create and modify a blacklist 124. Additionally, the blacklist engine 128 may be configured to determine situations in which the primary user may encounter a blacklisted user, and to assist the primary user in avoiding such encounters.


In one embodiment, the primary user may use the blacklist engine 128 to manually add users to the blacklist 124. For example, the primary user may interact with a user interface provided by the blacklist engine 128 in order to specify an identifier for the user being blacklisted (e.g., user name, user alias, etc.), the type of blacklist (i.e., absolute or situational), a user group (e.g., “Friends,” “Clients,” etc.), a situational context (e.g., at work, with clients, etc.), and the like.


In one embodiment, the primary user may use the blacklist engine 128 to select users to be added to the blacklist 124 by tagging them during an encounter within the virtual world. The selection of a user for blacklisting may be accompanied by automatically capturing the current situational context. Accordingly, the selected user may be put on a situational blacklist, without requiring the primary user to manually define the situational context of the blacklist (e.g., location, time frame, user profile, etc.). Further, prior to adding the selected user to the blacklist 124, the primary user may be allowed to review and modify the blacklist specification, according to one embodiment. For example, the primary user may interact with an interface provided by the blacklist engine 128 in order to review and modify the characteristics to be stored in the blacklist 124.


In one embodiment, the blacklist engine 128 may be further configured to assist the primary user in avoiding encounters with blacklisted users. More specifically, the blacklist engine 128 may be configured to evaluate the blacklist 124 in order to determine situations (i.e., locations, times, activities, groups, etc.) in which the primary user will be likely to encounter a blacklisted user, and to alert the primary user so as to avoid those situations. In one embodiment, the blacklist engine 128 may be configured to determine the current locations of blacklisted users within the virtual world 130. Further, the blacklist engine 128 may use the movement history 125 to analyze previous movements of the blacklisted users in order to predict probabilities that they will be present at given locations at given times. That is, certain characteristics of a user's past movements (e.g., movement patterns, frequencies, times, etc.) may be analyzed using statistical and/or probabilistic analysis to generate predictions of future movements. In one embodiment, the predicted probabilities may be analyzed using the primary user's travel plans within the virtual world 130, in order to determine the likelihood of the primary user encountering blacklisted users. This analysis may include consideration of situational blacklists. That is, whether a potential encounter will take place under any situational characteristics (i.e., location, time, profile, group, etc.) that may be assigned to the blacklisted user in the blacklist 124.


In one embodiment, the blacklist engine 128 may interact with the visibility engine 127 in order to consider lines of sight in predicting a probability of encountering a blacklisted user. The visibility engine 127 may be a software application configured to determine lines of sight between two avatars in specific locations of the virtual world 130. The lines of sight may be determined for the present locations of two avatars, as well as predicted future locations of the avatars (i.e., locations based on predictions of future movements, as described above). In one embodiment, the lines of sight may be determined based on a specified maximum viewing distance between two avatars. If two avatars are further apart than the maximum viewing distance, the visibility engine 127 may determine that one avatar may not be visible to another avatar. Further, the lines of sight may also be determined based on any virtual objects 132 that may be located between two avatars. For example, the line of sight 282 may be affected by characteristics of an intervening virtual object 132, including the object's shape, material, openings, height, and the like. Thus, where two avatars are on opposite sides of an opaque wall having dimensions sufficient to preclude the avatars from seeing each other, then the avatars are considered as not being within a line of sight of each other. Conversely, if the same wall is transparent (and assuming no other objects) then the avatars will be considered to be within respective lines of sight.


In one embodiment, a line of sight may be determined based on a view perspective being displayed to a user (i.e., a first-person perspective or a third-person perspective). In the case of a first-person perspective, determining whether a first avatar is within a line of sight of a second avatar depends upon a field of vision of the second avatar (i.e., what is visible from the virtual eyes of the second avatar). The field of vision may vary from one virtual world to another according to well-known graphical considerations of depth perception, peripheral view, lighting, etc. Further, field of vision (and/or line of sight) may vary or depend upon characteristics of the avatar itself. For example, the second avatar may require corrective lenses. Therefore, the field of vision of the second avatar may depend upon whether the second avatar is wearing the appropriate corrective lenses. In the absence of appropriate corrective lenses, the rendering of the virtual world to a user of the second avatar may be made to appear fuzzy, thereby providing the user with a simulation of what the second avatar sees. In this case, the field of vision of the second avatar is substantially limited, relative to when the second avatar is wearing the appropriate corrective lenses.


After determining the probabilities of encountering blacklisted users, the blacklist engine 128 may also be configured to present the primary user with a display of likely encounters with blacklisted users. For example, the blacklist engine 128 may generate a text listing of likely encounters, or may generate a graphical representation of a map of the virtual world 130, with visual indicators (e.g., colors, symbols, labels, etc.) showing the likelihood of encounters within various areas of the map. Furthermore, the blacklist engine 128 may be configured to suggest alternative travel plans (e.g., alternative routes, destinations, times, etc.), so as to reduce the likelihood of encountering blacklisted users. Such alternative travel plans may reflect current and predicted lines of sight determined by the visibility engine 127.


In one embodiment, the blacklist engine 128 may also be configured to consider the avoidance level of each blacklisted user in suggesting alternative travel plans. For example, assuming that the primary user must travel to through one of two areas to reach his destination, and that each area includes equal numbers of blacklisted users, the blacklist engine 128 may recommend that the primary user travel through the area that has a lower cumulative avoidance level (i.e., the cumulative avoidance levels of all blacklisted users in the area). That is, the blacklist engine 128 may recommend that the primary user avoid the area that includes blacklisted users which are to be avoided more strongly.


In another embodiment, the blacklist engine 128 may be configured to consider a negative avoidance level assigned to other users, meaning that the primary user may wish to maximize the probability of encountering those users. For example, in the situation that the primary user has assigned a negative avoidance score to another user, the blacklist engine 128 may suggest travel plans or locations such that the primary user will have a higher likelihood of being within a line of sight of the other user.


Of course, the embodiments described above are intended to be illustrative, and are not limiting of the invention. Other embodiments are broadly contemplated. For example, the blacklist 124 and the blacklist engine 128 may be included in the client computer 110. In another example, the functionality of the blacklist engine 128 may be incorporated into the client application 109, or in the virtual world 130.



FIG. 3 is a flow diagram illustrating a method 300 for defining a blacklist for a user of a virtual world, according to one embodiment of the invention. Persons skilled in the art will understand that, even though the method is described in conjunction with the system of FIG. 1, any system configured to perform the steps of the method 300, in any order, is within the scope of the present invention.


The method 300 begins at step 310, by receiving a command to add a user to a blacklist. For example, a primary user may enter a command in the client application 109 for manually adding a given user to the primary user's blacklist 124. In one embodiment, the primary user may specify that the blacklisted user is to have an absolute blacklist or a situational blacklist. At step 320, data describing the current situation may be determined. For example, the blacklist engine 128 may be configured to determine characteristics of the primary user's current situation (e.g., location, profile, activity, companions, etc.), and to store the situational data in the blacklist 124. Thereafter, as described below with reference to FIG. 4, such situational data may be used in performing a method for avoiding specific users.


At step 330, an avoidance level for the blacklisted user may be received. That is, the primary user may specify a degree of preference for avoiding the blacklisted user. For example, the user may provide an avoidance level by specifying a quantitative score in the blacklist engine 128. In some situations, the primary user may wish to encounter a particular user in the virtual world. Accordingly, the primary user may specify the avoidance level as a negative number, meaning a degree of preference for encountering the user. At step 340, groups that are not compatible with the blacklisted user may be received. That is, the primary user may specify a preference for avoiding the blacklisted user while in the company of certain groups of users. For example, the primary user may interact with the blacklist engine 128 to specify that the blacklisted user is to be avoided in the situation that the primary user is in the company of a “Business Clients” group of users. At step 350, similar users may be suggested to the primary user be added to the current blacklist. That is, the primary user may be presented with additional users that have similar characteristics to the blacklisted user. The primary user may then decide whether to add any of the additional users to the current blacklist.


At step 360, the current blacklist data (i.e., the user name, avoidance level, blacklist type, situational data, etc.) may be presented to the primary user for review and approval prior to finalizing the blacklist. For example, the blacklist engine 128 may present the primary user with a summary of a situational blacklist, including the blacklisted user's name, a location, a profile, and an incompatible group. The primary user may then modify and/or approve the situational blacklist. At step 370, the current blacklist data may be stored in a blacklist data structure. For example, the blacklist engine 128 may store the blacklist data in the blacklist 124. After step 370, the method 300 terminates.



FIG. 4 is a flow diagram illustrating a method 400 for avoiding specific users of an immersive virtual environment by using blacklists, according to one embodiment of the invention. For the sake of illustration, method 400 is described in conjunction with the system of FIG. 1. However, persons skilled in the art will understand that any system configured to perform the steps of method 400, in any order, is within the scope of the present invention.


The method 400 begins at step 410, by receiving the primary user's travel plans within the virtual world. The primary user may provide this information, for example, by entering a list of intended destinations into a user interface provided by the client application 109, or by uploading an itinerary to the blacklist engine 128. Optionally, the blacklist engine 128 may be configured to anticipate the primary user's likely destinations based on stored records of previous travels within the virtual world.


At step 420, the primary user's current situation within the virtual world may be determined. For example, the blacklist engine 128 may be configured to determine the primary user's current profile in the virtual world (e.g., a “Work” profile, a “Gaming” profile, etc.), the primary user's current companions, and the like. At step 430, blacklisted users that are incompatible with the primary user's current situation may be identified. For example, the blacklist engine 128 may be configured to identify users that are specified in the blacklist 124 as having a situational blacklist that matches the primary user's current situation. That is, if the primary user is currently using a “Work” profile, then the blacklist engine 128 may identify any users that have a situational blacklist that specifies they are to be avoided while using the “Work” profile. At step 440, users that have an absolute blacklist (i.e., users to avoid in all situations) may be identified. For example, the blacklist engine 128 may be configured to identify users that are specified in the blacklist 124 as having an absolute blacklist.


At step 450, the current locations and movements of the identified users may be determined. For example, the blacklist engine 128 may be configured to determine the locations and movements of the blacklisted users identified at steps 430 and 440. Such location and movement information may be provided, e.g., by the virtual world 130. At step 460, the probable locations of the identified users may be determined, based on the current user locations and movements determined at step 450, as well as stored data describing any past movements of the identified users. For example, the blacklist engine 128 may be configured to determine the probable locations of the identified users based on statistical and/or probabilistic analysis of the movement history 125, which may store characteristics of the identified users' past movements (e.g., movement patterns, frequencies, times, etc.).


At step 470, avoidance scores for different areas of the virtual world may be determined. For example, the blacklist engine 128 may be configured to determine avoidance scores for areas of the virtual world 130. In one embodiment, avoidance scores are values representing the likelihood of encountering one or more blacklisted users within a given area of a virtual world. The avoidance score for a given area may be based on the number of identified users that are present in (or projected to be in) the area. The avoidance score may also be based on the avoidance level assigned to the blacklisted user, meaning the degree to which the primary user wishes to avoid the blacklisted user. Note that, in one embodiment, an avoidance level may be negative, meaning a user that the primary user wishes to encounter. The avoidance score may also be based on the likelihood that the primary user will be in a line of sight of the blacklisted user. For example, the visibility engine 127 may be used to determine the likelihood that the primary user may pass through a particular area without being in the line of sight of the blacklisted user. The blacklisted user's line of sight may be determined based on distances between avatars, and on characteristics of any intervening objects between the avatars. For example, determining the line of sight 282 may be based on virtual objects 132, as shown in FIG. 2. The avoidance score may also be based on the primary user's travel plans, as well as any planned changes in the primary user's situation (e.g., switching to a “Casual” profile, planning to meet with a family group at a given time, etc.).


At step 480, recommendations for changes to the primary user's travel plans may be generated and then results are presented to the primary user at step 490. For example, the blacklist engine 128 may be configured to compare the primary user's travel plans (received at step 410) to the avoidance scores for areas of the virtual world (determined at step 470). On the basis of this comparison, the blacklist engine 128 may generate recommendations for alternative travel plans (e.g., alternate routes, destinations, times, etc.).


While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.

Claims
  • 1. A computer-implemented method of managing avatar visual encounters in a virtual world, the method being implemented by a computer system that includes one or more physical processors executing one or more computer program instructions which, when executed, perform the method, the method comprising: receiving, at the computer system, from a first user, an input related to an avatar of a second user in the virtual world;determining, by the computer system, a first situational context that corresponds to a first situation of an avatar of the first user in the virtual world at a time of the receipt of the input, wherein the avatar of the first user has a travel plan that relates to traveling in the virtual world;associating, by the computer system, the input with the first situational context in a data structure;determining, by the computer system, a second situational context that corresponds to a second situation of the avatar of the first user in the virtual world;determining, by the computer system, a location of the avatar of the second user in the virtual world, wherein determining the location of the avatar of the second user comprises predicting a future location of the avatar of the second user in the virtual world based, at least in part, on a movement history of the avatar of the second user, and wherein the location of the avatar of the second user comprises the predicted future location;generating one or more indications related to the location of the avatar of the second user responsive to a determination that the second situational context corresponds to the first situational context, wherein the one or more indications are directed towards indicating whether the avatar of the first user will be in a line of sight of the avatar of the second user based on the predicted future location of the avatar of the second user; andgenerating, by the computer system, based on the predicted future location of the avatar of the second user, at least one alternative travel plan to be recommended for the avatar of the first user in lieu of the travel plan, wherein the at least one alternative travel plan enables the avatar of the first user to avoid being in the line of sight of the avatar of the second user.
  • 2. The computer-implemented method of claim 1, wherein the second situation of the avatar of the first user comprises a situation in the virtual world that occurs at a time different from the time of the receipt of the input.
  • 3. The computer-implemented method of claim 1, wherein the location of the avatar of the second user comprises a current location of the avatar of the second user in the virtual world.
  • 4. The computer-implemented method of claim 1, wherein the first situational context relates to one or more of: (i) a location of the avatar of the first user in the virtual world at the time of the receipt of the input; (ii) a time frame associated with the receipt of the input; (iii) an avatar that the avatar of the first user is interacting with in the virtual world at the time of the receipt of the input; (iv) an activity of the avatar of the first user at the time of the receipt of the input; (v) an intended activity of the avatar of the first user at the time of the receipt of the input; (vi) a situational status of the avatar of the first user at the time of the receipt of the input; or (vii) an amount of ambient light at the time of the receipt of the input.
  • 5. The computer-implemented method of claim 1, further comprising: determining, by the computer system, one or more other users based on the characteristics of the second user and the one or more other users' characteristics;providing, by the computer system, a presentation of the one or more other users to the first user;receiving, by the computer system, from the first user, one or more additional inputs related to the one or more other users responsive to the presentation of the one or more other users; andassociating, by the computer system, the one or more additional inputs with the first situational context in the data structure.
  • 6. The computer-implemented method of claim 1, further comprising: receiving, by the computer system, from the first user, an indication of a degree of preference that the avatar of the first user avoids or encounters the avatar of the second user; andassociating, by the computer system, the received indication with the input and the first situational context in the data structure.
  • 7. The computer-implemented method of claim 6, wherein the received indication of the degree of preference indicates a desire to visually encounter the avatar of the second user in the virtual world.
  • 8. The computer-implemented method of claim 6, wherein the received indication of the degree of preference indicates a desire to avoid a visual encounter of the avatar of the second user in the virtual world.
  • 9. The computer-implemented method of claim 1, wherein receiving the input from the first user comprises: receiving an indication of the first user tagging the avatar of the second user during a visual encounter between the avatar of the first user and the avatar of the second user in the virtual world.
  • 10. The computer-implemented method of claim 1, wherein generating the one or more indications comprises: generating the one or more indications responsive to a determination that a current situation of the avatar of the first user in the virtual world includes the second situation and that the second situational context corresponds to the first situational context.
  • 11. The computer-implemented method of claim 1, wherein determining the travel plan further comprises: determining the travel plan based on one or more previous travels of the avatar of the first user in the virtual world.
  • 12. The computer-implemented method of claim 1, further comprising: determining, by the computer system, one or more potential views of the avatar of the second user at one or more future times associated with the travel plan of the avatar of the first user;determining, by the computer system, a probability of the avatar of the first user visually encountering the avatar of the second user in the virtual world based on the one or more potential views; andgenerating, by the computer system, one or more other indications related to the one or more future times and the probability responsive to the determination that the second situational context corresponds to the first situational context.
  • 13. The computer-implemented method of claim 12, further comprising: predicting, by the computer system, one or more objects between the avatar of the first user and the avatar of the second user at the one or more future times, wherein determining the one or more potential views of the avatar of the second user comprises determining the one or more potential views based on the predicted one or more objects.
  • 14. The computer-implemented method of claim 1, further comprising: determining, by the computer system, a future situational context that corresponds to a future situation of the avatar of the first user that is predicted to occur at a future time based on the travel plan;predicting, by the computer system, one or more future locations of the avatar of the second user in the virtual world at the future time; andgenerating, by the computer system, one or more other indications related to the one or more future locations responsive to a determination that the future situational context corresponds to the first situational context.
  • 15. A system for managing avatar visual encounters in a virtual world, the system comprising: one or more physical processors programmed with one or more computer program instructions which, when executed, cause the one or more physical processors to: receive, from a first user, an input related to an avatar of a second user in the virtual world;determine a first situational context that corresponds to a first situation of an avatar of the first user in the virtual world at a time of the receipt of the input;associate the input with the first situational context in a data structure;determine a second situational context that corresponds to a second situation of the avatar of the first user in the virtual world, wherein the avatar of the first user has a travel plan that relates to traveling in the virtual world;determine a location of the avatar of the second user in the virtual world, wherein determining the location of the avatar of the second user comprises predicting a future location of the avatar of the second user in the virtual world based, at least in part, on a movement history of the avatar of the second user, and wherein the location of the avatar of the second user comprises the predicted future location;generate one or more indications related to the location of the avatar of the second user responsive to a determination that the second situational context corresponds to the first situational context, wherein said one or more indications are directed towards indicating whether the avatar of the first user will be in a line of sight of the avatar of the second user based on the predicted future location of the avatar of the second user; andgenerating, by the computer system, based on the predicted future location of the avatar of the second user, at least one alternative travel plan to be recommended for the avatar of the first user in lieu of the travel plan, wherein the at least one alternative travel plan enables the avatar of the first user to avoid being in the line of sight of the avatar of the second user.
  • 16. The system of claim 15, wherein the one or more physical processors are further caused to: receive, from the first user, an indication of a degree of preference that indicates a desire to visually encounter the avatar of the second user in the virtual world; andassociate the received indication with the input and the first situational context in the data structure.
  • 17. The system of claim 15, wherein the one or more physical processors are further caused to: receive, from the first user, an indication of a degree of preference that indicates a desire to avoid a visual encounter of the avatar of the second user in the virtual world; andassociate the received indication with the input and the first situational context in the data structure.
  • 18. A computer-readable storage medium comprising executable code for managing avatar visual encounters in a virtual world, the computer executable code, when executed by one or more physical processors, causing the one or more physical processors to: receive, from a first user, an input related to an avatar of a second user in the virtual world;determine a first situational context that corresponds to a first situation of an avatar of the first user in the virtual world at a time of the receipt of the input;associate the input with the first situational context in a data structure;determine a second situational context that corresponds to a second situation of the avatar of the first user in the virtual world, wherein the avatar of the first user has a travel plan that relates to traveling in the virtual world;determine a location of the avatar of the second user in the virtual world wherein determining the location of the avatar of the second user comprises predicting a future location of the avatar of the second user in the virtual world based, at least in part, on a movement history of the avatar of the second user, and wherein the location of the avatar of the second user comprises the predicted future location;generate one or more indications related to the location of the avatar of the second user responsive to a determination that the second situational context corresponds to the first situational context, wherein said one or more indications are directed towards indicating whether the avatar of the first user will be in a line of sight of the avatar of the second user based on the predicted future location of the avatar of the second user; andgenerating, by the computer system, based on the predicted future location of the avatar of the second user, at least one alternative travel plan to be recommended for the avatar of the first user in lieu of the travel plan, wherein the at least one alternative travel plan enables the avatar of the first user to avoid being in the line of sight of the avatar of the second user.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is continuation of U.S. patent application Ser. No. 11/963,883, filed Dec. 24, 2007 (status: pending), which is hereby incorporated by reference herein in its entirety.

US Referenced Citations (633)
Number Name Date Kind
3621214 Romney Nov 1971 A
3736564 Watkins May 1973 A
3792243 Appel Feb 1974 A
3996672 Osofsky Dec 1976 A
4461301 Ochs Jul 1984 A
4841292 Zeno Jun 1989 A
4879849 Hollingsworth Nov 1989 A
4895376 Chiang Jan 1990 A
4902469 Watson Feb 1990 A
4908761 Tai Mar 1990 A
4970666 Welsh Nov 1990 A
5015188 Pellosie May 1991 A
5031089 Liu Jul 1991 A
5058180 Khan Oct 1991 A
5130794 Ritchey Jul 1992 A
5179656 Lisle Jan 1993 A
5255352 Falk Oct 1993 A
5276785 MacKinlay Jan 1994 A
5287437 Deering Feb 1994 A
5295234 Ishida Mar 1994 A
5310349 Daniels May 1994 A
5325472 Horiuchi Jun 1994 A
5333272 Capek Jul 1994 A
5339390 Robertson Aug 1994 A
5347628 Brewer Sep 1994 A
5367614 Bisey Nov 1994 A
5371673 Fan Dec 1994 A
5371851 Pieper Dec 1994 A
5381158 Takahara Jan 1995 A
5381526 Ellson Jan 1995 A
5432895 Myers Jul 1995 A
5442569 Osano Aug 1995 A
5442733 Kaufman Aug 1995 A
5452414 Rosendahl Sep 1995 A
5498003 Gechter Mar 1996 A
5502638 Takenaka Mar 1996 A
5522018 Takeda May 1996 A
5530796 Wang Jun 1996 A
5535276 Ganesan Jul 1996 A
5537618 Boulton Jul 1996 A
5539883 Allon Jul 1996 A
5555354 Strasnick Sep 1996 A
5561736 Moore Oct 1996 A
5563946 Cooper Oct 1996 A
5577981 Jarvik Nov 1996 A
5584700 Feldman Dec 1996 A
5594644 Hasegawa Jan 1997 A
5594859 Palmer Jan 1997 A
5621906 ONeill Apr 1997 A
5630129 Wheat May 1997 A
5633993 Redmann May 1997 A
5662523 Yasumaru Sep 1997 A
5675746 Marshall Oct 1997 A
5680524 Maples Oct 1997 A
5685775 Bakoglu Nov 1997 A
5696892 Redmann Dec 1997 A
5702307 Moran Dec 1997 A
5706507 Schloss Jan 1998 A
5708764 Borrel Jan 1998 A
5734805 Isensee Mar 1998 A
5736982 Suzuki Apr 1998 A
5736985 Lection Apr 1998 A
5736990 Barrus Apr 1998 A
5737416 Cooper Apr 1998 A
5737533 De Apr 1998 A
5737619 Judson Apr 1998 A
5745113 Jordan Apr 1998 A
5745678 Herzberg Apr 1998 A
5745711 Kitahara Apr 1998 A
5761083 Brown Jun 1998 A
5762552 Vuong Jun 1998 A
5764912 Rosborough Jun 1998 A
5768511 Galvin Jun 1998 A
5774668 Choquier Jun 1998 A
5796393 MacNaughton Aug 1998 A
5802294 Ludwig Sep 1998 A
5825877 Dan Oct 1998 A
5835094 Ermel Nov 1998 A
5835692 Cragun Nov 1998 A
5850225 Cosman Dec 1998 A
5854897 Radziewicz Dec 1998 A
5860137 Raz Jan 1999 A
5862337 Gray Jan 1999 A
5875296 Shi Feb 1999 A
5878233 Schloss Mar 1999 A
5880731 Liles Mar 1999 A
5883628 Mullaly Mar 1999 A
5884024 Lim Mar 1999 A
5884029 Brush Mar 1999 A
5898423 Tognazzini Apr 1999 A
5900879 Berry May 1999 A
5903266 Berstis May 1999 A
5903271 Bardon May 1999 A
5908469 Botz Jun 1999 A
5911045 Leyba Jun 1999 A
5919045 Tagge Jul 1999 A
5920325 Morgan Jul 1999 A
5923324 Berry Jul 1999 A
5926179 Matsuda Jul 1999 A
5933818 Kasravi Aug 1999 A
5938722 Johnson Aug 1999 A
5944824 He Aug 1999 A
5963915 Kirsch Oct 1999 A
5966129 Matsukuma Oct 1999 A
5969720 Lisle Oct 1999 A
5969724 Berry Oct 1999 A
5977979 Clough Nov 1999 A
5978841 Berger Nov 1999 A
5982372 Brush Nov 1999 A
5983003 Lection Nov 1999 A
5990888 Blades Nov 1999 A
5990896 Barrus Nov 1999 A
6003065 Yan Dec 1999 A
6006223 Agrawal Dec 1999 A
6008848 Tiwari Dec 1999 A
6009455 Doyle Dec 1999 A
6014145 Bardon Jan 2000 A
6018734 Zhang Jan 2000 A
6021268 Johnson Feb 2000 A
6023270 Brush Feb 2000 A
6023698 Lavey Feb 2000 A
6025839 Schell Feb 2000 A
6037950 Meir Mar 2000 A
6049819 Buckle Apr 2000 A
6058266 Megiddo May 2000 A
6059842 Dumarot May 2000 A
6064389 Berry May 2000 A
6069632 Mullaly May 2000 A
6070143 Barney May 2000 A
6081270 Berry Jun 2000 A
6081271 Bardon Jun 2000 A
6088727 Hosokawa Jul 2000 A
6091410 Lection Jul 2000 A
6094196 Berry Jul 2000 A
6098056 Rusnak Aug 2000 A
6101538 Brown Aug 2000 A
6104406 Berry Aug 2000 A
6111581 Berry Aug 2000 A
6115718 Huberman Sep 2000 A
6134588 Guenthner Oct 2000 A
6137904 Lubin Oct 2000 A
6138128 Perkowitz Oct 2000 A
6141699 Luzzi Oct 2000 A
6144381 Lection Nov 2000 A
6148294 Beyda Nov 2000 A
6148328 Cuomo Nov 2000 A
6177932 Galdes Jan 2001 B1
6179713 James Jan 2001 B1
6182067 Presnell Jan 2001 B1
6185614 Cuomo Feb 2001 B1
6195657 Rucker Feb 2001 B1
6199067 Geller Mar 2001 B1
6201881 Masuda Mar 2001 B1
6212494 Boguraev Apr 2001 B1
6216098 Clancey Apr 2001 B1
6219045 Leahy Apr 2001 B1
6222551 Schneider Apr 2001 B1
6226009 Carraro May 2001 B1
6233583 Hoth May 2001 B1
6249779 Hitt Jun 2001 B1
6256043 Aho Jul 2001 B1
6266649 Linden Jul 2001 B1
6271842 Bardon Aug 2001 B1
6271843 Lection Aug 2001 B1
6275820 Navin-Chandra Aug 2001 B1
6282547 Hirsch Aug 2001 B1
6298374 Sasaki Oct 2001 B1
6308208 Jung Oct 2001 B1
6311206 Malkin Oct 2001 B1
6314465 Paul Nov 2001 B1
6329986 Cheng Dec 2001 B1
6330281 Mann Dec 2001 B1
6334127 Bieganski Dec 2001 B1
6334141 Varma Dec 2001 B1
6336134 Varma Jan 2002 B1
6337700 Kinoe Jan 2002 B1
6345264 Breese Feb 2002 B1
6345287 Fong Feb 2002 B1
6346938 Chan Feb 2002 B1
6346956 Matsuda Feb 2002 B2
6349091 Li Feb 2002 B1
6351775 Yu Feb 2002 B1
6353449 Gregg Mar 2002 B1
6356297 Cheng Mar 2002 B1
6363174 Lu Mar 2002 B1
6370560 Robertazzi Apr 2002 B1
6388688 Schileru-Key May 2002 B1
6393467 Potvin May 2002 B1
6411312 Sheppard Jun 2002 B1
6418424 Hoffberg Jul 2002 B1
6418462 Xu Jul 2002 B1
6426757 Smith Jul 2002 B1
6437777 Kamachi Aug 2002 B1
6445389 Bossen Sep 2002 B1
6452593 Challener Sep 2002 B1
6462760 Cox, Jr. Oct 2002 B1
6466213 Bickmore Oct 2002 B2
6466550 Foster Oct 2002 B1
6469712 Hilpert, Jr. Oct 2002 B1
6473085 Brock Oct 2002 B1
6473597 Johnson Oct 2002 B1
6496851 Morris Dec 2002 B1
6499053 Marquette Dec 2002 B1
6505208 Kanevsky Jan 2003 B1
6509925 Dermler Jan 2003 B1
6519571 Guhhen Feb 2003 B1
6525731 Suits Feb 2003 B1
6539415 Mercs Mar 2003 B1
6549933 Barrett Apr 2003 B1
6567109 Todd May 2003 B1
6567813 Zhu May 2003 B1
6570587 Efrat May 2003 B1
6574477 Rathunde Jun 2003 B1
6580441 Schileru-Key Jun 2003 B2
6580981 Masood Jun 2003 B1
6594673 Smith Jul 2003 B1
6601084 Bhaskaran Jul 2003 B1
6618751 Challenger Sep 2003 B1
6636889 Estrada Oct 2003 B1
6645153 Kroll Nov 2003 B2
RE38375 Herzberg Dec 2003 E
6657617 Paolini Dec 2003 B2
6657642 Bardon Dec 2003 B1
6672961 Uzun Jan 2004 B1
6674484 Boland Jan 2004 B1
6684255 Martin Jan 2004 B1
6717600 Dutta Apr 2004 B2
6732146 Miyake May 2004 B1
6734884 Berry May 2004 B1
6742032 Castellani May 2004 B1
6746332 Ing Jun 2004 B1
6753857 Matsuura Jun 2004 B1
6763371 Jaendel Jul 2004 B1
6765596 Lection Jul 2004 B2
6767287 McQuaid Jul 2004 B1
6772195 Hatlelid Aug 2004 B1
6781607 Benham Aug 2004 B1
6784901 Harvey Aug 2004 B1
6801930 Dionne Oct 2004 B1
6819669 Rooney Nov 2004 B2
6826523 Guy Nov 2004 B1
6832239 Kraft Dec 2004 B1
6836480 Basso Dec 2004 B2
6845389 Sen Jan 2005 B1
6871186 Tuzhillin Mar 2005 B1
6886026 Hanson Apr 2005 B1
6941236 Huelsbergen Sep 2005 B2
6948168 Kuprionas Sep 2005 B1
RE38865 Dumarot Nov 2005 E
6970929 Bae Nov 2005 B2
6981223 Becker Dec 2005 B2
6982372 England Jan 2006 B2
6990381 Nomura Jan 2006 B2
6993596 Hinton Jan 2006 B2
7006098 Bickmore Feb 2006 B2
7006616 Christofferson Feb 2006 B1
7028296 Irfan Apr 2006 B2
7062533 Brown Jun 2006 B2
7073129 Robarts Jul 2006 B1
7089266 Stolte Aug 2006 B2
7091976 Ostermann Aug 2006 B1
7115034 Kuwahara Oct 2006 B2
7124071 Rich Oct 2006 B2
7139792 Mishra Nov 2006 B1
7139984 Beaumont Nov 2006 B2
7143409 Herrero Nov 2006 B2
7146627 Ismail Dec 2006 B1
7155680 Akazawa Dec 2006 B2
7159217 Pulsipher Jan 2007 B2
7185067 Viswanath Feb 2007 B1
7209137 Brokenshire Apr 2007 B2
7225256 Villavicencio May 2007 B2
7230616 Taubin Jun 2007 B2
7249123 Elder Jul 2007 B2
7263511 Bodin Aug 2007 B2
7269632 Edecker Sep 2007 B2
7287053 Bodin Oct 2007 B2
7293235 Powers et al. Nov 2007 B1
7305438 Christensen Dec 2007 B2
7308476 Mannaru Dec 2007 B2
7319992 Gaos Jan 2008 B2
7353295 Crow Apr 2008 B1
7379066 Ostermann May 2008 B1
7386799 Clanton Jun 2008 B1
7396281 Mendelsohn Jul 2008 B2
7404149 Fox Jul 2008 B2
7426538 Bodin Sep 2008 B2
7427980 Partridge Sep 2008 B1
7428588 Berstis Sep 2008 B2
7429987 Leah Sep 2008 B2
7436407 Doi Oct 2008 B2
7439975 Hsu Oct 2008 B2
7443393 Shen Oct 2008 B2
7447996 Cox Nov 2008 B1
7467180 Kaufman Dec 2008 B2
7467181 McGowan Dec 2008 B2
7468729 Levinson Dec 2008 B1
7475354 Guido Jan 2009 B2
7478127 Creamer Jan 2009 B2
7484012 Hinton Jan 2009 B2
7503007 Goodman Mar 2009 B2
7506264 Polan Mar 2009 B2
7515136 Kanevsky Apr 2009 B1
7515156 Tinker Apr 2009 B2
7517282 Pryor Apr 2009 B1
7525964 Astley Apr 2009 B2
7552177 Kessen Jun 2009 B2
7565650 Bhogal Jul 2009 B2
7571224 Childress Aug 2009 B2
7571389 Broussard Aug 2009 B2
7580888 Ur Aug 2009 B2
7590984 Kaufman Sep 2009 B2
7596596 Chen Sep 2009 B2
7636755 Blattner Dec 2009 B2
7640587 Fox Dec 2009 B2
7643673 Rohlf Jan 2010 B2
7667701 Leah Feb 2010 B2
7671861 Ostermann Mar 2010 B1
7697668 Ostermann Apr 2010 B1
7698656 Srivastava Apr 2010 B2
7702784 Berstis Apr 2010 B2
7714867 Doi May 2010 B2
7719532 Schardt May 2010 B2
7719535 Tadokoro May 2010 B2
7734691 Creamer Jun 2010 B2
7737969 Shen Jun 2010 B2
7743095 Goldberg Jun 2010 B2
7747679 Galvin Jun 2010 B2
7765478 Reed Jul 2010 B2
7768514 Pagan Aug 2010 B2
7773087 Fowler Aug 2010 B2
7774407 Daly Aug 2010 B2
7782318 Shearer Aug 2010 B2
7792263 D Amora Sep 2010 B2
7792801 Hamilton, II Sep 2010 B2
7796128 Radzikowski Sep 2010 B2
7808500 Shearer Oct 2010 B2
7814152 McGowan Oct 2010 B2
7827208 Bosworth Nov 2010 B2
7827318 Hinton Nov 2010 B2
7843471 Doan Nov 2010 B2
7844663 Boutboul Nov 2010 B2
7847799 Taubin Dec 2010 B2
7853594 Elder Dec 2010 B2
7856469 Chen Dec 2010 B2
7873485 Castelli Jan 2011 B2
7882222 Dolbier Feb 2011 B2
7882243 Ivory Feb 2011 B2
7884819 Kuesel Feb 2011 B2
7886045 Bates Feb 2011 B2
7890623 Bates Feb 2011 B2
7893936 Shearer Feb 2011 B2
7904829 Fox Mar 2011 B2
7921128 Hamilton, II Apr 2011 B2
7940265 Brown May 2011 B2
7945620 Bou-Ghannam May 2011 B2
7945802 Hamilton, II May 2011 B2
7970837 Lyle Jun 2011 B2
7970840 Cannon Jun 2011 B2
7985138 Acharya Jul 2011 B2
7990387 Hamilton, II Aug 2011 B2
7996164 Hamilton, II Aug 2011 B2
8000328 Kandekar Aug 2011 B1
8001161 Finn Aug 2011 B2
8004518 Fowler Aug 2011 B2
8005025 Bodin Aug 2011 B2
8006182 Bates Aug 2011 B2
8013861 Hamilton, II Sep 2011 B2
8018453 Fowler Sep 2011 B2
8018462 Bhogal Sep 2011 B2
8019797 Hamilton, II Sep 2011 B2
8019858 Bauchot Sep 2011 B2
8022948 Garbow Sep 2011 B2
8022950 Brown Sep 2011 B2
8026913 Garbow Sep 2011 B2
8026918 Murphy Sep 2011 B1
8028021 Reisinger Sep 2011 B2
8028022 Brownholtz Sep 2011 B2
8037416 Bates Oct 2011 B2
8041614 Bhogal Oct 2011 B2
8047915 Lyle Nov 2011 B2
8051462 Hamilton, II Nov 2011 B2
8055656 Cradick Nov 2011 B2
8056121 Hamilton, II Nov 2011 B2
8057307 Berstis Nov 2011 B2
8062130 Smith Nov 2011 B2
8063905 Brown Nov 2011 B2
8070601 Acharya Dec 2011 B2
8082245 Bates Dec 2011 B2
8085267 Brown Dec 2011 B2
8089481 Shearer Jan 2012 B2
8092288 Theis Jan 2012 B2
8095881 Reisinger Jan 2012 B2
8099338 Betzler Jan 2012 B2
8099668 Garbow Jan 2012 B2
8102334 Brown Jan 2012 B2
8103640 Lo Jan 2012 B2
8103959 Cannon Jan 2012 B2
8105165 Karstens Jan 2012 B2
8108774 Finn Jan 2012 B2
8113959 De Judicibus Feb 2012 B2
8117551 Cheng Feb 2012 B2
8125485 Brown Feb 2012 B2
8127235 Haggar Feb 2012 B2
8127236 Hamilton, II Feb 2012 B2
8128487 Hamilton, II Mar 2012 B2
8131740 Cradick Mar 2012 B2
8132235 Bussani Mar 2012 B2
8134560 Bates Mar 2012 B2
8139060 Brown Mar 2012 B2
8139780 Shearer Mar 2012 B2
8140340 Bhogal Mar 2012 B2
8140620 Creamer Mar 2012 B2
8140978 Betzler Mar 2012 B2
8140982 Hamilton, II Mar 2012 B2
8145676 Bhogal Mar 2012 B2
8145725 Dawson Mar 2012 B2
8149241 Do Apr 2012 B2
8150941 Edecker Apr 2012 B2
8151191 Nicol, II Apr 2012 B2
8156184 Kurata Apr 2012 B2
8165350 Fuhrmann Apr 2012 B2
8171407 Huang May 2012 B2
8171408 Dawson May 2012 B2
8171559 Hamilton, II May 2012 B2
8174541 Greene May 2012 B2
8176421 Dawson May 2012 B2
8176422 Bergman May 2012 B2
8184092 Cox May 2012 B2
8184116 Finn May 2012 B2
8185450 McVey May 2012 B2
8185829 Cannon May 2012 B2
8187067 Hamilton, II May 2012 B2
8199145 Hamilton, II Jun 2012 B2
8203561 Carter Jun 2012 B2
8214335 Hamilton, II Jul 2012 B2
8214433 Dawson Jul 2012 B2
8214750 Hamilton, II Jul 2012 B2
8214751 Dawson Jul 2012 B2
8217953 Comparan Jul 2012 B2
8219616 Dawson Jul 2012 B2
8230045 Kawachiya Jul 2012 B2
8230338 Dugan Jul 2012 B2
8233005 Finn Jul 2012 B2
8234234 Shearer Jul 2012 B2
8234579 Do Jul 2012 B2
8239775 Beverland Aug 2012 B2
8241131 Bhogal Aug 2012 B2
8245241 Hamilton, II Aug 2012 B2
8245283 Dawson Aug 2012 B2
8265253 D Amora Sep 2012 B2
8310497 Comparan Nov 2012 B2
8334871 Hamilton, II Dec 2012 B2
8360886 Karstens Jan 2013 B2
8364804 Childress Jan 2013 B2
8425326 Chudley Apr 2013 B2
8442946 Hamilton, II May 2013 B2
8506372 Chudley Aug 2013 B2
8514249 Hamilton, II Aug 2013 B2
8554841 Kurata Oct 2013 B2
8607142 Bergman Dec 2013 B2
8607356 Hamilton, II Dec 2013 B2
8624903 Hamilton, II Jan 2014 B2
8626836 Dawson Jan 2014 B2
8692835 Hamilton, II Apr 2014 B2
8713450 Garbow Apr 2014 B2
8721412 Chudley May 2014 B2
8827816 Bhogal Sep 2014 B2
8838640 Bates Sep 2014 B2
8849917 Dawson Sep 2014 B2
8911296 Chudley Dec 2014 B2
8992316 Smith Mar 2015 B2
9083654 Dawson Jul 2015 B2
9152914 Haggar Oct 2015 B2
9205328 Bansi Dec 2015 B2
9286731 Hamilton, II Mar 2016 B2
9299080 Dawson Mar 2016 B2
9364746 Chudley Jun 2016 B2
9525746 Bates Dec 2016 B2
9583109 Kurata Feb 2017 B2
9682324 Bansi Jun 2017 B2
9764244 Bansi Sep 2017 B2
9789406 Marr Oct 2017 B2
9808722 Kawachiya Nov 2017 B2
20010055039 Matsuda Dec 2001 A1
20020007317 Callaghan Jan 2002 A1
20020010776 Lerner Jan 2002 A1
20020023159 Vange Feb 2002 A1
20020026477 Choi Feb 2002 A1
20020035593 Salim Mar 2002 A1
20020041327 Hildreth Apr 2002 A1
20020043568 Hess Apr 2002 A1
20020056006 Vange May 2002 A1
20020065870 Baehr-Jones May 2002 A1
20020078192 Kopsell Jun 2002 A1
20020095586 Doyle Jul 2002 A1
20020107918 Shaffer Aug 2002 A1
20020109719 Hata Aug 2002 A1
20020112002 Abato Aug 2002 A1
20020116466 Trevithick Aug 2002 A1
20020124137 Ulrich Sep 2002 A1
20020130904 Becker Sep 2002 A1
20020135618 Maes Sep 2002 A1
20020138588 Leeds Sep 2002 A1
20020138607 O Sep 2002 A1
20020152147 Shulman Oct 2002 A1
20020158873 Williamson Oct 2002 A1
20020184373 Maes Dec 2002 A1
20020198940 Bower Dec 2002 A1
20030008712 Poulin Jan 2003 A1
20030037131 Verma Feb 2003 A1
20030040946 Sprenger Feb 2003 A1
20030050977 Puthenkulam Mar 2003 A1
20030055892 Huitema Mar 2003 A1
20030056002 Trethewey Mar 2003 A1
20030067554 Klarfeld Apr 2003 A1
20030084094 Shim May 2003 A1
20030084172 Dejong May 2003 A1
20030084302 De May 2003 A1
20030110399 Rail Jun 2003 A1
20030119531 Patton Jun 2003 A1
20030122858 Mauve Jul 2003 A1
20030126318 Nomura Jul 2003 A1
20030135621 Romagnoli Jul 2003 A1
20030145128 Baird Jul 2003 A1
20030149781 Yared Aug 2003 A1
20030156134 Kim Aug 2003 A1
20030163733 Barriga-Caceres Aug 2003 A1
20030172174 Mihalcheon Sep 2003 A1
20030177187 Levine Sep 2003 A1
20030187984 Banavar Oct 2003 A1
20030190951 Matsumoto Oct 2003 A1
20030195957 Banginwar Oct 2003 A1
20030212760 Chen Nov 2003 A1
20030220980 Crane Nov 2003 A1
20040002380 Brosnan Jan 2004 A1
20040014514 Yacenda Jan 2004 A1
20040034831 Grober Feb 2004 A1
20040059436 Anderson Mar 2004 A1
20040077394 Matsuno Apr 2004 A1
20040088303 Elder May 2004 A1
20040103079 Tokusho May 2004 A1
20040111479 Borden Jun 2004 A1
20040113756 Mollenkopf Jun 2004 A1
20040130549 Tinker Jul 2004 A1
20040153514 Crane Aug 2004 A1
20040193441 Altieri Sep 2004 A1
20040210627 Kroening Oct 2004 A1
20040228291 Huslak Nov 2004 A1
20040244006 Kaufman Dec 2004 A1
20040252123 Estrada Dec 2004 A1
20040261037 Ording Dec 2004 A1
20050015571 Kaufman Jan 2005 A1
20050021484 Bodin Jan 2005 A1
20050022139 Gettman Jan 2005 A1
20050050137 Bodin Mar 2005 A1
20050071462 Bodin Mar 2005 A1
20050210413 Quek Sep 2005 A1
20050216346 Kusumoto Sep 2005 A1
20050246711 Berstis Nov 2005 A1
20050278323 Horvitz Dec 2005 A1
20060010229 Chen Jan 2006 A1
20060026233 Tenembaum Feb 2006 A1
20060041663 Brown Feb 2006 A1
20060045082 Fertell Mar 2006 A1
20060080613 Savant Apr 2006 A1
20060085759 Knapheide Apr 2006 A1
20060094501 Oleary May 2006 A1
20060123351 Littlefield Jun 2006 A1
20060136395 Rhee Jun 2006 A1
20060178967 Jung Aug 2006 A1
20060210045 Valliath Sep 2006 A1
20060212900 Ismail Sep 2006 A1
20060212925 Shull Sep 2006 A1
20060235791 Jung Oct 2006 A1
20060253784 Bower Nov 2006 A1
20060284792 Foxlin Dec 2006 A1
20070035548 Jung Feb 2007 A1
20070035549 Jung Feb 2007 A1
20070050214 Hawks Mar 2007 A1
20070050721 De Mar 2007 A1
20070063999 Park Mar 2007 A1
20070087756 Hoffberg Apr 2007 A1
20070106526 Jung May 2007 A1
20070118420 Jung May 2007 A1
20070130001 Jung Jun 2007 A1
20070156664 Norton et al. Jul 2007 A1
20070218965 Tilston Sep 2007 A1
20070240119 Ducheneaut Oct 2007 A1
20080005319 Anderholm Jan 2008 A1
20080026847 Mueller Jan 2008 A1
20080045245 Billmaier Feb 2008 A1
20080059198 Maislos Mar 2008 A1
20080070684 Haigh-Hutchinson Mar 2008 A1
20080086696 Sri Apr 2008 A1
20080104495 Craig May 2008 A1
20080134056 Shuster Jun 2008 A1
20080162202 Khanna Jul 2008 A1
20080207327 Van Aug 2008 A1
20080215994 Harrison et al. Sep 2008 A1
20080263446 Altberg Oct 2008 A1
20080263459 Altberg Oct 2008 A1
20080263460 Altberg Oct 2008 A1
20080270605 Berstis Oct 2008 A1
20080291217 Vincent Nov 2008 A1
20080301405 Kaufman Dec 2008 A1
20080307066 Amidon et al. Dec 2008 A1
20090013052 Robarts Jan 2009 A1
20090037822 Kandekar et al. Feb 2009 A1
20090049513 Root Feb 2009 A1
20090055484 Vuong et al. Feb 2009 A1
20090064052 Mihalcheon Mar 2009 A1
20090079816 Qvarfordt Mar 2009 A1
20090094535 Bromenshenkel Apr 2009 A1
20090113314 Dawson Apr 2009 A1
20090113319 Dawson Apr 2009 A1
20090113448 Smith Apr 2009 A1
20090113554 Zalewski Apr 2009 A1
20090132689 Zaltzman May 2009 A1
20090138335 Lieberman May 2009 A1
20090158151 Cheng et al. Jun 2009 A1
20090164458 Jung et al. Jun 2009 A1
20090164919 Bates Jun 2009 A1
20090165140 Robinson Jun 2009 A1
20090177979 Garbow Jul 2009 A1
20090222276 Romney Sep 2009 A1
20090267938 Nicol Oct 2009 A1
20090276718 Dawson Nov 2009 A1
20100011312 Banerjee Jan 2010 A1
20100211638 Rougier Aug 2010 A1
20110279461 Hamilton et al. Nov 2011 A1
20140344725 Bates Nov 2014 A1
20160191671 Dawson Jun 2016 A1
Foreign Referenced Citations (103)
Number Date Country
768367 Mar 2004 AU
2005215048 Oct 2011 AU
2143874 Jun 2000 CA
2292678 Jul 2005 CA
2552135 Jul 2013 CA
1334650 Feb 2002 CN
1202652 Oct 2002 CN
1141641 Mar 2004 CN
1494679 May 2004 CN
1219384 Sep 2005 CN
1307544 Mar 2007 CN
100407675 Jul 2008 CN
100423016 Oct 2008 CN
100557637 Nov 2009 CN
101001678 May 2010 CN
101436242 Dec 2010 CN
101801482 Dec 2014 CN
668583 Aug 1995 EP
0940960 Sep 1999 EP
0998091 May 2000 EP
1020804 Jul 2000 EP
0627728 Sep 2000 EP
1089516 Apr 2001 EP
0717337 Aug 2001 EP
1207694 May 2002 EP
0679977 Oct 2002 EP
0679978 Mar 2003 EP
0890924 Sep 2003 EP
1377902 Aug 2004 EP
0813132 Jan 2005 EP
1380133 Mar 2005 EP
1021021 Sep 2005 EP
0930584 Oct 2005 EP
0883087 Aug 2007 EP
1176828 Oct 2007 EP
1852829 Nov 2007 EP
2076888 Jul 2015 EP
2339938 Oct 2002 GB
2352154 Jul 2003 GB
H0759945 Mar 1995 JP
H07254072 Oct 1995 JP
H1198134 Apr 1999 JP
H11191097 Apr 1999 JP
11191097 Jul 1999 JP
3033956 Apr 2000 JP
3124916 Jan 2001 JP
2001119403 Apr 2001 JP
3177221 Jun 2001 JP
2001204973 Jul 2001 JP
3199231 Aug 2001 JP
3210558 Sep 2001 JP
3275935 Feb 2002 JP
3361745 Jan 2003 JP
3368188 Jan 2003 JP
3470955 Sep 2003 JP
3503774 Dec 2003 JP
3575598 Jul 2004 JP
3579823 Jul 2004 JP
3579154 Oct 2004 JP
3701773 Oct 2005 JP
3777161 Mar 2006 JP
3914430 Feb 2007 JP
3942090 Apr 2007 JP
3962361 May 2007 JP
4009235 Sep 2007 JP
4225376 Dec 2008 JP
4653075 Dec 2010 JP
5063698 Aug 2012 JP
5159375 Mar 2013 JP
5352200 Nov 2013 JP
5734566 Jun 2015 JP
20020038229 May 2002 KR
20030039019 May 2003 KR
117864 Aug 2004 MY
55396 Dec 1998 SG
424213 Mar 2001 TW
527825 Apr 2003 TW
200836091 Sep 2008 TW
200937926 Sep 2009 TW
201002013 Jan 2010 TW
201009746 Mar 2010 TW
201024997 Jul 2010 TW
201028871 Aug 2010 TW
9504331 Feb 1995 WO
9642041 Dec 1996 WO
9900960 Jan 1999 WO
0137162 May 2001 WO
2001050387 Dec 2001 WO
0201455 Jan 2002 WO
0203645 Jan 2002 WO
2002073457 Sep 2002 WO
20020087156 Oct 2002 WO
03049459 Jun 2003 WO
03058518 Jul 2003 WO
2004086212 Oct 2004 WO
2005079538 Sep 2005 WO
2007101785 Sep 2007 WO
2008037599 Apr 2008 WO
2008074627 Jun 2008 WO
2008095767 Aug 2008 WO
2009037257 Mar 2009 WO
2009104564 Aug 2009 WO
2010096738 Aug 2010 WO
Non-Patent Literature Citations (55)
Entry
U.S. Patent Application entitled “System for Managing Encounters in a Virtual World Environment”, filed Dec. 21, 2007, U.S. Appl. No. 11/962,841.
Office Action History of U.S. Appl. No. 11/962,841, dated Feb. 7, 2011-Jun. 8, 2011.
[“What Are Virtual Environments”],IEEE Computer Graphics & Applications, Stephen R. Ellis, Jan. 1994.
[“Synchronous Writing Environment : Real-time interaction in cyberspace”], Journal of Adolescent & Adult Literacy, Oct. 1996.
WI. Clement, “An Instructional robotics and machine Vision Laboratory,” IEEE Transactions on Education, pp. 87-90, 1994.
http://www.news.com.SpecialFeatrues/Continued/0,6,4804 4,00.html, “Billboards on the Infobahn,” pp. 1-2, May 23, 1997.
Kohda, Youji, et al., Ubiquitous advertising on the WWW. Merging advertisement on the browser, Computer Networks and IDSN Systems, 28, pp. 1493-1499 (1996).
Jacobson, J., “Collision avoidance in virtual environments,” 1997 IEEE Int. Conf. on SMC pp. 1704-1709.
Kormann et al., “Risks of the Passport Single Signon Protocol” &It; 9th Intl. WWW Conf., May 15, 2000.
Syverson, “Limitations on design principles for public key protocols”, Proc. of 1996 IEEE Symposium on Security and Privacy, pp. 62-72, May 6, 1996.
Abadi et al., “Prudent Engineering Practice for Cryptogrphic Protocols”, Proc. of 1994 IEEE Computer Society Symposium on Research in Security and Privacy, pp. 122-136, May 16, 1994.
Kautz, H., B. Selman, M. Shah.. “Referral Web: Combining Social Networks and Collaborative Filtering”. Communications of the ACM, vol. 40, No. 3, Mar. 1997.
Schwartz, M. F., D. C. M. Wood. “Discovering shared interests among people using graph analysis of global electronic mail traffic”. Department of Computer Science, University of Colorado, Boulder CO. Oct. 1992.
Wellman, B. “For a social network analysis of computer networks: a sociological perspective on collaborative work and virtual community”. Proceedings of the 1996 conference on ACM SIGCPR/SIGMIS. 1-11.
Qureshi, S. “Supporting electronic group processes: a social perspective”. Proceedings of the 1995 ACM SIGCPR Conference on Supporting teams, groups, and learning inside the IS function. ACM Press. 24-34.
Ackerman, M.S., B. Starr. “Social activity indicators: interface components for CSCW systems”. Proceedings of the 8th ACM Symposium on User Interface and Software Technology. ACM Press. 159-168, Nov. 14-17, 1995.
Garton, L., C. Haythornthwaite, B. Wellman. “Studying on-line social networks in Doing Internet Research”, Jun. 1997.
Srivastava, Jaidepp, Robert Cooley, Mukund Deshpande, Pang-Ning Tan. “Web Usage Mining: Discovery and Applications of Usage Patterns from Web Data”. SIGKDD Explorations, vol. 1, Issue 2. Jan. 2000. 12-23.
Wang, Y. “Web Mining and Knowledge Discovery of Usage Patterns”. CS748T Project (Part I) Feb. 2000.
Sack, W. “Conversation Map: a content-based Usenet newsgroup browser”. Proceedings of the 2000 International Conference on Intelligent User Interfaces. ACM Press. 233-240.
Feldman, R. “Mining unstructured data”. Tutorial notes for ACK SIGKDD 1999. ACM Press. 182-236.
Supplementary European Search from the European Patent Office for EP05723458.5, dated Jul. 19, 2010.
International Search Report as Published as WO2005/079538 in corresponding international application No. PCT/US2005/005550, dated Jul. 5, 2006.
Duong et al; “A dynamic load sharing algorithm for massivly multiplayer online games” published Sep. 28, 2003-Oct. 1, 2003.http://ieeexplore.ieee.org/iel5/8945/28322/01266179.pdf?tp=&arnumber- =1266179&isnumber=28322http://ieeexplore.ieee.org/xpl/absprintf.jsp?arnumb- er=1266179.
“A multi-server architecture for distributed virtual walkthrough” http://delivery.acm.org/10.1145/590000/585768/p163-ng.pdf?key1=585768&key-2=0554824911&coll=GUIDE&dl=GUIDE&CFID=41712537&CFTOKEN=50783297.
Mauve, M., Fischer, S., and Widmer, J. 2002. A generic proxy system for networked computer games. In Proceedings of the 1st Workshop on Network and System Support for Games (Braunschweig, Germany, Apr. 16-17, 2002). NetGames '02. ACM, New York, NY, 25-28. DOI= http://doi.acm.org/10.1145/566500.566504.
IBM developer Works, OptimalGrid—autonomic computing on the Grid, James H. Kaufman; Tobin J. Lehman; Glenn Deen; and John Thomas, Jun. 2003.
IBM, Transcoding: Extending e-business to new environments, Britton et al., Sep. 22, 2000.
Lee et al., “A Self-Adjusting Data Distribution Mechanism for Multidimensional Load Balancing in Multiprocessor-Based Database Systems,” Information Systems vol. 19, No. 7, pp. 549-567, 1994.
Ma et al., “A Scalable Parallel Cell-Projection Volume Rendering Algorithm for Three-Dimensional Unstructured Data”, IEEE 1997, pp. 1-10.
Feng et al., “A Parallel Hierarchical Radiosity Algorithm for Complex Scenes,” Proceedings IEEE Symposium on Parallel Rendering (PRS) '97), IEEE Computer Society Technical Committee on Computer Graphics in cooperation with ACM SIGGRAPH pp. 71-79, 1997.
Hassen et al., “A Task-and Data-Parallel Programming Language Based on Shared Objects,” ACM Transactions on Programming Languages and Systems, vol. 20, No. 6, Nov. 1998, pp. 1131-1170.
Andert, “A Simulation of Dynamic Task Allocation in a Distributed Computer System,” Proceedings of the 1987 Winter Simulation Conference, 1987, pp. 1-9.
Jim X. Chen, Yonggao Yang, and Bowen Loftin, 2003, “MUVEES: a PC-based Multi-User Virtual Environment for Learning”, Proceedings of the IEEE Virtual Reality 2003 (VR '03), IEEE Computer Society, Washington, DC, USA, pp. 163-170.
Fernando, et al., “Cloning and teleporting avatars across workstations and mobile devices in collaborative virtual environments: Clipboard operations for virtual reality”, Proceedings ICIA'05: Int. Conf. on Information and Automation, Colombo, Sri Lanka, Dec. 15-18, 2005, pp. 133-140.
Anonymous; Window (computing); Download date: Jun. 3, 2007; Wikipedia; http://en.wikipedia.org/wiki/Window.sub.--(computing).
A. Newitz, “Your Second Life is ready,” Popular Science, Oct. 2006, 4 pages: http://www.popsci.com/popsci/technology/7balaf8f3812d010vgnvcm1000-004eecbccdrcrd.html.
Judson et al., “Virtual Venue Management Users Guide”, Argonne National Laboratory, Mathematics and Computer Science Division, Technical Memorandum No. 287, Feb. 2006, 19 pages, downloaded from: http://scholar.google.com/scholar?cluster=14486023041208461039&hl=en&as.s- ub.--sdt=80000000000000.
Stardock.com; The User Guide—Version 2; DesktopX, 2000; 52 pages.
Wang; SmartCU3D: a collaborative virtual environment system with behavior based interaction management; Proceedings of the ACM Symposium on Virtual Reality Software and Tech; VRST '01, Nov. 15-17, 2001, pp. 25-32.
Celentano; Adaptive interaction in Web3D virtual worlds; Proceedings of the Ninth International Conference on 3D Web Technology; Apr. 2004; pp. 41-50.
Chittaro; Dynamic generation of personalized VRML content; Proceedings of the Seventh International Conference on 3D Web Technology; Feb. 2002; pp. 145-154.
Elvins, T. T., Nadeau, D. R., Schul, R., and Kirsh, D., “Worldlets: 3D thumbnails for 3D browsing”, Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, Apr. 18-23, 1998, Conference on Human Factors in Computing Systems. ACM Press/Addison-Wesley Publishing Co., New York, NY, 163-170.
Elvins; Worldlets-3D Thumbnails for Wayfinding in virtual environments;Proceedings of the 10th Annual ACM Symposium on User Interface Software and; Oct. 1997; pp. 21-30.
Elvins, T.T., et al; Wordlets: 3D thumbnails for 3D browsing; Proceedings of the SIGCHI Conference on Human Factors in Computing systems; Apr. 18-23, 1998; ACM Press/Addison-Wesley Publishing Co., NY, NY; pp. 163-170.
Amund Tveit; Customizing Cyberspace: Methods for User Representation and Prediction; Thesis, Department of Computer Science, Norwegian University of Science and Technology; Trondheim, Norway; Jul. 1, 2004; 187 pages.
Grammenos, D., Filou, M., Papadakos, P., and Stephanidis, C., “Virtual Prints: leaving trails in virtual environments”, Proceedings of the Workshop on Virtual Environments 2002, May 30-31, 2002, W. Sturzlinger and S. Muller, Eds., ACM International Conference Proceeding Series, vol. 23. Eurographics Association, pp. 131-138, 222.
Stardock.com et al., “The User Guide-Version 2”, DesktopX, 2000, 57 pages.
Elvins, T. T., Nadeau, D. R., and Kirsh, D. 1997. Worldlets-3D thumbnails for wayfinding in virtual environments. In Proceedings of the 10th Annual ACM Symposium on User interface Software and Technology (Banff, Alberta, Canada, Oct. 14-17, 1997). UIST '97. ACM, New York, NY, 21-30.
Wang, W., Lin, Q., Ng, J. M., and Low, C. P. 2001. SmartCU3D: a collaborative virtual environment system with behavior based interaction management. In Proceedings of the ACM Symposium on Virtual Reality Software and Technology (Baniff, Alberta, Canada, Nov. 15-17, 2001). VRST '01. ACM, New York, NY, 25-32.
PCT Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration dated Mar. 23, 2009.
Bares, William H., et al., “Habitable 3D Learning Environments for Situated Learning”, ITS-98: Proceedings of the Fourth International Conference on Intelligent Tutoring Systems, San Antonio, Texas, (1998),76-85.
Bares, William H., “Realtime Generation of Customized 3D Animated Explanations for Knowledge-Based Learning Environments”, AAAI-97: Proceedings of the Fourtheenth National Conference on Artificial Intelligence, Providence,Rhode Island, (1997),347-354.
Hayes, Gary, “Virtual Worlds, Web 3.0 and Portable Profiles”, Personalize Media, http;//www.personalizemedia.com/virtual-worlds-wab-30-and-portable-profiles, Aug. 27, 2006, pp. 1-13.
Aquino etal., “Multi-Agent Architecture for Generating and Monitoring Adaptive Virtual Environments”, Proceedings of the Fifth International Conference on Hybrid Intelliqent Systems (HIS'05), 0-7695-2457, IEEE—Computer Society, 2005, 3 pages.
Related Publications (1)
Number Date Country
20140344725 A1 Nov 2014 US
Continuations (1)
Number Date Country
Parent 11963883 Dec 2007 US
Child 14293301 US