Methods and systems for dynamically adjusting update rates in multi-player network gaming
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/173
G06F-015/16
출원번호
US-0408635
(2009-03-20)
등록번호
US-8527657
(2013-09-03)
발명자
/ 주소
Klee, Nathan Scott
Hutchinson, Fraser
출원인 / 주소
Sony Computer Entertainment America LLC
대리인 / 주소
Martine Penilla Group, LLP
인용정보
피인용 횟수 :
2인용 특허 :
222
초록▼
In a server-implemented video game or simulation, a method for providing updates to a remote client regarding a plurality of objects located in a virtual spatial field of the simulation. The method comprises operations of receiving an update locus from the remote client, the update locus indicating
In a server-implemented video game or simulation, a method for providing updates to a remote client regarding a plurality of objects located in a virtual spatial field of the simulation. The method comprises operations of receiving an update locus from the remote client, the update locus indicating a client-specified position within the virtual spatial field of the server-implemented simulation; determining a distance of each of the plurality of objects from the update locus; sorting the plurality of objects according to their determined distances from the update locus; determining an update rate for each of the plurality of objects based upon their sorted order; and sending updates regarding each of the plurality of objects to the remote client according to the determined update rates.
대표청구항▼
1. In a server-implemented video game, a method for providing updates to a remote client regarding a plurality of objects located in a virtual spatial field of the video game, said method comprising: receiving an update locus from the remote client, the update locus indicating a client-specified pos
1. In a server-implemented video game, a method for providing updates to a remote client regarding a plurality of objects located in a virtual spatial field of the video game, said method comprising: receiving an update locus from the remote client, the update locus indicating a client-specified position within the virtual spatial field of the server-implemented video game; determining a distance of each of the plurality of objects from the update locus;sorting the plurality of objects according to their determined distances from the update locus;determining an update rate for each of the plurality of objects based upon their sorted order, the update rate for a given one of the plurality of objects defining a number for a frequency with which updates regarding the given one of the plurality of objects are sent to the remote client;sending updates regarding each of the plurality of objects to the remote client according to the determined update rates, the determined update rates being applied to the plurality of objects to provide a representation on a display;wherein the determining an update rate further comprises adjusting a minimum update rate and a maximum update rate based on a density of the plurality of objects such that a difference between the minimum update rate and the maximum update rate decreases as the density of the plurality of objects increases;wherein the update rate of each of the plurality of objects ranges between the minimum update rate and the maximum update rate. 2. The method of claim 1, wherein the update rate of each of the plurality of objects decreases as distance from the update locus increases. 3. The method of claim 1, wherein the determining an update rate further comprises: dividing the sorted plurality of objects into consecutive non-overlapping cohorts;determining an update rate for each cohort such that the update rate decreases as distance of the cohort from the update locus increases. 4. The method of claim 1, wherein the client-specified position is the position of a first-person character or a third-person character of a player of the video game. 5. The method of claim 1, wherein the client-specified position is the position of a point of interest of a player of the video game. 6. The method of claim 1, wherein the plurality of objects includes one or more classes of objects, the method further comprising determining an update rate profile for each class of objects, the update rate profile indicating the update rate of a given object based on its relative distance from the update locus within its class;wherein the operation of sorting the plurality of objects further comprises sorting the objects of each class according to their determined distances from the update locus;wherein the operation of determining an update rate further comprises determining an update rate for each of the plurality of objects based upon its class and update rate profile. 7. The method of claim 1, wherein the operation of sending updates further comprises sending an update for a given object according to its determined update rate only when the given object exhibits a changed status from the status of its previously sent update. 8. The method of claim 1, wherein the remote client receives the updates without communicating with an additional remote client that controls a position of one or more of the plurality of objects within the virtual spatial field. 9. In a video game implemented on a server-client system, a method for receiving updates from the server at the client, the updates regarding a plurality of objects located in a virtual spatial field of the video game, the method comprising: providing an update locus of the client to the server, the update locus indicating a client-specified position within the virtual spatial field of the video game;determining a distance of each of the plurality of objects from the update locus;sorting the plurality of objects according to their determined distances from the update locus;determining an update rate for each of the plurality of objects based upon their sorted order, the update rate for a given one of the plurality of objects defining a number for a frequency with which updates regarding the given one of the plurality of objects are received by the client;receiving updates regarding each of the plurality of objects from the server at the client according to the determined update rates, the determined update rates being applied to the plurality of objects to provide a representation on a display;wherein the determining an update rate further comprises adjusting a minimum update rate and a maximum update rate based on a density of the plurality of objects such that a difference between the minimum update rate and the maximum update rate decreases as the density of the plurality of objects increases;wherein the update rate of each of the plurality of objects ranges between the minimum update rate and the maximum update rate. 10. The method of claim 9, wherein the update rate of each of the plurality of objects decreases as distance from the update locus increases. 11. The method of claim 9, wherein the determining an update rate further comprises: dividing the sorted plurality of objects into consecutive non-overlapping cohorts;determining an update rate for each cohort such that the update rate decreases as distance of the cohort from the update locus increases. 12. The method of claim 9, wherein the client-specified position is the position of a first-person character or a third-person character of a player of the video game. 13. The method of claim 9, wherein the client-specified position is the position of a point of interest of a player of the video game. 14. The method of claim 9, wherein the plurality of objects includes one or more classes of objects, the method further comprising determining an update rate profile for each class of objects, the update rate profile indicating the update rate of a given object based on its relative distance from the update locus within its class;wherein the operation of sorting the plurality of objects further comprises sorting the objects of each class according to their determined distances from the update locus;wherein the operation of determining an update rate further comprises determining an update rate for each of the plurality of objects based upon its class and update rate profile. 15. The method of claim 9, wherein the operation of receiving updates further comprises receiving an update for a given object according to its determined update rate only when the given object exhibits a changed status from the status of its previously received update. 16. The method of claim 9, further comprising: at the client, interpolating a transformation of each of the plurality of objects from a current state to an updated state, the interpolated rate of transformation based upon the update rate of the object. 17. The method of claim 16, wherein the current and updated states indicate current and updated positions. 18. The method of claim 16, wherein the transformation to the updated state is completed at the expected time of the next update. 19. The method of claim 16, wherein the transformation to the updated state is completed at a time interval after the expected time of the next update. 20. The method of claim 19, wherein the time interval is in the range of 20 to 40 milliseconds. 21. A video game system, comprising: a server computer for hosting a server-based video game, the server including a processor, the server-based video game including a plurality of server objects, and update rates for each of the server objects, the update rate of a given server object defining a number for a rate at which a current state of the given server object is sent to the client; a client computer for hosting a client-based video game corresponding to the server-based video game, the client including a processor, the client-based video game including a plurality of client objects corresponding to the plurality of server objects, each client object being updated with the received current state of its corresponding server object;wherein the server receives an update locus from the client, the update locus indicating a client-specified position within both the server-based video game and the client- based video game;wherein the update rates for each of the plurality of server objects are based upon a relative distance of each of the plurality of server objects from the update locus;wherein the server adjusts a minimum update rate and a maximum update rate based on a density of the plurality of objects such that a difference between the minimum update rate and the maximum update rate decreases as the density of the plurality of objects increases;wherein the update rate of each of the plurality of server objects ranges between the minimum update rate and the maximum update rate. 22. The video game system of claim 21, where each of said plurality of server objects and each of said plurality of clients objects include one or more fields, each field containing data regarding a property of its respective object. 23. The video game system of claim 21, further comprising a server object manager, the server object manager for managing the plurality of server objects;a client object manager, the client object manager for managing the plurality of client objects. 24. The video game system of claim 21, further comprising a server object aggregator, the server object aggregator for aggregating and sending data to the client. 25. A computer program product for providing updates to a remote client regarding a plurality of objects located in a virtual spatial field of a video game, the computer program product being embodied on a non-transitory computer-readable medium, the computer program product configured for execution by a computer, comprising: program instructions for receiving an update locus from the remote client, the update locus indicating a client-specified position within the virtual spatial field of the server-implemented video game;program instructions for determining a distance of each of the plurality of objects from the update locus;program instructions for sorting the plurality of objects according to their determined distances from the update locus;program instructions for determining an update rate for each of the plurality of objects based upon their sorted order, the update rate for a given one of the plurality of objects defining a number for a frequency with which updates regarding the given one of the plurality of objects are sent to the remote client;program instructions for sending updates regarding each of the plurality of objects to the remote client according to the determined update rates, the determined update rates being applied to the plurality of objects to provide a representation on a display;wherein the determining an update rate further comprises adjusting a minimum update rate and a maximum update rate based on a density of the plurality of objects such that a difference between the minimum update rate and the maximum update rate decreases as the density of the plurality of objects increases;wherein the update rate of each of the plurality of objects ranges between the minimum update rate and the maximum update rate. 26. The computer program product of claim 25, wherein the update rate of each of the plurality of objects decreases as distance from the update locus increases. 27. The computer program product of claim 25, wherein the determining an update rate further comprises: dividing the sorted plurality of objects into consecutive non-overlapping cohorts;determining an update rate for each cohort such that the update rate decreases as distance of the cohort from the update locus increases. 28. The computer program product of claim 25, wherein the plurality of objects includes one or more classes of objects, the computer program product further comprising program instructions for determining an update rate profile for each class of objects, the update rate profile indicating the update rate of a given object based on its relative distance from the update locus within its class;wherein the program instructions for sorting the plurality of objects further comprises program instructions for sorting the objects of each class according to their determined distances from the update locus;wherein the program instructions for determining an update rate further comprises program instructions for determining an update rate for each of the plurality of objects based upon its class and update rate profile. 29. The computer program product of claim 25, wherein the program instructions for sending updates further comprises program instructions for sending an update for a given object according to its determined update rate only when the given object exhibits a changed status from the status of its previously sent update. 30. In a server-implemented video game, a method for providing updates to a remote client regarding a plurality of objects located in a virtual spatial field of the video game, said method comprising: receiving an update locus from the remote client, the update locus indicating a client-specified position within the virtual spatial field of the server-implemented video game;determining a distance of each of the plurality of objects from the update locus;sorting the plurality of objects according to their determined distances from the update locus;determining an update rate for each of the plurality of objects based upon their sorted order;sending updates regarding each of the plurality of objects to the remote client according to the determined update rates, the determined update rates being applied to the plurality of objects to provide a representation on a display, the remote client receiving the updates without communicating with an additional remote client that controls a position of one or more of the plurality of objects within the virtual spatial field;wherein the determining an update rate further comprises adjusting a minimum update rate and a maximum update rate based on a density of the plurality of objects such that a difference between the minimum update rate and the maximum update rate decreases as the density of the plurality of objects increases;wherein the update rate of each of the plurality of objects ranges between the minimum update rate and the maximum update rate.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (222)
Cipolla Roberto (Cambridge GBX) Okamoto Yasukazu (Chiba-ken JPX) Kuno Yoshinori (Osaka-fu JPX), 3D human interface apparatus using motion recognition based on dynamic image processing.
Guy, Charles H.; Van Datta, Glen A.; Fernandes, João A., Application development interface for multi-user applications executable over communication networks.
Marks, Richard L.; Mao, Xiadong; Zalewski, Gary M., Computer image and audio processing of intensity and input devices for interfacing with a computer program.
Nobuo Fukushima JP; Tomotaka Muramoto JP; Masayoshi Sekine JP, Display apparatus which detects an observer body part motion in correspondence to a displayed element used to input operation instructions to start a process.
Stoel Leon P. (Sioux Falls SD) Bankers David M. (Sioux Falls SD) Hills Vernon E. (Sioux Falls SD) Plucker Prentice J. (Chanceller SD) Cinco Christopher A. (Sioux Falls SD), Entertainment system and method for controlling connections between terminals and game generators and providing video ga.
Cartabiano Michael C. ; Curran Kenneth J. ; Dick David J. ; Gibbs Douglas R. ; Kirby Morgan H. ; May Richard L. ; Storer William J. A. ; Ullman Adam N., Hand-attachable controller with direction sensing.
Sata Hironori,JPX, Image generating system and information storage medium capable of changing angle of view of virtual camera based on object positional information.
Wallace,Jon K.; Luo,Yun; Dziadula,Robert; Khairallah,Farid, Method and apparatus for determining an occupant's head location in an actuatable occupant restraining system.
Florent Raoul (Valenton FRX) Lelong Pierre (Nogent-Sur-marne FRX), Method and device for processing an image in order to construct from a source image a target image with charge of perspe.
Maes Pattie E. (Somerville MA) Blumberg Bruce M. (Pepperell MA) Darrell Trevor J. (Cambridge MA) Starner Thad E. (Somerville MA) Johnson Michael P. (Cambridge MA) Russell Kenneth B. (Boston MA) Pentl, Method and system for facilitating wireless, full-body, real-time user interaction with a digitally represented visual e.
Matey James R. (Mercerville NJ) Aceti John G. (Cranbury NJ) Pletcher Timothy A. (East Hampton NJ), Method and system for object detection for instrument control.
Okuda, Nobuya; Kobayashi, Tatsuya; Fujimoto, Hirofumi; Matsuyama, Shigenobu, Method for controlling movement of viewing point of simulated camera in 3D video game, and 3D video game machine.
Wergen, Gerhard; Franz, Klaus, Method for transferring characters especially to a computer and an input device which functions according to this method.
Kobayashi Hiroshi (3-15 Hanakoganei Kodaira-shi ; Tokyo JPX) Machida Haruhiko (10-7 Nakaochiai 4-chome Shinjuki-ku ; Tokyo JPX) Ema Hideaki (Shizuoka JPX) Akedo Jun (Tokyo JPX), Method of measuring the amount of movement of an object having uniformly periodic structure.
Everett ; Jr. Hobart R. (San Diego CA) Gilbreath Gary A. (San Diego CA) Laird Robin T. (San Diego CA), Navigational control system for an autonomous vehicle.
Elko Gary W. (Summit NJ) Sondhi Man M. (Berkeley Heights NJ) West James E. (Plainfield NJ), Noise reduction processing arrangement for microphone arrays.
Levine, Bruce M.; Wirth, Allan; Knowles, C. Harry, OPHTHALMIC INSTRUMENT WITH ADAPTIVE OPTIC SUBSYSTEM THAT MEASURES ABERRATIONS (INCLUDING HIGHER ORDER ABERRATIONS) OF A HUMAN EYE AND THAT PROVIDES A VIEW OF COMPENSATION OF SUCH ABERRATIONS TO THE H.
Podoleanu, Adrian Gh.; Jackson, David A.; Rogers, John A.; Dobre, George M.; Cucu, Radu G., Optical mapping apparatus with adjustable depth resolution and multiple functionality.
Lake Royden J. (Armidale AUX) Moore John C. (Armidale AUX) Kowald Errol M. (Armidale AUX) Doerr Annegret (Armidale AUX), Optically readable coded target.
Marks, Richard L., Prop input device and method for mapping an object from a two-dimensional camera image to a three-dimensional space for controlling action in a game program.
Krueger Myron W. (55 Edith Rd. Vernon CT 06066) Hinrichsen Katrin (81 Willington Oaks Storrs CT 06268) Gionfriddo Thomas S. (81 Willington Oaks Storrs CT 06268), Real time perception of and response to the actions of an unencumbered participant/user.
Mark John G. (Pasadena CA) Tazartes Daniel A. (West Hills CA) Ebner Robert E. (Tarzana CA) Dahlen Neal J. (Freiburg CA DEX) Datta Nibir K. (West Hills CA), Ring laser gyroscope enhanced resolution system.
Yen, Wei; Wright, Ian; Tu, Xiaoyuan; Reynolds, Stuart; Powers, III, William Robert; Musick, Charles; Funge, John; Dobson, Daniel; Bererton, Curt, Self-contained inertial navigation system for interactive control using movable controllers.
Addeo Eric J. (Long Valley NJ) Robbins John D. (Denville NJ) Shtirmer Gennady (Morris Plains NJ), Sound localization system for teleconferencing using self-steering microphone arrays.
Chang Bay-Wei W. ; Fishkin Kenneth P. ; Harrison Beverly L. ; Igarashi Takeo,JPX ; Mackinlay Jock D. ; Want Roy ; Zellweger Polle T., Spinning as a morpheme for a physical manipulatory grammar.
Dengler,John D.; Garci,Erik J.; Cox,Brian C.; Tolman,Kenneth T.; Weber,Hans X.; Hall,Gerard J., System and method for inserting content into an image sequence.
Lyons Damian M., System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs.
Stam, Joseph S.; Bechtel, Jon H.; Reese, Spencer D.; Roberts, John K.; Tonar, William L.; Poe, G. Bruce; Newhouse, Douglas J., System for controlling exterior vehicle lights.
Stam, Joseph S.; Bechtel, Jon H.; Reese, Spencer D.; Roberts, John K.; Tonar, William L.; Poe, G. Bruce; Newhouse, Douglas J., System for controlling exterior vehicle lights.
Wang John Y. A. (Cambridge MA) Adelson Edward H. (Cambridge MA), System for encoding image data into multiple layers representing regions of coherent motion and associated motion parame.
Freeman William T. ; Leventon Michael E., System for reconstructing the 3-dimensional motions of a human figure from a monocularly-viewed image sequence.
Oishi, Toshimitsu; Okubo, Toru; Domitsu, Hideyuki; Yamano, Tomoya, Video game apparatus, method and recording medium storing program for controlling viewpoint movement of simulated camera in video game.
Sawano, Takao; Matsuoka, Hirofumi; Endo, Takashi, Video game system for capturing images and applying the captured images to animated game play characters.
Bouton Frank M. (Beaverton OR) Kaminsky Stephen T. (Salem OR), Video pinball machine controller having an optical accelerometer for detecting slide and tilt.
Fishkin Kenneth P. ; Goldberg David ; Gujar Anuj Uday ; Harrison Beverly L. ; Mynatt Elizabeth D. ; Stone Maureen C. ; Want Roy, Zoomorphic computer user interface.
Kucharski, Paul G.; Rischar, Charles M.; Kalan, Michael; Van Gompel, David; Batke, Brian A.; Izzo, Joseph P.; Johnston, David A., Generation and publication of shared tagsets.
Kucharski, Paul G.; Rischar, Charles M.; Kalan, Michael; Van Gompel, David; Batke, Brian A.; Izzo, Joseph P.; Johnston, David A., Generation and publication of shared tagsets.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.