A test method, device, equipment, system and medium of a rendering engine

By acquiring rendering performance parameters for pre-processing and analysis, the subjectivity problem in rendering engine testing is solved, enabling objective and accurate evaluation of rendering engine performance, reducing the impact of application modules, and improving the flexibility and accuracy of testing.

CN114445545BActive Publication Date: 2026-01-09SHENZHEN TETRAS AI TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210103074.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-27
Publication Date
2026-01-09
Estimated Expiration
2042-01-27

AI Technical Summary

Technical Problem

Existing rendering engine testing methods mainly rely on subjective feelings, lack objectivity and accuracy, and are difficult to comprehensively evaluate the performance of rendering engines.

Method used

By acquiring rendering performance parameters, such as rendering time, memory usage, and network resource consumption, and performing preset processing and analysis, the performance of the rendering engine can be reflected independently of the application.

Benefits of technology

It enables objective evaluation of rendering engine performance, reduces the impact of application modules on rendering, improves the accuracy and flexibility of evaluation, and reduces the risk of integrating low-performance rendering engines into applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114445545B_ABST
    Figure CN114445545B_ABST
Patent Text Reader

Abstract

The application discloses a test method, device, equipment, system and medium of a rendering engine, and the method comprises the following steps: obtaining a rendering performance parameter of the rendering engine, wherein the rendering performance parameter is obtained by rendering a test resource by using a test device to run the rendering engine; and performing preset processing based on the rendering performance parameter, wherein the preset processing is used for reflecting the performance of the rendering engine. In the foregoing manner, the rendering performance parameter obtained by rendering the rendering engine is processed, the test of the rendering engine is realized, subjective feeling is not needed in the use process of the rendering engine, the performance of the rendering engine can be objectively reflected, and the performance evaluation of the rendering engine is more accurate.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of computers, and in particular to a rendering engine testing method, device, equipment, system and medium. BACKGROUND

[0002] Augmented Reality (AR) technology is a technology that skillfully combines virtual information with the real world. It simulates virtual information such as computer-generated text, images, spatial feature point models, music, and videos, and displays virtual information and real-time images of the real world on a user device, so as to achieve "augmentation" of the real world.

[0003] In the application of visual display such as augmented reality, the display of visual information such as images is realized by using a rendering engine. Generally, the rendering engine is integrated in a visual display application program, and then a tester uses the visual display application program to observe the displayed virtual objects to subjectively judge the performance of the rendering engine. This testing method is not objective and accurate. SUMMARY

[0004] The present application provides at least a rendering engine testing method, device, equipment, system and medium.

[0005] The present application provides a rendering engine testing method, which comprises: obtaining a rendering performance parameter of a rendering engine, wherein the rendering performance parameter is obtained by using a test device to run the rendering engine to render a test resource; and performing a preset processing based on the rendering performance parameter, wherein the preset processing is used to reflect the performance of the rendering engine.

[0006] Therefore, by processing the rendering performance parameter obtained by rendering the rendering engine, the testing of the rendering engine is realized, subjective feeling is not required in the use process of the rendering engine, the performance of the rendering engine can be objectively reflected, and the performance evaluation of the rendering engine is more accurate.

[0007] The rendering performance parameter comprises at least one of a test resource acquisition time, a rendering time, a memory occupation condition in a rendering process, a network resource consumed in acquiring the test resource, and a maximum rendering resource number, wherein the maximum rendering resource number is a number of test resources that can be processed in parallel by the rendering engine.

[0008] Therefore, at least one of the test resource acquisition time, the rendering time, the memory occupation condition in the rendering process, the network resource consumed in acquiring the test resource, and the maximum rendering resource number can be used as the rendering performance parameter to reflect the performance of the rendering engine in the rendering process.

[0009] The preset processing includes at least one of displaying the rendering performance parameter and performing performance analysis on the rendering performance parameter.

[0010] Therefore, the display and performance analysis of the rendering performance parameter can objectively show the performance of the rendering engine.

[0011] The rendering performance parameter of the rendering engine is obtained, including: obtaining a plurality of groups of rendering performance parameters, each group of rendering performance parameters being obtained by running a rendering engine on a test resource by using a test device, and different groups of rendering performance parameters corresponding to at least one of different test devices, rendering engines, and test resources; and performing preset processing based on the rendering performance parameter, including: selecting at least one group of rendering performance parameters as target performance parameters, at least one group of target performance parameters corresponding to at least one of the same test devices, rendering engines, and test resource categories; displaying each group of target performance parameters, and / or performing comparison analysis on each group of target performance parameters to obtain a performance analysis result of the rendering engine corresponding to the target performance parameters.

[0012] Therefore, the rendering performance parameter can include a plurality of groups, the target performance parameter is selected from the rendering performance parameter according to a plurality of dimensions, and the preset processing is performed, so that the performance of the rendering engine can be reflected from a plurality of dimensions and more comprehensively.

[0013] Each test resource is a test resource category, or each level of test resource is a test resource category; and the at least one group of rendering performance parameters is selected as the target performance parameter, including: in response to a selection operation of a user on at least one of the test devices, rendering engines, and test resource categories, selecting the rendering performance parameter related to the selection of the user as the target performance parameter.

[0014] Therefore, the dimension related to the target performance parameter can be determined according to the selection of the user, so that the performance of the rendering engine can be reflected from different dimensions.

[0015] The method further includes: evaluating the effect of the test device using the rendering engine to render the test resource according to a preset evaluation strategy to obtain a rendering effect score; or obtaining a user effect score input by a user, and obtaining a rendering effect score based on the user effect score input by the user, wherein the user effect score is obtained by an evaluation personnel evaluating the effect of the test device running the rendering engine to render the test resource according to the preset evaluation strategy; and taking the rendering effect score as the rendering performance parameter.

[0016] Therefore, the rendering effect score can be taken as the rendering performance parameter, so that the performance of the rendering engine in the aspect of rendering effect can be reflected.

[0017] The effect of rendering the test resource by the rendering engine on the test device is evaluated according to a preset evaluation strategy to obtain a rendering effect score, including: obtaining a test score corresponding to each of at least one test condition, wherein at least one of a test environment and / or an operation of a test personnel on the test device is different for different test conditions; taking the test score corresponding to each of the at least one test condition as the rendering effect score, or analyzing and processing the test score corresponding to each of the at least one test condition to obtain the rendering effect score; and / or obtaining the rendering effect score based on a user effect score input by a user, including: fusing a plurality of user effect scores evaluated by a plurality of evaluators to obtain the rendering effect score.

[0018] Therefore, by changing the test conditions, the rendering effect score can reflect the rendering effect of the rendering engine under different conditions, and the performance of the rendering engine can be more comprehensively and accurately reflected.

[0019] The test environment is determined by at least one of light, a place, and a number of moving objects in a scene, and the operation of the test personnel on the test device includes at least one of keeping the test device still, performing a preset motion, and being located at a turning point. The test score corresponding to each of the at least one test condition is obtained by evaluating the rendering under each test condition from at least one rendering standard, and the at least one rendering standard includes at least one of a pointing, a shaking, an offset, and a lighting of the rendered test resource.

[0020] Therefore, by using factors affecting the rendering effect as test conditions and determining at least one rendering standard as an evaluation standard under each test condition, the rendering effect can be measured from the perspective of the at least one rendering standard, and the performance of the rendering engine can be more comprehensively and accurately reflected.

[0021] Before obtaining the rendering performance parameter of the rendering engine, the method further includes: obtaining at least one test resource; running at least one rendering engine to render each test resource; or sending the test resource to at least one test device to make each test device run at least one rendering engine to render the test resource.

[0022] Therefore, the processing device and the test device can be the same or different, and the test of the rendering engine can be more flexibly selected using the device.

[0023] The at least one test resource includes a first quantity of static models and a second quantity of dynamic models. The at least one test resource is divided into several levels of test resources, and the rendering capabilities required by test resources of different levels are different. Each test resource is rendered by at least one rendering engine respectively. Or, before the test resource is sent to at least one test device, the method further includes: packaging the test resource into a format supported by the rendering engine.

[0024] Therefore, the test resource can be divided into multiple levels, and when testing, the ability of the rendering engine to process resources of different difficulties can be reflected, and the performance can be embodied.

[0025] The test method of the rendering engine is performed before the rendering engine is integrated into the application program.

[0026] Therefore, the rendering engine can be decoupled from other modules of the application program. Compared with testing the performance of the rendering engine in the application program by using the integrated application program, only the rendering engine is tested, the influence of other modules of the application program on rendering can be reduced, and the performance of the rendering engine itself can be accurately determined, and the positioning analysis of the problem obtained by testing is reduced. In addition, by performing the test method of the rendering engine before the rendering engine is integrated into the application program, the probability of integrating a rendering engine with low performance into the application program is reduced, and the influence of the poor performance of the rendering engine on the application program is avoided.

[0027] The rendering engine is used to be integrated into an augmented reality application program.

[0028] By integrating the rendering engine into the augmented reality application program, the performance of the rendering engine used in the augmented reality application program can be accurately evaluated, and the rendering accuracy of the augmented reality application program can be improved based on the performance of the rendering engine.

[0029] The application provides a rendering engine testing device, including an acquisition module and a processing module. The acquisition module is used to acquire a rendering performance parameter of a rendering engine, wherein the rendering performance parameter is obtained by running the rendering engine on a test resource by using a test device. The processing module is used to perform a preset processing based on the rendering performance parameter, wherein the preset processing is used to reflect the performance of the rendering engine.

[0030] The application provides a processing device, which includes a processor and a memory. The memory is used to store program data, and the processor is used to execute the program data to realize any of the above methods.

[0031] The application provides a test system of a rendering engine, the test system comprising a processing device and a test device, wherein the test device is configured to run the rendering engine to render a test resource to obtain a rendering performance parameter, and the processing device is configured to execute any of the methods.

[0032] To solve the above technical problems, the application adopts another technical solution: providing a computer readable storage medium, the computer readable storage medium is used to store program data, the program data can be executed to implement any of the above methods.

[0033] In the above scheme, by processing the rendering performance parameter obtained by rendering the rendering engine, the test of the rendering engine is realized, without subjective feeling in the use process of the rendering engine, and the performance of the rendering engine can be objectively reflected, so that the performance evaluation of the rendering engine is more accurate. BRIEF DESCRIPTION OF DRAWINGS

[0034] Figure 1 is a flowchart of an embodiment of the test method of the rendering engine of the application;

[0035] Figure 2 is a flowchart of another embodiment of the test method of the rendering engine of the application;

[0036] Figure 3 is a flowchart of still another embodiment of the test method of the rendering engine of the application;

[0037] Figure 4 is a schematic diagram of a preset evaluation strategy in an embodiment of the test method of the rendering engine of the application;

[0038] Figure 5 is a flowchart of still another embodiment of the test method of the rendering engine of the application;

[0039] Figure 6 is a framework schematic diagram of an embodiment of the test device of the rendering engine of the application;

[0040] Figure 7 is a framework schematic diagram of an embodiment of the test system of the rendering engine of the application;

[0041] Figure 8 is a framework schematic diagram of an embodiment of the processing device of the application;

[0042] Figure 9 is a framework schematic diagram of an embodiment of the computer readable storage medium of the application. DETAILED DESCRIPTION

[0043] To make the purpose, technical solutions and effects of the application more clear and explicit, the application is further described in detail below with reference to the drawings and embodiments.

[0044] The term "and / or", used herein, merely describes an associated relationship, which means that there can be three relationships, for example, A and / or B, which means that A exists alone, A and B exist together, and B exists alone. In addition, the character " / " herein generally represents an "or" relationship between the associated objects. In addition, "multiple" herein means two or more than two.

[0045] It can be understood that the method of the present application can include any of the following method embodiments and any combination of the following method embodiments that do not conflict.

[0046] It can be understood that the test method of the rendering engine in the present application can be executed by a processing device, and the processing device can be any electronic device with processing capability, such as a mobile phone, a tablet computer, a computer, etc. In the process of testing the rendering engine, the rendering engine can be run by a test device to render the test resource, and the test device can also be any device capable of running the rendering engine, and then the processing device executes the related steps of the test method of the rendering engine of the present application. The test device can be the same device as the processing device, or it can be different.

[0047] Please refer to Figure 1 , Figure 1 is a flowchart of an embodiment of the test method of the rendering engine of the present application, which comprises:

[0048] Step S110: Obtain the rendering performance parameters of the rendering engine.

[0049] It should be noted that the rendering engine in the present application can be integrated in the application for application, and the test of the existing rendering engine is usually performed by integrating it in the application, and the subjective evaluation of the rendering result by the tester. The test method of the rendering engine provided in the present application is performed before the rendering engine is integrated in the application, and the rendering performance parameter is obtained by the test device without running the application integrated with the rendering engine. The test device can run the rendering engine to render the resource alone, thereby realizing the test of the rendering engine alone. The rendering performance parameter is obtained by running the rendering engine on the test resource by the test device, and the rendering performance parameter can be used to evaluate the performance of the rendering engine. The test device can be the same device as the execution device of the test method, or different from the execution device of the test method. After the test device runs the rendering engine to render the test resource, the rendering result is displayed for the user to view, and the user here can be but is not limited to the tester. The rendering performance parameter can reflect the performance of the rendering engine by reflecting the rendering result and / or the rendering process. For example, the rendering performance parameter can include at least one of the time consumption for obtaining the test resource, the rendering time consumption, the memory occupation of the rendering process, the network resource consumed for obtaining the test resource, and the maximum rendering resource number, which can be used to reflect the rendering process, and the rendering performance parameter can be the rendering effect score, which can be used to reflect the rendering effect.

[0050] Specifically, the rendering performance parameter can be obtained in multiple ways, and the specific way of obtaining the rendering performance parameter can also be multiple. For example, the rendering performance parameter can be obtained by running a test tool based on the rendering process of the rendering engine on the test resource by the test device, or can be obtained by the test device or the processing device after the test device renders the test resource by the rendering engine.

[0051] Step S120: performing preset processing based on the rendering performance parameter.

[0052] The rendering performance parameter can be used to reflect the performance of the rendering engine, and the preset processing of the rendering performance parameter can reflect the performance of the rendering engine. Further specifically, the preset processing can be at least one of displaying the rendering performance parameter and performing performance analysis on the rendering performance parameter.

[0053] In the above scheme, the rendering performance parameter obtained by rendering the rendering engine is processed, the test of the rendering engine is realized, the subjective feeling in the use process of the rendering engine is not needed, the performance of the rendering engine can be objectively reflected, and the performance evaluation of the rendering engine is more accurate.

[0054] In addition, the rendering engine is decoupled from other modules of the application program, compared to testing the performance of the rendering engine in the application program by using the integrated application program, only testing the rendering engine can reduce the influence of other modules of the application program on rendering, thereby accurately determining the performance of the rendering engine itself, and reducing the positioning analysis of the problems obtained by testing; in addition, by performing the test method of the rendering engine before the rendering engine is integrated into the application program, the probability of integrating the rendering engine with low performance into the application program is reduced, thereby avoiding the influence of poor performance of the rendering engine on the application program.

[0055] Please refer to Figure 2 , Figure 2 is a flowchart of another embodiment of the test method of the rendering engine of the present application.

[0056] Further, in the embodiment, the rendering engine can be used in the augmented display application is taken as an example for description, the resource refers to the object rendered by the rendering engine, which can be some virtual objects placed in the real world, and can be divided into dynamic models and static models. The dynamic model refers to a model that can interact with the user, and the interaction with the user refers to that the device can display the corresponding dynamic action of the dynamic model in response to the operation of the user on the dynamic model. The static model refers to a model that cannot interact with the user. Both the dynamic model and the static model can change with the environment, for example, a flower cannot interact with the user, but it can sway with the wind. In addition, different resources require different rendering capabilities, and the rendering performance parameters obtained by the same rendering engine for rendering different resources can also be different. In order to comprehensively test the rendering engine, a plurality of different difficulty levels can be preset according to different rendering capabilities required, and each difficulty level can include a plurality of test resources. It can be understood that different difficulty levels can be set for the dynamic model and the static model. Then, only the dynamic model of the difficulty level or only the static model of the difficulty level is included in the same level, or all models can be set together for difficulty level setting. Then, the dynamic model and the static model can be included in the same level. For example, three difficulty levels are set for the dynamic model and the static model. The difficulty level of the model can be represented by the number of patches and the number of rendering batches. Different difficulty levels correspond to different numbers of patches and different batches of dynamic models and static models. Then, six levels of test resources are obtained.

[0057] The working of the rendering engine is affected by the device, and because the performance of different devices is different, even if the same rendering engine is used to render the same resource, the rendering process and rendering result on different devices can be different. In order to comprehensively test the rendering engine, a plurality of terminal devices can be preselected as test devices, and all test resources are sequentially rendered on each test device. The test engine only renders one test resource at the same time.

[0058] In a specific application scenario, the terminal device is a mobile phone, and the mobile phone categories can be divided according to the performance and the system running on the mobile phone. For each category, at least one device of the category is selected as a test device, that is, the test device can cover all pre-defined mobile phone categories. For example, 3 mobile phones running Apple system with high, medium and low performance, and 3 mobile phones running Android system with high, medium and low performance are selected as test devices, and the test devices cover all pre-defined mobile phone categories. The terminal device selected for actual testing can be any device that can run the rendering engine, not limited to the mobile phone in this example. In addition, the category division and the number of test devices are only examples, and the user can make category division and test device selection according to actual needs. Through the control of the above variables, the rendering performance parameters of the rendering engine on mobile phones with different performance can be tested, and the rendering performance parameters of the rendering engine on mobile phones running different systems can be tested, so that the performance of the rendering engine can be more comprehensively evaluated.

[0059] Generally, after the device obtains the resource, the rendering engine can be used to render the resource after the preset condition is met. The preset condition can be the triggering condition of rendering. The process of using the rendering engine to render the resource can be roughly divided into four steps of decompression, analysis, construction and drawing. In some embodiments, in order to test the limit performance of the rendering engine, in the process of testing the rendering engine, the test device can perform stress testing on the rendering engine in addition to rendering each test resource by using the rendering engine, so as to determine the maximum number of resources that can be simultaneously rendered under the premise of ensuring the rendering effect.

[0060] In addition, in order to compare the performance of different rendering engines, different rendering engines can be selected, and all rendering engines are run on each test device. Each rendering engine is used to sequentially render all test resources to obtain the rendering performance parameters of each rendering engine.

[0061] In a specific application scenario, the test device can acquire a static model and a skeletal animation model in a standard format, take the illuminance value and color value estimated by the current test environment as the ambient light illuminance and ambient light color, render the test resource by using a rendering engine, and acquire the rendering performance parameters of the test engine, such as rendering resolution and running frame rate, by using a common frame capturing tool, for example, the frame capturing tool of Arm or Qualcomm. The rendering performance parameters can be used to reflect the loading, animation updating, and rendering result of the static model and the dynamic model.

[0062] Step S210: Acquire the rendering performance parameters of the rendering engine.

[0063] In this embodiment, it is taken as an example that the rendering performance parameters include at least one of the test resource acquisition time consumption, rendering time consumption, memory occupation in the rendering process, network resource consumption for acquiring the test resource, and maximum rendering resource number.

[0064] In some embodiments, the test resource can be preinstalled in the test device, so it is considered that the test resource has been acquired, and it is not necessary to take the test resource acquisition time consumption and the network resource consumption for acquiring the test resource as the rendering performance parameters. In some embodiments, the test device needs to download the test resource through the network, and the downloading process is also the test resource acquisition process, so the test resource acquisition time consumption and the network resource consumption for acquiring the test resource can be obtained, which can be taken as the rendering performance parameters.

[0065] The rendering performance parameters are generated by the test device during the rendering process. Specifically, in addition to the rendering engine, a test tool can also be run in the test device, which can be used to determine the rendering performance parameters when the rendering engine is rendering. The test tool can be a common frame capture tool, such as the frame capture tool of Arm or Qualcomm, etc. In a specific application scenario, the test device downloads test resources through a network, and the rendering performance parameters include the time consumed for obtaining the test resources, the time consumed for rendering, the memory usage during the rendering process, the network resources consumed for obtaining the test resources, and the maximum number of rendering resources, wherein the network resources consumed for obtaining the test resources can be the traffic consumed during downloading, the time consumed for obtaining the test resources can be the downloading time, the time consumed for rendering can be further divided into the time consumed for decompression, the time consumed for parsing, the time consumed for construction, and the time consumed for drawing, and the maximum number of rendering resources is the number of test resources that can be processed in parallel by the rendering engine. The maximum number of rendering resources is obtained during the test of the limit performance of the rendering engine. The maximum number of rendering resources refers to the maximum number of test resources that can be processed in parallel by the rendering engine while ensuring basic rendering effects. For further illustration, the test device can use the rendering engine to render a certain test resource, and the rendering engine can simultaneously render multiple resources, which can be the same resource or different resources. Due to the limited rendering capability of the rendering engine, when the number of resources processed in parallel increases, the rendering engine will compress the model after the drawing step, so that the rendering effect of each model will be affected. When the number of resources processed in parallel increases, the rendering effect of each resource will gradually decrease. The number of resources processed in parallel is gradually increased until the situation of lagging occurs. The number of resources processed in parallel in the critical situation that can ensure no lag can be considered as the maximum number of rendering resources. Generally, compressing the model to 30 frames per second (FPS) is the critical situation that can ensure the basic rendering effect. If it is lower than 30 FPS, it can cause obvious lag. In a specific test, the test device can gradually increase the number of resources processed in parallel to obtain the maximum number of test resources that can be processed in parallel, which is the maximum number of rendering resources, while ensuring that the rendering effect does not produce lag.

[0066] It should be noted that by taking the rendering engine, the test device and the test resource as variables, a plurality of sets of rendering performance parameters obtained by sequentially running each rendering engine on each test device and sequentially rendering all test resources by using each rendering engine are obtained, the number of sets is the product of the number of test devices, the number of rendering engines and the number of test resources, and the plurality of sets of rendering performance parameters specifically contain corresponding contents, so that the rendering performance parameters can be compared, for example, both contain rendering time consumption and memory occupation during the rendering process.

[0067] Step S210 can also refer to the related description of the foregoing step S110, and step S120 can be implemented by steps S220-S240.

[0068] Step S220: Select at least one set of rendering performance parameters as target performance parameters.

[0069] The device can select the target performance parameters from the plurality of sets of rendering performance parameters according to a certain strategy. Specifically, in response to a selection operation of a user on at least one of the test device, the rendering engine and the test resource category, the rendering performance parameters related to the user's selection are taken as the target performance parameters. For example, the rendering engines include A and B, and the user's selection is the rendering engine B, then all the rendering performance parameters related to the rendering engine B are taken as a set of target performance parameters. Wherein, each test resource can be taken as a test resource category, or each level of test resource is taken as a test resource category.

[0070] Through one selection, a plurality of sets of rendering performance parameters can be obtained as a set of target performance parameters. In some embodiments, multiple selections can also be performed, so as to obtain a plurality of sets of target performance parameters.

[0071] Step S230: Comparing and analyzing each set of target performance parameters to obtain a performance analysis result of the rendering engine corresponding to the target performance parameters.

[0072] It can be understood that at least one of step S230 and step S240 can be selected for execution, and the execution order of the other two can be exchanged. The comparison and analysis in step S230 can be comparison and analysis within the same set of target performance parameters, or comparison and analysis between different sets of target performance parameters.

[0073] For a set of target performance parameters, one of the test device, the rendering engine and the test resource category is the same. Then the comparison analysis of a set of target performance parameters can be carried out from two variables of the rendering performance parameters in the set which exist differences. The comparison analysis can be directly carried out or the rendering performance parameters can be statistically analyzed and then the comparison analysis is carried out. Taking the user selected rendering engine B as an example, the set of target performance parameters includes 6 groups of rendering performance parameters obtained by rendering the test resources a, b and c by using the rendering engine B on the test device 1 and the test device 2 respectively. If all the rendering performance parameters corresponding to the same category of test resources are respectively statistically analyzed, the rendering performance of the rendering engine B on different categories of test resources can be reflected. If all the rendering performance parameters corresponding to different test devices are respectively statistically analyzed, the rendering performance of the rendering engine B on different test devices can be reflected. Taking the user selected test device as an example, the set of target performance parameters includes 6 groups of rendering performance parameters obtained by rendering the test resources a, b and c by using the rendering engine A and the rendering engine B on the test device 1 respectively. Then the rendering performance parameters of the same test resource rendered by different rendering engines on the same test device can be directly compared, so that the performance of the two test engines can be compared. In addition, all the rendering performance parameters of the rendering engine B can be statistically analyzed and compared with the rendering engine A, so that the performance of the two can be reflected.

[0074] It should be noted that the number of test devices, the number of rendering engines and the number of test resource categories in the above examples are simplified examples. In addition, the above examples analyze one test resource as a category. In some embodiments, one level of test resources can be analyzed as a category. Then one level can include multiple test resources. All the rendering performance parameters corresponding to the test resources in the same level can be statistically analyzed, and then further comparison analysis is carried out.

[0075] Through the above comparison analysis, the performance of the rendering engine can be reflected from multiple dimensions, for example, the performance of the same rendering engine on different devices or the performance of rendering different levels of test resources, and the performance of different rendering engines on the same device can also be reflected. The performance of the measured rendering engine can be comprehensively reflected, so that the user can strengthen the rendering engine based on the performance reflected by the test.

[0076] Step S240: display each set of target performance parameters.

[0077] It should be noted that step S240 can display one set of target performance parameters or simultaneously display multiple sets of target performance parameters. The display mode can be various, for example, directly displaying the value of the target performance parameter or displaying the target performance parameter in the form of a chart.

[0078] In some embodiments, after obtaining the performance analysis result, the performance analysis result can also be displayed for the user to view, so that the user can understand the performance of the rendering engine according to the performance analysis result.

[0079] In the above scheme, the rendering performance parameters obtained by rendering the rendering engine are processed, the rendering engine is tested, subjective feeling is not needed in the use process of the rendering engine, the performance of the rendering engine can be objectively reflected, the performance evaluation of the rendering engine is more accurate, the rendering performance parameters can reflect the related performance of the rendering engine in the rendering process, and the comparison, analysis and display of the rendering performance parameters can more comprehensively reflect the performance of the rendering engine from multiple dimensions.

[0080] Please refer to Figure 3 , Figure 3 is a flowchart of another embodiment of the test method of the rendering engine.

[0081] In this embodiment, the rendering performance parameters are taken as an example of rendering effect score, and the test device, test resource category and rendering engine are still taken as three variables for testing. The related description of the above variables can refer to the related content in the foregoing embodiments, which will not be repeated here. In the test process of evaluating the rendering effect, the rendering performance parameters are obtained according to the rendering result of the test device running the rendering engine on the test resource. It can be understood that since the rendering engine is used for integration in the augmented reality application program, the device displays the rendering result in the real-time reality environment image collected by the device, and in order to make the rendering result closer to reality, the rendering engine usually collects the light, ambient light color and other information of the environment for rendering when rendering. In order to comprehensively test the performance of the rendering engine, the environmental factors that affect the rendering effect are also taken into account.

[0082] In a specific application scenario, the light and shade of light, the point light source in the room and the parallel natural light outside the room, and the presence or absence of shielding can be used as environmental factors that affect the rendering effect, and the presence or absence of shielding can be reflected by the number of moving objects in the environment. By combining these three factors, eight different test environments can be constructed. In addition, in order to avoid the influence caused by the fluctuation of the test environment, the rendering engine does not use the real-time acquisition of external environment information for rendering, but determines the ambient light conditions of each test environment in advance for the rendering engine to use when the test device runs the rendering engine for rendering. The ambient light conditions can include ambient light intensity and ambient light color.

[0083] Generally, the model can be fixed at different positions in certain scenes, and when a user passes by, the user can view the model through an augmented reality application, the user can perform different operations on the test device, and the model can be viewed in different observation modes, and the rendering engine can render the model, and can also adjust the rendering result in response to the operation of the user on the device when viewing the model, which can reflect the animation update of the rendering engine. In order to comprehensively test the performance of the rendering engine, the operation of the user on the device can also be considered.

[0084] In a specific application scenario, when evaluating the rendering effect, the observation mode of the rendering result can be at least one of being stationary, performing a preset motion, and being located at a turning position. The preset motion can be rotation, normal speed movement, rapid start and stop, etc. The observation mode can be realized by the test personnel operating the test device. If rotation is performed for observation, the rendering engine can display the rendering result of each different angle of the model according to the rotation of the user. If observation is performed at a turning position, the rendering engine displays the rendering result when the model can be seen after the turning. Rapid start and stop can be represented as a change from a position where the model cannot be observed to a position where the model can be observed, for example, the device is changed from being placed horizontally to being placed vertically, and the rendering engine can display the rendering result according to the corresponding position relationship.

[0085] The above test environment and observation mode can be used to construct different test conditions. For each rendering engine, each test device is used to run the rendering engine to render each test resource, and the rendering effect under each test condition is evaluated, so as to obtain the rendering effect score corresponding to the rendering engine, the test device and the test resource as the rendering performance parameter, reflecting the performance of the rendering engine. The method comprises:

[0086] Step S310: According to a preset evaluation strategy, the effect of the test device using the rendering engine to render the test resource is evaluated, and a rendering effect score is obtained.

[0087] It should be noted that the processing device can select one of steps S310 and S320 to execute, and obtain the rendering effect score, that is, the evaluation of the rendering effect can be performed by the processing device or by the evaluation personnel.

[0088] Step S310 can specifically include obtaining a test score corresponding to each of the at least one test condition, taking the test score corresponding to each of the at least one test condition as the rendering effect score, or analyzing and processing the test score corresponding to each of the at least one test condition to obtain the rendering effect score. Wherein, at least one of the test environment corresponding to different test conditions and / or the operation of the test personnel on the test device is different.

[0089] It should be noted that, for a test score obtained by using one rendering engine, one test device, one test resource and one test result under a test condition, if there is only one test condition, the test score under the test condition can be taken as the rendering effect score corresponding to the current rendering engine, test device and test resource, if there are multiple test conditions, the test scores corresponding to the multiple test conditions can be analyzed and processed, for example, average value is obtained, to obtain the rendering effect score corresponding to the current rendering engine, test device and test resource.

[0090] Step S320: obtaining a user effect score input by a user, and obtaining a rendering effect score based on the user effect score.

[0091] The user effect score is obtained by an evaluator according to a preset evaluation strategy. The evaluator can be multiple, for the same rendering engine, the rendering engine is run on different test devices to render all test resources, and each evaluator scores all test resources under different test conditions. Specifically, the evaluator can place the test resource at the point of the different test environment, and perform different operations on the test device. The test device runs the rendering engine to render the test resource and display the rendering result. The evaluator can score the rendering effect under the test condition, and obtain the user effect score under the test condition. The number of scores of each evaluator can be the product of the number of rendering engines, the number of test devices, the number of test resources and the number of test conditions. The scores of the same evaluator, rendering engine, test device and test resource under different test conditions are counted, and the user effect score corresponding to the evaluator, rendering engine, test device and test resource is obtained.

[0092] The rendering effect score based on the user effect score can be obtained by fusing multiple user effect scores evaluated by multiple evaluators, to obtain the rendering effect score. That is, the user effect scores of different evaluators for the same rendering engine, test device and test resource are fused, and the rendering effect score corresponding to the rendering engine, test device and test resource is obtained.

[0093] Please refer to Figure 4 , Figure 4 is a schematic diagram of the preset evaluation strategy in the embodiment of the test method of the rendering engine. Figure 4A preset evaluation strategy for scoring the static model is given, in which several rendering standards are given, for example, the pointing of the test resource, jitter, offset and lighting, etc. Since the dynamic model can interact with the user, the rendering standards of the dynamic model can not include jitter and offset. Then for each test condition, the rendering performed under the test condition is evaluated from at least one rendering standard respectively, to obtain a test score. Specifically, a score is obtained based on each rendering standard, and the test score can be the average score of all rendering standards.

[0094] Step S330: taking the rendering effect score as the rendering performance parameter.

[0095] The above steps obtain a rendering effect score corresponding to a rendering engine, a test resource and a test device. After taking the rendering effect score as the rendering performance parameter, steps S340-S350 can be performed to process the rendering performance parameter, and the related processing can refer to the related content of processing the rendering performance parameter in the foregoing embodiments.

[0096] Comparative analysis of the rendering effect scores of the rendering engines from different dimensions can comprehensively reflect the rendering effect of the rendering engine, thereby embodying the performance of the rendering engine.

[0097] Step S340: obtaining the rendering performance parameter of the rendering engine.

[0098] Step S350: performing preset processing based on the rendering performance parameter.

[0099] In the above scheme, the rendering performance parameter obtained by rendering the rendering engine is processed to realize the testing of the rendering engine, without subjective feeling in the use process of the rendering engine, which can objectively reflect the performance of the rendering engine, so that the performance evaluation of the rendering engine is more accurate. The rendering performance parameter can reflect the related performance of the rendering result of the rendering engine, and comparative analysis and display of the rendering performance parameter can more comprehensively reflect the performance of the rendering engine from multiple dimensions.

[0100] Please refer to Figure 5 , Figure 5 is a flowchart of another embodiment of the test method of the rendering engine of the present application. The method comprises:

[0101] Step S510: obtaining at least one test resource.

[0102] The at least one test resource includes a first quantity of static models and a second quantity of dynamic models. It is to be noted that the processing device can be selected to execute one of step S520 and step S530, and if step S520 is selected, it means that the processing device also functions as a test device. Before executing step S520 or step S530, the method further includes packaging the test resource into a format supported by a rendering engine, and if there are multiple rendering engines, the test resource is packaged into a format supported by each rendering engine respectively, so as to be rendered by the corresponding rendering engine.

[0103] Step S520: rendering each test resource by respectively running at least one rendering engine.

[0104] It is to be noted that each test device runs all the test engines, and each test engine renders all the test resources. The related description can refer to the foregoing embodiment about the test device.

[0105] Step S530: sending the test resource to at least one test device so that each test device runs at least one rendering engine to render the test resource.

[0106] Step S540: obtaining the rendering performance parameter of the rendering engine.

[0107] Step S540 is to obtain the rendering performance parameter of the rendering engine from the test device, and the corresponding test devices of step S520 and step S530 are different devices. The related content of step S540 and step S550 can refer to the foregoing embodiment.

[0108] Step S550: performing preset processing based on the rendering performance parameter.

[0109] In the foregoing scheme, the rendering performance parameter obtained by rendering the rendering engine is processed. Compared with the existing performance of the rendering engine which is judged by the user's subjective feeling of the rendering result, the performance of the rendering engine is reflected by the parameter, which is more objective and accurate.

[0110] Please refer to Figure 6 , Figure 6 which is a framework schematic diagram of an embodiment of the test device of the rendering engine.

[0111] In this embodiment, the test device 60 of the rendering engine includes an obtaining module 61 and a processing module 62. The obtaining module 61 is configured to obtain a rendering performance parameter of the rendering engine, wherein the rendering performance parameter is obtained by running the rendering engine on the test resource by using the test device. The processing module 62 is configured to perform preset processing based on the rendering performance parameter, wherein the preset processing is used to reflect the performance of the rendering engine.

[0112] The rendering performance parameter includes at least one of an acquisition test resource time consumption, a rendering time consumption, a memory occupation of a rendering process, a network resource consumed by the acquisition test resource, and a maximum rendering resource number, the maximum rendering resource number being a number of test resources that can be processed in parallel by the rendering engine.

[0113] The preset processing includes at least one of displaying the rendering performance parameter and performing performance analysis on the rendering performance parameter.

[0114] The acquisition module 61 is configured to acquire the rendering performance parameter of the rendering engine, including: acquiring a plurality of groups of rendering performance parameters, each group of rendering performance parameters being obtained by using a test device to run a rendering engine to render a test resource, and different groups of rendering performance parameters corresponding to different at least one of the test device, the rendering engine, and the test resource; and performing preset processing based on the rendering performance parameter, including: selecting at least one group of rendering performance parameters as target performance parameters, the at least one group of target performance parameters corresponding to the same at least one of the test device, the rendering engine, and a test resource category; displaying each group of target performance parameters, and / or performing comparison analysis on each group of target performance parameters to obtain a performance analysis result of the rendering engine corresponding to the target performance parameter.

[0115] Each test resource is a test resource category, or each level of test resource is a test resource category, and the above selecting at least one group of rendering performance parameters as target performance parameters includes: in response to a selection operation of a user on at least one of the test device, the rendering engine, and the test resource category, selecting the rendering performance parameter related to the selection of the user as the target performance parameter.

[0116] The test device 60 of the rendering engine can further include an evaluation module configured to evaluate, according to a preset evaluation strategy, an effect of the test device using the rendering engine to render the test resource to obtain a rendering effect score, or acquire a user effect score input by a user, and obtain the rendering effect score based on the user effect score input by the user, wherein the user effect score is obtained by an evaluation personnel evaluating, according to the preset evaluation strategy, an effect of the test device running the rendering engine to render the test resource; and the rendering effect score is used as the rendering performance parameter.

[0117] The evaluation module is configured to evaluate the effect of the test device rendering the test resource according to a preset evaluation strategy, and obtain a rendering effect score, including: obtaining a test score corresponding to each of at least one test condition, wherein at least one of a test environment and / or an operation of a test personnel on the test device is different for different test conditions; taking the test score corresponding to each of the at least one test condition as the rendering effect score, or analyzing and processing the test score corresponding to each of the at least one test condition to obtain the rendering effect score; and / or obtaining the rendering effect score based on a user effect score input by a user, including: fusing a plurality of user effect scores evaluated by a plurality of evaluators to obtain the rendering effect score.

[0118] The test environment is determined by at least one of light, a place, and a number of moving objects in a scene, and the operation of the test personnel on the test device includes at least one of keeping the test device still, performing a preset motion, and being located at a turning point. The test score corresponding to each of the at least one test condition is obtained by evaluating the rendering performed under the test condition from at least one rendering standard, and the at least one rendering standard includes at least one of a pointing, a shaking, an offset, and a lighting of the rendered test resource.

[0119] The test device 60 of the rendering engine can further include a rendering module configured to obtain at least one test resource before obtaining the rendering performance parameter of the rendering engine, run at least one rendering engine to render each test resource, or send the test resource to at least one test device to enable each test device to run at least one rendering engine to render the test resource.

[0120] The at least one test resource includes a first number of static models and a second number of dynamic models, the at least one test resource is divided into several levels of test resources, and the rendering capability required by different levels of test resources is different. Before running at least one rendering engine to render each test resource, or sending the test resource to at least one test device, the rendering module can further be configured to package the test resource into a format supported by the rendering engine.

[0121] The test of the rendering engine is performed before the rendering engine is integrated into an application program.

[0122] The rendering engine is configured to be integrated into an augmented reality application program.

[0123] Please refer to Figure 7 , Figure 7 is a schematic diagram of an embodiment of a test system of the rendering engine of the present application.

[0124] In this embodiment, the test system 70 of the rendering engine includes a processing device 71 and a test device 72, which can communicate with each other. The processing device 71 is configured to perform the steps of any of the above methods, and the test device 72 is configured to run the rendering engine to render the test resource to obtain the rendering performance parameter.

[0125] Referring to Figure 8 , Figure 8 is a schematic diagram of a framework of an embodiment of the processing device of the present application.

[0126] In this embodiment, the processing device 80 includes a memory 81 and a processor 82, and the memory 81 is coupled to the processor 82. Specifically, the components of the processing device 80 can be coupled together through a bus, or the processor 82 of the processing device 80 is connected to each of the other components one by one. The processing device 80 can be any device with processing capability, such as a computer, a tablet computer, a mobile phone, etc.

[0127] The memory 81 is configured to store program data for execution by the processor 82 and data during processing by the processor 82, etc. For example, test resource, rendering engine, etc. The memory 81 includes a non-volatile storage portion for storing the above program data.

[0128] The processor 82 controls the operation of the processing device 80, and the processor 82 can also be referred to as a CPU (Central Processing Unit). The processor 82 can be an integrated circuit chip with signal processing capability. The processor 82 can also be a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application-Specific Integrated Circuit), an FPGA (Field Programmable Gate Array) or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor. In addition, the processor 82 can be implemented by a plurality of circuit chips together.

[0129] The processor 82 is configured to execute instructions to implement any of the above test methods of the rendering engine by invoking the program data stored in the memory 81.

[0130] Referring to Figure 9 , Figure 9 is a schematic diagram of a framework of an embodiment of the computer-readable storage medium of the present application.

[0131] In this embodiment, the computer-readable storage medium 90 stores program data 91 executable by the processor, which can be executed to implement any of the above test methods of the rendering engine.

[0132] The computer readable storage medium 90 can specifically be a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, or any medium that can store program data, or a server that stores the program data and sends the stored program data to other devices for running, or a server that runs the stored program data.

[0133] In some embodiments, the computer readable storage medium 90 can also be a memory as shown in FIG. 9. Figure 8

[0134] Some embodiments of the present disclosure relate to the field of augmented reality. By obtaining image information of a target object in a real environment, and then using various visual-related algorithms to detect or recognize the related features, states and attributes of the target object, an AR effect that combines virtual and real objects that matches a specific application is obtained. For example, the target object can be related to a face, a limb, a gesture, an action, etc. of a human body, or a marker, a sign, etc. of an object, or a sand table, a display area or a display object, etc. of a venue or a place. The visual-related algorithms can include visual positioning, SLAM, three-dimensional reconstruction, image registration, background segmentation, key point extraction and tracking of an object, pose or depth detection of an object, etc. The specific application can not only involve interactive scenarios such as touring, navigation, explanation, reconstruction, virtual effect superimposition display, etc. that are related to a real scene or an object, but also can involve interactive scenarios such as makeup beautification, limb beautification, special effect display, virtual model display, etc. that are related to a person.

[0135] The detection or recognition of the related features, states and attributes of the target object can be achieved by a convolutional neural network. The convolutional neural network is a network model obtained by model training based on a deep learning framework.

[0136] In some embodiments, the device provided by the embodiments of the present disclosure has functions or includes modules that can be used to perform the methods described in the above method embodiments, and the specific implementation can refer to the description of the above method embodiments. For brevity, details are not repeated here.

[0137] The above description of each embodiment tends to emphasize the differences between the embodiments, and the same or similar parts can be mutually referred to. For brevity, details are not repeated here.

[0138] The above description is only an implementation of the present application, and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation based on the content of the specification and drawings, or direct or indirect application in other related technical fields, is also included in the patent protection scope of the present application.​

Claims

1. A method of testing a rendering engine, characterized by, The rendering engine is used for integration in an augmented reality application, including: obtaining a rendering performance parameter of a rendering engine, wherein the rendering performance parameter is obtained by running the rendering engine to render a test resource by using a test device; the rendering performance parameter includes a rendering effect score; performing a preset processing based on the rendering performance parameter, wherein the preset processing is used to reflect the performance of the rendering engine; wherein the obtaining of the rendering performance parameter of the rendering engine comprises: According to a preset evaluation strategy, the test device runs the rendering engine to render the test resource under a plurality of test conditions, and the processing device evaluates the effect of the rendering result displayed on the real environment image, and obtains a rendering effect score; The test conditions include a real test environment and an operation of the test device by a test person, and the real test environment is determined by at least one of light, place and the number of moving objects in the scene; the operation of the test device by the test person includes at least one of keeping the test device still, performing a preset motion and being located at a turning point; at least one of the real test environment and the operation of the test device by the test person is different in different test conditions.

2. The method of claim 1, wherein, The rendering performance parameter includes at least one of the time-consuming of obtaining the test resource, the rendering time-consuming, the memory occupation of the rendering process, the network resources consumed by obtaining the test resource, and the maximum rendering resource number, which is the number of test resources that can be processed by the rendering engine in parallel.

3. The method of claim 1, wherein, The preset processing includes at least one of displaying the rendering performance parameter and performing performance analysis on the rendering performance parameter.

4. The method of claim 3, wherein, The obtaining of the rendering performance parameter of the rendering engine comprises: Obtain a plurality of groups of rendering performance parameters, each group of rendering performance parameters is obtained by running a rendering engine on a test resource by using a test device, and the test device, the rendering engine and the test resource corresponding to different groups of rendering performance parameters are different in at least one of the test device, the rendering engine and the test resource; The preset processing based on the rendering performance parameter comprises: Select at least one group of rendering performance parameters as target performance parameters, and the test device, rendering engine and test resource category corresponding to the at least one group of target performance parameters are the same in at least one of the test device, rendering engine and test resource category; Display each group of target performance parameters, and / or, compare and analyze each group of target performance parameters to obtain performance analysis results of the rendering engine corresponding to the target performance parameters.

5. The method of claim 4, wherein, Each test resource is a test resource category, or each level of test resource is a test resource category.

6. The method according to claim 4 or 5, characterized in that, The selection of at least one group of rendering performance parameters as target performance parameters comprises: In response to the selection operation of the user on at least one of the test device, rendering engine and test resource category, the rendering performance parameter related to the selection of the user is selected as the target performance parameter.

7. The method of claim 1, wherein, The method comprises the following steps: obtaining a test score corresponding to each of at least one test condition; using the test score corresponding to each of the at least one test condition as the rendering effect score, or analyzing and processing the test score corresponding to each of the at least one test condition to obtain the rendering effect score.

8. The method of claim 7, wherein, The method comprises the following steps: for each test condition, evaluating the rendering under the test condition from at least one rendering standard to obtain the test score, wherein the at least one rendering standard comprises at least one of the following: a pointing of the test resource, a jitter, an offset, and a lighting.

9. The method of claim 1 wherein, Before the step of obtaining the rendering performance parameter of the rendering engine, the method further comprises the following steps: obtaining at least one test resource; The processing device runs at least one rendering engine to render each test resource, or the processing device sends the test resource to at least one test device to enable each test device to run at least one rendering engine to render the test resource.

10. The method of claim 9, wherein, The at least one test resource comprises a first number of static models and a second number of dynamic models; The at least one test resource is divided into several levels of test resources, and different levels of test resources require different rendering capabilities; The processing device runs at least one rendering engine to render each test resource, or the processing device sends the test resource to at least one test device to enable each test device to run at least one rendering engine to render the test resource. Before the processing device sends the test resource to at least one test device, the method further comprises the following step: packaging the test resource into a format supported by the rendering engine.

11. The method of claim 1, wherein, The test method of the rendering engine is performed before the rendering engine is integrated into an application program.

12. A test apparatus for a rendering engine, characterized by The rendering engine is used for integration into an augmented reality application program, comprising: an obtaining module, configured to obtain a rendering performance parameter of a rendering engine, wherein the rendering performance parameter is obtained by running the rendering engine to render a test resource by using a test device; the rendering performance parameter comprises a rendering effect score; wherein the obtaining of the rendering performance parameter of the rendering engine comprises: according to a preset evaluation strategy, running the rendering engine to render a test resource by using the test device under a plurality of test conditions, and evaluating, by a processing device, an effect of a rendering result displayed on a real environment image to obtain a rendering effect score; the test conditions comprise a real test environment and an operation of a test personnel on the test device, the real test environment is determined by at least one of the following: light, a place, and a number of moving objects in a scene; the operation of the test personnel on the test device comprises at least one of the following: making the test device stationary, performing a preset motion, and being located at a turning point; at least one of the real test environment and the operation of the test personnel on the test device is different in different test conditions. The processing module is configured to perform a preset processing based on the rendering performance parameter, wherein the preset processing is configured to reflect the performance of the rendering engine.

13. A processing device, characterized by The device comprises a processor and a memory, the memory is configured to store program data, and the processor is configured to execute the program data to implement the method according to any one of claims 1-11.

14. A test system for a rendering engine, characterized by The test system comprises a processing device and a test device, wherein the test device is configured to run the rendering engine to render the test resource to obtain the rendering performance parameter, and the processing device is configured to execute the method according to any one of claims 1-11.

15. A computer readable storage medium characterized by: The computer readable storage medium is configured to store program data, and the program data can be executed to implement the method according to any one of claims 1-11.

Citation Information

Patent Citations

  • Method and device for acquiring rendering performance data during game running

    CN109966742A

  • Game rendering optimization method, apparatus and device and storage medium

    CN110559659A

  • Rendering engine test system

    US20080317347A1