System, method and computer program product for remote graphics processing
First Claim
1. A method for processing graphics, the method comprising:
- sending information over a network interface to a server, the information identifying a graphics capability of a client;
sending a graphics command over a network interface to a server, wherein the server;
merges the graphics capability of the client with one or more graphics capabilities of the server into a list of graphics capabilities,receives the graphics command,updates image data at the server according to the graphics command and according to at least one capability of the one or more graphics capabilities in the list of graphics capabilities,renders client image data for transmission to the client from the updated image data according to the identified graphics capability of the client in the list of graphics capabilities, andtransmits the rendered image for display at the client;
receiving the client image data; and
displaying the client image data on a display at the client.
6 Assignments
0 Petitions
Accused Products
Abstract
A system, method, and computer program product are provided for remote rendering of computer graphics. The system includes a graphics application program resident at a remote server. The graphics application is invoked by a user or process located at a client. The invoked graphics application proceeds to issue graphics instructions. The graphics instructions are received by a remote rendering control system. Given that the client and server differ with respect to graphics context and image processing capability, the remote rendering control system modifies the graphics instructions in order to accommodate these differences. The modified graphics instructions are sent to graphics rendering resources, which produce one or more rendered images. Data representing the rendered images is written to one or more frame buffers. The remote rendering control system then reads this image data from the frame buffers. The image data is transmitted to the client for display or processing. In an embodiment of the system, the image data is compressed before being transmitted to the client. In such an embodiment, the steps of rendering, compression, and transmission can be performed asynchronously in a pipelined manner.
63 Citations
8 Claims
-
1. A method for processing graphics, the method comprising:
-
sending information over a network interface to a server, the information identifying a graphics capability of a client; sending a graphics command over a network interface to a server, wherein the server; merges the graphics capability of the client with one or more graphics capabilities of the server into a list of graphics capabilities, receives the graphics command, updates image data at the server according to the graphics command and according to at least one capability of the one or more graphics capabilities in the list of graphics capabilities, renders client image data for transmission to the client from the updated image data according to the identified graphics capability of the client in the list of graphics capabilities, and transmits the rendered image for display at the client; receiving the client image data; and displaying the client image data on a display at the client.
-
-
2. A non-transitory machine-readable storage medium storing instructions for rendering graphics at a remote graphics rendering resource that, if executed by at least one processor of the remote graphics resource, cause the remote graphics resource to:
- receive, at the remote graphics rendering resource, a command from a client device, wherein the remote graphics rendering resource includes two or more graphics processors, and the two or more graphics processors have different graphics context and image processing capabilities than the client device; and
render one or more images according to the command received from the client device according to one or more server contextual settings, wherein the rendering is performed by at least one of the two or more graphics processors using one or more client device parameters; and generate an internal context, wherein the internal context includes the one or more server contextual settings and information that identifies a specific visual capability of the client device; and transmit image data corresponding to the one or more rendered images to the client device, wherein the image data is capable to be displayed consistent with the identified specific visual capability of the client device. - View Dependent Claims (3, 4, 5, 6, 7, 8)
- receive, at the remote graphics rendering resource, a command from a client device, wherein the remote graphics rendering resource includes two or more graphics processors, and the two or more graphics processors have different graphics context and image processing capabilities than the client device; and
Specification