1. A method for remote visualization in which a server window contents is displayed remotely at a client, comprising the client carrying out the method comprising: creating a 3D rendering surface on a client graphics card to display a server window contents; receiving update data from the server relating to the server window contents; uploading the update data to the client graphics card; using a graphics processing unit (GPU) to decode the update data; and rendering the update data to the 3D rendering surface.