WO2017088484A1 - Cloud computing based real-time off-screen rendering method, apparatus and system - Google Patents

Cloud computing based real-time off-screen rendering method, apparatus and system Download PDF

Info

Publication number
WO2017088484A1
WO2017088484A1 PCT/CN2016/088767 CN2016088767W WO2017088484A1 WO 2017088484 A1 WO2017088484 A1 WO 2017088484A1 CN 2016088767 W CN2016088767 W CN 2016088767W WO 2017088484 A1 WO2017088484 A1 WO 2017088484A1
Authority
WO
WIPO (PCT)
Prior art keywords
rendering
resource
user
client
time
Prior art date
Application number
PCT/CN2016/088767
Other languages
French (fr)
Chinese (zh)
Inventor
罗涛
杨磊
张微
陈乐吉
杨学亮
周益
曾锦平
邱泳天
Original Assignee
成都赫尔墨斯科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 成都赫尔墨斯科技有限公司 filed Critical 成都赫尔墨斯科技有限公司
Publication of WO2017088484A1 publication Critical patent/WO2017088484A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Definitions

  • the present invention relates to the field of cloud rendering, and in particular, to a cloud computing-based real-time off-screen rendering method, apparatus and system.
  • cloud computing related services such as Iaas (infrastructure as a service), Paas (platform as a service), and Saas (software as a service) have emerged.
  • the general principle is to use cloud computing's powerful virtualization technology to pool computing, storage and network resources, to achieve arbitrary segmentation of resources, to achieve high availability of computing, storage and network resources, and overall improvement The utilization of resources.
  • 3D large-scale high-dynamic scene rendering services have been the demand of many industries.
  • the popularity of cloud computing services and the demand for large-scale 3D scene rendering have naturally created cloud rendering services.
  • the existing cloud rendering is roughly divided into two categories: one is online rendering, and the other is offline rendering. Both of these types use the way of cloud rendering, and the implementation of the prior art can only provide a delay rendering knot. If it is mainly used for movie special effects and animation rendering, it can not meet the real-time interoperability requirements of 3D large-scale high-dynamic scene rendering pictures on the mobile device side. The displayed 3D special effects are poor in quality and cannot provide users with high dynamics in the client terminal. A good user experience for 3D real-time scene services.
  • a Chinese invention patent (Application Publication No.: CN103313120A) discloses a method for displaying a picture, the method comprising the steps of: acquiring picture information of a rendering entity; transmitting the picture information to a cloud, and using the cloud according to the picture information The rendering entity is rendered to obtain a rendering result; the rendering result returned by the cloud is obtained, and the screen is displayed according to the rendering result.
  • the invention reduces the need for the processing capability of the portable client terminal by performing the rendering operation in the cloud, and can be applied to various types of terminals, even the low-end client terminal is equally applicable, and with the strong processing capability of the cloud, Cloud rendering display of 3D scenes can be performed on the client terminal device.
  • the cost is The time will increase, ie the delay will increase. Moreover, the number of clients supporting simultaneous online access will also be reduced. Once the communication load of the cloud reaches a critical value, the rendering task of the excess client will be suspended, and the delay is more serious.
  • the object of the present invention is to overcome the above-mentioned deficiencies in the prior art, and provide a real-time off-screen rendering method based on cloud computing, which can support a plurality of simultaneous client devices and can carry a rendering service request of a large number of client devices. Moreover, all online rendering tasks are independent of each other, which not only reduces the communication load of the cloud, but also reduces the latency of the cloud rendering service.
  • a cloud computing-based real-time off-screen rendering method including:
  • the rendering resource is rendered in real time according to the cloud rendering service request, and the rendering result generated in real time is sent to the client through the direct link;
  • the client After receiving the rendering result in real time, the client displays the screen in real time according to the rendering result.
  • the optimal rendering resource is enabled; otherwise, no rendering resource information is available to the client.
  • an address of the rendering resource is obtained, and a communication port is allocated to the client, and an address of the rendering resource is bound to a communication port of the client. And creating the rendering resource and the direct link of the client.
  • the rendering resource after the direct link is successfully created, according to the rendering entity described in the cloud rendering service request, the rendering resource first downloads resource data of the rendering entity;
  • the rendering resource After the resource data of the rendering entity is downloaded, the rendering resource renders the resource data of the rendering entity in real time according to the rendering content described in the cloud rendering request, and is in a frame buffer of the rendering resource. Generate rendering results in real time;
  • the rendering result in the frame buffer is obtained in real time, and is compression-encoded, and then sent to the client through the direct link.
  • the transmission frequency of the rendering result is adjusted in real time according to the communication status on the direct link and the operation of the client.
  • the client before receiving the cloud rendering service request sent by the client, the client is first sent to send a user verification request;
  • the identification information is returned to the client, and a heartbeat connection with the client is established. Otherwise, the identification information is not returned to the client.
  • the heartbeat packet sent by the client after returning the identification information to the client, if the heartbeat packet sent by the client is received, determining that the heartbeat connection is successfully established, and adding the user to the online list of the user; If the heartbeat packet sent by the client is not received, it is determined that the heartbeat connection establishment fails, and the user is offline;
  • the heartbeat connection is successfully established, if the offline request sent by the client is received, the heartbeat connection is disconnected, the user is removed from the online list of the user, and the created Direct link and enabled rendering resources.
  • a heartbeat packet sent by the client after establishing a heartbeat connection with the client, receiving a heartbeat packet sent by the client according to a certain frequency to monitor a login status of the user, and each time after receiving one of the heartbeat packets, immediately Start timing at zero;
  • timing time is greater than or equal to the drop threshold time, the user is removed from the online list of users, and the created direct link and the enabled rendering resource are released.
  • a certain number of rendering resources are opened in advance, and in the online trough period of the client, a certain number of rendering resources are closed.
  • a cloud computing-based real-time off-screen rendering apparatus including:
  • a rendering resource unit for providing a rendering resource for rendering services
  • a resource management unit configured to manage and enable the rendering resource
  • a service scheduling unit configured to create a direct link between the rendering resource and the client.
  • the resource management unit includes:
  • a rendering resource list sub-unit configured to save an address of each rendering resource in the rendering resource unit, and perform statistics on the working state of each rendering resource according to a certain frequency, and establish a rendering resource list according to the statistical result;
  • a rendering resource enabling subunit configured to query whether there is a rendering resource available in the rendering resource list, and enable an optimal rendering resource when the rendering resource is available; otherwise, return no available resource information to the client end;
  • a rendering resource address sending subunit configured to send an address of the rendering resource enabled sub-unit enabled rendering resource to the service scheduling unit, to be used by the service scheduling unit to create the direct link.
  • the service scheduling unit includes:
  • a communication link management subunit configured to allocate a communication port to the client, and after receiving the address of the rendering resource sent by the rendering resource address sending subunit, communicate the address of the rendering resource with the client Port binding to create the direct link of the rendering resource to the client.
  • the rendering resource includes:
  • a resource data downloading subunit configured to download resource data of the rendering entity according to the rendering entity described in the cloud rendering service request, and perform downloading of the resource data
  • a rendering execution subunit configured to perform real-time rendering on the resource data according to the rendering content described in the cloud rendering request
  • a frame buffer subunit configured to cache a rendering result generated by the rendering execution subunit in real time
  • a compression coding subunit configured to acquire a rendering result in the frame buffer subunit in real time, and compress and encode the rendering result
  • a rendering result sending subunit configured to send, in real time, a rendering result processed by the compression encoding subunit to the client through the direct link, and according to the communication status and location of the direct link
  • the operation of the client adjusts the transmission frequency of the rendering result in real time.
  • the device further includes:
  • a storage unit configured to pre-store the rendering entity resource data of the user
  • a database management unit configured to manage rendering entity resource data of the user, and when the rendering resource requests to download resource data, send a storage address of the resource data in the storage unit to the rendering resource, where The rendering resource downloads the resource data.
  • the device comprises a user management unit, and
  • the communication relay unit is further configured to receive a user verification request and an offline request sent by the client;
  • the database management unit is further configured to manage identity information of the user, and store user identity information pre-bound by the user;
  • the service scheduling unit is further configured to forward the user verification request and the offline request to the user management unit.
  • the user management unit includes:
  • An identity information verification subunit configured to parse user identity information included in the user authentication request, and send the user identity information to the database management unit for comparison, and verify whether the user identity information is pre-bound User identity information is consistent;
  • a heartbeat connection subunit configured to return identification information to the client according to whether the user identity information is consistent with pre-bound user identity information, and establish a heartbeat connection with the client; and return the identification information
  • a user online list management sub-unit configured to establish a user online list, and when the heartbeat connection is successfully established, add the user to the online list of the user; and when receiving the offline request sent by the client, Removing the user from the online list of users releases the created direct link and enabled rendering resources.
  • the heartbeat connection subunit is further configured to start timing from zero after receiving one of the heartbeat packets, and drop the user when the timing time is greater than the offline threshold time Sending line information to the user online list management sub-unit, causing the user online list management sub-unit to remove the user from the online list of users, releasing the created direct link and enabled Render resources.
  • the device further includes:
  • the intelligent management unit is configured to open a certain amount of rendering resources in advance during the online peak period of the user, and close a certain amount of rendering resources during the online trough period of the user.
  • a cloud computing-based real-time off-screen rendering system including a client, a public network, and a plurality of user resource pools, wherein the user resource pools are respectively bound with a unique public network.
  • IP the client accesses the user resource pool by linking to the public network IP;
  • the user resource pool includes a router, a rendering resource server, a resource management server, and a service scheduling server;
  • the router is configured to receive, by the client, a cloud rendering service request, and forward the cloud rendering service request to the service scheduling server;
  • the service scheduling server is configured to create a direct link between the rendering resource and the client, and forward the cloud rendering service request to the rendering resource server and the resource management server;
  • the rendering resource server is configured to provide a rendering resource for rendering services
  • the resource management server is configured to manage and enable the rendering resource.
  • the resource management server saves an address of each rendering resource in the rendering resource server, and performs statistics on the working state of each rendering resource according to a certain frequency, and establishes a rendering resource list according to the statistical result;
  • the resource management server enables a rendering resource and sends an address of the rendering resource to the service scheduling server for use by the service scheduling server to create the direct link.
  • the service scheduling server receives an address sent by the resource management server, and allocates to the client a communication port, and binds the address of the rendering resource to the communication port of the client. And creating the rendering resource and the direct link of the client.
  • the rendering resource downloads resource data of the rendering entity according to a rendering entity described in the cloud rendering service request; and downloads according to the rendering content described in the cloud rendering request.
  • the resource data is rendered in real time, and the rendering result generated in real time in the frame buffer;
  • the rendering resource performs compression encoding on the rendering result in the frame buffer, and sends the compression-encoded rendering result to the client through the direct link, and according to the communication status of the direct link And the operation of the client, adjusting the sending frequency of the rendering result in real time.
  • the system includes a database server and a storage server; the user resource pool shares the database server and the storage server;
  • the storage server is configured to pre-store the rendering entity resource data of the user
  • the database management server is configured to manage the rendering entity resource data of the user, and send the storage address of the resource data in the storage server to the rendering resource when the rendering resource requests to download the resource data, The resource data is downloaded for the rendering resource.
  • the system includes: a user management server, and,
  • the router is further configured to receive a user verification request sent by the client;
  • the database management server is further configured to manage identity information of the user, and store user identity information pre-bound by the user;
  • the service scheduling server is further configured to forward the user verification request to the user management server.
  • the user management server receives a user authentication request forwarded by the service scheduling server, and parses user identity information included in the user verification request, and sends the user identity information to the database.
  • the management unit performs an comparison to verify whether the user identity information is consistent with the pre-bound user identity information;
  • the user management server returns the identification information to the client according to whether the user identity information is consistent with the pre-bound user identity information, so that the client establishes a heartbeat connection with the user management server;
  • the user management server After returning the identification information to the client, the user management server receives the heartbeat packet sent by the client, determines that the heartbeat connection is successfully established, and adds the user to the online list of users; If the user management server does not receive the heartbeat connection, it is determined that the heartbeat connection fails, and the user is offline;
  • the user management server receives the offline request sent by the client, disconnects the heartbeat connection, removes the user from the online list of the user, and releases the The direct link is created and the enabled rendering resources are deactivated.
  • the user management server after receiving the heartbeat packet, starts timing from zero;
  • the user management server removes the user from the online list of users, and releases the created direct link and disables the enabled rendering Dye resources.
  • the system comprises:
  • the intelligent management server is configured to open a certain number of rendering resources in advance during a user online peak period, and close a certain number of rendering resources during a user online trough period.
  • the invention After accepting the cloud rendering service request sent by the client, the invention enables the rendering resource and creates a direct link of the client terminal and the rendering resource, so that the rendering resource directly processes the cloud rendering service request, and the rendering resource is real-time rendered and generated in real time.
  • the rendering result is directly sent to the client, so that the client terminal receives the rendering result in real time and displays the image according to the rendering result, which can not only support multiple online client devices, but also can carry a large number of rendering service requests of the client device, and all online
  • the rendering tasks are independent of each other, reducing the communication load of the cloud and reducing the latency of the cloud rendering service.
  • the present invention dynamically adjusts the transmission frequency of the rendering result in real time and compresses the rendering result to different degrees, and further reduces the delay of the rendering service.
  • Real-time interoperability between users and large 3D scenes is achieved, and the client terminal device provides users with a good user experience of highly dynamic 3D real-time scene services.
  • the present invention is also capable of recording the time rule of the user requesting the cloud rendering service, and according to the time rule, reasonably controlling the standby quantity of the rendering resource, reducing energy consumption, saving energy and environmental protection while ensuring sufficient user resources.
  • FIG. 1 is a schematic diagram showing the basic flow of a cloud rendering service of the method of the present invention
  • FIG. 2 is a schematic flowchart of a method for enabling rendering resources according to the method of the present invention
  • FIG. 3 is a schematic flowchart of real-time rendering of a rendering resource of the method of the present invention.
  • FIG. 4 is a schematic diagram of a basic flow of verifying user identity information by the method of the present invention.
  • FIG. 5 is a schematic flow chart of managing a heartbeat connection by the method of the present invention.
  • FIG. 6 is a schematic flow chart of determining a user login status of the method of the present invention.
  • Figure 7 is a schematic structural view of a first embodiment of the apparatus of the present invention.
  • Figure 8 is a schematic structural view of a second embodiment of the apparatus of the present invention.
  • Figure 9 is a schematic structural view of a third embodiment of the apparatus of the present invention.
  • Figure 10 is a schematic structural view of a fourth embodiment of the apparatus of the present invention.
  • Figure 11 is a schematic view showing the structure of a fifth embodiment of the apparatus of the present invention.
  • Figure 12 is a schematic structural view of a sixth embodiment of the apparatus of the present invention.
  • Figure 13 is a schematic structural view of a first embodiment of the system of the present invention.
  • Figure 14 is a schematic structural view of a second embodiment of the system of the present invention.
  • Figure 15 is a schematic view showing the structure of a third embodiment of the system of the present invention.
  • FIG. 1 A basic flow diagram of the cloud rendering service of the method of the present invention shown in FIG. 1; on a client with an application having a 3D scene, the user performs certain operations on the application of the 3D scene, such as rotating, moving, and scaling the rendering entity. Operation, etc., when these related operations are recognized by the 3D scene application, a cloud rendering service request including related rendering content and rendering entity information is generated. Therefore, after the user completes the related operations on the client, the client sends a relevant cloud rendering service request to request the cloud rendering service.
  • the real-time off-screen rendering method based on cloud computing of the invention comprises:
  • the rendering resource is rendered in real time according to the cloud rendering service request, and the real-time generated rendering result is sent to the client through the direct link.
  • the client After the rendering result is received in real time, the client displays the picture in real time according to the rendering result.
  • the present invention makes all online rendering tasks independent of each other, reduces the communication load of the cloud, and reduces the delay of the cloud rendering service.
  • FIG. 2 A schematic diagram of a process for enabling a rendering resource according to the method of the present invention shown in FIG. 2; after receiving a cloud rendering service request sent by a client, first accessing a rendering resource list to query whether a rendering resource is available.
  • the optimal rendering resource is enabled, that is, the running load is determined to be low.
  • the physical machine, and the use of relatively low-frequency rendering resources on the physical machine which is beneficial to balance the use of rendering resources, rationally plan the enabling of rendering resources, and avoid the idleness of rendering resources.
  • the address of the rendering resource is also obtained, and a communication port is allocated to the client, and the address of the rendering resource is bound to the communication port of the client to create a direct link between the rendering resource and the client.
  • the cloud rendering service request is suspended, and the rendering service is provided when there are available resources.
  • the schematic diagram of the real-time rendering of the resource rendering is performed in conjunction with the method of the present invention shown in FIG. 3; after the direct link is successfully created, the rendering resource first downloads the resource data of the rendering entity according to the rendering entity described in the cloud rendering service request.
  • the rendering resource After the resource data of the rendering entity is downloaded, according to the rendering content described in the cloud rendering request, the rendering resource renders the resource data of the rendering entity in real time, and generates the rendering result in real time in the frame buffer of the rendering resource.
  • the rendering result in the frame buffer is obtained in real time, and is compressed and encoded, and then sent to the client through the direct link.
  • the rendering resource is a resource with GPU hardware, and the rendering of the data is mainly performed by the GPU.
  • the process of data rendering can be either a traditional rendering pipeline process or a programmable rendering pipeline process, and the final rendering results are placed in the frame buffer.
  • the transmission frequency of the rendering result is adjusted in real time according to the communication status on the direct link and the operation of the client.
  • the transmission frequency of the rendering result is reduced, so as to avoid data congestion and communication overload when the client receives, affecting the user experience, and when the user performs related operations on the client, according to The related operation adjusts the sending frequency in real time, and after the client completes the related operation, sends the rendering result to the client at the adjusted sending frequency, so that the user obviously feels the rendering effect.
  • the present invention reduces the delay of the rendering service, realizes real-time interoperability between the user and the large 3D scene, and provides the user with a good user experience of the highly dynamic 3D real-time scene service in the client terminal device.
  • FIG. 4 A basic flow diagram for verifying user identity information in conjunction with the method of the present invention shown in FIG. 4; before receiving a cloud rendering service request sent by a client, the receiving client sends a user authentication request.
  • the identity information of the household is consistent.
  • the identification information is returned to the client, and a heartbeat connection with the client is established. Otherwise, the identification information is not returned to the client.
  • FIG. 5 A schematic diagram of a process for managing a heartbeat connection according to the method of the present invention shown in FIG. 5; after receiving the identification information to the client, if the heartbeat packet sent by the client is received, it is determined that the heartbeat connection is successfully established, and the user is added to the online list of the user; If the heartbeat packet sent by the client is not received, it is determined that the heartbeat connection establishment fails, and the user is offline;
  • the heartbeat connection is successfully established, if the offline request sent by the client is received, the heartbeat connection is disconnected, the user is removed from the online list of the user, and the created direct link and the enabled rendering resource are released. .
  • FIG. 6 A schematic diagram of a process for determining a user login status in conjunction with the method of the present invention shown in FIG. 6; after establishing a heartbeat connection with a client, receiving a heartbeat packet sent by the client at a certain frequency to monitor the login status of the user, and each time a heartbeat packet is received , immediately start timing from zero.
  • timing is greater than or equal to the drop threshold time, the user is considered to be offline, the user is removed from the user online list, and the created direct link and the enabled rendering resource are released.
  • the real-time off-screen rendering method based on cloud computing according to the invention also opens a certain number of rendering resources in advance according to the rule that the client joins the online list of the user, and turns off a certain number of renderings in the online trough period of the client. Resources.
  • the present invention also provides a real-time off-screen rendering device based on cloud computing.
  • a schematic diagram of a first embodiment of the apparatus of the present invention shown in FIG. 7; the real-time off-screen rendering apparatus based on cloud computing of the present invention comprises: a communication relay unit, a rendering resource unit, a resource management unit, and a service scheduling unit.
  • the communication relay unit is configured to receive a cloud rendering service request sent by the client, and receive the received The cloud rendering service request is forwarded to the business scheduling unit.
  • the service scheduling unit forwards the cloud rendering service request to the resource management unit, the resource management unit manages and enables the rendering resource, the rendering resource is provided by the rendering resource unit, and the service scheduling unit creates a direct link between the rendering resource and the client, and renders by rendering the resource. service.
  • FIG. 8 A schematic structural diagram of a second embodiment of the apparatus of the present invention shown in FIG. 8; wherein the resource management unit comprises: a rendering resource list subunit, a rendering resource enabling subunit, and a rendering resource address transmitting subunit.
  • the rendering resource list sub-unit saves the address of each rendering resource in the rendering resource unit, and statistics the working state of each rendering resource according to a certain frequency, and establishes a rendering resource list according to the statistical result.
  • the rendering resource enable subunit is used to query whether there are available rendering resources in the rendering resource list, and enable the optimal rendering resource when there are available rendering resources, otherwise, no available resource information is returned to the client.
  • the rendering resource address sending subunit is configured to send the address of the rendering resource enabled by the rendering resource enabling subunit to the service scheduling unit for use by the service scheduling unit to create the direct link.
  • the service scheduling unit includes a communication link management sub-unit.
  • the communication link management sub-unit allocates a communication port to the client, and after receiving the address of the rendering resource sent by the rendering resource address sending sub-unit Bind the address of the rendering resource to the communication port of the client to create a direct link between the rendering resource and the client.
  • FIG. 9 is a schematic structural diagram of a third embodiment of the apparatus of the present invention.
  • the cloud-based real-time off-screen rendering apparatus of the present invention further includes a storage unit and a database management unit.
  • the storage unit is configured to pre-store the rendering entity resource data of the user
  • the database management unit is configured to manage the rendering entity resource data of the user, and send the resource data in the storage unit when the rendering resource requests to download the resource data.
  • the rendering resource includes a resource data downloading subunit, a rendering execution subunit, a frame buffer subunit, a compression encoding subunit, and a rendering result sending subunit.
  • the resource data downloading subunit is configured to request to download resource data of the rendering entity according to the rendering entity described in the cloud rendering service request, and perform downloading of the resource data.
  • the frame buffer sub-unit is used to cache the rendering result generated by the rendering execution sub-unit in real time.
  • the compression coding sub-unit is configured to acquire the rendering result in the frame buffer sub-unit in real time, and compress and encode the rendering result.
  • the rendering result sending subunit is configured to send the rendering result processed by the compression encoding subunit in real time to the client through the direct link, and adjust the rendering result in real time according to the communication status of the direct link and the operation of the client. Send frequency.
  • FIG. 10 is a schematic structural diagram of a fourth embodiment of the apparatus of the present invention.
  • the cloud-based real-time off-screen rendering apparatus of the present invention further includes a user management unit, and the communication relay unit is further configured to receive user authentication sent by the client.
  • the request and the offline request ;
  • the database management unit is further configured to manage the identity information of the user, and store the user identity information pre-bound by the user;
  • the service scheduling unit is further configured to forward the user verification request and the offline request to the user management unit.
  • FIG. 11 A schematic structural diagram of a fifth embodiment of the apparatus of the present invention shown in FIG. 11; the user management unit includes:
  • the identity information verification sub-unit is configured to parse the user identity information included in the user verification request, and send the user identity information to the database management unit for comparison, and verify whether the user identity information is consistent with the pre-bound user identity information.
  • the heartbeat connection sub-unit according to whether the user identity information is consistent with the pre-bound user identity information, returns the identification information to the client, and establishes a heartbeat connection with the client; and after returning the identification information to the client, the receiving client sends the If the heartbeat packet is received, the heartbeat connection is successfully determined. If the heartbeat packet is not received, the heartbeat connection is determined to be failed, and the user is offline; and after the heartbeat connection is successfully established, when the offline request sent by the client is received, Disconnect the heartbeat connection.
  • the user online list management sub-unit is configured to establish a user online list, and when the heartbeat connection is successfully established, add the user to the online list of the user; and when receiving the offline request sent by the client, move the user from the online list of the user In addition, releases the created direct link and enabled render resources.
  • the heartbeat connection subunit is further configured to start timing from zero after receiving a heartbeat packet, and send the user drop information to the user online list management subunit when the timing time is greater than the drop threshold time. To remove the user from the user's online list, freeing the created direct link and enabled rendering resources.
  • FIG. 12 A schematic diagram of a structure of a sixth embodiment of the apparatus of the present invention shown in FIG. 12; the real-time off-screen rendering apparatus based on cloud computing of the present invention further includes an intelligent management unit.
  • the intelligent management unit is configured to open a certain number of rendering resources in advance according to the rule that the user joins the online list of the user, and close a certain number of rendering resources during the online trough period of the user.
  • the present invention further provides a real-time off-screen rendering system based on cloud computing, combined with the structural schematic diagram of the first embodiment of the system of the present invention shown in FIG. 13; the real-time off-screen rendering system based on cloud computing of the present invention
  • the client, the public network, and the user resource pool are bound to each other.
  • the user resource pool is bound to a public IP address.
  • the client accesses the user resource pool by linking to the public network IP address.
  • the user resource pool includes a router, a rendering resource server, a resource management server, and a service scheduling server.
  • the router is configured to receive a request for sending a cloud rendering service by the client, and forward the cloud rendering service request to the service scheduling server.
  • a service scheduling server is configured to create a direct link between the rendering resource and the client, and forward the cloud rendering service request to the rendering resource server and the resource management server.
  • a rendering resource server that provides rendering resources for rendering services.
  • a resource management server for managing and enabling rendering resources.
  • the resource management server saves the address of each rendering resource in the rendering resource server, and statistics the working state of each rendering resource according to a certain frequency, and establishes a rendering resource list according to the statistical result.
  • the resource management server receives the cloud rendering service request forwarded by the service scheduling server, and queries whether the rendering resource is available in the rendering resource list. If yes, the optimal rendering resource is enabled, otherwise the available resource information is returned to the client.
  • the resource management server enables the rendering resource and sends the address of the rendering resource to the service scheduling server for use by the service scheduling server to create a direct link.
  • the service scheduling server receives the address sent by the resource management server, and allocates a communication port to the client, and binds the address of the rendering resource to the communication port of the client to create a direct link between the rendering resource and the client.
  • FIG. 14 A schematic diagram of the structure of the second embodiment of the system of the present invention shown in FIG. 14; the real-time off-screen rendering system based on cloud computing of the present invention further includes a database server and a storage server.
  • the user resource pool shares the database server and the storage server, and the storage server is configured to pre-store the rendering entity resource data of the user.
  • a database management server configured to manage the rendering entity resource data of the user, and send the storage address of the resource data in the storage server to the rendering resource when the rendering resource requests to download the resource data, For rendering resources to download resource data.
  • the real-time off-screen rendering system based on cloud computing of the present invention comprises: a user management server and an intelligent management server.
  • the router is configured to receive a user authentication request sent by the client.
  • a database management server for managing user identity information and storing user identity information pre-bound by the user.
  • a service scheduling server for forwarding user authentication requests to the user management server.
  • the user management server receives the user authentication request forwarded by the service scheduling server, and parses the user identity information included in the user authentication request, sends the user identity information to the database management unit for comparison, and verifies whether the user identity information is associated with the pre-bound user identity. The information is consistent;
  • the user management server returns the identification information to the client according to whether the user identity information is consistent with the pre-bound user identity information, so that the client establishes a heartbeat connection with the user management server;
  • the user management server After returning the identification information to the client, the user management server receives the heartbeat packet sent by the client, determines that the heartbeat connection is successfully established, and adds the user to the online list of the user; if the user management server does not receive the heartbeat connection, the heartbeat is determined. The connection failed and the user is offline;
  • the user management server receives the offline request sent by the client, disconnects the heartbeat connection, removes the user from the online list of the user, and releases the created direct link and disables the enabled one. Render resources.
  • the client sends the heartbeat packet to the user management server according to a certain frequency.
  • the user management server starts timing from zero.
  • the User Management Server removes the user from the user's online list and releases the created direct link and deactivates the enabled rendering resources.
  • the intelligent management server is configured to open a certain number of rendering resources in advance according to the rule that the user joins the online list of the user, and close a certain amount of rendering resources in the online trough period of the user.
  • the user uses the client to send a user authentication request to the user resource pool corresponding to the user through the TCP/IP protocol.
  • the router forwards the user authentication request to the service scheduling server, and then the service scheduling server forwards it to the user management server.
  • the user management server parses the user identity information in the user authentication request, and compares the user identity information with the user information pre-bound in the database management server, and verifies whether the user identity information is pre-bound User identity information is consistent.
  • the user management server returns unique identification information to the client through the service scheduling server and router.
  • the client establishes a heartbeat connection with the user management server according to the identification information, and the user management server receives the heartbeat packet sent by the client, indicating that the heartbeat connection is successfully established, and the user is added to the user online list.
  • the client can send the corresponding cloud rendering service request to the user resource pool through a real-time operation.
  • the router After receiving the cloud rendering service request, the router immediately forwards the user authentication request to the service scheduling server. It is then forwarded by the service scheduling server to the resource management server.
  • the resource management server After receiving the cloud rendering service request, the resource management server queries whether there is a rendering resource available in the resource list, and selects a rendering resource with a relatively low activation and use frequency on a physical machine with a lower running load to enable, in response to the cloud. Render a service request.
  • the resource management server will forward the address of the enabled rendering resource.
  • the service scheduling server allocates a communication port to the client, and binds the address of the rendering resource to the communication port, thereby establishing a direct link between the rendering resource and the client.
  • the rendering resource requests the database management server to download the resource data of the rendering entity teapot according to the rendering entity teapot described in the cloud rendering service request, and the database management server renders the resource data of the entity teapot in the storage server.
  • the storage address is sent to the rendering resource, and the rendering resource downloads the resource data of the rendering entity teapot according to the storage address of the resource data of the rendering entity teapot in the storage server.
  • the rendering content requested by the cloud rendering service such as the rotation, movement and scaling of the rendering entity teapot
  • the rendering entity teapot is rendered in real time and in the frame buffer of the rendering resource.
  • Produce rendering results The rendering result in the frame buffer is extracted in real time, and the rendering result is compression-encoded, and after being compression-encoded, it is directly sent to the client through the direct link.
  • the user management server if the time counted by the user management server after receiving one heartbeat packet is greater than or equal to the drop threshold time, the user is removed from the online list of the user, and the release is created. Direct link and enabled rendering resources. If the client sends an offline request, the user management server disconnects the heartbeat and removes the user from the online list of users, releasing the created direct link and the enabled rendering resources.
  • the rendering resource In the step of transmitting the compression-encoded rendering result to the client, the rendering resource also adjusts the transmission frequency of the rendering result in real time according to the communication status on the direct link and the operation of the client.
  • the real-time operation of the client is correspondingly described in the rendered content of the cloud rendering service request.
  • the invention can not only support multiple online client devices, but also can carry a large number of rendering service requests of the client device, and all the online rendering tasks are independent of each other, reducing the cloud's Communication load reduces the latency of cloud rendering services.
  • the present invention dynamically adjusts the transmission frequency of the rendering result in real time and compresses the rendering result to different degrees, further reducing the delay of the rendering service.
  • Real-time interoperability between users and large 3D scenes can be realized, and the user terminal equipment provides users with a good user experience of highly dynamic 3D real-time scene services.
  • One aspect of the invention relates to a non-transitory computer readable medium comprising instruction set encoding adapted for use in the above method, which is operated and/or controlled by a dedicated and integrated software package.
  • the present invention also includes algorithms, computer programs, computer readable media and/or software, implantable and/or executable files on a general purpose computer or workstation equipped with a conventional processor, and for performing one or more Method and/or one or more of the hardware disclosed herein.
  • a computer program or computer readable medium typically includes a set of instructions configured to perform the above when executed by a suitable processing device (eg, a signal processing device such as a microcontroller, microprocessor or DSP device) Method, run, and/or algorithm.
  • a suitable processing device eg, a signal processing device such as a microcontroller, microprocessor or DSP device
  • the computer readable medium can include any medium that can be read by a signal processing device to execute code stored thereon, such as a floppy disk, optical disk, magnetic tape, or hard disk drive.
  • code can contain object code, source code, and/or binary code.
  • the code is generally numeric and is typically processed by a central processing unit.

Abstract

Disclosed are a cloud computing based real-time off-screen rendering method, apparatus and system. The method comprises: after receiving a cloud rendering service request sent by a client, enabling a rendering resource and creating a direct connection link between a client terminal and the rendering resource, so that the rendering resource directly processes the cloud rendering service request; and the rendering resource performing real-time rendering and directly sending a rendering result generated in real time to the client, so as to enable the client to receive the rendering result in real time and display a picture according to the rendering result. Numerous client devices that are online at the same time can be supported, massive rendering service requests of the client devices can be born, and all online rendering tasks are independent mutually, so that the communication load of a cloud end is reduced and the time delay of a cloud rendering service is reduced.

Description

基于云计算的实时离屏渲染方法、装置及系统Cloud-based real-time off-screen rendering method, device and system 技术领域Technical field
本发明涉及云渲染领域,特别涉及一种基于云计算的实时离屏渲染方法、装置及系统。The present invention relates to the field of cloud rendering, and in particular, to a cloud computing-based real-time off-screen rendering method, apparatus and system.
背景技术Background technique
随着客户终端操作系统的发展,现在手机和平板电脑已达到较为全面的智能化,基于IOS、安卓和Windows操作系统的手机和平板电脑在人们的生活中越来越普及,这些智能手机和平板电脑强大的功能也给人们带来了众多方便。但受限于智能手机和平板电脑的体积、功耗以及其轻便的要求,智能手机和平板的处理器(如计算和渲染处理器)能力都不够强大,人们无法在手机或平板电脑等移动便携终端设备上进行大型的3D高动态场景的渲染显示。With the development of the customer terminal operating system, mobile phones and tablets have now become more comprehensive and intelligent. Mobile phones and tablets based on IOS, Android and Windows operating systems are becoming more and more popular in people's lives. These smartphones and tablets Powerful features also bring a lot of convenience to people. But limited by the size and power consumption of smartphones and tablets, and the lightness of their smartphones, smartphones and tablets (such as computing and rendering processors) are not powerful enough to be mobile and portable on mobile phones or tablets. Rendering of large 3D high dynamic scenes on the terminal device.
同时伴随云计算的蓬勃发展以及人们对IT运维低成本的要求,出现了各种云计算相关的服务,如Iaas(基础架构即服务)、Paas(平台即服务)、Saas(软件即服务),其通用的原理都是利用云计算的强大的虚拟化技术,将计算、存储和网络资源进行池化管理,达到资源的任意切分,实现计算、存储和网络资源的高可用,也整体提高了资源的利用率。而在传统的IT行业,3D大型高动态场景渲染业务一直是众多行业的需求,云计算服务的普及与大型3D场景渲染的需求也自然而然地诞生了云渲染的服务。At the same time, with the rapid development of cloud computing and the low cost requirements of IT operation and maintenance, various cloud computing related services such as Iaas (infrastructure as a service), Paas (platform as a service), and Saas (software as a service) have emerged. The general principle is to use cloud computing's powerful virtualization technology to pool computing, storage and network resources, to achieve arbitrary segmentation of resources, to achieve high availability of computing, storage and network resources, and overall improvement The utilization of resources. In the traditional IT industry, 3D large-scale high-dynamic scene rendering services have been the demand of many industries. The popularity of cloud computing services and the demand for large-scale 3D scene rendering have naturally created cloud rendering services.
现有的云渲染的大致分为两大类:一是在线渲染,二是离线渲染。这两类都是采用了云端渲染的方式,现有技术的实现方式只能提供延时性的渲染结 果,主要适用于电影特效和动画制作渲染方面,不能满足移动设备端对3D大型高动态场景渲染画面的实时互操作要求,显示的3D特效画质较差,无法在客户终端给用户提供高动态3D实时场景服务的良好用户体验。The existing cloud rendering is roughly divided into two categories: one is online rendering, and the other is offline rendering. Both of these types use the way of cloud rendering, and the implementation of the prior art can only provide a delay rendering knot. If it is mainly used for movie special effects and animation rendering, it can not meet the real-time interoperability requirements of 3D large-scale high-dynamic scene rendering pictures on the mobile device side. The displayed 3D special effects are poor in quality and cannot provide users with high dynamics in the client terminal. A good user experience for 3D real-time scene services.
中国发明专利(申请公布号:CN103313120A)公开了一种显示画面的方法,该方法包括如下步骤:获取渲染实体的画面信息;将所述画面信息发送给云端,通过云端根据所述画面信息对所述渲染实体进行渲染以获得渲染结果;获取云端返回的渲染结果,根据所述渲染结果显示画面。A Chinese invention patent (Application Publication No.: CN103313120A) discloses a method for displaying a picture, the method comprising the steps of: acquiring picture information of a rendering entity; transmitting the picture information to a cloud, and using the cloud according to the picture information The rendering entity is rendered to obtain a rendering result; the rendering result returned by the cloud is obtained, and the screen is displayed according to the rendering result.
该发明通过在云端进行渲染操作,降低了对于便携客户终端自身处理能力的需求,能够适用于各种类型的终端,即使低端型的客户终端也同样适用,且借助云端较强的处理能力,能够在客户终端设备上进行3D场景的云渲染显示。The invention reduces the need for the processing capability of the portable client terminal by performing the rendering operation in the cloud, and can be applied to various types of terminals, even the low-end client terminal is equally applicable, and with the strong processing capability of the cloud, Cloud rendering display of 3D scenes can be performed on the client terminal device.
但对于大型3D场景而言,将获取渲染实体的画面信息发送至云端以及接收云端返回的渲染结果的两个过程中,由于传输的数据量增大,在相同的网络带宽的条件下,耗费的时间将增大,即延时性增加。而且,相应地支持同时在线的客户端达的数量也会减少,一旦云端的通信负载达到临界值时,超出的客户端的渲染任务将被挂起,延时性更为严重。However, for a large 3D scene, in the process of transmitting the image information of the rendering entity to the cloud and receiving the rendering result returned by the cloud, due to the increased amount of data transmitted, under the same network bandwidth, the cost is The time will increase, ie the delay will increase. Moreover, the number of clients supporting simultaneous online access will also be reduced. Once the communication load of the cloud reaches a critical value, the rendering task of the excess client will be suspended, and the delay is more serious.
发明内容Summary of the invention
本发明的目的在于克服现有技术中所存在的上述不足,提供一种基于云计算的实时离屏渲染方法,能够支持同时在线的客户端设备多,可承载海量的客户端设备的渲染服务请求,而且,所有在线的渲染任务相互独立,不仅减轻了云端的通信负载,还降低了云渲染服务的延时性。The object of the present invention is to overcome the above-mentioned deficiencies in the prior art, and provide a real-time off-screen rendering method based on cloud computing, which can support a plurality of simultaneous client devices and can carry a rendering service request of a large number of client devices. Moreover, all online rendering tasks are independent of each other, which not only reduces the communication load of the cloud, but also reduces the latency of the cloud rendering service.
根据本发明的一个方面,提供一种基于云计算的实时离屏渲染方法,其包括:According to an aspect of the present invention, a cloud computing-based real-time off-screen rendering method is provided, including:
接收客户端发送的云渲染服务请求后,启用渲染资源并创建所述渲染资源 与所述客户端的直连链路;After receiving the cloud rendering service request sent by the client, enabling the rendering resource and creating the rendering resource a direct link with the client;
所述直连链路创建成功后,根据所述云渲染服务请求,所述渲染资源进行实时渲染,并且将实时产生的渲染结果通过所述直连链路发送至所述客户端;After the direct link is successfully created, the rendering resource is rendered in real time according to the cloud rendering service request, and the rendering result generated in real time is sent to the client through the direct link;
实时接收的所述渲染结果后,根据所述渲染结果,所述客户端实时显示画面。After receiving the rendering result in real time, the client displays the screen in real time according to the rendering result.
根据一种具体的实施方式,接收客户端发送的云渲染服务请求后,首先访问渲染资源列表,查询是否有可用的渲染资源;According to a specific implementation manner, after receiving the cloud rendering service request sent by the client, first accessing the rendering resource list to query whether the rendering resource is available;
若有,则启用其中最优的渲染资源;否则返回无可用渲染资源信息至所述客户端。If so, the optimal rendering resource is enabled; otherwise, no rendering resource information is available to the client.
根据一种具体的实施方式,启用所述渲染资源时,获取所述渲染资源的地址,并分配给所述客户端一个通信端口,将所述渲染资源的地址与所述客户端的通信端口绑定,以创建所述渲染资源与所述客户端的所述直连链路。According to a specific implementation manner, when the rendering resource is enabled, an address of the rendering resource is obtained, and a communication port is allocated to the client, and an address of the rendering resource is bound to a communication port of the client. And creating the rendering resource and the direct link of the client.
根据一种具体的实施方式,所述直连链路创建成功后,根据所述云渲染服务请求中描述的渲染实体,所述渲染资源首先下载所述渲染实体的资源数据;According to a specific implementation manner, after the direct link is successfully created, according to the rendering entity described in the cloud rendering service request, the rendering resource first downloads resource data of the rendering entity;
当所述渲染实体的资源数据下载完成后,根据所述云渲染请求中描述的渲染内容,所述渲染资源对所述渲染实体的资源数据进行实时渲染,并在所述渲染资源的帧缓存中实时产生渲染结果;After the resource data of the rendering entity is downloaded, the rendering resource renders the resource data of the rendering entity in real time according to the rendering content described in the cloud rendering request, and is in a frame buffer of the rendering resource. Generate rendering results in real time;
实时获取所述帧缓存中的所述渲染结果,并对其进行压缩编码后,通过所述直连链路发送至所述客户端。The rendering result in the frame buffer is obtained in real time, and is compression-encoded, and then sent to the client through the direct link.
根据一种具体的实施方式,根据所述直连链路上的通信状况以及所述客户端的操作,实时调整所述渲染结果的发送频率。According to a specific implementation manner, the transmission frequency of the rendering result is adjusted in real time according to the communication status on the direct link and the operation of the client.
根据一种具体的实施方式,接收所述客户端发送的所述云渲染服务请求前,先接收所述客户端发送用户验证请求; According to a specific implementation manner, before receiving the cloud rendering service request sent by the client, the client is first sent to send a user verification request;
解析所述用户验证请求中包含的用户身份信息,并验证用户身份信息是否与预先绑定的用户身份信息一致;Parsing user identity information included in the user authentication request, and verifying that the user identity information is consistent with the pre-bound user identity information;
若一致,则返回识别信息至所述客户端,并建立与所述客户端的心跳连接,否则,不返回识别信息至所述客户端。If they are consistent, the identification information is returned to the client, and a heartbeat connection with the client is established. Otherwise, the identification information is not returned to the client.
根据一种具体的实施方式,返回所述识别信息至所述客户端后,若接收到所述客户端发送的心跳包,则判定所述心跳连接建立成功,将用户加入至用户在线列表中;若未接收到所述客户端发送的心跳包,则判定所述心跳连接建立失败,用户离线;According to a specific implementation manner, after returning the identification information to the client, if the heartbeat packet sent by the client is received, determining that the heartbeat connection is successfully established, and adding the user to the online list of the user; If the heartbeat packet sent by the client is not received, it is determined that the heartbeat connection establishment fails, and the user is offline;
并且,在所述心跳连接建立成功后,若接收到所述客户端发送的离线请求,则断开所述心跳连接,将用户从所述用户在线列表中移除,并释放已创建的所述直连链路和已启用的渲染资源。And after the heartbeat connection is successfully established, if the offline request sent by the client is received, the heartbeat connection is disconnected, the user is removed from the online list of the user, and the created Direct link and enabled rendering resources.
根据一种具体的实施方式,建立与所述客户端的心跳连接后,接收所述客户端按一定频率发送的心跳包,以监测用户的登录状态,并且每接收一个所述心跳包后,立即从零开始计时;According to a specific implementation manner, after establishing a heartbeat connection with the client, receiving a heartbeat packet sent by the client according to a certain frequency to monitor a login status of the user, and each time after receiving one of the heartbeat packets, immediately Start timing at zero;
若计时时间大于或等于所述掉线阈值时间,将用户从所述用户在线列表中移除,释放已创建的所述直连链路和已启用的渲染资源。If the timing time is greater than or equal to the drop threshold time, the user is removed from the online list of users, and the created direct link and the enabled rendering resource are released.
根据一种具体的实施方式,根据在所述客户端在线高峰期,提前开启一定数量的渲染资源,而在所述客户端在线低谷期,关闭一定数量的渲染资源。According to a specific implementation manner, according to the online peak period of the client, a certain number of rendering resources are opened in advance, and in the online trough period of the client, a certain number of rendering resources are closed.
根据本发明的一个方面,还提供一种基于云计算的实时离屏渲染装置,其包括:According to an aspect of the present invention, a cloud computing-based real-time off-screen rendering apparatus is further provided, including:
通信中转单元,用于接收客户端发送的云渲染服务请求;a communication relay unit, configured to receive a cloud rendering service request sent by the client;
渲染资源单元,用于提供渲染资源进行渲染服务;a rendering resource unit for providing a rendering resource for rendering services;
资源管理单元,用于管理和启用所述渲染资源; a resource management unit, configured to manage and enable the rendering resource;
业务调度单元,用于创建所述渲染资源与所述客户端的直连链路。a service scheduling unit, configured to create a direct link between the rendering resource and the client.
根据一种具体的实施方式,所述资源管理单元包括:According to a specific implementation manner, the resource management unit includes:
渲染资源列表子单元,用于保存所述渲染资源单元中各个渲染资源的地址,并按一定频率对各个渲染资源的工作状态进行统计,而且根据统计结果,建立渲染资源列表;a rendering resource list sub-unit, configured to save an address of each rendering resource in the rendering resource unit, and perform statistics on the working state of each rendering resource according to a certain frequency, and establish a rendering resource list according to the statistical result;
渲染资源启用子单元,用于查询所述渲染资源列表中是否有可用的渲染资源,并在有可用的渲染资源时,启用其中最优的渲染资源,否则,返回无可用资源信息至所述客户端;a rendering resource enabling subunit, configured to query whether there is a rendering resource available in the rendering resource list, and enable an optimal rendering resource when the rendering resource is available; otherwise, return no available resource information to the client end;
渲染资源地址发送子单元,用于将所述渲染资源启用子单元启用的渲染资源的地址发送至所述业务调度单元,以供所述业务调度单元创建所述直连链路时使用。And a rendering resource address sending subunit, configured to send an address of the rendering resource enabled sub-unit enabled rendering resource to the service scheduling unit, to be used by the service scheduling unit to create the direct link.
根据一种具体的实施方式,所述业务调度单元包括:According to a specific implementation manner, the service scheduling unit includes:
通信链路管理子单元,用于给所述客户端分配通信端口,并在接收所述渲染资源地址发送子单元发送的渲染资源的地址后,将所述渲染资源的地址与所述客户端的通信端口绑定,以创建所述渲染资源与所述客户端的所述直连链路。a communication link management subunit, configured to allocate a communication port to the client, and after receiving the address of the rendering resource sent by the rendering resource address sending subunit, communicate the address of the rendering resource with the client Port binding to create the direct link of the rendering resource to the client.
根据一种具体的实施方式,所述渲染资源包括:According to a specific implementation manner, the rendering resource includes:
资源数据下载子单元,用于根据所述云渲染服务请求中描述的渲染实体,请求下载所述渲染实体的资源数据,并执行所述资源数据的下载;a resource data downloading subunit, configured to download resource data of the rendering entity according to the rendering entity described in the cloud rendering service request, and perform downloading of the resource data;
渲染执行子单元,用于根据所述云渲染请求中描述的渲染内容,对所述资源数据进行实时渲染;And a rendering execution subunit, configured to perform real-time rendering on the resource data according to the rendering content described in the cloud rendering request;
帧缓存子单元,用于缓存所述渲染执行子单元实时产生的渲染结果;a frame buffer subunit, configured to cache a rendering result generated by the rendering execution subunit in real time;
压缩编码子单元,用于实时获取所述帧缓冲子单元中的渲染结果,并对所述渲染结果压缩编码; a compression coding subunit, configured to acquire a rendering result in the frame buffer subunit in real time, and compress and encode the rendering result;
渲染结果发送子单元,用于实时将经过所述压缩编码子单元处理后的渲染结果,通过所述直连链路发送至所述客户端,并根据所述直连链路的通信状况和所述客户端的操作,实时调整所述渲染结果的发送频率。a rendering result sending subunit, configured to send, in real time, a rendering result processed by the compression encoding subunit to the client through the direct link, and according to the communication status and location of the direct link The operation of the client adjusts the transmission frequency of the rendering result in real time.
根据一种具体的实施方式,所述装置还包括:According to a specific embodiment, the device further includes:
存储单元,用于预先存储用户的渲染实体资源数据;a storage unit, configured to pre-store the rendering entity resource data of the user;
数据库管理单元,用于管理用户的渲染实体资源数据,并在所述渲染资源请求下载资源数据时,发送所述资源数据在所述存储单元中的存放地址至所述渲染资源,以供所述渲染资源下载所述资源数据。a database management unit, configured to manage rendering entity resource data of the user, and when the rendering resource requests to download resource data, send a storage address of the resource data in the storage unit to the rendering resource, where The rendering resource downloads the resource data.
根据一种具体的实施方式,所述装置包括用户管理单元,并且,According to a specific embodiment, the device comprises a user management unit, and
所述通信中转单元,还用于接收所述客户端发送的用户验证请求和离线请求;The communication relay unit is further configured to receive a user verification request and an offline request sent by the client;
所述数据库管理单元,还用于管理用户的身份信息,以及存储用户预先绑定的用户身份信息;The database management unit is further configured to manage identity information of the user, and store user identity information pre-bound by the user;
所述业务调度单元,还用于将所述用户验证请求和所述离线请求转发至所述用户管理单元。The service scheduling unit is further configured to forward the user verification request and the offline request to the user management unit.
根据一种具体的实施方式,所述用户管理单元包括:According to a specific implementation manner, the user management unit includes:
身份信息验证子单元,用于解析所述用户验证请求中包含的用户身份信息,并将所述用户身份信息发送至所述数据库管理单元进行比对,验证所述用户身份信息是否与预先绑定的用户身份信息一致;An identity information verification subunit, configured to parse user identity information included in the user authentication request, and send the user identity information to the database management unit for comparison, and verify whether the user identity information is pre-bound User identity information is consistent;
心跳连接子单元,用于根据所述用户身份信息是否与预先绑定的用户身份信息一致,返回识别信息至所述客户端,并建立与所述客户端的心跳连接;并在返回所述识别信息至所述客户端后,接收所述客户端发送的心跳包,若接收到所述心跳包,则判定所述心跳连接建立成功,若未接收到所述心跳包,则判定所述心跳连接失败,用户离线;以及在所述心跳连接建立成功后,接收到所 述客户端发送的所述离线请求时,断开所述心跳连接;a heartbeat connection subunit, configured to return identification information to the client according to whether the user identity information is consistent with pre-bound user identity information, and establish a heartbeat connection with the client; and return the identification information After receiving the heartbeat packet sent by the client, if the heartbeat packet is received, determining that the heartbeat connection is successfully established, and if the heartbeat packet is not received, determining that the heartbeat connection fails The user is offline; and after the heartbeat connection is successfully established, the user is received Deactivating the heartbeat connection when the offline request sent by the client is performed;
用户在线列表管理子单元,用于建立用户在线列表,并在所述心跳连接建立成功时,将用户加入至所述用户在线列表;并在接收到所述客户端发送的所述离线请求时,将用户从所述用户在线列表中移除,释放已创建的所述直连链路和已启用的渲染资源。a user online list management sub-unit, configured to establish a user online list, and when the heartbeat connection is successfully established, add the user to the online list of the user; and when receiving the offline request sent by the client, Removing the user from the online list of users releases the created direct link and enabled rendering resources.
根据一种具体的实施方式,所述心跳连接子单元,还用于在接收一个所述心跳包后,从零开始计时,并在所述计时时间大于所述掉线阈值时间时,将用户掉线信息发送至所述用户在线列表管理子单元,使所述用户在线列表管理子单元将所述用户从所述用户在线列表中移除,释放已创建的所述直连链路和已启用的渲染资源。According to a specific implementation, the heartbeat connection subunit is further configured to start timing from zero after receiving one of the heartbeat packets, and drop the user when the timing time is greater than the offline threshold time Sending line information to the user online list management sub-unit, causing the user online list management sub-unit to remove the user from the online list of users, releasing the created direct link and enabled Render resources.
根据一种具体的实施方式,所述装置还包括:According to a specific embodiment, the device further includes:
智能管理单元,用于在用户在线高峰期,提前开启一定数量的渲染资源,而在用户在线低谷期,关闭一定数量的渲染资源。The intelligent management unit is configured to open a certain amount of rendering resources in advance during the online peak period of the user, and close a certain amount of rendering resources during the online trough period of the user.
根据本发明的一个方面,还提供一种基于云计算的实时离屏渲染系统,其特征在于,包括客户端、公网和若干用户资源池,所述用户资源池分别绑定有唯一的公网IP,所述客户端通过链接至所述公网IP,接入所述用户资源池;According to an aspect of the present invention, a cloud computing-based real-time off-screen rendering system is further provided, including a client, a public network, and a plurality of user resource pools, wherein the user resource pools are respectively bound with a unique public network. IP, the client accesses the user resource pool by linking to the public network IP;
所述用户资源池包括路由器、渲染资源服务器、资源管理服务器和业务调度服务器;其中,The user resource pool includes a router, a rendering resource server, a resource management server, and a service scheduling server;
所述路由器,用于接收所述客户端发送云渲染服务请求,并将所述云渲染服务请求转发至所述业务调度服务器;The router is configured to receive, by the client, a cloud rendering service request, and forward the cloud rendering service request to the service scheduling server;
所述业务调度服务器,用于创建所述渲染资源与所述客户端的直连链路,并将所述云渲染服务请求转发至所述渲染资源服务器和所述资源管理服务器;The service scheduling server is configured to create a direct link between the rendering resource and the client, and forward the cloud rendering service request to the rendering resource server and the resource management server;
所述渲染资源服务器,用于提供渲染资源进行渲染服务;The rendering resource server is configured to provide a rendering resource for rendering services;
所述资源管理服务器,用于管理和启用所述渲染资源。 The resource management server is configured to manage and enable the rendering resource.
根据一种具体的实施方式,所述资源管理服务器保存所述渲染资源服务器中各个渲染资源的地址,并按一定频率对各个渲染资源的工作状态进行统计,而且根据统计结果,建立渲染资源列表;According to a specific implementation manner, the resource management server saves an address of each rendering resource in the rendering resource server, and performs statistics on the working state of each rendering resource according to a certain frequency, and establishes a rendering resource list according to the statistical result;
所述资源管理服务器接收所述业务调度服务器转发的所述云渲染服务请求,查询所述渲染资源列表中是否有可用的渲染资源,若有,则启用其中最优的渲染资源,否则返回无可用资源信息至所述客户端;Receiving, by the resource management server, the cloud rendering service request forwarded by the service scheduling server, querying whether the rendering resource is available in the rendering resource list, and if yes, enabling the optimal rendering resource, otherwise returning no available Resource information to the client;
所述资源管理服务器启用渲染资源,并且将所述渲染资源的地址发送至所述业务调度服务器,以供所述业务调度服务器创建所述直连链路时使用。The resource management server enables a rendering resource and sends an address of the rendering resource to the service scheduling server for use by the service scheduling server to create the direct link.
根据一种具体的实施方式,所述业务调度服务器接收所述资源管理服务器发送的地址,并分配给所述客户端一个通信端口,将所述渲染资源的地址与所述客户端的通信端口绑定,以创建所述渲染资源与所述客户端的所述直连链路。According to a specific implementation manner, the service scheduling server receives an address sent by the resource management server, and allocates to the client a communication port, and binds the address of the rendering resource to the communication port of the client. And creating the rendering resource and the direct link of the client.
根据一种具体的实施方式,所述渲染资源根据所述云渲染服务请求中描述的渲染实体,下载所述渲染实体的资源数据;并根据所述云渲染请求中描述的渲染内容,对下载的所述资源数据进行实时渲染,在帧缓冲中实时产生的渲染结果;According to a specific implementation manner, the rendering resource downloads resource data of the rendering entity according to a rendering entity described in the cloud rendering service request; and downloads according to the rendering content described in the cloud rendering request. The resource data is rendered in real time, and the rendering result generated in real time in the frame buffer;
所述渲染资源对所述帧缓冲中的渲染结果进行压缩编码;将压缩编码后的渲染结果,通过所述直连链路发送至所述客户端,并根据所述直连链路的通信状况和所述客户端的操作,实时调整所述渲染结果的发送频率。The rendering resource performs compression encoding on the rendering result in the frame buffer, and sends the compression-encoded rendering result to the client through the direct link, and according to the communication status of the direct link And the operation of the client, adjusting the sending frequency of the rendering result in real time.
根据一种具体的实施方式,所述系统包括数据库服务器和存储服务器;所述用户资源池共用所述数据库服务器和所述存储服务器;其中,According to a specific embodiment, the system includes a database server and a storage server; the user resource pool shares the database server and the storage server;
所述存储服务器,用于预先存储用户的渲染实体资源数据;The storage server is configured to pre-store the rendering entity resource data of the user;
所述数据库管理服务器,用于管理用户的渲染实体资源数据,并在所述渲染资源请求下载资源数据时,将所述资源数据在所述存储服务器中的存放地址发送至所述渲染资源,以供所述渲染资源下载所述资源数据。 The database management server is configured to manage the rendering entity resource data of the user, and send the storage address of the resource data in the storage server to the rendering resource when the rendering resource requests to download the resource data, The resource data is downloaded for the rendering resource.
根据一种具体的实施方式,所述系统包括:用户管理服务器,并且,According to a specific embodiment, the system includes: a user management server, and,
所述路由器,还用于接收所述客户端发送的用户验证请求;The router is further configured to receive a user verification request sent by the client;
所述数据库管理服务器,还用于管理用户的身份信息,以及存储用户预先绑定的用户身份信息;The database management server is further configured to manage identity information of the user, and store user identity information pre-bound by the user;
所述业务调度服务器,还用于将所述用户验证请求转发至所述用户管理服务器。The service scheduling server is further configured to forward the user verification request to the user management server.
根据一种具体的实施方式,所述用户管理服务器接收所述业务调度服务器转发的用户验证请求,并解析所述用户验证请求中包含的用户身份信息,将所述用户身份信息发送至所述数据库管理单元进行比对,验证所述用户身份信息是否与预先绑定的用户身份信息一致;According to a specific implementation manner, the user management server receives a user authentication request forwarded by the service scheduling server, and parses user identity information included in the user verification request, and sends the user identity information to the database. The management unit performs an comparison to verify whether the user identity information is consistent with the pre-bound user identity information;
所述用户管理服务器根据所述用户身份信息是否与预先绑定的用户身份信息一致,返回识别信息至所述客户端,使所述客户端建立与所述用户管理服务器的心跳连接;The user management server returns the identification information to the client according to whether the user identity information is consistent with the pre-bound user identity information, so that the client establishes a heartbeat connection with the user management server;
在返回所述识别信息至所述客户端后,所述用户管理服务器接收到所述客户端发送的心跳包,则判定所述心跳连接建立成功,并将用户加入至用户在线列表中;所述用户管理服务器未接收到所述心跳连接,则判定所述心跳连接失败,用户离线;After returning the identification information to the client, the user management server receives the heartbeat packet sent by the client, determines that the heartbeat connection is successfully established, and adds the user to the online list of users; If the user management server does not receive the heartbeat connection, it is determined that the heartbeat connection fails, and the user is offline;
在所述心跳连接建立成功后,所述用户管理服务器接收到所述客户端发送的所述离线请求,则断开所述心跳连接,将用户从所述用户在线列表中移除,并释放已创建的所述直连链路和停用已启用的渲染资源。After the heartbeat connection is successfully established, the user management server receives the offline request sent by the client, disconnects the heartbeat connection, removes the user from the online list of the user, and releases the The direct link is created and the enabled rendering resources are deactivated.
根据一种具体的实施方式,所述用户管理服务器接收一个所述心跳包后,从零开始计时;According to a specific implementation manner, after receiving the heartbeat packet, the user management server starts timing from zero;
若所述计时时间大于所述掉线阈值时间,所述用户管理服务器将所述用户从所述用户在线列表中移除,并释放已创建的所述直连链路和停用已启用的渲 染资源。If the timing time is greater than the drop threshold time, the user management server removes the user from the online list of users, and releases the created direct link and disables the enabled rendering Dye resources.
根据一种具体的实施方式,所述系统包括:According to a specific embodiment, the system comprises:
所述智能管理服务器,用于在用户在线高峰期,提前开启一定数量的渲染资源,而在用户在线低谷期,关闭一定数量的渲染资源。The intelligent management server is configured to open a certain number of rendering resources in advance during a user online peak period, and close a certain number of rendering resources during a user online trough period.
与现有技术相比,本发明的有益效果:Compared with the prior art, the beneficial effects of the present invention:
本发明在接受客户端发送的云渲染服务请求后,启用渲染资源并创建客户终端和渲染资源的直连链路,使渲染资源直接处理云渲染服务请求,渲染资源进行实时渲染并将实时产生的渲染结果直接发送至客户端,使客户终端实时接收渲染结果并根据渲染结果显示画面,不仅能够支持同时在线的客户端设备多,可承载海量的客户端设备的渲染服务请求,而且,所有在线的渲染任务相互独立,减轻了云端的通信负载,降低了云渲染服务的延时性。After accepting the cloud rendering service request sent by the client, the invention enables the rendering resource and creates a direct link of the client terminal and the rendering resource, so that the rendering resource directly processes the cloud rendering service request, and the rendering resource is real-time rendered and generated in real time. The rendering result is directly sent to the client, so that the client terminal receives the rendering result in real time and displays the image according to the rendering result, which can not only support multiple online client devices, but also can carry a large number of rendering service requests of the client device, and all online The rendering tasks are independent of each other, reducing the communication load of the cloud and reducing the latency of the cloud rendering service.
同时,本发明中还根据直连链路上的通信状况和客户端的操作,实时动态调整渲染结果的发送频率以及对渲染结果进行不同程度的压缩,进一步地,降低渲染服务的延时性,可实现用户与大型3D场景的实时互操作,在客户终端设备为用户提供了高动态3D实时场景服务的良好用户体验。At the same time, according to the communication condition on the direct link and the operation of the client, the present invention dynamically adjusts the transmission frequency of the rendering result in real time and compresses the rendering result to different degrees, and further reduces the delay of the rendering service. Real-time interoperability between users and large 3D scenes is achieved, and the client terminal device provides users with a good user experience of highly dynamic 3D real-time scene services.
而且,本发明还能够记录用户请求云渲染服务的时间规律,并根据该时间规律,合理地控制渲染资源的待机数量,在保障用户资源充足的情况下减少能源消耗,节能环保。Moreover, the present invention is also capable of recording the time rule of the user requesting the cloud rendering service, and according to the time rule, reasonably controlling the standby quantity of the rendering resource, reducing energy consumption, saving energy and environmental protection while ensuring sufficient user resources.
附图说明:BRIEF DESCRIPTION OF THE DRAWINGS:
图1是本发明方法云渲染服务的基本流程示意图;1 is a schematic diagram showing the basic flow of a cloud rendering service of the method of the present invention;
图2是本发明方法启用渲染资源的流程示意图;2 is a schematic flowchart of a method for enabling rendering resources according to the method of the present invention;
图3是本发明方法渲染资源实时渲染的流程示意图;3 is a schematic flowchart of real-time rendering of a rendering resource of the method of the present invention;
图4是本发明方法验证用户身份信息的基本流程示意图; 4 is a schematic diagram of a basic flow of verifying user identity information by the method of the present invention;
图5是本发明方法管理心跳连接的流程示意图;5 is a schematic flow chart of managing a heartbeat connection by the method of the present invention;
图6是本发明方法用户登录状态判定的流程示意图;6 is a schematic flow chart of determining a user login status of the method of the present invention;
图7是本发明装置的第一实施例的结构示意图;Figure 7 is a schematic structural view of a first embodiment of the apparatus of the present invention;
图8是本发明装置的第二实施例的结构示意图;Figure 8 is a schematic structural view of a second embodiment of the apparatus of the present invention;
图9是本发明装置的第三实施例的结构示意图;Figure 9 is a schematic structural view of a third embodiment of the apparatus of the present invention;
图10是本发明装置的第四实施例的结构示意图;Figure 10 is a schematic structural view of a fourth embodiment of the apparatus of the present invention;
图11是本发明装置的第五实施例的结构示意图;Figure 11 is a schematic view showing the structure of a fifth embodiment of the apparatus of the present invention;
图12是本发明装置的第六实施例的结构示意图;Figure 12 is a schematic structural view of a sixth embodiment of the apparatus of the present invention;
图13是本发明系统的第一实施例的结构示意图;Figure 13 is a schematic structural view of a first embodiment of the system of the present invention;
图14是本发明系统的第二实施例的结构示意图;Figure 14 is a schematic structural view of a second embodiment of the system of the present invention;
图15是本发明系统的第三实施例的结构示意图。Figure 15 is a schematic view showing the structure of a third embodiment of the system of the present invention.
具体实施方式detailed description
下面结合具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。The present invention will be further described in detail below in conjunction with the specific embodiments. However, the scope of the above-mentioned subject matter of the present invention should not be construed as being limited to the following embodiments, and the technology implemented based on the present invention is within the scope of the present invention.
结合图1所示的本发明方法云渲染服务的基本流程示意图;在具有3D场景的应用的客户端上,用户对该3D场景的应用进行一定相关操作,如对渲染实体的旋转、移动和缩放操作等,当这些相关操作被该3D场景应用识别后,会生成包含相关的渲染内容和渲染实体信息的云渲染服务请求。因此,用户在客户端上完成相关操作后,由客户端发送相关的云渲染服务请求,以请求云渲染服务。A basic flow diagram of the cloud rendering service of the method of the present invention shown in FIG. 1; on a client with an application having a 3D scene, the user performs certain operations on the application of the 3D scene, such as rotating, moving, and scaling the rendering entity. Operation, etc., when these related operations are recognized by the 3D scene application, a cloud rendering service request including related rendering content and rendering entity information is generated. Therefore, after the user completes the related operations on the client, the client sends a relevant cloud rendering service request to request the cloud rendering service.
本发明基于云计算的实时离屏渲染方法包括: The real-time off-screen rendering method based on cloud computing of the invention comprises:
接收客户端发送的云渲染服务请求后,启用渲染资源并创建渲染资源与客户端的直连链路。After receiving the cloud rendering service request sent by the client, enable the rendering resource and create a direct link between the rendering resource and the client.
直连链路创建成功后,根据云渲染服务请求,渲染资源进行实时渲染,并且将实时产生的渲染结果通过直连链路发送至客户端。After the direct link is successfully created, the rendering resource is rendered in real time according to the cloud rendering service request, and the real-time generated rendering result is sent to the client through the direct link.
实时接收的渲染结果后,根据渲染结果,客户端实时显示画面。After the rendering result is received in real time, the client displays the picture in real time according to the rendering result.
本发明通过创建渲染资源与客户端的直连链路,使所有在线的渲染任务相互独立,减轻了云端的通信负载,降低了云渲染服务的延时性。By creating a direct link between the rendering resource and the client, the present invention makes all online rendering tasks independent of each other, reduces the communication load of the cloud, and reduces the delay of the cloud rendering service.
结合图2所示的本发明方法启用渲染资源的流程示意图;其中,接收客户端发送的云渲染服务请求后,首先访问渲染资源列表,查询是否有可用的渲染资源。A schematic diagram of a process for enabling a rendering resource according to the method of the present invention shown in FIG. 2; after receiving a cloud rendering service request sent by a client, first accessing a rendering resource list to query whether a rendering resource is available.
若有,则启用其中最优的渲染资源;否则返回无可用渲染资源信息至客户端。If so, enable the optimal rendering resource; otherwise, no rendering resource information is available to the client.
具体的,渲染资源列表有可用的渲染资源时,由于渲染资源分布在不同的物理机上,而且某些渲染资源相对使用频率略高,启用其中最优的渲染资源,即是确定运行负荷较低的物理机,并且在该物理机上启用使用频率相对较低的渲染资源,这样有利于平衡渲染资源的使用,合理规划渲染资源的启用,避免渲染资源的闲置。Specifically, when the rendering resource list has available rendering resources, since the rendering resources are distributed on different physical machines, and some rendering resources are relatively slightly used, the optimal rendering resource is enabled, that is, the running load is determined to be low. The physical machine, and the use of relatively low-frequency rendering resources on the physical machine, which is beneficial to balance the use of rendering resources, rationally plan the enabling of rendering resources, and avoid the idleness of rendering resources.
而且,在启用渲染资源时,还获取渲染资源的地址,并分配给客户端一个通信端口,将渲染资源的地址与客户端的通信端口绑定,以创建渲染资源与客户端的直连链路。Moreover, when the rendering resource is enabled, the address of the rendering resource is also obtained, and a communication port is allocated to the client, and the address of the rendering resource is bound to the communication port of the client to create a direct link between the rendering resource and the client.
渲染资源列表中无可用的渲染资源时,则将云渲染服务请求挂起,等待有可用资源时,再提供渲染服务。 When no rendering resources are available in the rendering resource list, the cloud rendering service request is suspended, and the rendering service is provided when there are available resources.
结合图3所示的本发明方法渲染资源实时渲染的流程示意图;直连链路创建成功后,根据云渲染服务请求中描述的渲染实体,渲染资源首先下载渲染实体的资源数据。The schematic diagram of the real-time rendering of the resource rendering is performed in conjunction with the method of the present invention shown in FIG. 3; after the direct link is successfully created, the rendering resource first downloads the resource data of the rendering entity according to the rendering entity described in the cloud rendering service request.
当渲染实体的资源数据下载完成后,根据云渲染请求中描述的渲染内容,渲染资源对渲染实体的资源数据进行实时渲染,并在渲染资源的帧缓存中实时产生渲染结果。After the resource data of the rendering entity is downloaded, according to the rendering content described in the cloud rendering request, the rendering resource renders the resource data of the rendering entity in real time, and generates the rendering result in real time in the frame buffer of the rendering resource.
实时获取帧缓存中的渲染结果,并对其进行压缩编码后,通过直连链路发送至客户端。The rendering result in the frame buffer is obtained in real time, and is compressed and encoded, and then sent to the client through the direct link.
具体的,渲染资源是具备GPU硬件的资源,数据的渲染主要通过GPU来完成。数据渲染的流程可以是传统的渲染管线处理过程,也可以是可编程渲染管线处理流程,最终渲染结果都会放在帧缓存中。Specifically, the rendering resource is a resource with GPU hardware, and the rendering of the data is mainly performed by the GPU. The process of data rendering can be either a traditional rendering pipeline process or a programmable rendering pipeline process, and the final rendering results are placed in the frame buffer.
而且,在将渲染结果发送至客户端时,还根据直连链路上的通信状况以及客户端的操作,实时调整渲染结果的发送频率。当直连链路上的通信状况不好时,则减小渲染结果的发送频率,以免造成客户端在接收时数据拥挤和通信过载,影响用户体验,而且当用户在客户端进行相关操作时,根据该相关操作,实时调整发送频率,并在客户端完成相关操作后,以调整后的发送频率发送渲染结果至客户端,使用户明显地感受到渲染效果。通过这样的上述的处理方式,本发明降低渲染服务的延时性,可实现用户与大型3D场景的实时互操作,在客户终端设备为用户提供了高动态3D实时场景服务的良好用户体验。Moreover, when the rendering result is sent to the client, the transmission frequency of the rendering result is adjusted in real time according to the communication status on the direct link and the operation of the client. When the communication status on the direct link is not good, the transmission frequency of the rendering result is reduced, so as to avoid data congestion and communication overload when the client receives, affecting the user experience, and when the user performs related operations on the client, according to The related operation adjusts the sending frequency in real time, and after the client completes the related operation, sends the rendering result to the client at the adjusted sending frequency, so that the user obviously feels the rendering effect. Through such a processing manner as described above, the present invention reduces the delay of the rendering service, realizes real-time interoperability between the user and the large 3D scene, and provides the user with a good user experience of the highly dynamic 3D real-time scene service in the client terminal device.
结合图4所示的本发明方法验证用户身份信息的基本流程示意图;接收客户端发送的云渲染服务请求前,先接收客户端发送用户验证请求。A basic flow diagram for verifying user identity information in conjunction with the method of the present invention shown in FIG. 4; before receiving a cloud rendering service request sent by a client, the receiving client sends a user authentication request.
通过解析用户验证请求中包含的用户身份信息,并将该用户身份信息与预先绑定的用户身份信息进行比对,以验证该用户身份信息是否与预先绑定的用 户身份信息一致。By parsing the user identity information contained in the user authentication request, and comparing the user identity information with the pre-bound user identity information to verify whether the user identity information is pre-bound The identity information of the household is consistent.
若一致,则返回识别信息至客户端,并建立与客户端的心跳连接,否则,不返回识别信息至客户端。If they are consistent, the identification information is returned to the client, and a heartbeat connection with the client is established. Otherwise, the identification information is not returned to the client.
结合图5所示的本发明方法管理心跳连接的流程示意图;返回识别信息至客户端后,若接收到客户端发送的心跳包,则判定心跳连接建立成功,将用户加入至用户在线列表中;若未接收到客户端发送的心跳包,则判定心跳连接建立失败,用户离线;A schematic diagram of a process for managing a heartbeat connection according to the method of the present invention shown in FIG. 5; after receiving the identification information to the client, if the heartbeat packet sent by the client is received, it is determined that the heartbeat connection is successfully established, and the user is added to the online list of the user; If the heartbeat packet sent by the client is not received, it is determined that the heartbeat connection establishment fails, and the user is offline;
并且,在心跳连接建立成功后,若接收到客户端发送的离线请求,则断开心跳连接,将用户从用户在线列表中移除,并释放已创建的直连链路和已启用的渲染资源。And, after the heartbeat connection is successfully established, if the offline request sent by the client is received, the heartbeat connection is disconnected, the user is removed from the online list of the user, and the created direct link and the enabled rendering resource are released. .
结合图6所示的本发明方法用户登录状态判定的流程示意图;建立与客户端的心跳连接后,接收客户端按一定频率发送的心跳包,以监测用户的登录状态,并且每接收一个心跳包后,立即从零开始计时。A schematic diagram of a process for determining a user login status in conjunction with the method of the present invention shown in FIG. 6; after establishing a heartbeat connection with a client, receiving a heartbeat packet sent by the client at a certain frequency to monitor the login status of the user, and each time a heartbeat packet is received , immediately start timing from zero.
若计时时间大于或等于掉线阈值时间,则认为用户掉线,将用户从用户在线列表中移除,释放已创建的直连链路和已启用的渲染资源。If the timing is greater than or equal to the drop threshold time, the user is considered to be offline, the user is removed from the user online list, and the created direct link and the enabled rendering resource are released.
本发明基于云计算的实时离屏渲染方法还根据客户端加入用户在线列表的规律,在客户端在线高峰期,提前开启一定数量的渲染资源,而在客户端在线低谷期,关闭一定数量的渲染资源。The real-time off-screen rendering method based on cloud computing according to the invention also opens a certain number of rendering resources in advance according to the rule that the client joins the online list of the user, and turns off a certain number of renderings in the online trough period of the client. Resources.
基于同一发明构思,本发明还提供一种基于云计算的实时离屏渲染装置。结合图7所示的本发明装置的第一实施例的结构示意图;本发明基于云计算的实时离屏渲染装置包括:通信中转单元、渲染资源单元、资源管理单元和业务调度单元。Based on the same inventive concept, the present invention also provides a real-time off-screen rendering device based on cloud computing. A schematic diagram of a first embodiment of the apparatus of the present invention shown in FIG. 7; the real-time off-screen rendering apparatus based on cloud computing of the present invention comprises: a communication relay unit, a rendering resource unit, a resource management unit, and a service scheduling unit.
其中,通信中转单元用于接收客户端发送的云渲染服务请求,并将接收的 云渲染服务请求转发至业务调度单元。业务调度单元将云渲染服务请求转发至资源管理单元,资源管理单元管理和启用渲染资源,渲染资源由渲染资源单元提供,业务调度单元创建渲染资源与客户端的直连链路,通过渲染资源进行渲染服务。The communication relay unit is configured to receive a cloud rendering service request sent by the client, and receive the received The cloud rendering service request is forwarded to the business scheduling unit. The service scheduling unit forwards the cloud rendering service request to the resource management unit, the resource management unit manages and enables the rendering resource, the rendering resource is provided by the rendering resource unit, and the service scheduling unit creates a direct link between the rendering resource and the client, and renders by rendering the resource. service.
结合图8所示的本发明装置的第二实施例的结构示意图;其中,资源管理单元包括:渲染资源列表子单元、渲染资源启用子单元和渲染资源地址发送子单元。A schematic structural diagram of a second embodiment of the apparatus of the present invention shown in FIG. 8; wherein the resource management unit comprises: a rendering resource list subunit, a rendering resource enabling subunit, and a rendering resource address transmitting subunit.
其中,渲染资源列表子单元保存着渲染资源单元中各个渲染资源的地址,并按一定频率对各个渲染资源的工作状态进行统计,而且根据统计结果,建立渲染资源列表。The rendering resource list sub-unit saves the address of each rendering resource in the rendering resource unit, and statistics the working state of each rendering resource according to a certain frequency, and establishes a rendering resource list according to the statistical result.
渲染资源启用子单元,用于查询渲染资源列表中是否有可用的渲染资源,并在有可用的渲染资源时,启用其中最优的渲染资源,否则,返回无可用资源信息至客户端。The rendering resource enable subunit is used to query whether there are available rendering resources in the rendering resource list, and enable the optimal rendering resource when there are available rendering resources, otherwise, no available resource information is returned to the client.
渲染资源地址发送子单元,用于将渲染资源启用子单元启用的渲染资源的地址发送至业务调度单元,以供业务调度单元创建直连链路时使用。The rendering resource address sending subunit is configured to send the address of the rendering resource enabled by the rendering resource enabling subunit to the service scheduling unit for use by the service scheduling unit to create the direct link.
而且,业务调度单元包括通信链路管理子单元,在创建直连链路时,通信链路管理子单元给客户端分配通信端口,并在接收渲染资源地址发送子单元发送的渲染资源的地址后,将渲染资源的地址与客户端的通信端口绑定,以创建渲染资源与客户端的直连链路。Moreover, the service scheduling unit includes a communication link management sub-unit. When the direct link is created, the communication link management sub-unit allocates a communication port to the client, and after receiving the address of the rendering resource sent by the rendering resource address sending sub-unit Bind the address of the rendering resource to the communication port of the client to create a direct link between the rendering resource and the client.
如图9所示的本发明装置的第三实施例的结构示意图;本发明基于云计算的实时离屏渲染装置还包括存储单元和数据库管理单元。其中,存储单元,用于预先存储用户的渲染实体资源数据;数据库管理单元,用于管理用户的渲染实体资源数据,并在渲染资源请求下载资源数据时,发送资源数据在存储单元 中的存放地址至渲染资源,以供渲染资源下载资源数据。FIG. 9 is a schematic structural diagram of a third embodiment of the apparatus of the present invention; the cloud-based real-time off-screen rendering apparatus of the present invention further includes a storage unit and a database management unit. The storage unit is configured to pre-store the rendering entity resource data of the user, and the database management unit is configured to manage the rendering entity resource data of the user, and send the resource data in the storage unit when the rendering resource requests to download the resource data. The storage address in the storage resource to the rendering resource for downloading the resource data.
并且本实施例中,渲染资源包括资源数据下载子单元、渲染执行子单元、帧缓存子单元、压缩编码子单元和渲染结果发送子单元。In this embodiment, the rendering resource includes a resource data downloading subunit, a rendering execution subunit, a frame buffer subunit, a compression encoding subunit, and a rendering result sending subunit.
其中,资源数据下载子单元,用于根据云渲染服务请求中描述的渲染实体,请求下载渲染实体的资源数据,并执行资源数据的下载。The resource data downloading subunit is configured to request to download resource data of the rendering entity according to the rendering entity described in the cloud rendering service request, and perform downloading of the resource data.
渲染执行子单元,用于根据云渲染请求中描述的渲染内容,对资源数据进行实时渲染。A rendering execution sub-unit for rendering the resource data in real time according to the rendered content described in the cloud rendering request.
帧缓存子单元,用于缓存渲染执行子单元实时产生的渲染结果。The frame buffer sub-unit is used to cache the rendering result generated by the rendering execution sub-unit in real time.
压缩编码子单元,用于实时获取帧缓冲子单元中的渲染结果,并对渲染结果压缩编码。The compression coding sub-unit is configured to acquire the rendering result in the frame buffer sub-unit in real time, and compress and encode the rendering result.
渲染结果发送子单元,用于实时将经过压缩编码子单元处理后的渲染结果,通过直连链路发送至客户端,并根据直连链路的通信状况和客户端的操作,实时调整渲染结果的发送频率。The rendering result sending subunit is configured to send the rendering result processed by the compression encoding subunit in real time to the client through the direct link, and adjust the rendering result in real time according to the communication status of the direct link and the operation of the client. Send frequency.
如图10所示的本发明装置的第四实施例的结构示意图;本发明基于云计算的实时离屏渲染装置还包括用户管理单元,并且,通信中转单元还用于接收客户端发送的用户验证请求和离线请求;数据库管理单元还用于管理用户的身份信息,以及存储用户预先绑定的用户身份信息;业务调度单元,还用于将用户验证请求和离线请求转发至用户管理单元。FIG. 10 is a schematic structural diagram of a fourth embodiment of the apparatus of the present invention; the cloud-based real-time off-screen rendering apparatus of the present invention further includes a user management unit, and the communication relay unit is further configured to receive user authentication sent by the client. The request and the offline request; the database management unit is further configured to manage the identity information of the user, and store the user identity information pre-bound by the user; the service scheduling unit is further configured to forward the user verification request and the offline request to the user management unit.
结合图11所示的本发明装置的第五实施例的结构示意图;用户管理单元包括:A schematic structural diagram of a fifth embodiment of the apparatus of the present invention shown in FIG. 11; the user management unit includes:
身份信息验证子单元,用于解析用户验证请求中包含的用户身份信息,并将用户身份信息发送至数据库管理单元进行比对,验证用户身份信息是否与预先绑定的用户身份信息一致。 The identity information verification sub-unit is configured to parse the user identity information included in the user verification request, and send the user identity information to the database management unit for comparison, and verify whether the user identity information is consistent with the pre-bound user identity information.
心跳连接子单元,根据用户身份信息是否与预先绑定的用户身份信息一致,返回识别信息至客户端,并建立与客户端的心跳连接;并在返回识别信息至客户端后,接收客户端发送的心跳包,若接收到心跳包,则判定心跳连接建立成功,若未接收到心跳包,则判定心跳连接失败,用户离线;以及在心跳连接建立成功后,接收到客户端发送的离线请求时,断开心跳连接。The heartbeat connection sub-unit, according to whether the user identity information is consistent with the pre-bound user identity information, returns the identification information to the client, and establishes a heartbeat connection with the client; and after returning the identification information to the client, the receiving client sends the If the heartbeat packet is received, the heartbeat connection is successfully determined. If the heartbeat packet is not received, the heartbeat connection is determined to be failed, and the user is offline; and after the heartbeat connection is successfully established, when the offline request sent by the client is received, Disconnect the heartbeat connection.
用户在线列表管理子单元,用于建立用户在线列表,并在心跳连接建立成功时,将用户加入至用户在线列表;并在接收到客户端发送的离线请求时,将用户从用户在线列表中移除,释放已创建的直连链路和已启用的渲染资源。The user online list management sub-unit is configured to establish a user online list, and when the heartbeat connection is successfully established, add the user to the online list of the user; and when receiving the offline request sent by the client, move the user from the online list of the user In addition, releases the created direct link and enabled render resources.
在本实施例中,心跳连接子单元,还用于在接收一个心跳包后,从零开始计时,并在计时时间大于掉线阈值时间时,将用户掉线信息发送至用户在线列表管理子单元,使其将用户从用户在线列表中移除,释放已创建的直连链路和已启用的渲染资源。In this embodiment, the heartbeat connection subunit is further configured to start timing from zero after receiving a heartbeat packet, and send the user drop information to the user online list management subunit when the timing time is greater than the drop threshold time. To remove the user from the user's online list, freeing the created direct link and enabled rendering resources.
结合图12所示的本发明装置的第六实施例的结构示意图;本发明基于云计算的实时离屏渲染装置还包括智能管理单元。A schematic diagram of a structure of a sixth embodiment of the apparatus of the present invention shown in FIG. 12; the real-time off-screen rendering apparatus based on cloud computing of the present invention further includes an intelligent management unit.
其中,智能管理单元用于根据用户加入用户在线列表的规律,在用户在线高峰期,提前开启一定数量的渲染资源,而在用户在线低谷期,关闭一定数量的渲染资源。The intelligent management unit is configured to open a certain number of rendering resources in advance according to the rule that the user joins the online list of the user, and close a certain number of rendering resources during the online trough period of the user.
基于同一发明构思,本发明还提供一种基于云计算的实时离屏渲染系统,结合图13所示的本发明系统的第一实施例的结构示意图;本发明基于云计算的实时离屏渲染系统包括客户端、公网和若干用户资源池,用户资源池分别绑定有唯一的公网IP,客户端通过链接至公网IP,接入用户资源池。Based on the same inventive concept, the present invention further provides a real-time off-screen rendering system based on cloud computing, combined with the structural schematic diagram of the first embodiment of the system of the present invention shown in FIG. 13; the real-time off-screen rendering system based on cloud computing of the present invention The client, the public network, and the user resource pool are bound to each other. The user resource pool is bound to a public IP address. The client accesses the user resource pool by linking to the public network IP address.
并且,用户资源池包括路由器、渲染资源服务器、资源管理服务器和业务调度服务器。 And, the user resource pool includes a router, a rendering resource server, a resource management server, and a service scheduling server.
其中,路由器,用于接收客户端发送云渲染服务请求,并将云渲染服务请求转发至业务调度服务器。The router is configured to receive a request for sending a cloud rendering service by the client, and forward the cloud rendering service request to the service scheduling server.
业务调度服务器,用于创建渲染资源与客户端的直连链路,并将云渲染服务请求转发至渲染资源服务器和资源管理服务器。A service scheduling server is configured to create a direct link between the rendering resource and the client, and forward the cloud rendering service request to the rendering resource server and the resource management server.
渲染资源服务器,用于提供渲染资源进行渲染服务。A rendering resource server that provides rendering resources for rendering services.
资源管理服务器,用于管理和启用渲染资源。A resource management server for managing and enabling rendering resources.
具体的,资源管理服务器保存渲染资源服务器中各个渲染资源的地址,并按一定频率对各个渲染资源的工作状态进行统计,而且根据统计结果,建立渲染资源列表。Specifically, the resource management server saves the address of each rendering resource in the rendering resource server, and statistics the working state of each rendering resource according to a certain frequency, and establishes a rendering resource list according to the statistical result.
资源管理服务器接收业务调度服务器转发的云渲染服务请求,查询渲染资源列表中是否有可用的渲染资源,若有,则启用其中最优的渲染资源,否则返回无可用资源信息至客户端。The resource management server receives the cloud rendering service request forwarded by the service scheduling server, and queries whether the rendering resource is available in the rendering resource list. If yes, the optimal rendering resource is enabled, otherwise the available resource information is returned to the client.
资源管理服务器启用渲染资源,并且将渲染资源的地址发送至业务调度服务器,以供业务调度服务器创建直连链路时使用。The resource management server enables the rendering resource and sends the address of the rendering resource to the service scheduling server for use by the service scheduling server to create a direct link.
业务调度服务器接收资源管理服务器发送的地址,并分配给客户端一个通信端口,将渲染资源的地址与客户端的通信端口绑定,以创建渲染资源与客户端的直连链路。The service scheduling server receives the address sent by the resource management server, and allocates a communication port to the client, and binds the address of the rendering resource to the communication port of the client to create a direct link between the rendering resource and the client.
结合图14所示的本发明系统的第二实施例的结构示意图;本发明基于云计算的实时离屏渲染系统还包括数据库服务器、存储服务器。A schematic diagram of the structure of the second embodiment of the system of the present invention shown in FIG. 14; the real-time off-screen rendering system based on cloud computing of the present invention further includes a database server and a storage server.
其中,用户资源池共用数据库服务器和存储服务器,并且,存储服务器,用于预先存储用户的渲染实体资源数据。The user resource pool shares the database server and the storage server, and the storage server is configured to pre-store the rendering entity resource data of the user.
数据库管理服务器,用于管理用户的渲染实体资源数据,并在渲染资源请求下载资源数据时,将资源数据在存储服务器中的存放地址发送至渲染资源, 以供渲染资源下载资源数据。a database management server, configured to manage the rendering entity resource data of the user, and send the storage address of the resource data in the storage server to the rendering resource when the rendering resource requests to download the resource data, For rendering resources to download resource data.
结合图15所示的本发明系统的第三实施例的结构示意图,本发明基于云计算的实时离屏渲染系统包括:用户管理服务器和智能管理服务器。In conjunction with the structural schematic diagram of the third embodiment of the system of the present invention shown in FIG. 15, the real-time off-screen rendering system based on cloud computing of the present invention comprises: a user management server and an intelligent management server.
具体的,路由器,用于接收客户端发送的用户验证请求。Specifically, the router is configured to receive a user authentication request sent by the client.
数据库管理服务器,用于管理用户的身份信息,以及存储用户预先绑定的用户身份信息。A database management server for managing user identity information and storing user identity information pre-bound by the user.
业务调度服务器,用于将用户验证请求转发至用户管理服务器。A service scheduling server for forwarding user authentication requests to the user management server.
用户管理服务器接收业务调度服务器转发的用户验证请求,并解析用户验证请求中包含的用户身份信息,将用户身份信息发送至数据库管理单元进行比对,验证用户身份信息是否与预先绑定的用户身份信息一致;The user management server receives the user authentication request forwarded by the service scheduling server, and parses the user identity information included in the user authentication request, sends the user identity information to the database management unit for comparison, and verifies whether the user identity information is associated with the pre-bound user identity. The information is consistent;
用户管理服务器根据用户身份信息是否与预先绑定的用户身份信息一致,返回识别信息至客户端,使客户端建立与用户管理服务器的心跳连接;The user management server returns the identification information to the client according to whether the user identity information is consistent with the pre-bound user identity information, so that the client establishes a heartbeat connection with the user management server;
在返回识别信息至客户端后,用户管理服务器接收到客户端发送的心跳包,则判定心跳连接建立成功,并将用户加入至用户在线列表中;用户管理服务器未接收到心跳连接,则判定心跳连接失败,用户离线;After returning the identification information to the client, the user management server receives the heartbeat packet sent by the client, determines that the heartbeat connection is successfully established, and adds the user to the online list of the user; if the user management server does not receive the heartbeat connection, the heartbeat is determined. The connection failed and the user is offline;
在心跳连接建立成功后,用户管理服务器接收到客户端发送的离线请求,则断开心跳连接,将用户从用户在线列表中移除,并释放已创建的直连链路和停用已启用的渲染资源。After the heartbeat connection is successfully established, the user management server receives the offline request sent by the client, disconnects the heartbeat connection, removes the user from the online list of the user, and releases the created direct link and disables the enabled one. Render resources.
而且,用户管理服务器与客户端的心跳连接建立成功后,客户端按一定频率发送心跳包至用户管理服务器,用户管理服务器接收一个心跳包后,从零开始计时。Moreover, after the heartbeat connection between the user management server and the client is successfully established, the client sends the heartbeat packet to the user management server according to a certain frequency. After receiving the heartbeat packet, the user management server starts timing from zero.
若计时时间大于掉线阈值时间,用户管理服务器将用户从用户在线列表中移除,并释放已创建的直连链路和停用已启用的渲染资源。 If the timing is greater than the drop threshold time, the User Management Server removes the user from the user's online list and releases the created direct link and deactivates the enabled rendering resources.
智能管理服务器,用于根据用户加入用户在线列表的规律,在用户在线高峰期,提前开启一定数量的渲染资源,而在用户在线低谷期,关闭一定数量的渲染资源。The intelligent management server is configured to open a certain number of rendering resources in advance according to the rule that the user joins the online list of the user, and close a certain amount of rendering resources in the online trough period of the user.
为进一步地阐释本发明基于云计算的实时离屏渲染方法、装置及系统,下面以一个对渲染实体茶壶进行实时渲染的例子,对本发明进行更详细的说明。In order to further explain the cloud computing-based real-time off-screen rendering method, apparatus and system of the present invention, the present invention will be described in more detail below with an example of real-time rendering of a rendering entity teapot.
用户使用客户端,通过TCP/IP协议发送用户验证请求至用户对应的用户资源池中。在用户资源池中,路由器接收到用户验证请求后,立即将用户验证请求转发至业务调度服务器,再由业务调度服务器转发至用户管理服务器。The user uses the client to send a user authentication request to the user resource pool corresponding to the user through the TCP/IP protocol. In the user resource pool, after receiving the user authentication request, the router forwards the user authentication request to the service scheduling server, and then the service scheduling server forwards it to the user management server.
用户管理服务器接收用户验证请求后,解析用户验证请求中的用户身份信息,并将该用户身份信息与预先绑定在数据库管理服务器中的用户信息进行比,验证该用户身份信息是否与预先绑定的用户身份信息一致。After receiving the user authentication request, the user management server parses the user identity information in the user authentication request, and compares the user identity information with the user information pre-bound in the database management server, and verifies whether the user identity information is pre-bound User identity information is consistent.
如果一致,用户管理服务器通过业务调度服务器和路由器,返回唯一的识别信息至客户端。客户端根据该识别信息,建立与用户管理服务器的心跳连接,用户管理服务器接收到客户端发送的心跳包,则说明心跳连接建立成功,则将该用户加入至用户在线列表中。If consistent, the user management server returns unique identification information to the client through the service scheduling server and router. The client establishes a heartbeat connection with the user management server according to the identification information, and the user management server receives the heartbeat packet sent by the client, indicating that the heartbeat connection is successfully established, and the user is added to the user online list.
然后,用户加入用户在线列表后,可以通过实时的操作,使客户端发送相应的云渲染服务请求至用户资源池中,路由器接收云渲染服务请求后,立即将用户验证请求转发至业务调度服务器,再由业务调度服务器转发至资源管理服务器。Then, after the user joins the online list of the user, the client can send the corresponding cloud rendering service request to the user resource pool through a real-time operation. After receiving the cloud rendering service request, the router immediately forwards the user authentication request to the service scheduling server. It is then forwarded by the service scheduling server to the resource management server.
资源管理服务器接收云渲染服务请求后,查询其资源列表中是否有可用的渲染资源,并且选择运行负荷较低的物理机上启用和使用频率相对较低的渲染资源来启用,用于响应本次云渲染服务请求。After receiving the cloud rendering service request, the resource management server queries whether there is a rendering resource available in the resource list, and selects a rendering resource with a relatively low activation and use frequency on a physical machine with a lower running load to enable, in response to the cloud. Render a service request.
并且,在启用渲染资源时,资源管理服务器将启用的渲染资源的地址转发 至业务调度服务器,同时,业务调度服务器分配给客户端一个通信端口,并且将渲染资源的地址与该通信端口绑定,从而建立成渲染资源与客户端的直连链路。And, when the rendering resource is enabled, the resource management server will forward the address of the enabled rendering resource. To the service scheduling server, at the same time, the service scheduling server allocates a communication port to the client, and binds the address of the rendering resource to the communication port, thereby establishing a direct link between the rendering resource and the client.
直连链路创建成功后,渲染资源根据云渲染服务请求中描述的渲染实体茶壶,向数据库管理服务器请求下载渲染实体茶壶的资源数据,数据库管理服务器将渲染实体茶壶的资源数据在存储服务器中的存放地址发送给渲染资源,渲染资源根据渲染实体茶壶的资源数据在存储服务器中的存放地址,下载渲染实体茶壶的资源数据。After the direct link is successfully created, the rendering resource requests the database management server to download the resource data of the rendering entity teapot according to the rendering entity teapot described in the cloud rendering service request, and the database management server renders the resource data of the entity teapot in the storage server. The storage address is sent to the rendering resource, and the rendering resource downloads the resource data of the rendering entity teapot according to the storage address of the resource data of the rendering entity teapot in the storage server.
渲染实体茶壶的资源数据下载完城后,开始根据云渲染服务请求的渲染内容如对渲染实体茶壶的旋转、移动和缩放等,对渲染实体茶壶进行实时地渲染,并在渲染资源的帧缓存中产生渲染结果。实时地提取出帧缓存中的渲染结果,对渲染结果进行压缩编码,经过压缩编码后通过直连链路,直接发送至客户端。After the resource data of the rendering entity teapot is downloaded, the rendering content requested by the cloud rendering service, such as the rotation, movement and scaling of the rendering entity teapot, is rendered in real time, and the rendering entity teapot is rendered in real time and in the frame buffer of the rendering resource. Produce rendering results. The rendering result in the frame buffer is extracted in real time, and the rendering result is compression-encoded, and after being compression-encoded, it is directly sent to the client through the direct link.
具体的,在对渲染实体茶壶进行渲染的过程中,若用户管理服务器对每接收一个心跳包后的计时时间大于或等于掉线阈值时间,则将用户从用户在线列表中移除,释放已创建的直连链路和已启用的渲染资源。若客户端发送离线请求,用户管理服务器断开心跳连接,并将用户从用户在线列表中移除,释放已创建的直连链路和已启用的渲染资源。Specifically, in the process of rendering the rendering entity teapot, if the time counted by the user management server after receiving one heartbeat packet is greater than or equal to the drop threshold time, the user is removed from the online list of the user, and the release is created. Direct link and enabled rendering resources. If the client sends an offline request, the user management server disconnects the heartbeat and removes the user from the online list of users, releasing the created direct link and the enabled rendering resources.
在将压缩编码后的渲染结果发送至客户端的步骤中,渲染资源还根据直连链路上的通信状况以及客户端的操作,实时调整渲染结果的发送频率。其中,客户端的实时操作,均被相应地描述在云渲染服务请求的渲染内容中。In the step of transmitting the compression-encoded rendering result to the client, the rendering resource also adjusts the transmission frequency of the rendering result in real time according to the communication status on the direct link and the operation of the client. The real-time operation of the client is correspondingly described in the rendered content of the cloud rendering service request.
本发明通过对渲染资源的合理的管理和启用,不仅能够支持同时在线的客户端设备多,可承载海量的客户端设备的渲染服务请求,而且,所有在线的渲染任务相互独立,减轻了云端的通信负载,降低了云渲染服务的延时性。 By reasonably managing and enabling the rendering resources, the invention can not only support multiple online client devices, but also can carry a large number of rendering service requests of the client device, and all the online rendering tasks are independent of each other, reducing the cloud's Communication load reduces the latency of cloud rendering services.
同时,本发明还根据直连链路上的通信状况和用户在客户端的操作,实时动态调整渲染结果的发送频率以及对渲染结果进行不同程度的压缩,进一步地,降低渲染服务的延时性,可实现用户与大型3D场景的实时互操作,在客户终端设备为用户提供了高动态3D实时场景服务的良好用户体验。At the same time, according to the communication condition on the direct link and the operation of the user on the client, the present invention dynamically adjusts the transmission frequency of the rendering result in real time and compresses the rendering result to different degrees, further reducing the delay of the rendering service. Real-time interoperability between users and large 3D scenes can be realized, and the user terminal equipment provides users with a good user experience of highly dynamic 3D real-time scene services.
本发明的一个方面涉及一种非暂时性的计算机可读介质,包括指令集编码,其适应用于上述方法,其由专用的和集成的软件包操作和/或控制。因此,本发明还包括算法、计算机程序、计算机可读介质和/或软件,在配备了传统的处理器的通用计算机或工作站上可植入的和/或可执行文件,并用于执行一个或多方法和/或一个或多个操作的在此公开的硬件。例如,计算机程序或计算机可读介质通常包含一组指令,当由一个适当的处理装置(例如,信号处理装置,如微控制器、微处理器或DSP器件)执行时,其配置用于执行上述方法,运行,和/或算法。One aspect of the invention relates to a non-transitory computer readable medium comprising instruction set encoding adapted for use in the above method, which is operated and/or controlled by a dedicated and integrated software package. Accordingly, the present invention also includes algorithms, computer programs, computer readable media and/or software, implantable and/or executable files on a general purpose computer or workstation equipped with a conventional processor, and for performing one or more Method and/or one or more of the hardware disclosed herein. For example, a computer program or computer readable medium typically includes a set of instructions configured to perform the above when executed by a suitable processing device (eg, a signal processing device such as a microcontroller, microprocessor or DSP device) Method, run, and/or algorithm.
计算机可读介质可包括任何媒介,可以通过信号处理装置读出中执行存储在其上的代码,如软盘、光盘、磁带或硬盘驱动器。这样的代码可以包含对象代码、源代码和/或二进制代码。该代码一般是数字的,一般由中央处理器处理。The computer readable medium can include any medium that can be read by a signal processing device to execute code stored thereon, such as a floppy disk, optical disk, magnetic tape, or hard disk drive. Such code can contain object code, source code, and/or binary code. The code is generally numeric and is typically processed by a central processing unit.
上面结合附图对本发明的具体实施方式进行了详细说明,但本发明并不限制于上述实施方式,在不脱离本申请的权利要求的精神和范围情况下,本领域的技术人员可以作出各种修改或改型。 The embodiments of the present invention have been described in detail above with reference to the drawings, but the invention is not limited to the embodiments described above, and those skilled in the art can make various kinds without departing from the spirit and scope of the claims of the present application. Modified or modified.

Claims (27)

  1. 一种基于云计算的实时离屏渲染方法,其特征在于,包括:A real-time off-screen rendering method based on cloud computing, comprising:
    接收客户端发送的云渲染服务请求后,启用渲染资源并创建所述渲染资源与所述客户端的直连链路;After receiving the cloud rendering service request sent by the client, enabling the rendering resource and creating a direct link of the rendering resource to the client;
    所述直连链路创建成功后,根据所述云渲染服务请求,所述渲染资源进行实时渲染,并且将实时产生的渲染结果通过所述直连链路发送至所述客户端;After the direct link is successfully created, the rendering resource is rendered in real time according to the cloud rendering service request, and the rendering result generated in real time is sent to the client through the direct link;
    实时接收的所述渲染结果后,根据所述渲染结果,所述客户端实时显示画面。After receiving the rendering result in real time, the client displays the screen in real time according to the rendering result.
  2. 如权利要求1所述的基于云计算的实时离屏渲染方法,其特征在于,接收客户端发送的云渲染服务请求后,首先访问渲染资源列表,查询是否有可用的渲染资源;The cloud computing-based real-time off-screen rendering method of claim 1 , after receiving the cloud rendering service request sent by the client, first accessing the rendering resource list to query whether the rendering resource is available;
    若有,则启用其中最优的渲染资源;否则返回无可用渲染资源信息至所述客户端。If so, the optimal rendering resource is enabled; otherwise, no rendering resource information is available to the client.
  3. 如权利要求2所述的基于云计算的实时离屏渲染方法,其特征在于,启用所述渲染资源时,获取所述渲染资源的地址,并分配给所述客户端一个通信端口,将所述渲染资源的地址与所述客户端的通信端口绑定,以创建所述渲染资源与所述客户端的所述直连链路。The cloud computing-based real-time off-screen rendering method according to claim 2, wherein when the rendering resource is enabled, an address of the rendering resource is acquired and allocated to a communication port of the client, The address of the rendering resource is bound to the communication port of the client to create the direct link of the rendering resource and the client.
  4. 如权利要求1所述的基于云计算的实时离屏渲染方法,其特征在于,所述直连链路创建成功后,根据所述云渲染服务请求中描述的渲染实体,所述渲染资源首先下载所述渲染实体的资源数据;The cloud computing-based real-time off-screen rendering method according to claim 1, wherein after the direct link is successfully created, the rendering resource is first downloaded according to the rendering entity described in the cloud rendering service request. The resource data of the rendering entity;
    当所述渲染实体的资源数据下载完成后,根据所述云渲染请求中描述的渲染内容,所述渲染资源对所述渲染实体的资源数据进行实时渲染,并在所述渲染资源的帧缓存中实时产生渲染结果;After the resource data of the rendering entity is downloaded, the rendering resource renders the resource data of the rendering entity in real time according to the rendering content described in the cloud rendering request, and is in a frame buffer of the rendering resource. Generate rendering results in real time;
    实时获取所述帧缓存中的所述渲染结果,并对其进行压缩编码后,通过所述直连链路发送至所述客户端。 The rendering result in the frame buffer is obtained in real time, and is compression-encoded, and then sent to the client through the direct link.
  5. 如权利要求4所述的基于云计算的实时离屏渲染方法,其特征在于,根据所述直连链路上的通信状况以及所述客户端的操作,实时调整所述渲染结果的发送频率。The cloud computing-based real-time off-screen rendering method according to claim 4, wherein the transmission frequency of the rendering result is adjusted in real time according to the communication status on the direct link and the operation of the client.
  6. 如权利要求1所述的基于云计算的实时离屏渲染方法,其特征在于,接收所述客户端发送的所述云渲染服务请求前,先接收所述客户端发送用户验证请求;The cloud computing-based real-time off-screen rendering method of claim 1 , before receiving the cloud rendering service request sent by the client, receiving the client to send a user verification request;
    解析所述用户验证请求中包含的用户身份信息,并验证用户身份信息是否与预先绑定的用户身份信息一致;Parsing user identity information included in the user authentication request, and verifying that the user identity information is consistent with the pre-bound user identity information;
    若一致,则返回识别信息至所述客户端,并建立与所述客户端的心跳连接,否则,不返回识别信息至所述客户端。If they are consistent, the identification information is returned to the client, and a heartbeat connection with the client is established. Otherwise, the identification information is not returned to the client.
  7. 如权利要求6所述的基于云计算的实时离屏渲染方法,其特征在于,返回所述识别信息至所述客户端后,若接收到所述客户端发送的心跳包,则判定所述心跳连接建立成功,将用户加入至用户在线列表中;若未接收到所述客户端发送的心跳包,则判定所述心跳连接建立失败,用户离线;The cloud computing-based real-time off-screen rendering method according to claim 6, wherein after returning the identification information to the client, if the heartbeat packet sent by the client is received, determining the heartbeat If the connection is successfully established, the user is added to the user online list; if the heartbeat packet sent by the client is not received, it is determined that the heartbeat connection establishment fails, and the user is offline;
    并且,在所述心跳连接建立成功后,若接收到所述客户端发送的离线请求,则断开所述心跳连接,将用户从所述用户在线列表中移除,并释放已创建的所述直连链路和已启用的渲染资源。And after the heartbeat connection is successfully established, if the offline request sent by the client is received, the heartbeat connection is disconnected, the user is removed from the online list of the user, and the created Direct link and enabled rendering resources.
  8. 如权利要求7所述的基于云计算的实时离屏渲染方法,其特征在于,建立与所述客户端的心跳连接后,接收所述客户端按一定频率发送的心跳包,以监测用户的登录状态,并且每接收一个所述心跳包后,立即从零开始计时;The cloud computing-based real-time off-screen rendering method according to claim 7, wherein after the heartbeat connection with the client is established, the heartbeat packet sent by the client according to a certain frequency is received to monitor the login status of the user. And every time after receiving one of the heartbeat packets, immediately start timing from zero;
    若计时时间大于或等于所述掉线阈值时间,将用户从所述用户在线列表中移除,释放已创建的所述直连链路和已启用的渲染资源。If the timing time is greater than or equal to the drop threshold time, the user is removed from the online list of users, and the created direct link and the enabled rendering resource are released.
  9. 如权利要求7所述的基于云计算的实时离屏渲染方法,其特征在于,在所述客户端在线高峰期,提前开启一定数量的渲染资源,而在所述客户端在线 低谷期,关闭一定数量的渲染资源。The cloud computing-based real-time off-screen rendering method according to claim 7, wherein during the online peak period of the client, a certain number of rendering resources are opened in advance, and the client is online. At the low end, close a certain amount of rendering resources.
  10. 一种基于云计算的实时离屏渲染装置,其特征在于,包括:A real-time off-screen rendering device based on cloud computing, comprising:
    通信中转单元,用于接收客户端发送的云渲染服务请求;a communication relay unit, configured to receive a cloud rendering service request sent by the client;
    渲染资源单元,用于提供渲染资源进行渲染服务;a rendering resource unit for providing a rendering resource for rendering services;
    资源管理单元,用于管理和启用所述渲染资源;a resource management unit, configured to manage and enable the rendering resource;
    业务调度单元,用于创建所述渲染资源与所述客户端的直连链路。a service scheduling unit, configured to create a direct link between the rendering resource and the client.
  11. 如权利要求10所述的基于云计算的实时离屏渲染装置,其特征在于,所述资源管理单元包括:The cloud computing-based real-time off-screen rendering apparatus according to claim 10, wherein the resource management unit comprises:
    渲染资源列表子单元,用于保存所述渲染资源单元中各个渲染资源的地址,并按一定频率对各个渲染资源的工作状态进行统计,而且根据统计结果,建立渲染资源列表;a rendering resource list sub-unit, configured to save an address of each rendering resource in the rendering resource unit, and perform statistics on the working state of each rendering resource according to a certain frequency, and establish a rendering resource list according to the statistical result;
    渲染资源启用子单元,用于查询所述渲染资源列表中是否有可用的渲染资源,并在有可用的渲染资源时,启用其中最优的渲染资源,否则,返回无可用资源信息至所述客户端;a rendering resource enabling subunit, configured to query whether there is a rendering resource available in the rendering resource list, and enable an optimal rendering resource when the rendering resource is available; otherwise, return no available resource information to the client end;
    渲染资源地址发送子单元,用于将所述渲染资源启用子单元启用的渲染资源的地址发送至所述业务调度单元,以供所述业务调度单元创建所述直连链路时使用。And a rendering resource address sending subunit, configured to send an address of the rendering resource enabled sub-unit enabled rendering resource to the service scheduling unit, to be used by the service scheduling unit to create the direct link.
  12. 如权利要求11所述的基于云计算的实时离屏渲染装置,其特征在于,所述业务调度单元包括:The cloud computing-based real-time off-screen rendering apparatus according to claim 11, wherein the service scheduling unit comprises:
    通信链路管理子单元,用于给所述客户端分配通信端口,并在接收所述渲染资源地址发送子单元发送的渲染资源的地址后,将所述渲染资源的地址与所述客户端的通信端口绑定,以创建所述渲染资源与所述客户端的所述直连链路。a communication link management subunit, configured to allocate a communication port to the client, and after receiving the address of the rendering resource sent by the rendering resource address sending subunit, communicate the address of the rendering resource with the client Port binding to create the direct link of the rendering resource to the client.
  13. 如权利要求12所述的基于云计算的实时离屏渲染装置,其特征在于, 所述渲染资源包括:The cloud computing-based real-time off-screen rendering apparatus according to claim 12, wherein The rendering resources include:
    资源数据下载子单元,用于根据所述云渲染服务请求中描述的渲染实体,请求下载所述渲染实体的资源数据,并执行所述资源数据的下载;a resource data downloading subunit, configured to download resource data of the rendering entity according to the rendering entity described in the cloud rendering service request, and perform downloading of the resource data;
    渲染执行子单元,用于根据所述云渲染请求中描述的渲染内容,对所述资源数据进行实时渲染;And a rendering execution subunit, configured to perform real-time rendering on the resource data according to the rendering content described in the cloud rendering request;
    帧缓存子单元,用于缓存所述渲染执行子单元实时产生的渲染结果;a frame buffer subunit, configured to cache a rendering result generated by the rendering execution subunit in real time;
    压缩编码子单元,用于实时获取所述帧缓冲子单元中的渲染结果,并对所述渲染结果压缩编码;a compression coding subunit, configured to acquire a rendering result in the frame buffer subunit in real time, and compress and encode the rendering result;
    渲染结果发送子单元,用于实时将经过所述压缩编码子单元处理后的渲染结果,通过所述直连链路发送至所述客户端,并根据所述直连链路的通信状况和所述客户端的操作,实时调整所述渲染结果的发送频率。a rendering result sending subunit, configured to send, in real time, a rendering result processed by the compression encoding subunit to the client through the direct link, and according to the communication status and location of the direct link The operation of the client adjusts the transmission frequency of the rendering result in real time.
  14. 如权利要求13所述的基于云计算的实时离屏渲染装置,其特征在于,所述装置还包括:The device of claim 13 further comprising:
    存储单元,用于预先存储用户的渲染实体资源数据;a storage unit, configured to pre-store the rendering entity resource data of the user;
    数据库管理单元,用于管理用户的渲染实体资源数据,并在所述渲染资源请求下载资源数据时,发送所述资源数据在所述存储单元中的存放地址至所述渲染资源,以供所述渲染资源下载所述资源数据。a database management unit, configured to manage rendering entity resource data of the user, and when the rendering resource requests to download resource data, send a storage address of the resource data in the storage unit to the rendering resource, where The rendering resource downloads the resource data.
  15. 如权利要求14所述的基于云计算的实时离屏渲染装置,其特征在于,所述装置包括用户管理单元,并且,The cloud computing-based real-time off-screen rendering apparatus according to claim 14, wherein the apparatus comprises a user management unit, and
    所述通信中转单元,还用于接收所述客户端发送的用户验证请求和离线请求;The communication relay unit is further configured to receive a user verification request and an offline request sent by the client;
    所述数据库管理单元,还用于管理用户的身份信息,以及存储用户预先绑定的用户身份信息; The database management unit is further configured to manage identity information of the user, and store user identity information pre-bound by the user;
    所述业务调度单元,还用于将所述用户验证请求和所述离线请求转发至所述用户管理单元。The service scheduling unit is further configured to forward the user verification request and the offline request to the user management unit.
  16. 如权利要求15所述的基于云计算的实时离屏渲染装置,其特征在于,所述用户管理单元包括:The cloud computing-based real-time off-screen rendering apparatus according to claim 15, wherein the user management unit comprises:
    身份信息验证子单元,用于解析所述用户验证请求中包含的用户身份信息,并将所述用户身份信息发送至所述数据库管理单元进行比对,验证所述用户身份信息是否与预先绑定的用户身份信息一致;An identity information verification subunit, configured to parse user identity information included in the user authentication request, and send the user identity information to the database management unit for comparison, and verify whether the user identity information is pre-bound User identity information is consistent;
    心跳连接子单元,用于根据所述用户身份信息是否与预先绑定的用户身份信息一致,返回识别信息至所述客户端,并建立与所述客户端的心跳连接;并在返回所述识别信息至所述客户端后,接收所述客户端发送的心跳包,若接收到所述心跳包,则判定所述心跳连接建立成功,若未接收到所述心跳包,则判定所述心跳连接失败,用户离线;以及在所述心跳连接建立成功后,接收到所述客户端发送的所述离线请求时,断开所述心跳连接;a heartbeat connection subunit, configured to return identification information to the client according to whether the user identity information is consistent with pre-bound user identity information, and establish a heartbeat connection with the client; and return the identification information After receiving the heartbeat packet sent by the client, if the heartbeat packet is received, determining that the heartbeat connection is successfully established, and if the heartbeat packet is not received, determining that the heartbeat connection fails The user is offline; and after the heartbeat connection is successfully established, the heartbeat connection is disconnected when the offline request sent by the client is received;
    用户在线列表管理子单元,用于建立用户在线列表,并在所述心跳连接建立成功时,将用户加入至所述用户在线列表;并在接收到所述客户端发送的所述离线请求时,将用户从所述用户在线列表中移除,释放已创建的所述直连链路和已启用的渲染资源。a user online list management sub-unit, configured to establish a user online list, and when the heartbeat connection is successfully established, add the user to the online list of the user; and when receiving the offline request sent by the client, Removing the user from the online list of users releases the created direct link and enabled rendering resources.
  17. 如权利要求16所述的基于云计算的实时离屏渲染装置,其特征在于,所述心跳连接子单元,还用于在接收一个所述心跳包后,从零开始计时,并在计时时间大于所述掉线阈值时间时,将用户掉线信息发送至所述用户在线列表管理子单元,使所述用户在线列表管理子单元将所述用户从所述用户在线列表中移除,释放已创建的所述直连链路和已启用的渲染资源。The cloud computing-based real-time off-screen rendering apparatus according to claim 16, wherein the heartbeat connection sub-unit is further configured to start timing from zero after receiving one of the heartbeat packets, and the timing is greater than Sending the user drop information to the online list management subunit of the user when the line is dropped, so that the user online list management subunit removes the user from the online list of the user, and the release has been created. The direct link and the enabled rendering resources.
  18. 如权利要求15所述的基于云计算的实时离屏渲染装置,其特征在于,所述装置还包括:The device of claim 15 further comprising:
    智能管理单元,用于在用户在线高峰期,提前开启一定数量的渲染资源, 而在用户在线低谷期,关闭一定数量的渲染资源。An intelligent management unit for opening a certain amount of rendering resources in advance during a user's online peak period. In the user's online trough, a certain amount of rendering resources are turned off.
  19. 一种基于云计算的实时离屏渲染系统,其特征在于,包括客户端、公网和若干用户资源池,所述用户资源池分别绑定有唯一的公网IP,所述客户端通过链接至所述公网IP,接入所述用户资源池;A real-time off-screen rendering system based on a cloud computing system, comprising: a client, a public network, and a plurality of user resource pools, wherein the user resource pools are respectively bound with a unique public network IP, and the client is linked to The public network IP accesses the user resource pool;
    所述用户资源池包括路由器、渲染资源服务器、资源管理服务器和业务调度服务器;其中,The user resource pool includes a router, a rendering resource server, a resource management server, and a service scheduling server;
    所述路由器,用于接收所述客户端发送云渲染服务请求,并将所述云渲染服务请求转发至所述业务调度服务器;The router is configured to receive, by the client, a cloud rendering service request, and forward the cloud rendering service request to the service scheduling server;
    所述业务调度服务器,用于创建所述渲染资源与所述客户端的直连链路,并将所述云渲染服务请求转发至所述渲染资源服务器和所述资源管理服务器;The service scheduling server is configured to create a direct link between the rendering resource and the client, and forward the cloud rendering service request to the rendering resource server and the resource management server;
    所述渲染资源服务器,用于提供渲染资源进行渲染服务;The rendering resource server is configured to provide a rendering resource for rendering services;
    所述资源管理服务器,用于管理和启用所述渲染资源。The resource management server is configured to manage and enable the rendering resource.
  20. 如权利要求19所述的基于云计算的实时离屏渲染系统,其特征在于,所述资源管理服务器保存所述渲染资源服务器中各个渲染资源的地址,并按一定频率对各个渲染资源的工作状态进行统计,而且根据统计结果,建立渲染资源列表;The cloud computing-based real-time off-screen rendering system according to claim 19, wherein the resource management server saves an address of each rendering resource in the rendering resource server, and works on each rendering resource according to a certain frequency. Perform statistics, and based on the statistical results, create a rendering resource list;
    所述资源管理服务器接收所述业务调度服务器转发的所述云渲染服务请求,查询所述渲染资源列表中是否有可用的渲染资源,若有,则启用其中最优的渲染资源,否则返回无可用资源信息至所述客户端;Receiving, by the resource management server, the cloud rendering service request forwarded by the service scheduling server, querying whether the rendering resource is available in the rendering resource list, and if yes, enabling the optimal rendering resource, otherwise returning no available Resource information to the client;
    所述资源管理服务器启用渲染资源,并且将所述渲染资源的地址发送至所述业务调度服务器,以供所述业务调度服务器创建所述直连链路时使用。The resource management server enables a rendering resource and sends an address of the rendering resource to the service scheduling server for use by the service scheduling server to create the direct link.
  21. 如权利要求20所述的基于云计算的实时离屏渲染系统,其特征在于,所述业务调度服务器接收所述资源管理服务器发送的地址,并分配给所述客户端一个通信端口,将所述渲染资源的地址与所述客户端的通信端口绑定,以创 建所述渲染资源与所述客户端的所述直连链路。The cloud computing-based real-time off-screen rendering system according to claim 20, wherein the service scheduling server receives an address sent by the resource management server and allocates to the client a communication port, The address of the rendering resource is bound to the communication port of the client to create And constructing the rendering resource with the direct link of the client.
  22. 如权利要求21所述的基于云计算的实时离屏渲染系统,其特征在于,所述渲染资源根据所述云渲染服务请求中描述的渲染实体,下载所述渲染实体的资源数据;并根据所述云渲染请求中描述的渲染内容,对下载的所述资源数据进行实时渲染,在帧缓冲中实时产生渲染结果;The cloud computing-based real-time off-screen rendering system according to claim 21, wherein the rendering resource downloads resource data of the rendering entity according to a rendering entity described in the cloud rendering service request; Deriving the rendering content described in the cloud rendering request, real-time rendering the downloaded resource data, and generating a rendering result in a frame buffer in real time;
    所述渲染资源对所述帧缓冲中的渲染结果进行压缩编码;将压缩编码后的渲染结果,通过所述直连链路发送至所述客户端,并根据所述直连链路的通信状况和所述客户端的操作,实时调整所述渲染结果的发送频率。The rendering resource performs compression encoding on the rendering result in the frame buffer, and sends the compression-encoded rendering result to the client through the direct link, and according to the communication status of the direct link And the operation of the client, adjusting the sending frequency of the rendering result in real time.
  23. 如权利要求22所述的基于云计算的实时离屏渲染系统,其特征在于,所述系统包括数据库服务器和存储服务器;所述用户资源池共用所述数据库服务器和所述存储服务器;其中,The cloud computing-based real-time off-screen rendering system of claim 22, wherein the system comprises a database server and a storage server; wherein the user resource pool shares the database server and the storage server;
    所述存储服务器,用于预先存储用户的渲染实体资源数据;The storage server is configured to pre-store the rendering entity resource data of the user;
    所述数据库管理服务器,用于管理用户的渲染实体资源数据,并在所述渲染资源请求下载资源数据时,将所述资源数据在所述存储服务器中的存放地址发送至所述渲染资源,以供所述渲染资源下载所述资源数据。The database management server is configured to manage the rendering entity resource data of the user, and send the storage address of the resource data in the storage server to the rendering resource when the rendering resource requests to download the resource data, The resource data is downloaded for the rendering resource.
  24. 如权利要求22所述的基于云计算的实时离屏渲染系统,其特征在于,所述系统包括:用户管理服务器,并且,The cloud computing-based real-time off-screen rendering system according to claim 22, wherein the system comprises: a user management server, and
    所述路由器,还用于接收所述客户端发送的用户验证请求;The router is further configured to receive a user verification request sent by the client;
    所述数据库管理服务器,还用于管理用户的身份信息,以及存储用户预先绑定的用户身份信息;The database management server is further configured to manage identity information of the user, and store user identity information pre-bound by the user;
    所述业务调度服务器,还用于将所述用户验证请求转发至所述用户管理服务器。The service scheduling server is further configured to forward the user verification request to the user management server.
  25. 如权利要求24所述的基于云计算的实时离屏渲染系统,其特征在于,所述用户管理服务器接收所述业务调度服务器转发的用户验证请求,并解析所 述用户验证请求中包含的用户身份信息,将所述用户身份信息发送至所述数据库管理单元进行比对,验证所述用户身份信息是否与预先绑定的用户身份信息一致;The cloud computing-based real-time off-screen rendering system according to claim 24, wherein the user management server receives a user authentication request forwarded by the service scheduling server, and parses the The user identity information included in the user verification request is sent to the database management unit for comparison, and the user identity information is verified to be consistent with the pre-bound user identity information;
    所述用户管理服务器根据所述用户身份信息是否与预先绑定的用户身份信息一致,返回识别信息至所述客户端,使所述客户端建立与所述用户管理服务器的心跳连接;The user management server returns the identification information to the client according to whether the user identity information is consistent with the pre-bound user identity information, so that the client establishes a heartbeat connection with the user management server;
    在返回所述识别信息至所述客户端后,所述用户管理服务器接收到所述客户端发送的心跳包,则判定所述心跳连接建立成功,并将用户加入至用户在线列表中;所述用户管理服务器未接收到所述心跳连接,则判定所述心跳连接失败,用户离线;After returning the identification information to the client, the user management server receives the heartbeat packet sent by the client, determines that the heartbeat connection is successfully established, and adds the user to the online list of users; If the user management server does not receive the heartbeat connection, it is determined that the heartbeat connection fails, and the user is offline;
    在所述心跳连接建立成功后,所述用户管理服务器接收到所述客户端发送的所述离线请求,则断开所述心跳连接,将用户从所述用户在线列表中移除,并释放已创建的所述直连链路和停用已启用的渲染资源。After the heartbeat connection is successfully established, the user management server receives the offline request sent by the client, disconnects the heartbeat connection, removes the user from the online list of the user, and releases the The direct link is created and the enabled rendering resources are deactivated.
  26. 如权利要求25所述的基于云计算的实时离屏渲染系统,其特征在于,所述用户管理服务器接收一个所述心跳包后,从零开始计时;The cloud computing-based real-time off-screen rendering system according to claim 25, wherein the user management server receives a heartbeat packet and starts timing from zero;
    若所述计时时间大于所述掉线阈值时间,所述用户管理服务器将所述用户从所述用户在线列表中移除,并释放已创建的所述直连链路和停用已启用的渲染资源。If the timing time is greater than the drop threshold time, the user management server removes the user from the online list of users, and releases the created direct link and disables enabled rendering. Resources.
  27. 如权利要求24所述的基于云计算的实时离屏渲染系统,其特征在于,所述系统包括:The cloud computing-based real-time off-screen rendering system of claim 24, wherein the system comprises:
    智能管理服务器,用于在用户在线高峰期,提前开启一定数量的渲染资源,而在用户在线低谷期,关闭一定数量的渲染资源。 The intelligent management server is used to open a certain number of rendering resources in advance during the user's online peak period, and close a certain amount of rendering resources during the user's online trough.
PCT/CN2016/088767 2015-11-24 2016-07-06 Cloud computing based real-time off-screen rendering method, apparatus and system WO2017088484A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510827310.5 2015-11-24
CN201510827310.5A CN105488837B (en) 2015-11-24 2015-11-24 Real-time off screen rendering method based on cloud computing, apparatus and system

Publications (1)

Publication Number Publication Date
WO2017088484A1 true WO2017088484A1 (en) 2017-06-01

Family

ID=55675801

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/088767 WO2017088484A1 (en) 2015-11-24 2016-07-06 Cloud computing based real-time off-screen rendering method, apparatus and system

Country Status (2)

Country Link
CN (1) CN105488837B (en)
WO (1) WO2017088484A1 (en)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110264550A (en) * 2019-06-19 2019-09-20 深圳市瑞云科技有限公司 A kind of fireworks joint performance effect simulation display systems and method based on CG real-time rendering
CN111260540A (en) * 2020-01-13 2020-06-09 成都卓影科技股份有限公司 2D-3D 2.5D conversion engine under 5G network
CN112132942A (en) * 2020-09-30 2020-12-25 深圳星寻科技有限公司 Three-dimensional scene roaming real-time rendering method
CN112486620A (en) * 2020-12-03 2021-03-12 广州虎牙科技有限公司 Cross-process off-screen rendering method and device, electronic equipment and storage medium
CN113382221A (en) * 2021-05-14 2021-09-10 异现实科技(成都)有限公司 Single-instance multi-terminal cloud rendering system and method thereof
CN113572971A (en) * 2021-06-30 2021-10-29 杭州群核信息技术有限公司 Exposure control method and system of real-time high dynamic range image based on cloud rendering platform
CN113946399A (en) * 2021-10-28 2022-01-18 上海数慧系统技术有限公司 Spatial data loading method and device
CN115865518A (en) * 2023-01-30 2023-03-28 天云融创数据科技(北京)有限公司 Cloud platform data processing method and system based on big data
CN116415321A (en) * 2022-12-28 2023-07-11 浙江华东工程数字技术有限公司 Cloud CAD processing system and construction method thereof
CN116563085A (en) * 2023-07-06 2023-08-08 湖南马栏山视频先进技术研究院有限公司 Large-scale parallel processing method and system for offline rendering

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105488837B (en) * 2015-11-24 2019-06-04 成都云创互联信息技术有限公司 Real-time off screen rendering method based on cloud computing, apparatus and system
CN105677240B (en) 2015-12-30 2019-04-23 上海联影医疗科技有限公司 Data-erasure method and system
CN106202927A (en) * 2016-05-31 2016-12-07 武汉联影医疗科技有限公司 The rendering intent of medical image and system
CN107483390B (en) * 2016-06-08 2020-10-16 成都云创互联信息技术有限公司 Cloud rendering network deployment subsystem, system and cloud rendering platform
CN106127844A (en) * 2016-06-22 2016-11-16 民政部零研究所 Mobile phone users real-time, interactive access long-range 3D scene render exchange method
CN106126148B (en) * 2016-06-30 2020-05-26 联想(北京)有限公司 Display control method and electronic equipment
CN108074210B (en) * 2016-11-10 2021-05-11 成都云创互联信息技术有限公司 Object acquisition system and method for cloud rendering
CN106598514B (en) * 2016-12-01 2020-06-09 惠州Tcl移动通信有限公司 Method and system for switching virtual reality mode in terminal equipment
CN108648257B (en) * 2018-04-09 2020-12-29 腾讯科技(深圳)有限公司 Panoramic picture acquisition method and device, storage medium and electronic device
CN108924587A (en) * 2018-06-27 2018-11-30 深圳市炬力北方微电子有限公司 A kind of rendering method and system based on cloud server
CN109218402A (en) * 2018-08-02 2019-01-15 胡雄风 Hold cloud integrative solution
CN111080768A (en) * 2019-10-16 2020-04-28 重庆灏漫科技有限公司 Multi-class terminal acquisition modeling system and modeling method
CN110913202B (en) * 2019-11-26 2022-01-07 深圳英伦科技股份有限公司 Three-dimensional display cloud rendering method and system
CN111494936A (en) * 2020-02-12 2020-08-07 阿里巴巴集团控股有限公司 Picture rendering method, device, system and storage medium
WO2021190651A1 (en) * 2020-03-27 2021-09-30 华为技术有限公司 Rendering quality adjustment method and related device
CN112565818B (en) * 2020-11-30 2022-01-11 中国矿业大学(北京) Two-three-dimensional integrated operation station platform construction method and electronic equipment
CN113453073B (en) * 2021-06-29 2023-01-06 北京百度网讯科技有限公司 Image rendering method and device, electronic equipment and storage medium
CN116449961B (en) * 2023-06-14 2023-10-10 蔚来汽车科技(安徽)有限公司 Input event control method, system, electronic device, storage medium and vehicle
CN117395454A (en) * 2023-12-08 2024-01-12 南京维赛客网络科技有限公司 Method, system and storage medium for changing virtual scene resources by using cloud rendering end
CN117456113B (en) * 2023-12-26 2024-04-23 山东山大华天软件有限公司 Cloud offline rendering interactive application implementation method and system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102571900A (en) * 2010-12-08 2012-07-11 中国电信股份有限公司 System and method for implementing far-end real-time control
CN102592315A (en) * 2011-01-12 2012-07-18 上海库达数字信息技术有限公司 3D rendering platform based on GPU cloud cluster
CN103247067A (en) * 2013-04-02 2013-08-14 深圳市瑞云科技有限公司 Remote rendering method and cloud rendering platform
WO2014093641A1 (en) * 2012-12-13 2014-06-19 Microsoft Corporation Asynchronous cloud rendered video delivery
CN105488837A (en) * 2015-11-24 2016-04-13 成都赫尔墨斯科技有限公司 Cloud computing based real-time off-screen rendering method, apparatus and system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102571900A (en) * 2010-12-08 2012-07-11 中国电信股份有限公司 System and method for implementing far-end real-time control
CN102592315A (en) * 2011-01-12 2012-07-18 上海库达数字信息技术有限公司 3D rendering platform based on GPU cloud cluster
WO2014093641A1 (en) * 2012-12-13 2014-06-19 Microsoft Corporation Asynchronous cloud rendered video delivery
CN103247067A (en) * 2013-04-02 2013-08-14 深圳市瑞云科技有限公司 Remote rendering method and cloud rendering platform
CN105488837A (en) * 2015-11-24 2016-04-13 成都赫尔墨斯科技有限公司 Cloud computing based real-time off-screen rendering method, apparatus and system

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110264550A (en) * 2019-06-19 2019-09-20 深圳市瑞云科技有限公司 A kind of fireworks joint performance effect simulation display systems and method based on CG real-time rendering
CN111260540B (en) * 2020-01-13 2023-06-13 成都卓影科技股份有限公司 2.5D conversion engine of 2D-3D under 5G network
CN111260540A (en) * 2020-01-13 2020-06-09 成都卓影科技股份有限公司 2D-3D 2.5D conversion engine under 5G network
CN112132942A (en) * 2020-09-30 2020-12-25 深圳星寻科技有限公司 Three-dimensional scene roaming real-time rendering method
CN112132942B (en) * 2020-09-30 2022-03-18 深圳星寻科技有限公司 Three-dimensional scene roaming real-time rendering method
CN112486620A (en) * 2020-12-03 2021-03-12 广州虎牙科技有限公司 Cross-process off-screen rendering method and device, electronic equipment and storage medium
CN113382221A (en) * 2021-05-14 2021-09-10 异现实科技(成都)有限公司 Single-instance multi-terminal cloud rendering system and method thereof
CN113572971A (en) * 2021-06-30 2021-10-29 杭州群核信息技术有限公司 Exposure control method and system of real-time high dynamic range image based on cloud rendering platform
CN113946399A (en) * 2021-10-28 2022-01-18 上海数慧系统技术有限公司 Spatial data loading method and device
CN113946399B (en) * 2021-10-28 2023-07-21 上海数慧系统技术有限公司 Space data loading method and device
CN116415321A (en) * 2022-12-28 2023-07-11 浙江华东工程数字技术有限公司 Cloud CAD processing system and construction method thereof
CN115865518B (en) * 2023-01-30 2023-05-16 天云融创数据科技(北京)有限公司 Cloud platform data processing method and system based on big data
CN115865518A (en) * 2023-01-30 2023-03-28 天云融创数据科技(北京)有限公司 Cloud platform data processing method and system based on big data
CN116563085A (en) * 2023-07-06 2023-08-08 湖南马栏山视频先进技术研究院有限公司 Large-scale parallel processing method and system for offline rendering
CN116563085B (en) * 2023-07-06 2023-09-01 湖南马栏山视频先进技术研究院有限公司 Large-scale parallel processing method and system for offline rendering

Also Published As

Publication number Publication date
CN105488837B (en) 2019-06-04
CN105488837A (en) 2016-04-13

Similar Documents

Publication Publication Date Title
WO2017088484A1 (en) Cloud computing based real-time off-screen rendering method, apparatus and system
WO2022028089A1 (en) Image processing method and device, server, and medium
CN103023872B (en) A kind of cloud game service platform
WO2019019370A1 (en) Processing method for live broadcast of audio and video, storage medium and mobile terminal
EP4223379A1 (en) Cloud gaming processing method, apparatus and device, and storage medium
CN106303674B (en) Data transmission method, device and intelligent television system
WO2014082505A1 (en) Transcoding method and system, and distributed file device
WO2017107911A1 (en) Method and device for playing video with cloud video platform
CN107370714A (en) The high efficiency communication method that facing cloud renders
CN102307153A (en) Virtual desktop transmission device and method
US11863832B2 (en) Start-up performance improvement for remote computer application
CN104349177B (en) It is a kind of to turn to method, virtual machine and the system for playing multimedia file under desktop cloud
WO2014139269A1 (en) Method and apparatus for playing and processing videos based on a virtual desktop
CN104144351A (en) Video playing method and device applying virtualization platform
US11889133B2 (en) Burst traffic processing method, computer device and readable storage medium
CN104998412A (en) Single-player game realization method and apparatus
WO2023040825A1 (en) Media information transmission method, computing device and storage medium
WO2023045551A1 (en) Camera control method and system, electronic device and storage medium
WO2014121477A1 (en) Video redirection method, device and system, and computer readable medium
CN115445194A (en) Rendering method, device and equipment of game and storage medium
CN103220347B (en) CRP cloud exchange method
CN103763307B (en) A kind of bandwidth optimization method and system
CN106686635B (en) Data transmission method and device based on control and configuration protocol of wireless access point
CN110113298A (en) Data transmission method, device, signal server and computer-readable medium
US20210021658A1 (en) Technologies for streaming device role reversal

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16867711

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16867711

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16867711

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 04.12.2018)

122 Ep: pct application non-entry in european phase

Ref document number: 16867711

Country of ref document: EP

Kind code of ref document: A1