Method, system and apparatus of recording and playing back an experience in a virtual worlds system
US-2024424391-A1 · Dec 26, 2024 · US
US9498714B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9498714-B2 |
| Application number | US-201113231850-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 13, 2011 |
| Priority date | Dec 15, 2007 |
| Publication date | Nov 22, 2016 |
| Grant date | Nov 22, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computing system is configured to execute a computer program on a server and to provide a video stream of the program output to a geographically remote client over a communication network. The computing system is further configured to provide executable content of the computer program to the client over the communication network in parallel with the video stream. When a sufficient amount of the executable content has been provided to the client execution of the computer program is transitioned from the server to the client. The transition optionally includes communicating a state of the computer program from the server to the client. The executable content can be provided to the client in an order that is determined based on the state of the computer program. Those parts of the executable content deemed most likely to be necessary to support game play on the client are given priority.
Opening claim text (preview).
What is claimed is: 1. A method of providing a computer game, the method comprising: receiving a command for processing by the computer game at a video server system, the command received from a remote client directing execution of the computer game; executing game logic of the computer game on the video server system in accordance with the command received from the remote client, execution of the game logic resulting in generation of a video game environment based on a game state and on the command received from the remote client; operating a graphics processing unit at the video server system to render the video game environment to video data; processing the video data through an encoding pipeline at the video server system to encode the video data into a data format compatible with a codec present at the remote client; providing the encoded video data from the video server system to the remote client over a communication network; and providing executable game logic of the computer game to the remote client in addition to the encoded video data; executing the executable game logic of the computer game on the remote client to generate video of the computer game at the remote client based on the game state and on commands for processing by the computer game as provided at the remote client; and in conjunction with executing the executable game logic of the computer game on the remote client, stopping provision of the encoded video data from the video server system to the remote client over the communication network. 2. The method of claim 1 , wherein a rate, in bytes/second, at which the executable game logic is provided is dependent on a bandwidth of the communication network. 3. The method of claim 1 , wherein a rate, in bytes/second, at which the executable game logic is provided is dependent on a bandwidth required to provide the encoded video data at a minimum level of quality. 4. The method of claim 1 , wherein a data packet sent from the video server system to the remote client includes both the encoded video data and data of the executable game logic. 5. The method of claim 4 , wherein the data of the executable game logic is background downloaded from the video server system to the remote client during provision of the encoded video data from the video server system to the remote client. 6. The method of claim 1 , wherein stopping provision of the encoded video data from the video server system to the remote client over the communication network is part of transitioning from a streaming mode in which the encoded video data is provided to the remote client from the video server system to a client mode in which the executable game logic is used to generate video of the computer game on the remote client. 7. The method of claim 6 , wherein the transitioning includes reassigning a game session to operate between a game server and the remote client rather than or in addition to between the game server and the video server system. 8. The method of claim 6 , further comprising: after transitioning to the client mode, transferring game state data from the remote client to the video server system during execution of the executable game logic in the client mode or after completing a session of the execution of the executable game logic in the client mode. 9. The method of claim 1 , further comprising: receiving a game command at the video server system from the remote client; forwarding the received game command to a game server; and receiving a game state from the game server, the game state having been updated using the received game command. 10. The method of claim 9 , further comprising: using the received game command to update a game state on the remote client. 11. The method of claim 1 , further comprising: determining a rate at which the executable game logic can be downloaded to the remote client while maintaining a minimum level of quality for display of a video stream corresponding to the encoded video data on the remote client. 12. The method of claim 11 , wherein the rate at which the executable game logic can be downloaded to the remote client is dependent on a rate at which the encoded video data is provided to the remote client. 13. The method of claim 11 , wherein the rate at which the executable game logic can be downloaded to the remote client changes over time. 14. The method of claim 11 , wherein the executable game logic is provided to the remote client at a rate less than or equal to the determined rate. 15. The method of claim 1 , wherein the executable game logic and the encoded video data are provided to the remote client in parallel. 16. The method of claim 1 , further comprising: modifying an order in which parts of the executable game logic are provided to the remote client, wherein the modifying is based on the game state. 17. The method of claim 16 , wherein modifying the order is dependent on a probability of reaching a second game state from a first game state. 18. The method of claim 1 , further comprising: providing the game state to the remote client from the video server system or from a game server. 19. The method of claim 1 , further comprising: transferring a game session such that the game state is sent from a game server to the remote client rather than or in addition to from the game server to the video server system. 20. The method of claim 19 , wherein the game session is transferred automatically. 21. The method of claim 1 , further comprising: transferring the game session such that a game server assigns commands received from the remote client to the game session that was previously established between the video server system and the game server. 22. The method of claim 21 , wherein transferring the game session includes sending instructions to the game server configured to cause the game server to change network addresses associated with the game session. 23. The method of claim 1 , further comprising: starting execution of the executable game logic on the remote client to produce game video based on the game state. 24. The method of claim 23 , further comprising: continuing to execute the executable game logic on the remote client while further parts of the executable game logic are downloaded to the remote client. 25. The method of claim 23 , wherein the executable game logic provided to the remote client includes all available executable game logic for the computer game. 26. A method of providing a computer game, the method comprising: executing game logic of the computer game on a video server system or a first client, execution of the game logic resulting in generation of a video game environment based on a game state; operating a graphics processing unit at the video server system of the first client to render the video game environment to video data; processing the video data through an encoding pipeline at the video server system to encode the video data into a data format compatible with a codec present at a remote second client; providing the encoded video data from the video server system or the first client to the remote second client over a communication network; and providing executable game logic to the remote second client from the first client in parallel with the encoded video data, the executable game logic configured to execute on the remote second client to generate game video at the remote sec
Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers · CPC title
Communication between platforms, i.e. physical link to protocol · CPC title
for performing operations on behalf of the game client, e.g. rendering · CPC title
Processor architectures; Processor configuration, e.g. pipelining · CPC title
Game security or game management aspects · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.