System and method for enabling users to interact in a virtual space
DC CAFCFirst Claim
1. A method for enabling a first user to interact with other users in a virtual space, wherein the first user and the other users each have an avatar and a client process associated therewith, and wherein each client process is in communication with a server process, wherein the method comprises:
- (a) receiving a position of less than all of the other users'"'"' avatars from the server process; and
(b) determining, from the received positions, a set of the other users'"'"' avatars that are to be displayed to the first user,wherein steps (a) and (b) are performed by the client process associated with the first user.
6 Assignments
Litigations
1 Petition
Accused Products
Abstract
The present invention provides a highly scalable architecture for a three-dimensional graphical, multi-user, interactive virtual world system. In a preferred embodiment a plurality of users interact in the three-dimensional, computer-generated graphical space where each user executes a client process to view a virtual world from the perspective of that user. The virtual world shows avatars representing the other users who are neighbors of the user viewing the virtual word. In order that the view can be updated to reflect the motion of the remote user'"'"'s avatars, motion, information is transmitted to a central server process which provides positions updates to client processes for neighbors of the user at that client process. The client process also uses an environment database to determine which background objects to render as well as to limit the movement of the user'"'"'s avatar.
-
Citations
20 Claims
-
1. A method for enabling a first user to interact with other users in a virtual space, wherein the first user and the other users each have an avatar and a client process associated therewith, and wherein each client process is in communication with a server process, wherein the method comprises:
-
(a) receiving a position of less than all of the other users'"'"' avatars from the server process; and (b) determining, from the received positions, a set of the other users'"'"' avatars that are to be displayed to the first user, wherein steps (a) and (b) are performed by the client process associated with the first user. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for enabling a plurality of users to interact in a virtual space, wherein each user has a computer associated therewith, wherein each computer has a client process associated therewith, wherein each client process has an avatar associated therewith, and wherein each client process is in communication with a server process, comprising:
-
(a) monitoring, by each client process, a position of the avatar associated with the client process; (b) transmitting, by each client process to the server process, the position of the avatar associated with the client process; (c) transmitting, by the server process to each client process, the positions of less than all of the avatars that are not associated with the client process; and (d) determining from the positions transmitted in step (c), by each client process, a set of the avatars that are to be displayed. - View Dependent Claims (7, 8)
-
-
9. A method for operating a server to enable a plurality of users to interact in a virtual space, wherein each user has a computer associated therewith, wherein each computer has a client process associated therewith, wherein each client process has an avatar associated therewith, wherein the server has a process associated therewith, and wherein each client process is in communication with the server process, comprising:
-
(a) receiving, from each client process by the server process, data indicating a position of the avatar associated with the client process; and (b) synchronously disseminating less than all of the positions of the avatars not associated with a particular client process to each of the other client processes so that the particular client process can determine from the positions a set of avatars that are to be displayed.
-
-
10. A system for enabling a first user to interact with other users in a virtual space, wherein the first user and the other users each have an avatar associated therewith, and wherein the system comprises a first process associated with the first user, other client processes associated with the other users, and a server process in communication with the first client process and the other client processes, wherein
(a) each of the other client processes is operable tomonitor a position of the avatar associated with the other user; -
2. transmit the position of the avatar to the server process; (b) the server process is operable to 1. receive the positions of the avatars associated with the other users; 2. transmit the positions of the avatars associated with less than all of the other users to the first client process; and (c) the first client process is operable to 1. receive the positions of the avatars associated with less than all of the other users; and 2. determine from the received positions a set of the other users'"'"' avatars that are to be displayed.
-
-
11. A software program recorded on a machine-readable medium for enabling a first user interact with other users in a virtual space, wherein the first user and the other users each have an avatar a client process associated therewith, and wherein each client process is in communication with a server process,
wherein the software program comprises instructions for causing the client process associated with the first user to perform the following steps: -
(a) receiving a position of at less than all of the other users'"'"' avatar from the server process; and (b) determining, from the received positions, a set of the other users'"'"' avatars that are to be displayed to the first user. - View Dependent Claims (12, 13, 14, 19)
-
-
15. A software program recorded on a machine-readable medium for enabling a plurality of users to interact in a virtual space, wherein each user has a computer associated therewith, wherein each computer has a client process associated therewith, wherein each client process has an avatar associated therewith, and wherein each client process is in communication with a server process, wherein the software program includes instructions for:
-
(a) monitoring, by each client process, a position of the avatar associated with the client process; (b) transmitting, by each client process to the server process, the position of the avatar associated with the client process; (d) transmitting, by the server process to each client process, the positions of less than all of the avatars that are not associated with the client process; and (d) determining from the positions transmitted in step (c), by each client process, a set of the avatars that are to be displayed. - View Dependent Claims (16, 17)
-
-
18. A software program recorded on a machine-readable medium for operating a server to enable a plurality of users to interact in a virtual space, wherein each user has a computer associated therewith, wherein each computer has a client process associated therewith, wherein each client process has an avatar associated therewith, wherein the server has a process associated therewith, and wherein each client process is in communication with the server process, wherein the software program comprises instructions for:
-
(a) receiving from each client process by the server process, data indicating a position of the avatar associated with the client process; and (b) synchronously disseminating the positions of less than all of the avatars not associated with a particular client process to each of the other client processes so that the particular client process can determine from the positions a set of avatars that are to be displayed. - View Dependent Claims (20)
-
Specification