Rendering detail level adjusting method and device and electronic equipment
By dynamically adjusting the rendering detail levels and combining device hardware and load information, the problem of poor matching between rendering strategies and device performance is solved, thereby improving the stability of the rendering process and the efficiency of resource utilization.
Patent Information
- Application Number
- CN202511023335.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-23
- Publication Date
- 2025-10-31
AI Technical Summary
In existing technologies, the rendering detail level is poorly matched with the real-time performance of the device and cannot adapt to dynamic changes in hardware performance, resulting in stuttering and low resource utilization efficiency.
By acquiring multiple current hardware information of the rendering execution device, a comprehensive score and dynamic benchmark value are calculated. The rendering detail level is dynamically adjusted in combination with the current load information, and changes in hardware parameters are monitored in real time to update the rendering strategy to adapt to the device's operating status.
It achieves real-time matching between rendering strategies and device performance, improving the stability and adaptability of the rendering process and reducing stuttering and resource waste.
Smart Images

Figure CN120876691A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of graphics processing technology, and in particular to a method, device and electronic device for adjusting the rendering detail level. Background Technology
[0002] With the diversification of terminal device specifications, the performance gradient faced by graphics rendering platforms is expanding, ranging from low-power mobile processors to desktop graphics processing units at various performance levels. To achieve a stable and smooth graphics experience across different devices, Level of Detail (LOD) technology has been applied to the field of graphics processing. LOD pre-builds multiple models or textures of different resolutions and complexities to adapt to different hardware resources and rendering requirements, thereby achieving a dynamic balance between computational complexity and visual experience.
[0003] In existing technologies, a specific hardware parameter of the terminal device (such as the number of cores in the central processing unit, the performance indicators of the graphics processing unit, or the capacity of random access memory) is typically collected to determine the appropriate rendering level of detail (LLD). Based on the collected hardware parameters, the LLD is determined and applied throughout the subsequent rendering process to achieve a balance between resource control and visual effects. However, because this approach relies solely on a single static hardware parameter, it fails to comprehensively consider the collaborative performance of various hardware resources within the terminal device. This makes it difficult to accurately reflect the overall real-time rendering capability of the device, potentially leading to a significant discrepancy between the determined LLD and the actual device performance. Furthermore, device performance may fluctuate due to changes in workload, but in existing solutions, the LLD is fixed once determined and cannot be adjusted accordingly to dynamic changes in hardware performance.
[0004] Therefore, there is an urgent need for a method to adjust the rendering detail level in order to solve the technical problem of poor matching between the real-time performance of the device and the rendering detail level in the existing technology. Summary of the Invention
[0005] This application provides a method, device, and electronic device for adjusting the rendering detail level, so as to achieve accurate matching between the rendering detail level and the real-time hardware performance of the device.
[0006] In a first aspect, embodiments of this application provide a method for adjusting the rendering detail level, including:
[0007] Based on multiple current hardware information corresponding to the rendering execution device, the current comprehensive score of the rendering execution device is obtained, and based on the initial reference value corresponding to the rendering execution device and the current comprehensive score, the dynamic benchmark value corresponding to the rendering execution device is obtained;
[0008] Obtain the current load information of the rendering execution device, and based on the rendering execution device, determine the current rendering detail level corresponding to the rendering execution device according to the dynamic baseline value and the current load information;
[0009] When the rendering execution device performs rendering according to the rendering level of detail, hardware information of at least one piece of hardware in the rendering execution device is monitored;
[0010] When the parameter change of any hardware information is detected to be greater than its corresponding preset threshold, the current comprehensive score of the rendering execution device is updated, and the rendering detail level of the rendering execution device is updated according to the current comprehensive score.
[0011] In one possible implementation, updating the rendering detail level of the rendering execution device based on the current comprehensive score includes:
[0012] Based on the current comprehensive score, an updated dynamic baseline value is obtained, and based on the updated dynamic baseline value and the current load information of the rendering execution device, the current rendering detail level is determined to update the rendering detail level.
[0013] In one possible implementation, the hardware information of the rendering execution device includes: the number of central processing unit cores, graphics processing unit performance indicators, available random access memory capacity, and current screen resolution.
[0014] In one possible implementation, updating the current comprehensive score of the rendering execution device when the parameter change magnitude corresponding to any hardware information is detected to be greater than its corresponding preset magnitude threshold includes:
[0015] According to the preset hardware sampling period, the number of CPU cores, graphics processing unit performance indicators, available random access memory capacity and current screen resolution are obtained respectively, and the difference between two adjacent sampling values is calculated to obtain the parameter change range corresponding to each hardware information.
[0016] When the change in any parameter corresponding to any of the aforementioned hardware information exceeds its corresponding preset threshold, multiple current hardware information corresponding to the rendering execution device are obtained.
[0017] Based on multiple current hardware information corresponding to the rendering execution device, the current comprehensive score of the rendering execution device is obtained, and the comprehensive score is updated.
[0018] In one possible implementation, obtaining the current comprehensive score of the rendering execution device based on multiple pieces of current hardware information corresponding to the rendering execution device includes:
[0019] The number of CPU cores of the rendering execution device is collected, and a core count threshold corresponding to the model of the rendering execution device is obtained. A CPU score is obtained based on the number of CPU cores and the core count threshold.
[0020] Read the performance index of the graphics processing unit of the rendering execution device, and use the performance index of the graphics processing unit as the graphics processing unit score;
[0021] Obtain the available capacity of the random access memory of the rendering execution device, and obtain a random access memory score based on the available capacity and a preset capacity threshold;
[0022] Obtain the current screen resolution of the rendering execution device, and obtain a screen resolution score based on the current screen resolution and the baseline resolution;
[0023] Read the remaining battery percentage of the rendering execution device and use the remaining battery percentage as a battery score;
[0024] The current comprehensive score of the rendering execution device is obtained by weighting and summing the scores of the central processing unit, the graphics processing unit, the random access memory, the screen resolution, and the battery using preset weights.
[0025] In one possible implementation, obtaining the dynamic baseline value corresponding to the rendering execution device based on the initial reference value corresponding to the rendering execution device and the current comprehensive score includes:
[0026] Based on the current comprehensive score, obtain the adjustment factor corresponding to the rendering execution device, and read the initial reference value of the rendering execution device in the current startup cycle from the preset storage area;
[0027] Based on the initial reference value and the adjustment factor corresponding to the rendering execution device, obtain the dynamic baseline value corresponding to the rendering execution device.
[0028] In one possible implementation, obtaining the current load information of the rendering execution device includes:
[0029] The utilization rate of the central processing unit is collected through the pre-built operating system performance monitoring interface to obtain the first real-time load data.
[0030] The utilization rate of the graphics processing unit is collected through the pre-set graphics processing unit driver layer monitoring interface to obtain the second real-time load data.
[0031] The system reads the used and available capacity of the random access memory through a pre-defined memory management interface, and calculates the memory utilization rate based on the used and available capacity to obtain third real-time load data.
[0032] According to the preset sampling time window, the first real-time load data, the second real-time load data and the third real-time load data are respectively subjected to moving average processing to obtain the first average load data, the second average load data and the third average load data.
[0033] The current load of the rendering execution device is obtained based on the first average load data, the second average load data, and the third average load data.
[0034] In one possible implementation, determining the current rendering detail level corresponding to the rendering execution device based on the rendering execution device, according to the dynamic baseline value and the current load information, includes:
[0035] Based on the model of the central processing unit and the model of the graphics processing unit of the rendering execution device, the first segment ratio coefficient and the second segment ratio coefficient corresponding to the rendering execution device are retrieved from a preset hardware classification database.
[0036] Based on the dynamic benchmark value, a first benchmark value corresponding to the first segmentation ratio coefficient is obtained, and a second benchmark value corresponding to the second segmentation ratio coefficient is obtained; wherein, the second benchmark value is greater than the first benchmark value;
[0037] If the current load information is less than or equal to the first reference value, then the current rendering level of detail is determined to be high level of detail; or,
[0038] If the current load information is greater than the first reference value and less than the second reference value, then the current rendering level of detail is determined to be medium level of detail; or,
[0039] If the current load information is greater than or equal to the second baseline value, then the current rendering level of detail is determined to be low level of detail.
[0040] Secondly, embodiments of this application provide an apparatus for adjusting the rendering detail level, comprising:
[0041] The information processing module is used to obtain the current comprehensive score of the rendering execution device based on multiple current hardware information corresponding to the rendering execution device, and to obtain the dynamic benchmark value corresponding to the rendering execution device based on the initial reference value and the current comprehensive score.
[0042] The layer determination module is used to obtain the current load information of the rendering execution device, and based on the rendering execution device, determine the current rendering detail layer corresponding to the rendering execution device according to the dynamic reference value and the current load information;
[0043] An information monitoring module is used to monitor hardware information of at least one piece of hardware in the rendering execution device after the rendering execution device performs rendering according to the rendering detail level;
[0044] The layer update module is used to update the current comprehensive score of the rendering execution device when the parameter change magnitude corresponding to any hardware information is detected to be greater than its corresponding preset magnitude threshold, and to update the rendering detail layer of the rendering execution device according to the current comprehensive score.
[0045] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor;
[0046] The memory stores computer-executed instructions;
[0047] The processor executes computer execution instructions stored in the memory, causing the processor to perform the first aspect and / or various possible implementations of the first aspect as described above.
[0048] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the first aspect and / or various possible implementations of the first aspect.
[0049] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the first aspect and / or various possible implementations of the first aspect.
[0050] This application provides a method, device, and electronic device for adjusting the rendering detail level. It dynamically calculates a comprehensive performance score based on the current hardware information of the rendering execution device and generates a dynamic benchmark value reflecting the current device performance state by combining an initial reference value. Simultaneously, it determines the level of detail by combining the current load information with the dynamic benchmark value, enabling fine-grained rendering strategy adjustments under different real-time load conditions. Furthermore, it monitors hardware parameter changes in real time during rendering and triggers a linked update of the performance score and rendering level when performance fluctuations exceed a preset threshold, thereby ensuring dynamic adaptation to changes in device operating status. The overall solution effectively improves the responsiveness of the rendering strategy to device performance status, ensuring that the rendering execution device always operates at a rendering level that matches its real-time performance. This solves the problem of poor matching between real-time device performance and rendering detail level in existing technologies, achieving improved stability and adaptability of the rendering process. Attached Figure Description
[0051] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0052] Figure 1 A schematic diagram of the method for adjusting the rendering detail level provided in the embodiments of this application;
[0053] Figure 2 This is a schematic flowchart of a method for obtaining dynamic reference values provided in an embodiment of this application;
[0054] Figure 3 This is a schematic diagram of the method for determining the current rendering level of detail provided in an embodiment of this application;
[0055] Figure 4 A schematic diagram of the structure of the rendering detail level adjustment device provided in the embodiments of this application;
[0056] Figure 5 A schematic diagram of the structure of the electronic device provided in this application.
[0057] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0058] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0059] In current graphics rendering, a static hardware parameter of the rendering device, such as the number of CPU cores or memory capacity, is typically collected during application startup. This parameter is then used as a criterion to statically set the rendering detail level. While this method is relatively simple to implement and can improve rendering adaptation efficiency to some extent, it relies primarily on a single or static hardware indicator and lacks a comprehensive analysis of the overall device performance, making it difficult to accurately match the device's actual capacity during operation. Furthermore, the rendering detail level is usually set once at startup, lacking dynamic adjustment during runtime. If the device's hardware load fluctuates during operation, or if performance changes due to environmental changes, task switching, or other factors, the previously set rendering detail level may become incompatible with the device's current capacity, leading to stuttering, frame drops, or over-rendering. This adaptation lag not only degrades the user experience but also affects overall stability and resource utilization efficiency.
[0060] Based on the aforementioned technical problems and needs, this application proposes a method for adjusting the rendering level of detail (LMD), aiming to solve the technical problems of poor matching between real-time device performance and rendering LMD, and insufficient responsiveness to performance changes in existing technologies. Specifically, by collecting multiple current hardware information of the rendering execution device, a comprehensive score describing the overall capability of the device is obtained. Based on this, combined with an initial reference value, a dynamic baseline value is obtained. Then, combined with the device's current load information, the rendering LMD adapted to the current device state is determined. During rendering execution, the state changes of at least one hardware component in the rendering execution device are continuously monitored. When the performance parameter fluctuation of any hardware component exceeds a preset threshold, the comprehensive score is recalculated in a timely manner, and the current rendering LMD is updated accordingly, ensuring that the rendering strategy always remains consistent with the actual carrying capacity of the device. It is evident that this application considers the dynamic characteristics of the device's operating environment, realizing a shift from static adaptation to dynamic control, improving the matching between real-time device performance and rendering LMD, and enhancing the adaptability and stability of device rendering in diverse operating environments.
[0061] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0062] Figure 1 This is a schematic diagram of the method for adjusting the rendering level of detail provided in the embodiments of this application, as shown below. Figure 1 As shown, the method includes:
[0063] S11. Based on multiple current hardware information corresponding to the rendering execution device, obtain the current comprehensive score of the rendering execution device, and based on the initial reference value and the current comprehensive score corresponding to the rendering execution device, obtain the dynamic benchmark value corresponding to the rendering execution device.
[0064] In this embodiment, to achieve adaptive matching of rendering execution to different device hardware conditions, it is necessary to quantitatively analyze the overall performance level of the rendering execution device. Therefore, firstly, based on multiple current hardware information corresponding to the rendering execution device, a current comprehensive score of the rendering execution device is obtained. For example, hardware information may include indicators such as the number of cores of the central processing unit, the performance indicators of the graphics processing unit, the available random access memory capacity, screen resolution, and battery power. These hardware information are selected because they reflect the available energy resources of the device from five dimensions: computing power, graphics processing power, RAM, display load, and power stability, respectively, and have high representativeness and real-time performance. The current comprehensive score, as a comprehensive reflection of the device's current hardware resource carrying capacity, provides a basic quantitative basis for subsequent rendering detail level determination.
[0065] To achieve a dynamic benchmark that matches the actual capabilities of the device, after obtaining the current comprehensive score, a dynamic benchmark value is calculated by combining the initial reference value of the rendering execution device. This dynamic benchmark value serves as an adjustment reference, considering the relative relationship between the device's original capability baseline (i.e., the initial reference value) and the current operating state (i.e., the current comprehensive score). It targets the rendering execution device at the current moment, providing a flexible and real-time calculation basis for subsequent rendering detail level determination, thereby achieving stronger adaptability in the selection of rendering detail levels. Through this embodiment, a dynamic relationship is established between hardware, comprehensive score, and initial reference value, providing a basis for subsequent determination of rendering detail levels based on the device's real-time load, realizing the transformation from static parameter setting to dynamic adaptation. Furthermore, it should be noted that the rendering execution device is a terminal device with graphics processing capabilities, including but not limited to mobile terminals, tablets, laptops, all-in-one computers, desktop computers, embedded graphics platforms, etc.
[0066] S12, obtain the current load information of the rendering execution device, and based on the rendering execution device, determine the current rendering detail level corresponding to the rendering execution device according to the dynamic baseline value and the current load information.
[0067] In this embodiment, the current load information of the rendering execution device is obtained. Current load information refers to the resource usage of the device during operation, such as CPU utilization and GPU utilization. This type of data is typically acquired in real-time through a preset interface or driver layer acquisition module, reflecting the device's current computational load and resource pressure. Based on the dynamic baseline value and the current load information, the current rendering detail level corresponding to the device is determined. The dynamic baseline value is calculated based on the current comprehensive score and initial reference value, reflecting the expected resource carrying capacity of the device in the current period, while the current load information represents the device's real-time resource usage status during specific operation. The combination of these two can be used to determine the device's resource status, such as whether it is in a resource-sufficient, resource-scarce, or resource-critical state, thereby selecting the appropriate rendering detail level accordingly.
[0068] For example, the dynamic baseline value can be regarded as a reference threshold for the current device load, and its value range determines which level of detail should be switched to under what load conditions. For instance, when the current load information is lower than the lower limit corresponding to the dynamic baseline value, it is determined that the device has sufficient resource redundancy and can perform rendering operations at a higher level of detail; when the current load information is in the middle range corresponding to the dynamic baseline value, a medium level of detail is selected to balance rendering effect and computational cost; when the current load information exceeds the upper limit corresponding to the dynamic baseline value, the rendering complexity should be reduced to reduce frame drops or stuttering caused by excessive load. Through this embodiment, the graphics rendering detail level can be adjusted in real time according to changes in device load, ensuring a balance between rendering quality and responsiveness under different hardware configurations and operating scenarios, thereby improving the stability of the rendering process and the user experience.
[0069] S13, when the rendering execution device performs rendering according to the rendering detail level, monitor the hardware information of at least one piece of hardware in the rendering execution device.
[0070] In this embodiment, when the rendering execution device performs graphics rendering according to the determined rendering detail level, in order to further realize continuous perception of the device's operating status and adaptive adjustment of rendering, it is necessary to monitor the hardware information of at least one piece of hardware in the rendering execution device. The purpose is to establish a real-time linkage mechanism between the rendering execution process and the hardware status. Specifically, the monitoring objects include, but are not limited to, hardware components such as the central processing unit, graphics processing unit, and memory. For example, the monitoring method can be based on the standard interface of the operating system or the data channel provided by the driver layer, or it can be completed using a performance sampling mechanism embedded in the underlying firmware or hardware layer to ensure the real-time nature and accuracy of the data. This embodiment, by acquiring the actual hardware operating status during the rendering operation, can perceive whether the device has performance bottlenecks, resource exhaustion, or other situations, providing a basis for determining whether the current overall score and rendering detail level need to be adjusted. This mechanism of collecting hardware information in real time during rendering execution enhances the sensitivity and responsiveness of the rendering scheduling strategy to changes in the operating environment, improving the overall stability and adaptive performance of the rendering.
[0071] S14. When the parameter change of any hardware information is detected to be greater than its corresponding preset threshold, update the current comprehensive score of the rendering execution device, and update the rendering detail level of the rendering execution device according to the current comprehensive score.
[0072] In this embodiment, when a rendering device experiences a significant change in any of its hardware information while performing a graphics rendering task, the system compares the magnitude of the change with a preset threshold to determine whether to trigger an update to the current overall score. The preset threshold defines the upper limit of various key hardware information within the normal fluctuation range, distinguishing between normal operating fluctuations and significant changes affecting performance. Once the actual change in a hardware parameter exceeds the corresponding threshold, it indicates that the device's hardware state has changed, affecting its rendering capabilities. Upon detecting this change, not only should the current overall score be recalculated promptly, but the rendering detail level determination result should also be updated based on the new score. This score update process comprehensively considers the device's hardware capabilities and resource utilization status at the current stage, reflecting the device's overall processing capability under changed conditions. The rendering detail level, as a parameter controlling graphics complexity and computational load, should be adjusted according to the new score to adapt to the current hardware capabilities, reducing system lag, overheating, or power consumption spikes caused by an imbalance between rendering load and processing capacity. The update mechanism provided in this embodiment is adaptive and responsive, enabling the rendering detail level to no longer be fixed to the static settings at the startup stage, but to change dynamically with the real-time fluctuations in device performance. By timely identifying and adjusting the rendering detail level, the overall stability and user experience are improved.
[0073] In one embodiment, the update of the rendering detail level of the rendering execution device in step S14 above is further explained herein. Based on the above embodiment, it includes:
[0074] S1401: Based on the current comprehensive score, obtain the updated dynamic baseline value, and based on the updated dynamic baseline value and the current load information of the rendering execution device, determine the current rendering detail level in order to update the rendering detail level.
[0075] In this embodiment, during the update of the rendering detail level of the rendering execution device, a matching dynamic benchmark value needs to be determined based on the latest obtained comprehensive score. The dynamic benchmark value serves as the threshold for determining whether the rendering load is reasonable, dynamically reflecting the device's current processing capacity. Compared to static settings, the benchmark value offers higher real-time performance and adaptability. Based on the updated dynamic benchmark value, and further combined with the current load information of the rendering execution device, it is determined whether the load is high, medium, or low under the current performance conditions. This embodiment achieves the judgment and update of the current rendering detail level by comparing and analyzing the current load information with the dynamic benchmark value. Under the combined effect of the dynamic benchmark value and load information, it can be determined whether the current rendering detail level needs to be adjusted to a higher, lower, or unchanged level to adapt to the changing trends of the rendering execution device's real-time performance. This optimizes resource allocation while ensuring a good visual experience, improving overall rendering efficiency and stability.
[0076] In one embodiment, the hardware information of the rendering execution device includes: the number of central processing unit cores, graphics processing unit performance indicators, available random access memory capacity, and current screen resolution.
[0077] In this embodiment, the number of CPU cores is an indicator of a device's ability to handle general computing tasks. During rendering, especially when physics calculations or multi-threaded data processing are involved, a multi-core CPU configuration can improve overall processing efficiency. Therefore, collecting the number of CPU cores can reflect the device's basic ability to handle complex computing tasks and helps determine whether it has the capability to handle high-detail rendering tasks. The graphics processing unit (GPU) performance directly determines the device's processing speed and accuracy for computationally intensive graphics tasks such as graphics, textures, and lighting. GPU performance accurately reflects the device's graphics rendering capabilities and is a crucial basis for determining the level of detail in rendering. The available capacity of random access memory (RAM) measures the space resources available for caching textures, model data, and intermediate results of the rendering pipeline during the rendering process. Its sufficiency directly affects whether frequent data exchanges or performance bottlenecks occur during rendering.
[0078] The current screen resolution reflects the pixel density of the image required for rendering output. Higher resolution means a greater total number of pixels the device needs to process, resulting in a significant increase in graphics computation. Therefore, including screen resolution in the hardware information collection scope helps to comprehensively analyze the rendering pressure faced by the device in actual output environments, thereby determining its capacity to handle rendering detail levels. In summary, by collecting data on the number of central processing unit cores, graphics processing unit performance indicators, available random access memory capacity, and the current screen resolution, multi-dimensional data collection on device performance is achieved. This ensures that subsequent performance scoring and adjustments to rendering detail levels (i.e., rendering strategies) have sufficient hardware data support, enabling accurate identification and adaptive control of rendering device performance.
[0079] Next, the update of the current overall score of the rendering execution device in step S14 above will be further explained. Based on the above embodiment, it includes:
[0080] S1411, according to the preset hardware sampling period, obtain the number of cores of the central processing unit, the performance index of the graphics processing unit, the available capacity of the random access memory and the current screen resolution, and calculate the difference between two adjacent sampling values to obtain the parameter change range corresponding to each hardware information.
[0081] S1412, when the parameter change magnitude corresponding to any hardware information is greater than its corresponding preset magnitude threshold, obtain multiple current hardware information corresponding to the rendering execution device;
[0082] S1413: Based on multiple current hardware information corresponding to the rendering execution device, obtain the current comprehensive score of the rendering execution device in order to update the comprehensive score.
[0083] In this embodiment, to achieve dynamic updates to the overall score of the rendering execution device, it is necessary to continuously monitor the changing trends of hardware information during operation. First, based on a preset hardware sampling period (e.g., 5 minutes), multiple hardware indicators of the rendering execution device are acquired, including the number of CPU cores, graphics processing unit performance indicators, available random access memory capacity, and current screen resolution. The hardware sampling period refers to the time interval between two consecutive data samples; its setting must balance responsiveness and resource consumption to ensure timely detection of hardware status fluctuations without increasing the overall operational burden.
[0084] During each round of sampling, the current values of various hardware metrics are recorded and compared with the results of the previous round to calculate the magnitude of change for each parameter. The magnitude of change is obtained by calculating the absolute value of the difference between the current sampled value and the previous sampled value, used to quantify the degree of fluctuation of each metric within the sampling period. The magnitude of parameter change here reflects the changing trend of the device's hardware capabilities; for example, changes in graphics processing unit performance metrics may stem from frequency adjustments, temperature control limiting, or other resource scheduling behaviors. Subsequently, the magnitude of change for each parameter is compared with its corresponding preset magnitude threshold. The preset magnitude threshold can be set separately for different hardware types. When the magnitude of change for any hardware information exceeds its corresponding threshold, it indicates that the device's hardware capabilities have changed in a way that may affect rendering adaptability, at which point the comprehensive scoring update process is triggered.
[0085] Once the changes are confirmed, multiple current hardware information entries for the rendering execution device are reacquired. This acquisition process can utilize the same acquisition interface and data structure as the original score calculation. Subsequently, based on the acquired current hardware information, the current comprehensive score for the rendering execution device is recalculated to replace the previous score result. This embodiment constructs a dynamic and adaptive scoring triggering mechanism by setting a hardware sampling period and a change magnitude threshold, enabling timely response and updating of the comprehensive score when device hardware performance fluctuates. This mechanism improves the timeliness and adaptability of the scoring, ensuring that subsequent adjustments to rendering details better align with the device's current capabilities, thus enhancing the overall flexibility and stability of the rendering process.
[0086] In one specific embodiment, a specific implementation method is provided for obtaining the current comprehensive score of the rendering execution device in steps S11 and S1413 above. Based on the above embodiment, it includes:
[0087] S111, collect the number of CPU cores of the rendering execution device, obtain the core number threshold corresponding to the model of the rendering execution device, and obtain the CPU score based on the number of CPU cores and the core number threshold.
[0088] S112, Read the performance index of the graphics processing unit of the rendering execution device, and use the performance index of the graphics processing unit as the score of the graphics processing unit.
[0089] S113, obtain the available capacity of the random access memory of the rendering execution device, and obtain the random access memory score based on the available capacity and the preset capacity threshold;
[0090] S114, obtain the current screen resolution of the rendering execution device, and obtain a screen resolution score based on the current screen resolution and the reference resolution;
[0091] S115, read the remaining battery percentage of the rendering execution device and use the remaining battery percentage as a battery score;
[0092] S116: Based on the central processing unit score, graphics processing unit score, random access memory score, screen resolution score, and battery score, the current comprehensive score of the rendering execution device is obtained by weighting and summing the scores using preset weights.
[0093] In this embodiment, the number of CPU cores in the rendering execution device is collected. The number of CPU cores is one of the indicators for measuring the device's computing power. To achieve standardized analysis, a corresponding core count threshold is read from a preset performance benchmark database based on the device model. This threshold reflects the standard performance level for that model. Subsequently, the actual number of cores is compared with this threshold, and a CPU score is calculated through normalization. The score range is set between 0 and 1 to represent the relative strength of processing power. Next, the performance indicators of the Graphics Processing Unit (GPU) are read, typically including parameters such as core frequency, number of execution units, or graphics rendering bandwidth, or a unified graphics performance index (such as GFXBench score) is used as a representation. In this process, the GPU performance indicators are directly used as the GPU score. Subsequently, the available capacity of the Random Access Memory (RAM) of the rendering execution device is obtained. RAM capacity determines the device's data caching and processing capabilities in high-complexity rendering tasks. The current available capacity is compared with a preset capacity threshold, and a random access memory score is obtained through proportional calculation. The threshold can be adjusted according to the device platform type (such as mobile devices, embedded devices, or desktop platforms) to ensure the suitability of the scoring.
[0094] Furthermore, the current screen resolution is collected as an important parameter reflecting the complexity of the rendering target. To this end, a baseline resolution (e.g., 1080p) is set, and the current screen resolution is compared with this baseline resolution to obtain a screen resolution score. For example, the ratio of the device's current screen resolution to the preset baseline resolution is calculated, and then the reciprocal of this ratio is taken. Specifically, if the baseline resolution is 1080p, which is 1920×1080 pixels, then the baseline resolution area is 2,073,600 pixels; if the current device's screen resolution is W×H, then the current resolution area is W×H pixels. Dividing the current resolution area by the baseline resolution area yields a relative magnification factor; taking the reciprocal of this magnification factor gives the screen resolution score.
[0095] Next, the remaining battery percentage of the device is read, and this percentage value can be directly used as the battery score. Finally, the above five scores are weighted and summed according to preset weights, corresponding to the CPU score, GPU score, RAM score, screen resolution score, and battery score respectively. For example, the CPU score and GPU score each account for 30% of the weight because these two types of hardware have a direct impact on rendering tasks. The RAM score is weighted at 20%. The screen resolution score and battery score each account for 10% of the weight. In summary, the current comprehensive score is obtained by weighting and summing each score item according to the following formula: 0.3 × CPU score + 0.3 × GPU score + 0.2 × RAM score + 0.1 × screen resolution score + 0.1 × battery score. During this weighting process, the weight of each score item can be optimized and adjusted according to the actual application scenario. For example, for graphics-intensive applications, the weight of the GPU score can be increased. This comprehensive score can accurately quantify the overall performance level of the current rendering execution device, providing an objective basis for judging the level of detail in dynamic rendering.
[0096] Figure 2 This is a schematic flowchart illustrating a method for obtaining dynamic reference values according to an embodiment of this application. A specific implementation of obtaining the dynamic reference value corresponding to the rendering execution device in step S11 is provided here. Based on the above embodiment, as... Figure 2 As shown, it includes:
[0097] S21, based on the current comprehensive score, obtain the adjustment factor corresponding to the rendering execution device, and read the initial reference value of the rendering execution device in the current startup cycle from the preset storage area;
[0098] S22, obtain the dynamic baseline value corresponding to the rendering execution device based on the initial reference value and adjustment factor corresponding to the rendering execution device.
[0099] In this embodiment, an adjustment factor corresponding to the rendering execution device is determined based on the current comprehensive score calculated above. The calculation method is: Adjustment factor = 1 – Current comprehensive score. Subsequently, the initial reference value corresponding to the rendering execution device in the current startup cycle is read from the preset storage area. This initial reference value is a baseline reference standard set when the device starts, typically preset according to the device model and factory parameters. Based on the initial reference value and the adjustment factor, the current dynamic baseline value is further calculated to replace the statically set threshold in subsequent rendering detail level determination. The calculation method for this dynamic baseline value is: Dynamic baseline value = Initial reference value × Adjustment factor. By introducing a dynamic adjustment mechanism for the adjustment factor, the original reference load can be scaled proportionally according to the real-time performance of the device, thereby making the dynamic baseline value more accurately reflect the current device's carrying capacity in actual operation. This achieves an adaptive rendering control strategy for devices with different hardware conditions, reduces the performance bottleneck caused by fixed thresholds on low-end devices, and improves the rationality and device adaptability of rendering detail level control.
[0100] It's important to further clarify that, to meet the requirements of rendering execution, the current overall score must be greater than or equal to a preset score threshold. This score threshold represents the minimum overall performance requirement for the rendering task and is used to determine whether the current device has the basic capability to execute the rendering task. If the current overall score is greater than or equal to this score threshold, it means that the overall performance of the device meets the graphics rendering requirements, and the subsequent rendering detail level determination and execution process can continue; conversely, if the score is insufficient, the rendering operation can be suspended, thereby reducing stuttering, latency, or rendering failures caused by insufficient performance.
[0101] Furthermore, in one embodiment, the acquisition of current load information in step S12 is provided as an implementation method. Based on the above embodiment, it includes:
[0102] S121 collects the central processing unit utilization rate through the pre-built operating system performance monitoring interface to obtain the first real-time load data;
[0103] S122, through the preset graphics processing unit driver layer monitoring interface, collects the graphics processing unit utilization rate to obtain the second real-time load data;
[0104] S123 reads the used and available capacity of the random access memory through the preset memory management interface, and calculates the memory utilization rate based on the used and available capacity to obtain third real-time load data.
[0105] S124, according to the preset sampling time window, perform moving average processing on the first real-time load data, the second real-time load data and the third real-time load data respectively to obtain the first average load data, the second average load data and the third average load data.
[0106] S125: Obtain the current load of the rendering execution device based on the first average load data, the second average load data, and the third average load data.
[0107] In this embodiment, the CPU utilization rate is collected through a pre-defined operating system performance monitoring interface to obtain the first real-time load data. This interface typically calls the operating system's underlying performance statistics API (such as Performance Counter in Windows) to obtain the processor's active cycle percentage data, including user-mode time, system-mode time, and idle time. CPU utilization can usually be directly read. The GPU utilization rate is collected through a pre-defined graphics processing unit driver layer monitoring interface to obtain the second real-time load data. This interface is usually embedded in the GPU driver package or system graphics framework, and GPU utilization can usually be directly read. Next, the current random access memory usage is obtained through the memory management interface, including the used capacity and available capacity. This is obtained through the memory page table access mechanism provided by the system kernel or by reading specific values through the resource monitor. Based on this, the ratio between the used capacity and the total capacity is calculated to obtain the memory utilization rate, i.e., the third real-time load data.
[0108] Subsequently, the three types of real-time load data are subjected to moving average processing within a preset sampling time window to generate first average load data, second average load data, and third average load data. Moving average processing uses a fixed-length time window (e.g., 1 second, 3 seconds, or 5 seconds) and weighted averages the continuous sampled data within that window to smooth out high-frequency fluctuations in a short period, enhancing the stability and trend of the load data and reducing the misleading effect of brief peaks on rendering detail adjustments. Finally, the first, second, and third average load data are combined to obtain the current load of the rendering execution device. For example, the average of the three can be taken, or a weighted fusion can be used. Different weights can be adaptively set according to the specific device architecture (e.g., CPU-intensive or GPU-intensive), thereby accurately analyzing the overall pressure level of the rendering execution device's current operating status. This embodiment, by introducing multi-source load data acquisition and a moving average mechanism, not only achieves dynamic monitoring of operating resources (CPU, GPU, and memory) but also improves the robustness and accuracy of the analysis results through data smoothing processing, providing stable and reliable input for subsequent rendering detail-level decisions and enhancing adaptability to complex rendering scenarios.
[0109] In one specific embodiment, Figure 3 This is a schematic flowchart illustrating a method for determining the current rendering level of detail according to an embodiment of this application. An implementation of step S12, which determines the current rendering level of detail corresponding to the rendering execution device, is provided here. Based on the above embodiment, as... Figure 3 As shown, it includes:
[0110] S31, based on the model of the central processing unit and the model of the graphics processing unit of the rendering execution device, query and obtain the first segment ratio coefficient and the second segment ratio coefficient corresponding to the rendering execution device from the preset hardware classification database;
[0111] S32, based on the dynamic reference value, obtain the first reference value corresponding to the first segmentation ratio coefficient, and obtain the second reference value corresponding to the second segmentation ratio coefficient; wherein, the second reference value is greater than the first reference value;
[0112] S33, if the current load information is less than or equal to the first baseline value, then the current rendering detail level is determined to be the high detail level;
[0113] S34, if the current load information is greater than the first reference value and less than the second reference value, then the current rendering detail level is determined to be medium detail level;
[0114] S35, if the current load information is greater than or equal to the second baseline value, then the current rendering detail level is determined to be low detail level.
[0115] In this embodiment, based on the model of the central processing unit and the model of the graphics processing unit of the rendering execution device, a matching item is queried from a preset hardware classification database to obtain the first segment ratio coefficient and the second segment ratio coefficient corresponding to the device. The hardware classification database can be constructed by classifying and analyzing performance data of a large number of known processor and graphics card models. A corresponding ratio coefficient is preset in each device category to correspond to the subsequent dynamic threshold division. The first segment ratio coefficient is used to define the load threshold for high detail levels, and the second segment ratio coefficient is used to define the boundary between medium and low detail levels. Subsequently, based on the obtained dynamic benchmark value, numerical calculations are performed with the first and second segment ratio coefficients respectively to obtain the corresponding first and second benchmark values. This dynamic benchmark value reflects the performance carrying capacity of the current device after comprehensive scoring and adjustment during the startup cycle; therefore, using it as the basic magnitude for load division can better reflect the actual capabilities of the device. By multiplying with the ratio coefficient, the obtained first and second benchmark values correspond to the load thresholds of different LOD levels. The second benchmark value is greater than the first benchmark value, forming a detail level judgment interval from high to low.
[0116] Next, based on the currently collected and processed device load information, the range of its current interval is determined to identify the applicable rendering level of detail. If the current load information is less than or equal to the first baseline value, it indicates that the current device resource consumption is low and it has the ability to perform high-complexity rendering tasks; therefore, the current rendering level of detail is set to high level of detail. If the current load information is between the first and second baseline values, it indicates that the device's operating pressure is moderate and it can support medium-complexity rendering; therefore, it is set to medium level of detail. If the current load information is greater than or equal to the second baseline value, it indicates that the load is too high, which may lead to rendering delays or resource contention; therefore, it is necessary to switch to low level of detail to reduce rendering complexity and ensure smooth operation. This embodiment achieves an adaptive threshold adjustment mechanism for devices of different performance levels by setting a segmented scaling factor that dynamically matches the device type, avoiding the problem of poor adaptability of fixed threshold schemes.
[0117] In one specific embodiment, the rendering execution device is a high-configuration device, including a 12-core CPU, an NVIDIA RTX 3070-level graphics processing unit, 32GB of random access memory, and a screen resolution of 2560×1440. In a pre-defined hardware classification database, the CPU and graphics processing unit models of this device are classified as high-performance, therefore the first segment ratio is 0.8, and the second segment ratio is 1. The corresponding initial reference value for the current startup cycle is 1.5. To calculate the device performance score,
[0118] The collected hardware information is as follows: the CPU has 12 cores, while the maximum core count for this model is 16, resulting in a CPU score of 0.75; the graphics processing unit (such as the RTX 3070) performance score is based on a standardized score and set to 0.85; the available random access memory (RAM) capacity is 30GB, while the preset maximum capacity is 32GB, resulting in a RAM score of 0.94; the current screen resolution is 2560×1440, with a total of 3,686,400 pixels, while the baseline resolution is 1920×1080 (i.e., 2,073,600 pixels). Therefore, the screen resolution score is 0.5625. Since this is a desktop device with a fixed power supply, the battery score is set to 1.0 by default. Combining these scores, a weighted summation method is used to calculate the device's overall performance score, with the following weight allocations: CPU score 0.3, GPU score 0.3, RAM score 0.2, screen resolution score 0.1, and battery score 0.1. Based on this, the performance score is approximately 0.82.
[0119] Based on the preset dynamic adjustment mechanism, the adjustment factor is calculated to be approximately 0.18. This yields a dynamic baseline value of approximately 0.27. Next, combining the found first segment scaling factor of 0.8 and second segment scaling factor of 1.0, the first baseline value is calculated to be approximately 0.22, and the second baseline value to be approximately 0.27. Assuming the current load is 0.20, since this value is lower than the first baseline value of 0.22, the device is currently adapted for high-detail rendering. If the current load is between the first and second baseline values (e.g., 0.25), it is set to medium-detail rendering; if the current load exceeds the second baseline value (e.g., 0.30), it automatically switches to low-detail rendering.
[0120] In another specific embodiment, the rendering execution device is a desktop computer with a standard configuration, including an 8-core CPU, a GTX 1650-level graphics processing unit, 16GB of random access memory, and a screen resolution of 1920×1080. In a pre-defined hardware classification database, the CPU and graphics processing unit models are categorized as medium performance, resulting in a first segment ratio of 0.3 and a second segment ratio of 0.6. The initial reference value for the current startup cycle is set to 1.5.
[0121] Based on the collected hardware information, the score is calculated as follows: The device has 8 CPU cores, which is the maximum number of cores for the corresponding model, therefore the CPU score is 1; the standardized performance score for the GTX 1650 graphics processing unit is 0.65; the available random access memory (RAM) is 10GB, while the maximum capacity is 16GB, therefore the RAM score is 0.625; the screen resolution is 1920×1080, and the total pixels are the same as the baseline resolution, therefore the screen resolution score is 1.0; the device is a desktop computer, so the battery score is also set to 1.0. Combining these scores and assigning weights (CPU weight 0.3, GPU weight 0.3, RAM weight 0.2, screen resolution weight 0.1, battery score weight 0.1), the calculated performance score is approximately 0.82.
[0122] Accordingly, the adjustment factor is approximately 0.18, and the dynamic baseline value is calculated to be approximately 0.27. The first segment scaling factor is 0.3, and the second segment scaling factor is 0.6. Therefore, the first baseline value is 0.081, and the second baseline value is 0.162.
[0123] Assuming the current load of the device is 0.12, and comparing it with the above benchmark values, it can be concluded that since the current load is between the first benchmark value (0.081) and the second benchmark value (0.162), the device will be set to medium detail level in this rendering cycle.
[0124] As can be seen, although this device shares the same dynamic baseline value (0.27) as the aforementioned high-performance devices, the different segmentation ratios they employ result in different levels of rendering detail. Higher-configuration devices use higher ratios (e.g., 0.8 and 1.0), leading to higher first and second baseline values and easier access to high-detail rendering. In contrast, mid-configuration devices use lower ratios (e.g., 0.3 and 0.6), resulting in lower segmentation thresholds. Even under the same low load, they can only be assigned to mid- or low-detail rendering levels. This approach of setting different mapping ratios based on device level ensures that high-performance devices possess the ability to render higher details while reducing performance pressure and system instability risks associated with over-rendering mid- to low-performance devices. In other words, with the same dynamic baseline value, controlling the segmentation ratio allows for a more accurate adaptation of the relationship between device capabilities and rendering intensity, achieving a dynamic balance between stability and image quality, thereby improving the user experience.
[0125] For example, based on the determined rendering level of detail, the rendering execution device is controlled to perform graphics rendering operations at the corresponding level. If the current rendering level of detail is set to high level of detail, the rendering execution device will enable graphics processing instructions such as high-resolution texture resources, complex lighting models (such as global illumination or volumetric lighting effects), multi-level shadow calculations, and 3D models with a high number of polygons during the rendering process, in order to present detailed and realistic picture effects as much as possible.
[0126] If the current rendering level of detail is determined to be medium, the rendering device will appropriately simplify graphics resources and rendering parameters during rendering. For example, texture resources will be reduced to a medium resolution level, a simplified lighting calculation model (such as the Phong model or texture-based lighting approximation) will be enabled, and the maximum rendering distance, shadow level, and reflection intensity will be limited to reduce hardware resource consumption while ensuring image quality, thereby guaranteeing rendering efficiency and system responsiveness.
[0127] If the rendering detail level is low, the rendering device will execute the rendering task according to a simple strategy. For example, it may use low-resolution texture resources, disable or significantly simplify high-load features such as shadows, reflections, and ambient occlusion, and even cullate some non-core visual elements (such as depth of field and motion blur). The rendering engine can also further reduce the rendering computational burden by culling distant or invisible objects, limiting the frame rate cap, and reducing the anti-aliasing level, thereby adapting to the performance capacity of low-load devices and ensuring a balance between system stability and basic visual experience.
[0128] In summary, this tiered rendering mechanism can flexibly adapt to devices with different hardware capabilities, achieving coordinated optimization of system load and image quality.
[0129] Figure 4 A schematic diagram of the rendering detail level adjustment device provided in the embodiments of this application is shown below. Figure 4 As shown, the adjustment device 40 provided in this embodiment includes:
[0130] The information processing module 401 is used to obtain the current comprehensive score of the rendering execution device based on multiple current hardware information corresponding to the rendering execution device, and to obtain the dynamic benchmark value corresponding to the rendering execution device based on the initial reference value and the current comprehensive score.
[0131] The layer determination module 402 is used to obtain the current load information of the rendering execution device, and based on the rendering execution device, determine the current rendering detail layer corresponding to the rendering execution device according to the dynamic reference value and the current load information;
[0132] The information monitoring module 403 is used to monitor the hardware information of at least one piece of hardware in the rendering execution device after the rendering execution device performs rendering according to the rendering detail level;
[0133] The layer update module 404 is used to update the current comprehensive score of the rendering execution device when the parameter change magnitude corresponding to any hardware information is detected to be greater than its corresponding preset magnitude threshold, and to update the rendering detail layer of the rendering execution device according to the current comprehensive score.
[0134] The adjustment device 40 provided in this embodiment can execute the method provided in the above method embodiment. Its implementation principle and technical effect are similar, and will not be described in detail here.
[0135] Figure 5 A schematic diagram of the structure of the electronic device provided in this application. Figure 5 As shown, the electronic device 50 provided in this embodiment includes at least one processor 501 and a memory 502. Optionally, the electronic device 50 further includes a communication component 503. The processor 501, memory 502, and communication component 503 are connected via a bus 504.
[0136] In a specific implementation, at least one processor 501 executes computer execution instructions stored in memory 502, causing at least one processor 501 to perform the above-described method.
[0137] The specific implementation process of processor 501 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0138] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0139] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0140] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0141] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0142] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0143] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0144] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0145] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0146] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0147] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0148] If a function is implemented as 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 technical solution of this invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0149] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0150] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. A method for adjusting the rendering detail level, characterized in that, include: Based on multiple current hardware information corresponding to the rendering execution device, the current comprehensive score of the rendering execution device is obtained, and based on the initial reference value corresponding to the rendering execution device and the current comprehensive score, the dynamic benchmark value corresponding to the rendering execution device is obtained; Obtain the current load information of the rendering execution device, and based on the rendering execution device, determine the current rendering detail level corresponding to the rendering execution device according to the dynamic baseline value and the current load information; When the rendering execution device performs rendering according to the rendering level of detail, hardware information of at least one piece of hardware in the rendering execution device is monitored; When the parameter change of any hardware information is detected to be greater than its corresponding preset threshold, the current comprehensive score of the rendering execution device is updated, and the rendering detail level of the rendering execution device is updated according to the current comprehensive score.
2. The method according to claim 1, characterized in that, The step of updating the rendering detail level of the rendering execution device based on the current comprehensive score includes: Based on the current comprehensive score, an updated dynamic baseline value is obtained, and based on the updated dynamic baseline value and the current load information of the rendering execution device, the current rendering detail level is determined to update the rendering detail level.
3. The method according to claim 1, characterized in that, The hardware information of the rendering execution device includes: the number of central processing unit cores, graphics processing unit performance indicators, available random access memory capacity, and current screen resolution.
4. The method according to claim 3, characterized in that, The step of updating the current comprehensive score of the rendering execution device when the parameter change magnitude corresponding to any hardware information is detected to be greater than its corresponding preset magnitude threshold includes: According to the preset hardware sampling period, the number of CPU cores, graphics processing unit performance indicators, available random access memory capacity and current screen resolution are obtained respectively, and the difference between two adjacent sampling values is calculated to obtain the parameter change range corresponding to each hardware information. When the change in any parameter corresponding to any of the aforementioned hardware information exceeds its corresponding preset threshold, multiple current hardware information corresponding to the rendering execution device are obtained. Based on multiple current hardware information corresponding to the rendering execution device, the current comprehensive score of the rendering execution device is obtained, and the comprehensive score is updated.
5. The method according to claim 1 or 4, characterized in that, The step of obtaining the current comprehensive score of the rendering execution device based on multiple current hardware information corresponding to the rendering execution device includes: The number of CPU cores of the rendering execution device is collected, and a core count threshold corresponding to the model of the rendering execution device is obtained. A CPU score is obtained based on the number of CPU cores and the core count threshold. Read the performance index of the graphics processing unit of the rendering execution device, and use the performance index of the graphics processing unit as the graphics processing unit score; Obtain the available capacity of the random access memory of the rendering execution device, and obtain a random access memory score based on the available capacity and a preset capacity threshold; Obtain the current screen resolution of the rendering execution device, and obtain a screen resolution score based on the current screen resolution and the baseline resolution; Read the remaining battery percentage of the rendering execution device and use the remaining battery percentage as a battery score; The current comprehensive score of the rendering execution device is obtained by weighting and summing the scores of the central processing unit, the graphics processing unit, the random access memory, the screen resolution, and the battery using preset weights.
6. The method according to claim 1, characterized in that, The step of obtaining the dynamic baseline value corresponding to the rendering execution device based on the initial reference value corresponding to the rendering execution device and the current comprehensive score includes: Based on the current comprehensive score, obtain the adjustment factor corresponding to the rendering execution device, and read the initial reference value of the rendering execution device in the current startup cycle from the preset storage area; Based on the initial reference value and the adjustment factor corresponding to the rendering execution device, obtain the dynamic baseline value corresponding to the rendering execution device.
7. The method according to any one of claims 1 to 3, characterized in that, The step of obtaining the current load information of the rendering execution device includes: The utilization rate of the central processing unit is collected through the pre-built operating system performance monitoring interface to obtain the first real-time load data. The utilization rate of the graphics processing unit is collected through the pre-set graphics processing unit driver layer monitoring interface to obtain the second real-time load data. The system reads the used and available capacity of the random access memory through a pre-defined memory management interface, and calculates the memory utilization rate based on the used and available capacity to obtain third real-time load data. According to the preset sampling time window, the first real-time load data, the second real-time load data and the third real-time load data are respectively subjected to moving average processing to obtain the first average load data, the second average load data and the third average load data. The current load of the rendering execution device is obtained based on the first average load data, the second average load data, and the third average load data.
8. The method according to any one of claims 1 to 3, characterized in that, The step of determining the current rendering detail level corresponding to the rendering execution device based on the rendering execution device, according to the dynamic baseline value and the current load information, includes: Based on the model of the central processing unit and the model of the graphics processing unit of the rendering execution device, the first segment ratio coefficient and the second segment ratio coefficient corresponding to the rendering execution device are retrieved from a preset hardware classification database. Based on the dynamic benchmark value, a first benchmark value corresponding to the first segmentation ratio coefficient is obtained, and a second benchmark value corresponding to the second segmentation ratio coefficient is obtained; wherein, the second benchmark value is greater than the first benchmark value; If the current load information is less than or equal to the first reference value, then the current rendering level of detail is determined to be high level of detail; or, If the current load information is greater than the first reference value and less than the second reference value, then the current rendering level of detail is determined to be medium level of detail; or, If the current load information is greater than or equal to the second baseline value, then the current rendering level of detail is determined to be low level of detail.
9. A device for adjusting the level of detail in rendering, characterized in that, include: The information processing module is used to obtain the current comprehensive score of the rendering execution device based on multiple current hardware information corresponding to the rendering execution device, and to obtain the dynamic benchmark value corresponding to the rendering execution device based on the initial reference value and the current comprehensive score. The layer determination module is used to obtain the current load information of the rendering execution device, and based on the rendering execution device, determine the current rendering detail layer corresponding to the rendering execution device according to the dynamic reference value and the current load information; An information monitoring module is used to monitor hardware information of at least one piece of hardware in the rendering execution device after the rendering execution device performs rendering according to the rendering detail level; The layer update module is used to update the current comprehensive score of the rendering execution device when the parameter change magnitude corresponding to any hardware information is detected to be greater than its corresponding preset magnitude threshold, and to update the rendering detail layer of the rendering execution device according to the current comprehensive score.
10. An electronic device, characterized in that, include: Memory, processor; The memory stores computer-executed instructions; The processor executes computer execution instructions stored in the memory, causing the processor to perform the method as described in any one of claims 1 to 8.
