Cloud-based server computing system for and method of providing cross-platform remote access to 3D graphics applications
View Patent ↗A server computing system in a client-server computing environment includes a virtual display driver that marshals and transmits graphics application programming interface (API) functions to a client via a network. The server may receive capability information from the client, allowing the virtual display driver to resolve differences between the APIs supported on the server and the client.
1. A cloud-based server computing system for providing cross-platform remote access to 3D graphics applications, the server computing system comprising:
a client device having a client library and a server having a server library operatively connected through a network, wherein the server library is different from the client library;
a cloud server operatively coupled to the client device and the server through a network;
the server comprising a server application, and functionality for making the server application visible to and accessible by the client device;
the server configured to:
receive a request from the client to publish the server application;
receive, from the cloud server, compatibility information regarding the graphics capability of the client device, the graphics capability comprising information regarding the client library;
initiate the server application, wherein the server application makes a graphics call to the server library;
encode the graphics calls associated with the initiated server application in accordance with the graphics capability comprised of information regarding the client library; and
transmit the encoded graphics calls to the client device for execution using graphics capabilities comprised of the client library.
2. The cloud-based system of claim 1 , where the server and the client device operate on different computing platforms.
3. The cloud-based system of claim 1 , wherein the client device and server exchange capability information.
4. The cloud-based system of claim 3 , wherein the capability information further includes API's supported by the client device.
5. The cloud-based system of claim 4 , wherein the capability information is stored on the server for later retrieval.
6. A method for providing cloud-based cross-platform remote access to 3D graphics applications, the method comprising:
receiving a request over a communication network from a client device having a client library to access a server application at a server having a server library, wherein the server library is different from the client library;
receiving compatibility information over the communication network regarding the graphics capability of the client device from a cloud server, the graphics capability comprising information regarding the client library;
executing instructions stored in memory, wherein execution of the instructions by a processor:
initiates the server application, wherein the server application makes a graphics call to the server library; and
encodes the graphics calls associated with the initiated server application in accordance with the graphics capability comprised of information regarding the client library; and
transmitting the encoded graphics calls to the client device for execution using graphics capabilities comprised of the client library.
7. The method of claim 6 , where the server and the client device operate on different computing platforms.
8. The method of claim 6 , wherein the client device and server exchange capability information.
9. The method of claim 8 , wherein the capability information includes API's supported by the client device.
10. The method of claim 9 , further comprising storing the capability information the server for later retrieval.
11. A non-transitory computer-readable storage medium, having embodied thereon a program executable by a processor to perform a method for providing cross-platform remote access to 3D graphics applications, the method comprising:
receiving a request from a client device having a client library to access said server application on a server having a server library, wherein the server library is different from the client library;
receiving compatibility information regarding the graphics capability of the remote client from a cloud server, the graphics capability comprising information regarding the client library;
initiating the server application, wherein the server application makes a graphics call to the server library;
encoding the graphics calls associated with the initiated server application in accordance with the graphics capability comprised of information regarding the client library; and
transmitting the encoded graphics calls to the client device for execution using graphics capabilities comprised of the client library.