Three-dimensional scene rendering method and device, electronic equipment and storage medium

The method addresses computing resource challenges in 3D scene rendering by distributing tasks across containerized services for parallel processing, enhancing resource utilization and user experience.

CN119152104APending Publication Date: 2024-12-17BEIJIG YUPONT ELECTRIC POWER TECH
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411172897.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-26
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

Existing 3D scene rendering methods face challenges in ensuring computing resources and computing power, leading to low system resource utilization and difficulty in meeting user rendering needs.

Method used

A three-dimensional scene rendering method utilizing containerized signaling, rendering, and relay services to distribute rendering tasks across multiple nodes for parallel processing, leveraging cloud computing elasticity and scalability, and avoiding resource overhead from traditional virtual machines.

Benefits of technology

Ensures adequate computing resources and power for efficient 3D scene rendering, improving system resource utilization and user experience by alleviating pressure on single machines.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119152104A_ABST
    Figure CN119152104A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a three-dimensional scene rendering method and device, electronic equipment and a storage medium, and the method comprises the steps: receiving a scene rendering request transmitted by a user side through a containerized signaling service, and transmitting the scene rendering request to a containerized rendering service, the scene rendering request comprises a rendering request for requesting to render a target three-dimensional scene; acquiring scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data; and returning the rendering result data to the user side through the containerized relay service. According to the embodiment of the invention, computing resources and computing power required by three-dimensional scene rendering can be ensured to be provided, and the utilization rate of system resources is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a three-dimensional scene rendering method, device, electronic equipment and storage medium. Background Art

[0002] The existing methods for rendering 3D scenes include scanline rendering, ray tracing, and physical rendering, which rely on powerful computing power and sufficient computing resources. As the demand for 3D scene rendering increases, the rendering of 3D scenes by a single machine gradually shows problems such as the difficulty in ensuring computing resources and computing power when the rendering program is deployed, as well as low system resource utilization, which cannot meet the rendering needs of users. Summary of the invention

[0003] The embodiments of the present invention provide a three-dimensional scene rendering method, device, electronic device and storage medium, which can ensure the provision of computing resources and computing power required for three-dimensional scene rendering and improve system resource utilization.

[0004] In a first aspect, an embodiment of the present invention provides a three-dimensional scene rendering method, applicable to an application server, comprising:

[0005] Receiving a scene rendering request sent by a user terminal through a containerized signaling service, and sending the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene;

[0006] Obtaining scene data of the target three-dimensional scene from a containerized data service through a containerized rendering service, and rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data; and

[0007] The rendering result data is returned to the user end through a containerized relay service.

[0008] In a second aspect, an embodiment of the present invention provides a three-dimensional scene rendering device, which is integrated in an application server and includes:

[0009] A signaling service management module, configured to receive a scene rendering request sent by a user terminal through a containerized signaling service, and send the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene;

[0010] a rendering service management module, configured to obtain scene data of the target three-dimensional scene from a containerized data service through a containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data; and

[0011] The relay service management module is used to return the rendering result data to the user end through the containerized relay service.

[0012] In a third aspect, an embodiment of the present invention further provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, a three-dimensional scene rendering method as described in any one of the embodiments of the present invention is implemented.

[0013] In a fourth aspect, an embodiment of the present invention further provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a three-dimensional scene rendering method as described in any one of the embodiments of the present invention.

[0014] A three-dimensional scene rendering method, device, electronic device and storage medium provided by the embodiments of the present invention utilize a containerized signaling service to receive and forward scene rendering requests, utilize a containerized rendering service to obtain scene data from a containerized data service and render a three-dimensional scene, and utilize a containerized relay service to return the rendered scene image data to the user end. The method can fully utilize the elasticity and scalability of cloud computing, and can distribute rendering tasks to multiple containerized rendering service nodes for parallel processing, thereby alleviating the pressure of a single machine, ensuring the provision of computing resources and computing power required for three-dimensional scene rendering, and then efficiently rendering the three-dimensional scene, meeting user rendering requirements and improving user experience; and because the containerized rendering service can run in an independent container, it can avoid the resource overhead brought by traditional virtual machines, thereby improving the utilization of system resources. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the technical solution of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0016] Figure 1 is a flow chart of a three-dimensional scene rendering method provided by an embodiment of the present invention;

[0017] Figure 2 is another schematic flow chart of the three-dimensional scene rendering method provided by an embodiment of the present invention;

[0018] Figure 3 is a structural schematic diagram of a three-dimensional scene rendering device provided by an embodiment of the present invention;

[0019] Figure 4 is another structural schematic diagram of a three-dimensional scene rendering device provided by an embodiment of the present invention;

[0020] Figure 5 It is a structural schematic diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0021] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0022] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0023] Figure 1 A flowchart of a 3D scene rendering method provided in an embodiment of the present invention is provided. The method can be performed by a 3D scene rendering device provided in an embodiment of the present invention, and the device can be implemented in software and / or hardware. In a specific embodiment, the device can be integrated in an electronic device, and the electronic device can be an application server. The following embodiments will be described by taking the device integrated in an electronic device as an example. Figure 1 , the method may specifically include the following steps:

[0024] Step 101, receiving a scene rendering request sent by a user terminal through a containerized signaling service, and sending the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene. This step can facilitate rendering of a target three-dimensional scene through a containerized rendering service.

[0025] Specifically, the target three-dimensional scene may include multiple three-dimensional scenes.

[0026] Specifically, the above scene rendering request may be a scene rendering request sent by one or more user terminals.

[0027] Specifically, the scene rendering request may include a rendering request corresponding to a non-target three-dimensional scene.

[0028] Optionally, the containerized signaling service may be run on the application server provided in the embodiment of the present invention, or may be run on other servers.

[0029] Optionally, before sending the scene rendering request to the containerized rendering service, it is verified whether the scene rendering request is a rendering request corresponding to the target three-dimensional scene.

[0030] Optionally, the process of sending the scene rendering request to the containerized rendering service includes: sending the verified scene rendering request to the containerized rendering service.

[0031] Optionally, there are multiple containerized rendering services.

[0032] Optionally, the process of sending the scene rendering request to the containerized rendering service includes: determining a target containerized rendering service from a plurality of containerized rendering services based on a polling algorithm, and sending the scene rendering request to the target containerized rendering service.

[0033] Specifically, by determining an available target containerized rendering service from multiple containerized rendering services based on a polling algorithm, rendering requests can be assigned to containerized rendering services in turn in a certain order, ensuring that each service has a chance to process the rendering request, thereby achieving load balancing.

[0034] Optionally, the scene rendering request includes rendering parameter adjustment information. The rendering parameter adjustment information may be set by the user as required.

[0035] Optionally, the scene rendering request includes network status and device performance information of the user terminal.

[0036] Specifically, the containerized signaling service may receive a scene rendering request sent by a user terminal through a WebSocket communication protocol, and send the scene rendering request to the containerized rendering service.

[0037] Specifically, processing control messages and session messages between the client and the server through a containerized signaling service can help ensure that rendering tasks are performed in real time and accurately.

[0038] Optionally, the above-mentioned process of receiving a scene rendering request sent by a user terminal through a containerized signaling service and sending the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene, includes: controlling the containerized signaling service to receive the scene rendering request sent by the user terminal and sending the scene rendering request to the containerized rendering service by managing the life cycle of the containerized signaling service.

[0039] Step 102, obtain the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data. This step can utilize the containerized rendering service with high elasticity and scalability to ensure that the computing resources and computing power required for three-dimensional scene rendering are provided, and the three-dimensional scene is rendered efficiently.

[0040] Specifically, the containerized rendering service may run on one or more image processing servers, and the containerized data service may run on a data server.

[0041] Specifically, the containerized data service can be used to store and manage data such as terrain, images, and three-dimensional models required for rendering a target three-dimensional scene, so that the quality of the final rendered three-dimensional scene image data is higher and more realistic.

[0042] Optionally, the three-dimensional scene rendering method provided by the embodiment of the present invention also includes managing the life cycle of the containerized data service.

[0043] Optionally, the process of rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data includes: rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene and the rendering parameter adjustment information to obtain rendering result data.

[0044] Specifically, by rendering the target three-dimensional scene based on the rendering parameter adjustment information, customer needs can be better met.

[0045] Specifically, the process of rendering the target three-dimensional scene may include: performing calculation processes such as ray tracing, shading, and texture mapping of three-dimensional graphics.

[0046] Optionally, the process of obtaining scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data includes: controlling the containerized rendering service to obtain scene data of the target three-dimensional scene from the containerized data service by managing the life cycle of the containerized rendering service, and rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene.

[0047] In an optional specific embodiment of the present invention, before obtaining the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, the three-dimensional scene rendering method further includes:

[0048] The resource utilization rate of the running containerized rendering service is obtained through the containerized signaling service, and the scaling decision result of whether to scale the containerized rendering service is obtained according to the resource utilization rate; based on the scaling decision result, it is determined to increase or decrease the running containerized rendering service to obtain the currently running containerized rendering service.

[0049] Optionally, the above scaling decision results include: scaling up, scaling down, and not scaling up or scaling down.

[0050] Optionally, the above-mentioned process of obtaining the resource utilization of the running containerized rendering service through the containerized signaling service, and obtaining the scaling decision result of whether to scale the containerized rendering service based on the resource utilization includes: obtaining the resource utilization of the running containerized rendering service through the signaling service, when the resource utilization is not less than a preset first utilization threshold, the signaling service makes a decision to expand the capacity to obtain a decision result of expanding the capacity; when the resource utilization is less than a preset second utilization threshold, the signaling service makes a decision to scale down the capacity to obtain a decision result of scaling down the capacity.

[0051] Optionally, the process of determining to increase the running containerized rendering service based on the scaling decision result includes: obtaining the scaling decision result from the signaling service, and increasing the running containerized rendering service based on the scaling decision result.

[0052] Optionally, the process of determining to reduce the running containerized rendering service based on the scaling decision result includes: obtaining a scaling decision result from a signaling service, and reducing the running containerized rendering service based on the scaling decision result.

[0053] Optionally, scene data of a target three-dimensional scene is obtained from a containerized data service through a containerized rendering service, and the target three-dimensional scene is rendered based on the scene data of the target three-dimensional scene to obtain rendering result data, including: scene data of the target three-dimensional scene is obtained from a containerized data service through a currently running containerized rendering service, and the target three-dimensional scene is rendered based on the scene data of the target three-dimensional scene to obtain rendering result data.

[0054] Step 103, returning the rendering result data to the user end through the containerized relay service. This step is combined with steps 101 to 102, by using the containerized signaling service to receive and forward the scene rendering request, and using the containerized rendering service to obtain the scene data from the containerized data service and render the three-dimensional scene, and also using the containerized relay service to return the rendered scene image data to the user end, which can make full use of the elasticity and scalability of cloud computing, and can distribute the rendering tasks to multiple containerized rendering service nodes for parallel processing, thereby alleviating the pressure of a single machine, ensuring the provision of the computing resources and computing power required for three-dimensional scene rendering, and then efficiently rendering the three-dimensional scene, meeting the user's rendering needs and improving the user experience; and because the containerized rendering service can run in an independent container, it can avoid the resource overhead brought by traditional virtual machines, thereby improving the utilization of system resources.

[0055] Specifically, the above containerized relay service can run on the application server provided by the embodiment of the present invention.

[0056] Optionally, the process of returning the rendering result data to the user end through the containerized relay service includes: encoding the rendering result data into a video stream through a video encoder, and transmitting the video stream to the user end in real time through a network transmission protocol.

[0057] Optionally, the process of encoding the rendering result data into a video stream through a video encoder includes: determining the video encoding resolution based on the network status and device performance information of the user end, and encoding the rendering result into the above-mentioned video stream based on the video encoding resolution to achieve a balance between rendering performance and user experience.

[0058] Specifically, the above network transmission protocol may be, for example, WebRTC, RTMP, and HTTP Live Streaming.

[0059] Specifically, the rendering result data is transmitted back to the user end point-to-point through the containerized relay service, which can help ensure low latency and high-quality transmission experience.

[0060] Optionally, the three-dimensional scene rendering method provided by the embodiment of the present invention may be executed by a containerized management service running on the above-mentioned application server.

[0061] Optionally, the process of returning the rendering result data to the user end through the containerized relay service includes: controlling the containerized relay service to return the rendering result data to the user end by controlling the life cycle of the containerized relay service.

[0062] The following further describes a three-dimensional scene rendering method provided by another embodiment of the present invention. Figure 2 As shown, the following steps may be included:

[0063] Step 201, obtain a first container image corresponding to a containerized signaling service, a second container image corresponding to encoded data of a target three-dimensional scene, a third container image corresponding to scene data of the target three-dimensional scene, and a fourth container image corresponding to a containerized relay service.

[0064] Optionally, the process of obtaining the first container image corresponding to the containerized signaling service, the second container image corresponding to the encoded data of the target three-dimensional scene, the third container image corresponding to the scene data of the target three-dimensional scene, and the fourth container image corresponding to the containerized relay service includes: obtaining the first container image, the second container image, the third container image and the fourth container image from the image library.

[0065] Specifically, the production process of the second container image includes: using a rendering engine to write three-dimensional scene coding data, and packaging the three-dimensional scene coding data to obtain a three-dimensional scene coding data packet; using the three-dimensional scene coding data packet and the corresponding running service to produce the second container image.

[0066] Step 202, deploy the first container image, the second container image, the third container image and the fourth container image to corresponding servers respectively, and obtain containerized signaling service, containerized rendering service, containerized data service and containerized relay service accordingly.

[0067] Optionally, the process of deploying the second container image to the corresponding server to obtain a containerized rendering service includes: configuring a container graphics card tool and a container remote access interface on the graphics processing server; and running the containerized rendering service corresponding to the second container image on the graphics processing server through the container graphics card tool and the container remote access interface.

[0068] Optionally, the three-dimensional scene rendering method provided by the embodiment of the present invention further includes: real-time monitoring of the running status of the containerized rendering service through the container remote access interface, and stopping the containerized rendering service through the container remote access interface.

[0069] Optionally, the aforementioned process of adding the running containerized rendering service based on the scaling decision result to obtain the currently running containerized rendering service includes: running the containerized rendering service corresponding to the second container image on a graphics processing server that has been configured with the container graphics card tool and the container remote access interface through the corresponding container graphics card tool and the container remote access interface.

[0070] Optionally, the aforementioned process of reducing the running containerized rendering service based on the scaling decision result to obtain the currently running containerized rendering service includes: stopping the running graphics processing server through the corresponding container graphics card tool and the container remote access interface. Optionally, the aforementioned process of respectively deploying the first container image, the second container image, the third container image and the fourth container image to the corresponding server, and correspondingly obtaining the containerized signaling service, the containerized rendering service, the containerized data service and the containerized relay service includes:

[0071] The first container image is deployed on the application server, the second container image is deployed on the graphics processing server, the third container image is deployed on the containerized data service, and the fourth container image is deployed on the application server.

[0072] Step 203: receiving a scene rendering request sent by the user terminal through the containerized signaling service, and sending the scene rendering request to the containerized rendering service, where the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene.

[0073] Step 204 : Obtain scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data.

[0074] Step 205: Return the rendering result data to the user end through the containerized relay service.

[0075] The embodiments of the present invention deploy the rendering program by deploying the corresponding container image on the corresponding server according to the three-dimensional scene rendering requirements, thereby avoiding the problem of cumbersome deployment and configuration of the rendering program and easy environmental chaos, and deploying containerized signaling services, containerized rendering services, containerized data services and containerized relay services, which can facilitate the smooth and efficient implementation of the subsequent three-dimensional scene rendering process.

[0076] Figure 3 is a structural diagram of a 3D scene rendering device provided by an embodiment of the present invention, and the device is suitable for executing the 3D scene rendering method provided by an embodiment of the present invention. Figure 3 As shown, the device may specifically include:

[0077] The signaling service management module 301 is used to receive a scene rendering request sent by a user terminal through a containerized signaling service, and send the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting to render a target three-dimensional scene. This module can facilitate rendering a target three-dimensional scene through a containerized rendering service.

[0078] Optionally, the signaling service management module 301 can be specifically used to obtain a first container image corresponding to the containerized signaling service, and deploy the first container image to a corresponding server to obtain the containerized signaling service.

[0079] Optionally, the signaling service management module 301 can be specifically used to verify whether the scene rendering request is a rendering request corresponding to the target three-dimensional scene, and send the verified scene rendering request to the containerized rendering service.

[0080] Optionally, there are multiple containerized rendering services.

[0081] Optionally, the signaling service management module 301 can be specifically configured to determine a target containerized rendering service from a plurality of containerized rendering services based on a polling algorithm, and send a scene rendering request to the target containerized rendering service.

[0082] Optionally, the scene rendering request includes rendering parameter adjustment information.

[0083] The rendering service management module 302 is used to obtain the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data. This module can use the containerized rendering service with high elasticity and scalability to ensure that the computing resources and computing power required for three-dimensional scene rendering are provided, and efficiently render the three-dimensional scene.

[0084] Optionally, the rendering service management module 302 can be specifically used to obtain a second container image corresponding to the encoding data of the target three-dimensional scene, and deploy the second container image to a corresponding server to obtain a containerized rendering service.

[0085] Optionally, the rendering service management module 302 can be specifically used to configure a container graphics card tool and a container remote access interface on a graphics processing server; and to run a containerized rendering service corresponding to the second container image on the graphics processing server through the container graphics card tool and the container remote access interface.

[0086] Optionally, the rendering service management module 302 can be specifically used to monitor the running status of the containerized rendering service in real time through the container remote access interface, and to stop the running of the containerized rendering service through the container remote access interface.

[0087] Optionally, the rendering service management module 302 can be specifically used to render the target three-dimensional scene based on the scene data of the target three-dimensional scene and the rendering parameter adjustment information to obtain rendering result data.

[0088] Relay service management module 303 is used to return the rendering result data to the user end through the containerized relay service. This module is combined with module 301 and module 302, and can receive and forward scene rendering requests by utilizing containerized signaling services, and obtain scene data from containerized data services and render three-dimensional scenes by utilizing containerized rendering services, and also return the rendered scene image data to the user end by utilizing containerized relay services. It can make full use of the elasticity and scalability of cloud computing, and can distribute rendering tasks to multiple containerized rendering service nodes for parallel processing, thereby alleviating the pressure of a single machine, ensuring the provision of computing resources and computing power required for three-dimensional scene rendering, and then efficiently rendering three-dimensional scenes, meeting user rendering needs and improving user experience; and because containerized rendering services can run in independent containers, it can avoid the resource overhead brought by traditional virtual machines, thereby improving the utilization of system resources.

[0089] Optionally, the relay service management module 303 can be specifically used to obtain a fourth container image corresponding to the containerized relay service, and deploy the fourth container image to a corresponding server to obtain the containerized relay service.

[0090] Optionally, the three-dimensional scene rendering device provided by an embodiment of the present invention further includes: a scene containerized data service module, which is used to obtain a third container image corresponding to the scene data of the target three-dimensional scene, and deploy the third container image to a corresponding server.

[0091] Optionally, the three-dimensional scene rendering device provided by the embodiment of the present invention also includes: a scaling module, which is used to obtain the resource utilization of the running containerized rendering service through the containerized signaling service before obtaining the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and obtain the scaling decision result of whether to scale the containerized rendering service according to the resource utilization; and increase or decrease the running containerized rendering service based on the scaling decision result to obtain the currently running containerized rendering service. Optionally, the aforementioned rendering service management module 302 can be specifically used to obtain the scene data of the target three-dimensional scene from the containerized data service through the currently running containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data.

[0092] Optional, such as Figure 4 As shown, the three-dimensional scene rendering device provided by the embodiment of the present invention includes:

[0093] The containerized management service is used to obtain and deploy the first container image, the second container image, the third container image and the fourth container image, and obtain the containerized signaling service, the containerized rendering service, the containerized data service and the containerized relay service accordingly, and manage the life cycle of the containerized signaling service, the containerized rendering service, the containerized data service and the containerized relay service.

[0094] Containerized data service, used to provide scene data of the target 3D scene.

[0095] The containerized signaling service is used to receive the scene rendering request sent by the user end and send the scene rendering request to the containerized rendering service.

[0096] The containerized rendering service is used to obtain scene data of a target three-dimensional scene from a containerized data service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data.

[0097] Specifically, the containerized rendering service may include multiple containerized rendering services.

[0098] The containerized relay service returns the rendering result data to the user end.

[0099] Optional, such as Figure 4 As shown, the above-mentioned containerized management service, containerized signaling service and containerized relay service can all run on an application server, the above-mentioned containerized rendering service can run on a graphics processing server, and the above-mentioned containerized data service can run on a data server.

[0100] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional modules is used as an example for illustration. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. The specific working process of the functional modules described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0101] An embodiment of the present invention further provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the three-dimensional scene rendering method provided in any of the above embodiments is implemented.

[0102] An embodiment of the present invention further provides a computer-readable medium on which a computer program is stored. When the program is executed by a processor, the three-dimensional scene rendering method provided by any of the above embodiments is implemented.

[0103] The embodiment of the present invention further provides a computer program product, including a computer program, which, when executed by a processor, implements the three-dimensional scene rendering method as described in any one of the embodiments of the present invention.

[0104] Reference below Figure 5 , which shows a schematic diagram of the structure of a computer system 500 of an electronic device suitable for implementing an embodiment of the present invention. Figure 5 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0105] like Figure 5 As shown, the computer system 500 includes a central processing unit (CPU) 501, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage part 508 into a random access memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the system 500 are also stored. The CPU 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0106] The following components are connected to the I / O interface 505: an input section 506 including a keyboard, a mouse, etc.; an output section 507 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 508 including a hard disk, etc.; and a communication section 509 including a network interface card such as a LAN card, a modem, etc. The communication section 509 performs communication processing via a network such as the Internet. A drive 510 is also connected to the I / O interface 505 as needed. A removable medium 511, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 510 as needed, so that a computer program read therefrom is installed into the storage section 508 as needed.

[0107] In particular, according to the embodiments disclosed in the present invention, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present invention include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 509, and / or installed from the removable medium 511. When the computer program is executed by the central processing unit (CPU) 501, the above-mentioned functions defined in the system of the present invention are executed.

[0108] It should be noted that the computer-readable medium shown in the present invention may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present invention, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present invention, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0109] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present invention. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0110] The modules and / or units involved in the embodiments of the present invention may be implemented in software or hardware. The modules and / or units described may also be provided in a processor, for example, may be described as: a processor including a signaling service management module, a rendering service management module, and a relay service management module. The names of these modules do not, in some cases, constitute limitations on the modules themselves.

[0111] As another aspect, the present invention also provides a computer-readable medium, which may be included in the device described in the above embodiment; or it may exist independently without being assembled into the device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by a device, the device implements: receiving a scene rendering request sent by a user end through a containerized signaling service, and sending the scene rendering request to a containerized rendering service, the scene rendering request includes a rendering request for requesting to render a target three-dimensional scene; obtaining scene data of a target three-dimensional scene from a containerized data service through a containerized rendering service, and rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data; and returning the rendering result data to the user end through a containerized relay service.

[0112] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions may occur depending on design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A three-dimensional scene rendering method, applicable to an application server, characterized in that: include: Receiving a scene rendering request sent by a user terminal through a containerized signaling service, and sending the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene; Acquire the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data; as well as The rendering result data is returned to the user end through a containerized relay service.

2. The three-dimensional scene rendering method according to claim 1, characterized in that: Before receiving the scene rendering request sent by the user terminal through the containerized signaling service, the three-dimensional scene rendering method further includes: Obtaining a first container image corresponding to the containerized signaling service, a second container image corresponding to the encoding data of the target three-dimensional scene, a third container image corresponding to the scene data of the target three-dimensional scene, and a fourth container image corresponding to the containerized relay service; and The first container image, the second container image, the third container image and the fourth container image are deployed to corresponding servers respectively, and a containerized signaling service, a containerized rendering service, a containerized data service and a containerized relay service are obtained accordingly.

3. The three-dimensional scene rendering method according to claim 1, characterized in that: Before sending the scene rendering request to the containerized rendering service, the three-dimensional scene rendering method further includes: Verifying whether the scene rendering request is a rendering request corresponding to the target three-dimensional scene; The sending the scene rendering request to the containerized rendering service includes: The verified scene rendering request is sent to the containerized rendering service.

4. The three-dimensional scene rendering method according to claim 1, characterized in that: There are multiple containerized rendering services, and sending the scene rendering request to the containerized rendering service includes: A target containerized rendering service is determined from a plurality of containerized rendering services based on a polling algorithm, and the scene rendering request is sent to the target containerized rendering service.

5. The three-dimensional scene rendering method according to claim 1, characterized in that: The scene rendering request includes rendering parameter adjustment information; The step of rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data includes: The target three-dimensional scene is rendered based on the scene data of the target three-dimensional scene and the rendering parameter adjustment information to obtain the rendering result data.

6. The three-dimensional scene rendering method according to claim 2, characterized in that: The deploying the second container image to the corresponding server to obtain the containerized rendering service includes: Configure container graphics tools and container remote access interfaces on the graphics processing server; and The containerized rendering service corresponding to the second container image is run on the graphics processing server through the container graphics card tool and the container remote access interface.

7. The three-dimensional scene rendering method according to claim 1, characterized in that: Before acquiring the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, the three-dimensional scene rendering method further includes: Obtaining resource utilization of the running containerized rendering service through the containerized signaling service, and obtaining a scaling decision result of whether to scale the containerized rendering service according to the resource utilization; and Based on the scaling decision result, increasing or decreasing the running containerized rendering service to obtain the currently running containerized rendering service; The acquiring the scene data of the target three-dimensional scene from the containerized data service through the containerized rendering service, and rendering the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data, includes: The scene data of the target three-dimensional scene is obtained from the containerized data service through the currently running containerized rendering service, and the target three-dimensional scene is rendered based on the scene data of the target three-dimensional scene to obtain the rendering result data.

8. A three-dimensional scene rendering device, integrated in an application server, characterized in that: include: A signaling service management module, configured to receive a scene rendering request sent by a user terminal through a containerized signaling service, and send the scene rendering request to a containerized rendering service, wherein the scene rendering request includes a rendering request for requesting rendering of a target three-dimensional scene; A rendering service management module, configured to obtain scene data of the target three-dimensional scene from a containerized data service through a containerized rendering service, and render the target three-dimensional scene based on the scene data of the target three-dimensional scene to obtain rendering result data; as well as The relay service management module is used to return the rendering result data to the user end through the containerized relay service.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, the three-dimensional scene rendering method as described in any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the three-dimensional scene rendering method as described in any one of claims 1 to 7 is implemented.

Citation Information

Cited By

  • Cloud distributed rendering method based on three-dimensional engine

    CN122176143A