Graph rendering method and device, equipment and storage medium

By obtaining the terminal hardware configuration information and determining the target rendering mode, the local differentiated graphic rendering processing of the terminal is realized, and the problems of the multi -end rendering results of the graphics rendering in the existing technology are solved And security.

CN119379876APending Publication Date: 2025-01-28CONTEMPORARY AMPEREX FUTURE ENERGY RES INST (SHANGHAI) LTD +1
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202310921887.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-25
Publication Date
2025-01-28

AI Technical Summary

Technical Problem

In the prior art, the multi-terminal rendering results of graphics rendering are consistent, which cannot meet the needs of differentiated rendering, is highly dependent on the network environment, and is prone to data leakage problems.

Method used

通过获取终端硬件配置信息,确定与终端硬件配置信息匹配的目标渲染模式,并依照目标渲染模式执行目标质量等级的图形渲染操作,实现终端本地的差异化图形渲染处理。

Benefits of technology

It meets the differentiated rendering needs of the terminal equipment, reduces the dependence on the network environment, reduces the risk of data leakage, and improves the efficiency and performance of graphics rendering processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119379876A_ABST
    Figure CN119379876A_ABST
Patent Text Reader

Abstract

The invention is suitable for the technical field of graphic rendering processing, and provides a graphic rendering method and device, equipment and a storage medium, and the method comprises the steps: obtaining terminal hardware configuration information; determining a target rendering mode matched with the terminal hardware configuration information from a plurality of preset rendering modes; wherein different preset rendering modes are configured with graphic rendering operations of different quality levels, and the graphic rendering operation configured by the target rendering mode is a target quality level; and executing the graphic rendering operation of the target quality level according to the target rendering mode.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of graphics rendering processing technology, and in particular, relates to a graphics rendering method, device, equipment and storage medium. Background Art

[0002] Graphics rendering is the process of converting high-level object-based descriptions into graphic images displayed on a certain display device. For example, in the process of converting a mathematical model of a three-dimensional object or scene into a bitmap graphic, a graphics rendering operation will occur.

[0003] Existing graphics rendering systems usually include a server and several clients. The server and clients are connected by communication. During the application process, the server outputs rendering results to these clients, resulting in consistent rendering results on multiple clients. This cannot meet differentiated rendering requirements and is highly dependent on the network environment, making data leakage a problem that may occur easily. Summary of the invention

[0004] The embodiments of the present application provide a graphics rendering method, apparatus, device and storage medium to solve the problems in the prior art that the rendering results of multiple terminals of graphics rendering are consistent, cannot meet the differentiated rendering requirements, are highly dependent on the network environment, and are prone to data leakage.

[0005] A first aspect of an embodiment of the present application provides a graphics rendering method, including:

[0006] Get terminal hardware configuration information;

[0007] Determining a target rendering mode that matches the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels;

[0008] A graphics rendering operation at a target quality level is performed according to the target rendering mode.

[0009] This process obtains the terminal hardware configuration information, and adapts the target rendering mode from multiple preset rendering modes based on the terminal hardware configuration information. With the help of graphics rendering operations of corresponding quality levels configured in different preset rendering modes, graphics rendering processing of the target quality level is carried out in combination with the characteristics of the terminal device to meet the differentiated rendering needs of the current terminal. The graphics rendering processing operation occurs locally in the terminal, reducing dependence on the network environment and reducing data leakage problems.

[0010] In some embodiments, the obtaining of the terminal hardware configuration information includes:

[0011] Performing an operating environment detection on the terminal, determining the terminal software operating state from at least two preset software operating states supported by the terminal, and determining the terminal hardware configuration information.

[0012] The above processing process, by detecting the operating environment of the terminal, introduces the data of the software operating status in the user terminal, and obtains the software and hardware operating information in the terminal. Among them, based on the terminal software operating status, it is known what operating status the aforementioned application software in the terminal is currently in, and the specific hardware configuration information of the terminal is also obtained in the acquisition process, providing a multi-faceted data basis for subsequent processing operations.

[0013] In some embodiments, determining a target rendering mode that matches the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels includes:

[0014] Based on the terminal software running state, determining a target rendering engine whose rendering protocol matches the terminal software running state;

[0015] Based on the terminal hardware configuration information and the quality levels of graphics rendering operations corresponding to the plurality of preset rendering modes supported and executed by the target rendering engine, a target rendering mode matching the terminal hardware configuration information is determined from the plurality of preset rendering modes.

[0016] In this process, based on the introduced terminal software running status and the preset rendering engine, an adaptive target rendering mode is determined from multiple preset rendering modes. The terminal software running status and the terminal hardware configuration information are taken into consideration together, and a suitable rendering engine and a target rendering mode with an appropriate quality level under the rendering engine are selected to ensure the adaptability of rendering processing with an appropriate quality level under different rendering application scenarios in the terminal and improve the rendering processing effect.

[0017] In some embodiments, based on the terminal hardware configuration information and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, determining a target rendering mode matching the terminal hardware configuration information from the plurality of preset rendering modes includes:

[0018] Based on the terminal hardware configuration information, perform hardware performance evaluation on the terminal to obtain a performance evaluation result;

[0019] Based on the performance evaluation result and the quality levels of graphics rendering operations corresponding to each of the plurality of preset rendering modes supported by the target rendering engine, a rendering mode matching the performance evaluation result is determined from the plurality of preset rendering modes as the target rendering mode.

[0020] The above process provides a method for selecting a target rendering mode from multiple preset rendering modes of the target rendering engine based on the terminal hardware configuration information. By performing performance evaluation on the terminal, a reasonable selection of the graphics rendering mode is achieved to ensure that graphics rendering operations with appropriate quality levels are implemented in the terminal.

[0021] In some embodiments, performing hardware performance evaluation on the terminal based on the terminal hardware configuration information to obtain a performance evaluation result includes:

[0022] Searching the dictionary for a score corresponding to each of the terminal hardware configuration information;

[0023] The performance evaluation result is calculated based on the score and the set weight of each hardware corresponding to the terminal hardware configuration information in the terminal.

[0024] This process sets the weights of different hardware in the terminal, combines them with the scores corresponding to the configuration information of these hardware, and calculates the performance evaluation results of the terminal, thereby improving the rationality and effectiveness of the terminal performance evaluation and ensuring the correct selection of the appropriate graphics rendering mode in the subsequent process.

[0025] In some embodiments, based on the performance evaluation result and the quality levels of graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, determining a rendering mode matching the performance evaluation result from the plurality of preset rendering modes as the target rendering mode includes:

[0026] Based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, determining a rendering mode to be selected whose quality level matches the performance evaluation result from the plurality of preset rendering modes;

[0027] If there are multiple rendering modes to be selected, a rendering mode whose graphics rendering operation is the target quality level is selected from the rendering modes to be selected as the target rendering mode.

[0028] The above processing process, combined with the performance evaluation results and the quality levels of graphics rendering operations corresponding to different rendering modes, first conducts a preliminary screening of multiple preset rendering modes. When multiple rendering modes are initially selected, a secondary screening is further performed based on the actual graphics rendering requirements. Finally, the target rendering mode is selected, and a rendering mode with a suitable quality level is selected from all rendering modes that the terminal can support to implement graphics rendering processing to meet the actual rendering requirements.

[0029] In some embodiments, performing a graphics rendering operation at a target quality level according to the target rendering mode includes:

[0030] The target rendering engine is called so that the target rendering engine performs a graphics rendering operation of the target quality level configured in the target rendering mode according to a corresponding rendering protocol.

[0031] Here, in the process of executing graphics rendering operations of the target quality level according to the target rendering mode, the graphics rendering operations can be performed directly on the content to be rendered by calling the target rendering engine, so as to achieve the rendering effect of the target quality level that is compatible with the characteristics of the current operating environment of the terminal device, thereby ensuring the graphics rendering effect while improving the graphics rendering processing efficiency.

[0032] In some embodiments, the terminal software running state includes a browser running state or a client running state; the target rendering engine includes a first rendering engine corresponding to the browser running state or a second rendering engine corresponding to the client running state.

[0033] In this way, combined with the specific network architecture in which the application software is located, and the browser running state or client running state that the application software may be in in the terminal under different network architectures, corresponding rendering engines corresponding to these two states are set up respectively to ensure the effective implementation of rendering processing under different network architectures in the terminal.

[0034] In some embodiments, before obtaining the terminal hardware configuration information, the method further includes:

[0035] Determine a first rendering protocol that matches the browser running state and a second rendering protocol that matches the client running state;

[0036] Obtaining first graphics rendering processing codes of different quality levels under the first rendering protocol and second graphics rendering processing codes of different quality levels under the second rendering protocol;

[0037] Based on the first graphics rendering processing code, the first rendering engine is encapsulated, and based on the second graphics rendering processing code, the second rendering engine is encapsulated.

[0038] In this way, the rendering engines corresponding to different graphics rendering processing codes are encapsulated, so that the terminal supports the rendering processing capabilities required by the user terminal side under different network architectures. When the terminal needs to perform graphics rendering operations of the target quality level under a certain network architecture, it can directly call the corresponding rendering engine to implement graphics rendering. The graphics rendering requirements under different network architectures can be realized in the same set of application software system, and there is no need to assemble multiple sets of application software systems to implement rendering switching, which improves the compatibility of the terminal-side data rendering system with different network architectures.

[0039] In some embodiments, the method further comprises:

[0040] Obtain an interface call request of the digital twin system, wherein the interface call request carries the twin data to be rendered;

[0041] In response to the interface call request, the steps of detecting the operating environment of the terminal, determining the terminal software operating state from at least two preset software operating states supported by the terminal, and determining the terminal hardware configuration information are executed;

[0042] Correspondingly, performing a graphics rendering operation of a target quality level according to the target rendering mode includes:

[0043] According to the target rendering mode, a graphics rendering operation of the target quality level is performed on the twin data to be rendered.

[0044] In this way, the digital twin system is combined with the graphics rendering processing flow to meet the differentiated rendering requirements of the terminal in the digital twin rendering scenario.

[0045] A second aspect of an embodiment of the present application provides a graphics rendering device, including:

[0046] An acquisition module is used to obtain terminal hardware configuration information;

[0047] A determination module, configured to determine a target rendering mode matching the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels;

[0048] A rendering execution module is used to execute a graphics rendering operation of a target quality level according to the target rendering mode.

[0049] A third aspect of an embodiment of the present application provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method described in the first aspect when executing the computer program.

[0050] A fourth aspect of an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method described in the first aspect are implemented.

[0051] The fifth aspect of the present application provides a computer program product, including a computer-readable code, or a non-volatile computer-readable storage medium carrying a computer-readable code. When the computer-readable code is executed in an electronic device, the processor in the electronic device executes the steps in the method described in the first aspect above.

[0052] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] Various other advantages and benefits will become apparent to those of ordinary skill in the art by reading the detailed description of the preferred embodiments below. The accompanying drawings are only for the purpose of illustrating the preferred embodiments and are not to be considered as limiting the present application. Moreover, the same reference numerals are used throughout the drawings to represent the same components. In the drawings:

[0054] Figure 1 is a flowchart of a graphics rendering method in some embodiments of the present application;

[0055] Figure 2 is a flowchart of a graphics rendering method in some embodiments of the present application;

[0056] Figure 3 is a flowchart of a graphics rendering method in some embodiments of the present application;

[0057] Figure 4 is a flowchart of a graphics rendering method in some embodiments of the present application;

[0058] Figure 5 This is an example diagram of the internal architecture of application software in some embodiments of the present application;

[0059] Figure 6 is a structural diagram of a graphics rendering device in some embodiments of the present application;

[0060] Figure 7 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0061] The following embodiments of the technical solution of the present application are described in detail in conjunction with the accompanying drawings. The following embodiments are only used to more clearly illustrate the technical solution of the present application, and are therefore only used as examples, and cannot be used to limit the scope of protection of the present application.

[0062] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by technicians in the technical field to which this application belongs; the terms used herein are only for the purpose of describing specific embodiments and are not intended to limit this application; the terms "including" and "having" in the specification and claims of this application and the above-mentioned figure descriptions and any variations thereof are intended to cover non-exclusive inclusions.

[0063] In the description of the embodiments of the present application, the technical terms "first", "second", etc. are only used to distinguish different objects, and cannot be understood as indicating or implying relative importance or implicitly indicating the number, specific order or primary and secondary relationship of the indicated technical features. In the description of the embodiments of the present application, the meaning of "multiple" is more than two, unless otherwise clearly and specifically defined.

[0064] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0065] In the description of the embodiments of the present application, the term "and / or" is only a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.

[0066] Graphics rendering is the process of converting a high-level object-based description into a graphic image displayed on a display device. For example, in the process of converting a mathematical model of a three-dimensional object or scene into a bitmap graphic, a graphics rendering operation will occur. Alternatively, another example of graphics rendering is converting an HTML (Hypertext Markup Language) file into a graphic displayed on a computer monitor.

[0067] At present, more and more applications, such as digital twin applications, have diverse and complex data graphical display requirements, and the display of data graphics cannot be separated from graphics rendering.

[0068] Taking digital twins as an example, by completing graphical mapping of physical equipment in virtual space through graphic rendering, simulation of the entire life cycle of the equipment can be achieved.

[0069] An existing graphics rendering system usually includes a server and several clients. The server and the clients are connected to each other by communication. The server can be a remote server or a cloud server. The server implements graphics rendering remotely or in the cloud.

[0070] During the specific processing process, the application system transmits the information captured by sensors, physical devices, etc. in the real space to the server, and uses the computing power and rendering capabilities of the server-side device to process the model that the user needs to display on the server-side. Finally, the server-side feeds back the rendering results to these clients in the form of pixel streams or video streams to complete the display.

[0071] After being released, application software (such as game software) will be downloaded and installed on different clients. The server will feed back the rendering processing results to these clients. The rendering results on all terminals are consistent, and it is not possible to perform differentiated rendering according to the terminal device (personal computer, mobile terminal, car terminal, etc.).

[0072] The realization of graphics rendering effects in the client often depends on the server. Users cannot realize graphics rendering in an offline environment. When users on multiple terminals access the application software system at the same time, it will also bring exponential rendering computing power and network bandwidth pressure to the server. The rendering result depends on the server. In addition to being affected by the network bandwidth, the rendering effect is also controlled by the performance of the server device. The higher the rendering quality, the higher the server performance requirements, which increases the server cost. In addition, it has a strong dependence on the network environment as a whole, cannot provide good security protection, and is prone to data leakage.

[0073] Therefore, a graphics rendering method is proposed in an embodiment of the present application, in which the terminal side is used as the execution side of graphics rendering, and the hardware configuration parameters of the terminal are obtained locally at the terminal when graphics rendering is required, and a rendering mode matching the hardware configuration parameters is determined based on the hardware configuration parameters. Based on the device characteristics of the current terminal itself, an appropriate graphics rendering quality level is selected to implement differentiated graphics rendering processing, so that the application software can meet the differentiated rendering requirements of different terminals when used in different clients. The graphics rendering processing process is located on the terminal side, which reduces dependence on the network environment and avoids data leakage.

[0074] In order to illustrate the technical solution described in this application, a specific embodiment is provided below for illustration.

[0075] Combination Figure 1 As shown, in some embodiments, a graphics rendering method is proposed, comprising:

[0076] Step 101, obtaining terminal hardware configuration information.

[0077] The terminal is, for example, a personal computer, a mobile terminal, a vehicle-mounted terminal, etc.

[0078] The terminal hardware configuration information is the description information of the hardware configured in the terminal. The description information includes, but is not limited to, hardware type information, hardware model information, hardware operation parameter information, etc. The hardware corresponding to the terminal hardware configuration information is, for example, CPU (Central Processing Unit), GPU (Graphics Processing Unit), ISP (Image Signal Processor), memory, display screen, etc.

[0079] In an example, the terminal hardware configuration information includes, for example, CPU occupancy, GPU rendering capability parameters, memory size, display screen resolution or refresh rate, and the like.

[0080] The terminal hardware configuration information can be detected and recorded when the application software is initially installed in the system. In this step, the terminal hardware configuration information can be directly read from the recorded terminal hardware configuration information, or under set circumstances, the terminal hardware configuration information can be detected and obtained in real time.

[0081] The terminal hardware configuration information can indicate the characteristics of the terminal device. Different terminals with different device characteristics will have different graphics rendering requirements. For example, different hardware configurations and different protocol standards are used in terminals with different device characteristics, resulting in different hardware support and rendering processing methods when performing graphics rendering processing in different terminals. Therefore, in this step, the terminal hardware configuration information is obtained, so that the graphics rendering processing can be carried out in subsequent steps based on the terminal hardware configuration information and combined with the characteristics of the terminal device.

[0082] Step 102: Determine a target rendering mode that matches the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels.

[0083] Among them, different preset rendering modes configure graphics rendering operations of different quality levels, and the graphics rendering operation configured by the target rendering mode is a target quality level.

[0084] Here, some rendering modes can be preset for different graphics rendering requirements that may appear in the terminal. Specifically, different preset rendering modes match different terminal hardware configuration information. Different preset rendering modes correspond to a set of graphics rendering operations, and different groups of graphics rendering operations achieve different quality levels of graphics rendering effects.

[0085] The graphics rendering operation is, for example, a two-dimensional graphics rendering operation, a three-dimensional graphics rendering operation, or a rendering processing operation of adding color, lighting, shadow, etc. in a two-dimensional or three-dimensional graphics rendering process.

[0086] The different rendering quality levels may be, for example, three graphics rendering quality levels of high, medium, and low, or may be different levels of quality obtained by division in other ways.

[0087] Different graphics rendering quality levels correspond to different graphics rendering qualities. Specifically, different graphics rendering qualities achieve different index values ​​under set indicators.

[0088] The set indicators include but are not limited to picture smoothness, graphics rendering dimension (2D or 3D), graphics pixel density, graphics color saturation, etc. Different graphics rendering qualities may have different picture smoothness, graphics rendering dimensions, graphics pixel density, and graphics color saturation, so that the final graphics rendering effect has different quality levels and realizes graphics rendering processing of different precisions to adapt to the differentiated rendering requirements of terminals.

[0089] In this step, a target rendering mode matching the terminal hardware configuration information is determined from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels, so as to achieve rendering quality adaptation.

[0090] In an application process of rendering quality adaptation, taking the 3D rendering of graphics in the digital twin scene as an example, the preset rendering mode is configured with three graphics rendering quality levels: high, medium, and low. In the high-quality rendering mode, the application software sets the graphics rendering operation, including but not limited to selecting the 3D rendering accuracy in the digital twin scene as high precision, turning on the GPU acceleration option, calling the terminal GPU, etc., to accelerate the rendering quality and ensure high-level rendering quality; in the medium-quality rendering mode, the application software sets the graphics rendering operation, including but not limited to selecting the 3D rendering accuracy in the digital twin scene as medium precision, turning off the GPU acceleration option, not calling the GPU on the terminal, and ensuring basic 3D rendering capabilities; in the low-quality rendering mode, the use of the business functions of the digital twin itself is prioritized, and the application software sets the graphics rendering operation, including but not limited to using static frame buffer operations or pausing real-time rendering in 3D rendering mode, or downgrading 3D rendering to 2D rendering.

[0091] The correspondence between the preset rendering quality levels and graphics rendering operations is shown in the following table:

[0092]

[0093]

[0094] Based on the above-mentioned preset rendering mode, the processing steps of the aforementioned graphics rendering method can be executed based on a terminal equipped with the above-mentioned application software, the terminal hardware configuration information can be obtained and evaluated, and the corresponding rendering mode can be adapted from the multiple preset rendering modes to carry out graphics rendering processing in combination with the characteristics of the terminal device to meet the personalized rendering needs of the current terminal.

[0095] Step 103 , performing graphics rendering operations at a target quality level according to a target rendering mode.

[0096] During the specific implementation process, the rendering processing program corresponding to the graphics rendering operation is placed locally on the user terminal. When the target rendering mode is determined based on the terminal hardware configuration information, the user terminal directly executes the corresponding rendering processing locally, and uses the existing hardware system of the local device for real-time rendering. It can adapt to different rendering quality levels according to different terminal hardware configurations, so that an application software with graphics rendering function can achieve differentiated rendering in multiple terminals.

[0097] In one embodiment, the application software that implements the graphics rendering function can be a graphics rendering software or directly a digital twin application software. A set of application software can match rendering requirements on multiple terminals such as personal computers, mobile terminals, and vehicle terminals, without the need to develop multiple software systems.

[0098] In this process, the graphics rendering and processing operations occur locally on the terminal, and graphics rendering and processing can also be performed in an offline environment, which reduces dependence on the network environment, reduces server costs, and eliminates data leakage issues. It can also perform differentiated rendering based on the characteristics of the device terminal itself.

[0099] The above process obtains the terminal hardware configuration information, and adapts the target rendering mode from multiple preset rendering modes based on the terminal hardware configuration information. With the help of graphics rendering operations of corresponding quality levels configured in different preset rendering modes, graphics rendering processing of the target quality level is carried out in combination with the characteristics of the terminal device to meet the differentiated rendering needs of the current terminal. The graphics rendering processing operation occurs locally in the terminal, reducing dependence on the network environment and reducing the occurrence of data leakage problems.

[0100] Furthermore, some more specific implementation modes will be described below based on the above implementation modes.

[0101] In some embodiments, in combination Figure 2 As shown, step 101 obtains the terminal hardware configuration information, including:

[0102] Step 201 , performing a running environment detection on the terminal, determining the terminal software running state from at least two preset software running states supported by the terminal, and determining the terminal hardware configuration information.

[0103] The operating environment detection includes two parts: software environment detection and hardware equipment detection. After the software environment detection, the terminal software operating state is determined from at least two preset software operating states supported by the terminal. After the hardware equipment detection, the terminal hardware configuration information is obtained.

[0104] Among them, the terminal supports at least two preset software running states.

[0105] The software running state of the terminal refers to the running state of the application software with graphics rendering function in the terminal.

[0106] Among them, the at least two preset software running states can be set after being divided based on different network architecture modes in which the application software is located, or can be set after being divided based on software resources required when the software is running.

[0107] For example, the computer network architecture in which the application software is located is usually divided into a B / S (Browser-Server) architecture or a C / S (Client-Server) architecture. Based on these two network architectures, the preset software running status includes the browser running status and the client running status.

[0108] Correspondingly, in some embodiments, the detected terminal software running state includes a browser running state or a client running state.

[0109] When detecting the running status of the terminal software, it can be to detect whether the current running code of the application software in the terminal contains a global variable corresponding to a preset software running status, or to detect whether it contains identification information corresponding to a preset software running status, or to detect whether the current running code of the application software supports the corresponding rendering protocol, thereby detecting the running status of the terminal software.

[0110] Differently, for example, software resources used when software is running include but are not limited to operating systems, runtime libraries, Web server software, etc.

[0111] The operating system is, for example, Windows or Linux, the runtime is, for example, a local runtime or a third-party runtime (DotNet, DirectX, etc.), and the Web server software is, for example, Apache, etc.

[0112] The preset software running status is set based on the software resources used when the software is running, including but not limited to Windows running status, Linux running status, local runtime library running status, third-party runtime library running status, etc.

[0113] In the above steps of this embodiment, the operating environment of the terminal is detected, the data of the software operating status in the user terminal is introduced, and the software and hardware operating information in the terminal is obtained. Among them, based on the terminal software operating status, it is known which operating status the aforementioned application software in the terminal is currently in, and the specific hardware configuration information of the terminal is also obtained in the acquisition process, providing a multi-faceted data basis for subsequent processing operations.

[0114] Furthermore, in an optional embodiment, different preset software running states can be set to correspond to corresponding rendering protocols. The preset multiple rendering modes respectively support the execution of graphics rendering operations of various quality levels under different rendering protocols.

[0115] That is, different preset software running states correspond to preset rendering engines, and each preset rendering engine supports executing a plurality of preset rendering modes respectively according to corresponding rendering protocols.

[0116] The rendering engine is a functional block obtained by encapsulating the code for implementing the graphics rendering process.

[0117] The rendering engine is used to render the content to be displayed, so that the content to be displayed forms graphic information and is displayed after being rendered.

[0118] Accordingly, if the detected terminal software running state includes the browser running state or the client running state, then in an optional embodiment, the preset rendering engine includes a first rendering engine corresponding to the browser running state or a second rendering engine corresponding to the client running state.

[0119] Correspondingly, in the subsequent processing process, the target rendering engine determined to match the terminal software running state also includes the first rendering engine corresponding to the browser running state or the second rendering engine corresponding to the client running state.

[0120] During this process, based on the specific network architecture in which the application software is located, and the browser running state or client running state that the application software may be in in the terminal under different network architectures, corresponding rendering engines corresponding to these two states are set up to ensure the effective implementation of rendering processing under different network architectures in the terminal.

[0121] Differently, when the browser performs graphics rendering in the B / S architecture, the graphics rendering standard protocol used is WebGL (Web Graphics Library) or WebGPU standard. Among them, WebGL and WebGPU can perform graphics rendering and drawing through the Canvas tag provided by HTML. The rendering quality of WebGPU is higher than that of WebGL, but it depends on the browser version and has poor compatibility. The WebGL protocol has better compatibility than WebGPU.

[0122] When the client performs graphics rendering in the C / S architecture, the mainstream engines used are Unity or Unreal Engine. These mainstream engines are game rendering engines that can achieve good rendering quality and rely on higher device hardware. Different rendering engines use corresponding rendering protocols.

[0123] The corresponding relationship between different network architectures and the protocols used on the user terminal side is shown in the following table:

[0124] Browser Client WebGL Unity WebGPU Unreal Engine

[0125] In the same user terminal, the B / S and C / S architectures of the software system are independent of each other. If a set of application software wants to switch from client-side graphics rendering to browser-side graphics rendering in the same terminal, it often requires two sets of application software systems to implement rendering switching.

[0126] The above processing process simultaneously introduces multiple pre-built rendering engines, each rendering engine supports multiple preset rendering modes, and different preset rendering modes are configured with graphics rendering operations of different quality levels. Therefore, the rendering engine is adapted to the software running state and can execute the multiple preset rendering modes according to the corresponding rendering protocol. By setting different preset software running states and the corresponding preset rendering engines, a set of application software system can use the adapted rendering engine to implement targeted graphics rendering processing for different software running states of the terminal. There is no need to assemble multiple sets of application software systems to implement rendering switching, thereby improving the efficiency and performance of terminal graphics rendering processing.

[0127] By the same token, in the same user terminal, the operating systems and runtime libraries in the software resources are independent of each other. If a set of application software wants to switch from graphics rendering under one software resource to graphics rendering under another software resource in the same terminal, it often requires two or more application software systems to implement the rendering switch.

[0128] Optionally, in some embodiments, step 102 determines a target rendering mode that matches the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels, including:

[0129] Step 202: Based on the terminal software running state, determine a target rendering engine whose rendering protocol matches the terminal software running state.

[0130] Step 203 , based on the terminal hardware configuration information and the quality levels of the graphics rendering operations corresponding to the multiple preset rendering modes supported by the target rendering engine, determine a target rendering mode that matches the terminal hardware configuration information from the multiple preset rendering modes.

[0131] Different preset software running states correspond to corresponding rendering protocols.

[0132] Here, based on the rendering protocol corresponding to the running state of the terminal software, a rendering engine whose rendering protocol matches the rendering protocol is selected from multiple preset rendering modes as the target rendering engine.

[0133] During implementation, the values ​​of the protocol fields of the rendering protocols corresponding to the two may be matched, or the rendering protocol identifiers associated with the two may be matched to determine the target rendering engine whose rendering protocol matches the running state of the terminal software.

[0134] Then, on this basis, a second selection is made based on the terminal hardware configuration information, and a target rendering mode whose quality level of the graphics rendering operation matches the target rendering engine is selected from a plurality of preset rendering modes supported by the target rendering engine.

[0135] During implementation, the configuration parameters contained in the terminal hardware configuration information may be compared with the hardware configuration data required for the quality level of the graphics rendering operation corresponding to each of the multiple preset rendering modes, and a target rendering mode that matches the terminal hardware configuration information may be selected; or, a hardware evaluation of the terminal may be performed based on the terminal hardware configuration information, and a target rendering mode whose quality level of the graphics rendering operation matches the terminal hardware configuration information may be selected based on the evaluation results.

[0136] In this process, based on the introduced terminal software running status and the preset rendering engine, an adaptive target rendering mode is determined from multiple preset rendering modes. The terminal software running status and the terminal hardware configuration information are taken into consideration together, and a suitable rendering engine and a target rendering mode with an appropriate quality level under the rendering engine are selected to ensure the adaptability of rendering processing with an appropriate quality level under different rendering application scenarios in the terminal and improve the rendering processing effect.

[0137] On this basis, in some embodiments, step 103 performs a graphics rendering operation of a target quality level according to a target rendering mode, including:

[0138] Step 204 , calling the target rendering engine so that the target rendering engine performs a graphics rendering operation of the target quality level configured in the target rendering mode according to the corresponding rendering protocol.

[0139] Here, in the process of executing graphics rendering operations of the target quality level according to the target rendering mode, the graphics rendering operations can be performed directly on the content to be rendered by calling the target rendering engine, so as to achieve the rendering effect of the target quality level that is compatible with the characteristics of the current operating environment of the terminal device, thereby ensuring the graphics rendering effect while improving the graphics rendering processing efficiency.

[0140] In some embodiments, in combination Figure 3As shown, step 203 determines a target rendering mode matching the terminal hardware configuration information from multiple preset rendering modes based on the terminal hardware configuration information and the quality levels of the graphics rendering operations corresponding to each of the multiple preset rendering modes supported and executed by the target rendering engine, including:

[0141] Step 301: Based on the terminal hardware configuration information, perform hardware performance evaluation on the terminal to obtain a performance evaluation result.

[0142] Step 302 : Based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, a rendering mode matching the performance evaluation result is determined from the plurality of preset rendering modes as the target rendering mode.

[0143] When matching the target rendering mode based on the terminal hardware configuration information, it is necessary to select from a plurality of preset rendering modes supported by the target rendering engine.

[0144] In this process, it is necessary to perform a hardware performance evaluation on the terminal, and based on the performance evaluation result, a rendering mode that is compatible with the hardware configuration information of the terminal is selected as the target rendering mode.

[0145] The hardware performance evaluation of the terminal is performed to obtain the performance evaluation result, which can be based on the performance scores of different configuration information items in the terminal hardware configuration information, and a set of score values ​​corresponding to each configuration information item is obtained as the evaluation result. Alternatively, the performance scores of different configuration information items are respectively performed and then the weighted sum is obtained as the evaluation result.

[0146] The above process provides a method for selecting a target rendering mode from multiple preset rendering modes of the target rendering engine based on the terminal hardware configuration information. By performing performance evaluation on the terminal, a reasonable selection of the graphics rendering mode is achieved to ensure that graphics rendering operations with appropriate quality levels are implemented in the terminal.

[0147] In some embodiments, step 301 performs hardware performance evaluation on the terminal based on the terminal hardware configuration information to obtain a performance evaluation result, including:

[0148] The score corresponding to each terminal hardware configuration information is searched from the dictionary; based on the score and the setting weight of each hardware corresponding to the terminal hardware configuration information in the terminal, the performance evaluation result is calculated.

[0149] The dictionary records the corresponding scores of different terminal hardware parameters.

[0150] During implementation, the name, model and other parameter information of hardware such as CPU and GPU can be used as hardware description information, and a dictionary table can be established with relevant hardware performance scores as values. The terminal can be tested for hardware through code scripts in the Windows operating system environment or Linux operating system environment in the terminal to obtain the terminal hardware configuration information. The terminal hardware configuration information can be scored and calculated in combination with the established dictionary table to output a comprehensive performance score as a performance evaluation result.

[0151] Among them, different hardware has a corresponding degree of influence on the quality level that can be achieved by graphics rendering processing. The size of the setting weight of each hardware in the terminal is positively correlated with its corresponding degree of influence. The greater the degree of influence, the greater the setting weight is set for the hardware, so as to calculate a reasonable and effective terminal performance evaluation result.

[0152] This process sets the weights of different hardware in the terminal, combines them with the scores corresponding to the configuration information of these hardware, and calculates the performance evaluation results of the terminal, thereby improving the rationality and effectiveness of the terminal performance evaluation and ensuring the correct selection of the appropriate graphics rendering mode in the subsequent process.

[0153] In some embodiments, step 302 determines a rendering mode that matches the performance evaluation result as the target rendering mode from the multiple preset rendering modes based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the multiple preset rendering modes supported and executed by the target rendering engine, including:

[0154] Based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the multiple preset rendering modes supported by the target rendering engine, a rendering mode to be selected whose quality level matches the performance evaluation result is determined from the multiple preset rendering modes.

[0155] If there are multiple rendering modes to be selected, a rendering mode with a target quality level for graphics rendering operation is selected from the rendering modes to be selected as the target rendering mode.

[0156] The rendering engine supports executing multiple preset rendering modes, and each preset rendering mode configures graphics rendering operations of different quality levels. There are differences in the hardware resource configuration and hardware performance required for different quality levels of graphics rendering operations. For example, high-quality graphics rendering operations require higher CPU and GPU processing performance, medium-quality graphics rendering operations have lower requirements for CPU and GPU processing performance, and low-quality graphics rendering operations do not require too much CPU and GPU processing performance.

[0157] Then the hardware resources in the same terminal may meet the requirements of rendering modes with multiple graphics rendering quality levels at the same time. Therefore, it is necessary to evaluate the performance of the terminal based on the terminal hardware configuration information, and then conduct a preliminary screening of multiple preset rendering modes in combination with the quality levels of graphics rendering operations corresponding to different rendering modes. When multiple rendering modes are initially selected, a secondary screening is further conducted based on the actual graphics rendering requirements, and finally the target rendering mode is selected.

[0158] Among them, during the secondary screening, based on the multiple rendering modes to be selected that have been initially screened, a rendering mode with a target quality level is selected as the target rendering mode. Each rendering mode to be selected corresponds to a graphics rendering operation with a corresponding quality level. The target quality level can be the rendering mode with the highest quality level among the multiple rendering modes to be selected, so as to maximize the utilization of terminal hardware resources for graphics rendering processing, or it can be a rendering mode with a middle level among the multiple rendering modes to be selected, or it can be a rendering mode with the lowest level among the multiple rendering modes to be selected, so as to meet the requirements of selecting rendering modes of different quality levels according to the current rendering requirements in all rendering modes that the terminal can support to implement graphics rendering processing, and ensure that terminals with high hardware configurations support users to switch to low-quality image quality rendering modes to meet different rendering requirements.

[0159] In one implementation process, when the terminal receives a rendering mode switching task, it can determine whether the quality level corresponding to the rendering mode to be switched is less than the maximum quality level of the rendering mode that the terminal can support. If it is, the target rendering mode is switched to the rendering mode to be switched. Alternatively, the terminal can determine the relationship between the quality level corresponding to the rendering mode to be switched and the quality level of the target rendering mode. If the quality level corresponding to the rendering mode to be switched is less than the quality level of the target rendering mode, the target rendering mode is switched to the rendering mode to be switched, ensuring that terminals with high hardware configurations support users to switch to rendering modes of different quality levels that the terminal can support, to meet diverse graphics rendering requirements.

[0160] In addition, if there is only one rendering mode to be selected, the one rendering mode to be selected is directly used as the target rendering mode.

[0161] The above processing process, combined with the performance evaluation results and the quality levels of graphics rendering operations corresponding to different rendering modes, first conducts a preliminary screening of multiple preset rendering modes. When multiple rendering modes are initially selected, a secondary screening is further performed based on the actual graphics rendering requirements. Finally, the target rendering mode is selected, and a rendering mode with a suitable quality level is selected from all rendering modes that the terminal can support to implement graphics rendering processing to meet the actual rendering requirements.

[0162] In the aforementioned embodiment, the terminal software running state includes the browser running state or the client running state, and the target rendering engine includes the first rendering engine corresponding to the browser running state or the second rendering engine corresponding to the client running state.

[0163] In this case, the first rendering engine and the second rendering engine need to be pre-built.

[0164] Combination Figure 4 As shown, in one embodiment, before step 101 of obtaining the terminal hardware configuration information, the process further includes:

[0165] Step 401, determining a first rendering protocol that matches the browser running state and a second rendering protocol that matches the client running state.

[0166] Step 402: Obtain first graphics rendering processing codes of different quality levels under a first rendering protocol and second graphics rendering processing codes of different quality levels under a second rendering protocol.

[0167] Step 403: Based on the first graphics rendering processing code, encapsulate to obtain a first rendering engine, and based on the second graphics rendering processing code, encapsulate to obtain a second rendering engine.

[0168] The first rendering protocol matched by the browser running state is, for example, the WebGL or WebGPU standard protocol.

[0169] The second rendering protocol that matches the client running state is, for example, a rendering protocol corresponding to the engine Unity or Unreal Engine.

[0170] The first graphics rendering processing code and the second graphics rendering processing code can respectively realize graphics rendering at different quality levels, and these encapsulated rendering engines support interface calls.

[0171] These codes can be obtained by developers writing them based on rendering processing requirements of different quality levels under the first rendering protocol, or by matching graphics rendering processing codes that can implement graphics rendering operations of different quality levels from a set graphics rendering code library based on different rendering protocols.

[0172] On this basis, the rendering engines corresponding to different graphics rendering processing codes are encapsulated, so that the terminal supports the rendering processing capabilities required by the user terminal side under different network architectures. When the terminal needs to perform graphics rendering operations of the target quality level under a certain network architecture, it can directly call the corresponding rendering engine to implement graphics rendering. In the same set of application software system, the graphics rendering requirements under different network architectures are realized, and there is no need to assemble multiple sets of application software systems to implement rendering switching, which improves the compatibility of the terminal side data rendering system with different network architectures.

[0173] In one embodiment, corresponding to the packaged rendering engine, the application software capable of implementing graphics rendering installed in the terminal may provide an API (Application Programming Interface) at the interface layer for an external system to make API interface calls to the graphics rendering software.

[0174] An example of an internal architecture of an application software is Figure 5 As shown, the software includes an interface layer, an adaptation layer, a conversion layer, and a standard layer. Among them, the interface layer provides an API interface to the outside; the conversion layer uniformly encapsulates the browser-side rendering engine under the B / S architecture and the client-side rendering engine under the C / S architecture to form a universal standard, which is provided to the adaptation layer for scheduling; the standard layer modularly encapsulates the terminal rendering standards under different network architectures, and provides the encapsulated browser-side rendering engine (first rendering engine) under the B / S architecture and the client-side rendering engine (second rendering engine) under the C / S architecture; the adaptation layer is used to perform operating environment detection on the terminal, including software operating environment detection and device hardware detection. The adaptation layer is also used to perform interface scheduling on the browser-side rendering engine or client-side rendering engine provided by the standard layer through the conversion layer based on the results of the software operating environment detection and the device hardware detection.

[0175] Among them, the interface layer can use the digital twin application as the interface standard and expose the API interface for the digital twin system to call.

[0176] In one embodiment, the graphics rendering method may be implemented in combination with a digital twin scene.

[0177] In this implementation scenario, the graphics rendering method further includes:

[0178] Get the interface call request of the digital twin system. The interface call request carries the twin data to be rendered.

[0179] In response to the interface call request, step 201 is executed to detect the operating environment of the terminal, determine the terminal software operating state from at least two preset software operating states supported by the terminal, and determine the terminal hardware configuration information.

[0180] Among them, after step 201, steps 102 and 103 may be executed successively.

[0181] Correspondingly, when executing step 103 to perform a graphics rendering operation of a target quality level according to a target rendering mode, it includes:

[0182] According to the target rendering mode, graphics rendering operations of the target quality level are performed on the twin data to be rendered.

[0183] Alternatively, in an implementation process, steps 202 to 204 can be executed successively after step 201. Correspondingly, step 204 specifically includes calling the target rendering engine so that the target rendering engine performs graphics rendering operations of the target quality level configured in the target rendering mode on the rendering twin data in accordance with the corresponding rendering protocol.

[0184] This process combines the digital twin system with the graphics rendering processing flow to meet the differentiated rendering requirements of the terminal in the digital twin rendering scenario.

[0185] Below, combining the B / S architecture and C / S architecture that often appear in terminals, an overall exemplary description of the processing flow of the graphics rendering method in the digital twin application scenario is given.

[0186] In a specific application process, the terminal supports B / S architecture and C / S architecture. The digital twin system can be logged in in the browser port based on the B / S architecture in the terminal, or in the client based on the C / S architecture.

[0187] When there is a need for graphics rendering, the rendering engine is first initialized in the terminal. Specifically, the browser-side rendering engine under the B / S architecture and the client-side rendering engine under the C / S architecture are initialized in the terminal. The two engines can provide an API interface for the digital twin system to call based on an internal architecture of the aforementioned application software with graphics rendering function.

[0188] When a call request from the digital twin system is obtained, the terminal operating environment is detected in response to the call request to obtain the terminal software operating status and terminal hardware configuration information. If the terminal software operating status is judged to be a browser operating status, the browser-side rendering engine corresponding to the browser operating status is loaded, and the browser-side rendering engine matches the target rendering mode with a suitable rendering quality level from multiple preset rendering modes supported by the browser-side rendering engine based on the terminal hardware configuration information, and performs graphics rendering operations according to the target rendering mode.

[0189] During the entire process described above, a set of application software system can use an adaptive rendering engine to implement targeted graphics rendering processing according to the different software running states of the terminal. There is no need to assemble multiple sets of application software systems to implement rendering switching. Graphics rendering processing can be carried out in combination with the characteristics of the terminal device to meet the differentiated rendering needs of the current terminal. The graphics rendering processing operation occurs locally in the terminal, reducing dependence on the network environment, reducing data leakage problems, and improving the efficiency and performance of terminal graphics rendering processing.

[0190] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0191] Based on the same inventive concept, the embodiment of the present application also provides a graphics rendering device. The graphics rendering device provided in the embodiment of the present application can implement each process of the embodiment of the above-mentioned graphics rendering method and can achieve the same technical effect. Therefore, the specific limitations in one or more graphics rendering device embodiments provided below can refer to the limitations on the graphics rendering method above. To avoid repetition, they will not be repeated here.

[0192] In one embodiment, Figure 6 As shown, a graphics rendering device 600 is provided, comprising:

[0193] Acquisition module 601, used to acquire terminal hardware configuration information;

[0194] A determination module 602, configured to determine a target rendering mode matching the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels;

[0195] The rendering execution module 603 is used to execute a graphics rendering operation of a target quality level according to the target rendering mode.

[0196] In some embodiments, the acquisition module 601 is specifically used to:

[0197] Performing an operating environment detection on the terminal, determining the terminal software operating state from at least two preset software operating states supported by the terminal, and determining the terminal hardware configuration information.

[0198] In some embodiments, the determination module 602 is specifically configured to:

[0199] Based on the terminal software running state, determining a target rendering engine whose rendering protocol matches the terminal software running state;

[0200] Based on the terminal hardware configuration information and the quality levels of graphics rendering operations corresponding to the plurality of preset rendering modes supported and executed by the target rendering engine, a target rendering mode matching the terminal hardware configuration information is determined from the plurality of preset rendering modes.

[0201] In some embodiments, the determination module 602 is more specifically configured to:

[0202] Based on the terminal hardware configuration information, perform hardware performance evaluation on the terminal to obtain a performance evaluation result;

[0203] Based on the performance evaluation result and the quality levels of graphics rendering operations corresponding to each of the plurality of preset rendering modes supported by the target rendering engine, a rendering mode matching the performance evaluation result is determined from the plurality of preset rendering modes as the target rendering mode.

[0204] In some embodiments, the determination module 602 is further specifically configured to:

[0205] Searching the dictionary for a score corresponding to each of the terminal hardware configuration information;

[0206] The performance evaluation result is calculated based on the score and the set weight of each hardware corresponding to the terminal hardware configuration information in the terminal.

[0207] In some embodiments, the determination module 602 is further specifically configured to:

[0208] Based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, determining a rendering mode to be selected whose quality level matches the performance evaluation result from the plurality of preset rendering modes;

[0209] If there are multiple rendering modes to be selected, a rendering mode whose graphics rendering operation is the target quality level is selected from the rendering modes to be selected as the target rendering mode.

[0210] In some embodiments, the rendering execution module 603 is specifically used to:

[0211] The target rendering engine is called so that the target rendering engine performs a graphics rendering operation of the target quality level configured in the target rendering mode according to a corresponding rendering protocol.

[0212] In some embodiments, the terminal software running state includes a browser running state or a client running state; the target rendering engine includes a first rendering engine corresponding to the browser running state or a second rendering engine corresponding to the client running state.

[0213] In some embodiments, the device further comprises:

[0214] Engine building blocks for:

[0215] Determine a first rendering protocol that matches the browser running state and a second rendering protocol that matches the client running state;

[0216] Obtaining first graphics rendering processing codes of different quality levels under the first rendering protocol and second graphics rendering processing codes of different quality levels under the second rendering protocol;

[0217] Based on the first graphics rendering processing code, the first rendering engine is encapsulated, and based on the second graphics rendering processing code, the second rendering engine is encapsulated.

[0218] In some embodiments, the device further comprises:

[0219] A receiving module, used to obtain an interface call request of a digital twin system, wherein the interface call request carries twin data to be rendered;

[0220] The acquisition module 601 is specifically used to respond to the interface call request, execute the steps of detecting the terminal's operating environment, determining the terminal software operating state from at least two preset software operating states supported by the terminal, and determining the terminal hardware configuration information.

[0221] Correspondingly, the rendering execution module 603 is specifically used for:

[0222] According to the target rendering mode, a graphics rendering operation of the target quality level is performed on the twin data to be rendered.

[0223] Each module in the above-mentioned graphics rendering device can be implemented in whole or in part by software, hardware or a combination thereof. Each of the above-mentioned modules can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute the operations corresponding to each of the above modules.

[0224] In one embodiment, Figure 7 As shown, a computer device is provided. The computer device 7 of this embodiment includes: at least one processor 700 ( Figure 7 Only one is shown in the figure), a memory 701, and a computer program 702 stored in the memory 701 and executable on the at least one processor 700, wherein the processor 700 implements the steps of any of the above-mentioned method embodiments when executing the computer program 702.

[0225] The computer device 7 may be a computing device such as a desktop computer, a notebook, a palm computer, etc. The computer device 7 may include, but is not limited to, a processor 700 and a memory 701. Those skilled in the art will understand that Figure 7 It is only an example of computer device 7 and does not constitute a limitation of computer device 7. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the computer device may also include input and output devices, network access devices, buses, etc.

[0226] The processor 700 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0227] The memory 701 may be an internal storage unit of the computer device 7, such as a hard disk or memory of the computer device 7. The memory 701 may also be an external storage device of the computer device 7, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the computer device 7. Further, the memory 701 may also include both an internal storage unit and an external storage device of the computer device 7. The memory 701 is used to store the computer program and other programs and data required by the computer device. The memory 701 may also be used to temporarily store data that has been output or is to be output.

[0228] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0229] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0230] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0231] In the embodiments provided in the present application, it should be understood that the disclosed apparatus / computer equipment and methods can be implemented in other ways. For example, the apparatus / computer equipment embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of the apparatus or unit, which can be electrical, mechanical or other forms.

[0232] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0233] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0234] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electric carrier signals and telecommunication signals.

[0235] The present application implements all or part of the processes in the above-mentioned embodiment methods, and may also be implemented through a computer program product. When the computer program product runs on a computer device, the computer device can implement the steps in the above-mentioned method embodiments when executing the computer program product.

[0236] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A graphics rendering method, characterized in that: include: Get terminal hardware configuration information; Determining a target rendering mode that matches the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels; A graphics rendering operation at a target quality level is performed according to the target rendering mode.

2. The method according to claim 1, characterized in that The obtaining of the terminal hardware configuration information includes: Performing an operating environment detection on the terminal, determining the terminal software operating state from at least two preset software operating states supported by the terminal, and determining the terminal hardware configuration information.

3. The method according to claim 2, characterized in that The step of determining a target rendering mode that matches the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels includes: Based on the terminal software running state, determining a target rendering engine whose rendering protocol matches the terminal software running state; Based on the terminal hardware configuration information and the quality levels of graphics rendering operations corresponding to the plurality of preset rendering modes supported and executed by the target rendering engine, a target rendering mode matching the terminal hardware configuration information is determined from the plurality of preset rendering modes.

4. The method according to claim 3, characterized in that The determining, based on the terminal hardware configuration information and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported and executed by the target rendering engine, a target rendering mode matching the terminal hardware configuration information from the plurality of preset rendering modes comprises: Based on the terminal hardware configuration information, perform hardware performance evaluation on the terminal to obtain a performance evaluation result; Based on the performance evaluation result and the quality levels of graphics rendering operations corresponding to each of the plurality of preset rendering modes supported by the target rendering engine, a rendering mode matching the performance evaluation result is determined from the plurality of preset rendering modes as the target rendering mode.

5. The method according to claim 4, characterized in that The performing hardware performance evaluation on the terminal based on the terminal hardware configuration information to obtain a performance evaluation result includes: Searching the dictionary for a score corresponding to each of the terminal hardware configuration information; The performance evaluation result is calculated based on the score and the set weight of each hardware corresponding to the terminal hardware configuration information in the terminal.

6. The method according to claim 4 or 5, characterized in that: The step of determining, based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, a rendering mode matching the performance evaluation result from the plurality of preset rendering modes as the target rendering mode comprises: Based on the performance evaluation result and the quality levels of the graphics rendering operations corresponding to the plurality of preset rendering modes supported by the target rendering engine, determining a rendering mode to be selected whose quality level matches the performance evaluation result from the plurality of preset rendering modes; If there are multiple rendering modes to be selected, a rendering mode whose graphics rendering operation is the target quality level is selected from the rendering modes to be selected as the target rendering mode.

7. The method according to any one of claims 3 to 6, characterized in that: The step of performing a graphics rendering operation at a target quality level according to the target rendering mode includes: The target rendering engine is called so that the target rendering engine performs a graphics rendering operation of the target quality level configured in the target rendering mode according to a corresponding rendering protocol.

8. The method according to any one of claims 3 to 7, characterized in that: The terminal software running state includes the browser running state or the client running state; The target rendering engine includes a first rendering engine corresponding to the browser running state or a second rendering engine corresponding to the client running state.

9. The method according to claim 8, characterized in that Before obtaining the terminal hardware configuration information, the method further includes: Determine a first rendering protocol that matches the browser running state and a second rendering protocol that matches the client running state; Obtaining first graphics rendering processing codes of different quality levels under the first rendering protocol and second graphics rendering processing codes of different quality levels under the second rendering protocol; Based on the first graphics rendering processing code, the first rendering engine is encapsulated, and based on the second graphics rendering processing code, the second rendering engine is encapsulated.

10. The method according to any one of claims 2 to 9, characterized in that: The method further comprises: Obtain an interface call request of the digital twin system, wherein the interface call request carries the twin data to be rendered; In response to the interface call request, the steps of detecting the operating environment of the terminal, determining the terminal software operating state from at least two preset software operating states supported by the terminal, and determining the terminal hardware configuration information are executed; Correspondingly, performing a graphics rendering operation of a target quality level according to the target rendering mode includes: According to the target rendering mode, a graphics rendering operation of the target quality level is performed on the twin data to be rendered.

11. A graphics rendering device, characterized in that: include: An acquisition module is used to obtain terminal hardware configuration information; A determination module, configured to determine a target rendering mode matching the terminal hardware configuration information from a plurality of preset rendering modes configured with graphics rendering operations of different quality levels; A rendering execution module is used to execute a graphics rendering operation of a target quality level according to the target rendering mode.

12. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 10 are implemented.

13. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 10 are implemented.

14. A computer program product, characterized in that The invention comprises a computer-readable code, or a non-volatile computer-readable storage medium carrying the computer-readable code, wherein when the computer-readable code is executed in an electronic device, a processor in the electronic device executes the steps of the method according to any one of claims 1 to 10.

Citation Information

Cited By

  • Rendering method, rendering capability evaluation method, equipment and storage medium

    CN121116465A