Methods and apparatus of sharing graphics data of multiple instances of interactive application
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/00
G06T-001/00
G06F-017/00
G06F-015/16
G06T-015/00
출원번호
UP-0670968
(2007-02-03)
등록번호
US-7830388
(2010-11-25)
발명자
/ 주소
Lu, Yang
출원인 / 주소
ViTie Inc.
인용정보
피인용 횟수 :
38인용 특허 :
29
초록▼
The present invention presents systems and methods for running interactive applications such as video games remotely over broadband network by an interactive application host system. In accordance with the present invention, interactive applications such as video games can be hosted and executed rem
The present invention presents systems and methods for running interactive applications such as video games remotely over broadband network by an interactive application host system. In accordance with the present invention, interactive applications such as video games can be hosted and executed remotely by one or multiple interactive application hosts in native mode or using emulation or other similar binary execution technique. An interactive application host system can use dedicated graphics rendering apparatus inter-connected with the interactive application host(s) for rendering or compressing frames of multiple interactive applications. A graphics rendering apparatus can cache the graphics data received from the interactive application host(s) and share graphics data among multiple instances of interactive application from the same interactive application host or from different interactive application hosts.
대표청구항▼
What is claimed is: 1. A method for executing interactive application by at least one interactive application host of an interactive application host center, wherein the interactive application is under the control of at least one client that along with an optional collection of clients receives vi
What is claimed is: 1. A method for executing interactive application by at least one interactive application host of an interactive application host center, wherein the interactive application is under the control of at least one client that along with an optional collection of clients receives via broadband network, frame stream or video of the interactive application rendered by the interactive application host center, said method comprising, sending graphics command and/or graphics data of the interactive application via inter-connect networks to at least one graphics rendering apparatus that is assigned to process the interactive application's graphics rendering wherein said graphics rendering apparatus comprising multiple graphics processing elements, at least one graphics data cache, and a means of dispatching graphics commands to graphics processing elements for concurrently rendering frames of multiple interactive applications; querying whether the graphics data is currently cached in the graphics rendering apparatus; sending the graphics data to the graphics rendering apparatus if the graphics rendering apparatus does not have a copy of the graphics data, or allowing the graphics command to share the graphics data that is cached in the graphics rendering apparatus; and rendering frames or video of the interactive application on off-screen frame buffer by the graphics rendering apparatus according to the graphics command and/or the graphics data. 2. The method in claim 1, further comprising, before sending the graphics command or graphics data, capturing the graphics command and/or graphics data by an emulator, wherein the emulator emulates a target platform or operating system to support execution of the interactive application. 3. The method in claim 1, further comprising, intercepting graphics command and/or graphics data by a graphics driver running on the interactive application host; and forwarding the captured graphics command and/or graphics data to the graphics rendering apparatus via inter-connect networks. 4. The method in claim 1, wherein graphics data is sent, further comprising, compressing the graphics data; and transmitting the compressed graphics data to the graphics rendering apparatus. 5. The method in claim 1, wherein graphics data is queried, further comprising, allowing graphics command from different interactive application instances to share identical graphics data that is cached by the graphics rendering apparatus, wherein identifier is assigned to graphics data and graphics commands can share graphics data of the same identifier, or share graphics data of different identifier but containing identical data values. 6. The method in claim 5, wherein one or a plurality of identifiers are assigned to a graphics data, further comprising, computing the identifier using at least one hash value based on the graphics data, wherein the result identifier comprises the hash value. 7. The method in claim 1, wherein graphics data is queried, further comprising, sending at least a query to the graphics rendering apparatus on whether the graphics data is cached in the graphics rendering apparatus. 8. A method for processing graphics rendering of an interactive application by at least one graphics rendering apparatus of an interactive application host center under the request of at least one interactive application host, wherein the interactive application executed by the interactive application host is under the control of at least one client that along with an optional collection of clients receives via broadband network, frame stream or video of the interactive application rendered by the graphics rendering apparatus, said method comprising, caching graphics data of the interactive application in at least one graphics data cache of the graphics rendering apparatus wherein said graphics rendering apparatus comprising multiple graphics processing elements, at least one graphics data cache, and a means of dispatching graphics commands to graphics processing elements for concurrently rendering frames of multiple interactive applications; and allowing the cached graphics data to be shared by more than one instance of interactive application and rendering frames of the interactive application instance by the graphics processing element on off-screen frame buffer. 9. The method in claim 8, further comprising, responding to query of the cached graphics data from an interactive application host. 10. The method in claim 8, further comprising, storing graphics data identifiers of a collection of graphics data, wherein for each graphics data of the collection of graphics data, at least one copy of the graphics data is cached in the graphics rendering apparatus. 11. The method in claim 10, wherein identifier is assigned to graphics data, further comprising, computing the identifier using at least one hash value based on graphics data, wherein the result identifier comprises the hash value. 12. The method in claim 8, further comprising, for graphics data received by a graphics rendering apparatus, detecting whether a piece of graphics data with identical values is cached by the graphics rendering apparatus; and if such graphics data is found, using the found graphics data as replacement of the received graphics data. 13. The method in claim 8, further comprising, removing one or a plurality pieces of cached graphics data when there is insufficient storage space left for caching new graphics data by a graphics rendering apparatus. 14. The method in claim 8, wherein if a piece of graphics data is removed from a graphics rendering apparatus, further comprising, sending at least one notification message to one or multiple interactive application hosts. 15. The method in claim 14, further comprising, sending the notification message via multi-cast. 16. A graphics rendering apparatus for processing graphics rendering of at least one interactive application instance of an interactive application host center, wherein the interactive application instance is executed by at least one interactive application host under the control of at least one client that along with an optional collection of clients receives via broadband network, frame stream or video of the interactive application rendered by the graphics rendering apparatus, the system comprising, multiple graphics processing elements; a means of dispatching graphics commands to said graphics processing elements for concurrently rendering frames of multiple instances of interactive applications wherein said graphics commands are sent via inter-connect networks from interactive application hosts wherein said interactive applications are executed by said interactive application hosts; multiple off-screen frame buffers wherein graphics processing elements of the graphics rendering apparatus render frames of said multiple instances of interactive applications on said off-screen frame buffers; at least one graphics data cache; and at least one control processing element programmed to, caching graphics data of the interactive application by the graphics rendering apparatus in at least one graphics data cache; allowing the cached graphics data to be shared by more than one instance of interactive application, and/or responding to query of the cached graphics data. 17. The graphics rendering apparatus in claim 16, further comprising, at least one compression processing element coupled with the graphics processing element that can compress the rendered frame(s) of an interactive application. 18. The graphics rendering apparatus in claim 16, further comprising, at least one network or communication interface, wherein said interface receiving graphics data and/or graphic command from at least one interactive application host via inter-connect network. 19. The inter-connect network in claim 18 is PCI Express switch. 20. The inter-connect network in claim 18 is Ethernet.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (29)
Ramsey,Paul R., Acceleration of graphics for remote display using redirection of rendering and compression.
Park Won Bae ; Owen Henry Walter Lilly ; Zegura Ellen Witte, Cross-connect multirate/multicast SDH/SONET rearrangement procedure and cross-connect using same.
Thompson Stephen P. (Delray Beach FL) Rackley Darwin P. (Boca Raton FL) Brannon Sherwood (Boca Raton FL), Display adapter for virtual VGA support in XGA native mode.
Malkin Peter Kenneth ; Schloss Robert Jeffrey ; Snible Edward Charles ; Willebeek-LeMair Marc Hubert ; Yu Philip Shi-Lung, Dynamic modification of multimedia content.
Fahlman David,SEX ; Slattman Stefan,SEX ; Jakobsson Mats,SEX, System for routing incoming connection-less messages to processes which are already handling messages from same source n.
Millar Gregory M. (Pleasanton CA) Ko Tung-Faing (San Jose CA) Moss Nicolas N. (Sunnyvale CA) Hueras Jon F. (Chelmsford MA), Video accelerator and method using system RAM.
Gordon, Donald; Pavlovskaia, Lena Y.; Landau, Airan; Lennartsson, Andreas; Lawrence, Charlie; Brown, Greg; Ludvig, Edward, Interactive encoded content system including object models for viewing on a remote device.
Gordon, Donald; Pavlovskaia, Lena Y.; Landau, Airan; Lennartsson, Andreas; Cloud, Glenn M., MPEG objects and systems and methods for using MPEG objects.
Dahlby, Joshua; Marsavin, Andrey; Lawrence, Charles; Pavlovskaia, Lena Y., Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device.
Brockmann, Ronald A.; Dev, Anuj; Hiddink, Gerrit; Dahlby, Joshua; Pavlovskaia, Lena Y., Reduction of latency in video distribution networks using adaptive bit rates.
Kelly, Bryan M.; Lyons, Martin S.; Martin, Sean C.; Hedrick, Joseph R.; Lerner, Joseph, System and method for cross platform persistent gaming sessions using a mobile device.
Brockmann, Ronald Alexander; Dev, Anuj; Hoeben, Maarten, System and method for exploiting scene graph information in construction of an encoded video sequence.
Brockmann, Ronald Alexander; Dev, Anuj; Hoeben, Maarten, System and method for exploiting scene graph information in construction of an encoded video sequence.
Sigmon, Jr., Robert B.; Pavlovskaia, Lena Y.; Landau, Airan S., System and method for providing video content associated with a source image to a television in a communication network.
McKenna, Daniel Bernard; Graziano, James Michael, Virtual Aggregation Processor for incorporating reverse path feedback into content delivered on a forward path.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.