Picture rendering method, vehicle, device and program product

By obtaining and interactively using rendering consistency data on the vehicle central control screen, the problem of difficult visual consistency when rendering screens of multiple application software is solved, and flexible allocation between processes and improvement of design freedom is achieved.

CN119621214AActive Publication Date: 2025-03-14ZHEJIANG GEELY HLDG GRP CO LTD +1
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
CN202411684151.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-22
Publication Date
2025-03-14
Estimated Expiration
2044-11-22

AI Technical Summary

Technical Problem

When the prior art realizes the rendering of screens of multiple application software, it is difficult to ensure visual consistency, and there are problems such as bloated process and limited design freedom.

Method used

By obtaining the render consistency data of the first window process and the second window process and interacting between the two processes, the screen rendering is performed based on these data to ensure visual consistency.

Benefits of technology

It realizes visual consistency and flexibility when rendering multiple window processes, reduces hardware performance requirements, improves design and development freedom, and reduces development costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119621214A_ABST
    Figure CN119621214A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of data processing, in particular to a picture rendering method, a vehicle, equipment and a program product. The method comprises the steps of obtaining rendering consistency data of a first window process and a second window process; and performing picture rendering based on the rendering consistency data to ensure the visual consistency of a second window picture rendered by the second window process and a first window picture rendered by the first window process. According to the method, the consistency and the flexibility during rendering of the multiple window processes can be realized, meanwhile, the performance requirement is reduced, and the degree of freedom of design and development is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a picture rendering method, vehicle, equipment and program product. Background Art

[0002] With the development of technology, the trend of intelligent functions and refined designs in vehicle cockpits is becoming increasingly obvious. The central control screen in the vehicle cockpit is a key human-machine interface (HMI) component that connects people and vehicles for human-machine interaction. As a display screen, the central control screen in the vehicle cockpit is an important window for human-machine interaction. On the one hand, it must cover the vehicle-machine functions provided to users by all components on the vehicle; on the other hand, it must ensure that the entire vehicle-machine system itself has sufficient competitiveness in terms of operational smoothness, interface aesthetics, interactive friendliness, and R&D landing costs. At present, based on the current rich application software, the human-machine interaction interface on the vehicle may need to display multiple window screens at the same time to meet more user needs.

[0003] In the prior art, in order to present a complete and unified visual effect to users through the display screen, when facing the screen display requirements of multiple application software, one way is to display multiple different application software based on one process, but this method will cause the problem of "bloated" process, and increase the hardware performance requirements and cost requirements; another way is that different application software runs in an independent context. In order to ensure the consistency of the screen rendering effect, it is necessary to constrain the development process of each application software based on a pre-standardized design language, but this method reduces the freedom of design and development and is difficult to meet the increasing application needs. Summary of the invention

[0004] Based on the defects and shortcomings of the above-mentioned prior art, the present application proposes a screen rendering method, vehicle, equipment and program product, which can achieve consistency and flexibility in rendering multiple window processes, while reducing performance requirements and improving the freedom of design and development.

[0005] According to a first aspect of an embodiment of the present application, a screen rendering method is provided, including: obtaining rendering consistency data of a first window process and a second window process; performing screen rendering based on the rendering consistency data to ensure visual consistency between a second window screen rendered by the second window process and a first window screen rendered by the first window process.

[0006] According to the screen rendering method provided in the first aspect of the embodiment of the present application, the obtaining of rendering consistency data of the first window process and the second window process includes: the second window process sends a rendering consistency request to the first window process; the first window process sends the rendering consistency data to the second window process based on the rendering consistency request; the performing of screen rendering based on the rendering consistency data includes: the second window process performs screen rendering based on the rendering consistency data.

[0007] According to the screen rendering method provided in the first aspect of the embodiment of the present application, the second window process sends a rendering consistency request to the first window process, including: switching the second window process in the background dormant state to the foreground active state; the second window process sends a rendering consistency request to the first window process in the foreground active state.

[0008] According to the screen rendering method provided by the first aspect of the embodiment of the present application, after the first window process sends the rendering consistency data to the second window process based on the rendering consistency request, it also includes: switching the first window process in the foreground active state to the background sleep state.

[0009] According to the screen rendering method provided in the first aspect of the embodiment of the present application, the second window process sends a rendering consistency request to the first window process, including: the second window process in the foreground active state sends a rendering consistency request to the first window process in the foreground active state.

[0010] According to the screen rendering method provided in the first aspect of the embodiment of the present application, the second window process sends a rendering consistency request to the first window process, including: based on the action cycle of the screen rendering of the second window process, the second window process periodically sends a rendering consistency request to the first window process.

[0011] According to the screen rendering method provided by the first aspect of the embodiment of the present application, the rendering consistency data includes relevant information of rendering elements that ensure visual consistency between the first window screen and the second window screen.

[0012] According to the screen rendering method provided by the first aspect of the embodiment of the present application, the rendering consistency request includes identification information of the second window process.

[0013] According to a second aspect of an embodiment of the present application, a vehicle is provided, comprising a display screen; the display screen is used to display a second window screen and a first window screen rendered by the screen rendering method described in any one of the first aspects.

[0014] According to a third aspect of an embodiment of the present application, an electronic device is provided, comprising: a memory and a processor; the memory is connected to the processor and is used to store programs; the processor is used to implement the screen rendering method as described in the first aspect by running the program in the memory.

[0015] According to a fourth aspect of the embodiments of the present application, a computer program product is provided, comprising computer program instructions; when the computer program instructions are executed by a processor, the processor executes the screen rendering method as described in the first aspect. Optionally, the computer program may be stored in a readable storage medium of a computer device or in the cloud; the processor of the computer device reads the computer program from the readable storage medium or the cloud.

[0016] In an embodiment of the present application, rendering consistency data of the first window process and the second window process are obtained; screen rendering is performed based on the rendering consistency data to ensure visual consistency between the second window screen rendered by the second window process and the first window screen rendered by the first window process. In this process, there is no need to concentrate multiple application software in one process, but the rendering consistency data is interactively performed between the first window process and the second window process to flexibly allocate multiple window processes according to actual business needs, thereby avoiding the high performance requirements of processing resources when multiple application software are concentrated in one process. At the same time, when the first window process and the second window process perform screen rendering, the visual consistency of the second window screen and the first window screen is ensured by rendering consistency data, rather than restricting the design language of the application software, thereby improving the degree of freedom of technical design and development and reducing development costs; rich and diverse application software can dynamically access the display process through different window processes, providing more convenient conditions for the upgrade, iteration and maintenance of application software. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.

[0018] Figure 1 A schematic diagram of a process flow of a screen rendering method provided in an embodiment of the present application;

[0019] Figure 2 A flowchart of a screen rendering method in a scenario where a foreground and background window process are switched back and forth provided in an embodiment of the present application;

[0020] Figure 3One of the example schematic diagrams after header filling provided in an embodiment of the present application;

[0021] Figure 4 The second example schematic diagram after header filling provided in the embodiment of the present application;

[0022] Figure 5 One of the example schematic diagrams after partial filling of data provided in an embodiment of the present application;

[0023] Figure 6 A flowchart of a screen rendering method in a scenario where multiple window processes share a screen is provided in an embodiment of the present application;

[0024] Figure 7 The third example schematic diagram after header filling provided in the embodiment of the present application;

[0025] Figure 8 A fourth example schematic diagram of a header filled example provided in an embodiment of the present application;

[0026] Fig. 9 A second example schematic diagram of a data partial filling provided in an embodiment of the present application;

[0027] Fig.10 A block diagram of a picture rendering device provided in an embodiment of the present application;

[0028] Fig.11 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0029] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0030] Application Overview

[0031] With the development of technology, how to display the screen of multiple application software has become an important issue. Especially for the automotive industry, whether the content design of the vehicle's central control screen is exquisite, vivid, intuitive and easy to use directly affects whether this model can stand out in the fierce market competition and achieve good market performance. As we all know, the entire process from design and development to production and manufacturing of a vehicle is extremely complicated, and there are many intelligent components involved. The central control screen in the car cabin is an important window for human-computer interaction. On the one hand, it must cover all the car functions provided to users by all these automotive components; on the other hand, it must ensure that the entire car system itself has sufficient competitiveness in terms of operation smoothness, interface aesthetics, interactive friendliness, and R&D landing costs.

[0032] Traditional car central control screens generally only have basic vehicle status, air conditioning settings, music boxes, radios and other functions, with relatively few functions and relatively simple visual display effects. With the development of intelligence and the increase in user demand, a significant change in the new car central control screen is that it has a very rich application software, and these application software are no longer limited to two-dimensional display. Many application software use real-time three-dimensional (3D) rendering technology to present the screen to the user, so as to further improve the visual quality while meeting the functions. For example, the vehicle setting software uses 3D car models and dynamic effects to provide users with real-time feedback on the current status of the vehicle; the intelligent driving software uses three-dimensional reconstruction technology to display the road condition data perceived by each sensor to the user in a visual form on the instrument; the three-dimensional real-life navigation map shows the user the environmental information around the vehicle based on 3D real-time rendering technology.

[0033] For multiple screens displayed on the same screen, especially for 3D real-time rendering screens, application software based on real-time rendering technology often comes from different development teams, and it is difficult for them to maintain uniformity in design style and interaction logic. On a car system, if different application software have different interactive visual definitions, the immersion and consistency of the application software will be broken. In order to present a complete and unified visual effect to users, the prior art provides a solution for placing all software applications that need to be run in one process. The prior art also provides a solution based on design language, that is, before all application software are developed, the corresponding interactive visual specifications are formulated in design language, and then each development team develops their own software according to this specification.

[0034] However, in order to maintain the consistency of real-time rendering effects, all application software is built in one scene of one process, which leads to the problem of "bloated" process. If different application software runs in their own independent contexts, then different processes will have their own program execution paths, and the consistency of the final rendering effect cannot be guaranteed. In the face of multiple application software, only the predefined specifications of the design language are used to constrain the development process of each software. Although the coupling degree between the design module and the technical module is improved, the degree of freedom of design and development is reduced, and it is also not conducive to the platform expansion of the vehicle system.

[0035] Exemplary Methods

[0036] Based on the above problems, the present application provides a screen rendering method, which is implemented on any device with data processing function. Optionally, the device is a vehicle central control screen hardware platform, and the central control screen hardware platform is equipped with a processing chip, which can be Qualcomm 8155, 8295 or other chips of the same type and with the same computing power. Since the screen rendering method provided by the present application is based on multiple window processes, it avoids the bloated problem of a process. Therefore, the method can reasonably classify the computing resources of the processing chip. Therefore, the method has low performance requirements for the processing chip, thereby saving the hardware cost of the vehicle. Optionally, the operating system that can be used by the vehicle central control screen hardware platform includes but is not limited to Android, iOS, Linux and other mobile terminal operating systems.

[0037] In one embodiment, if Figure 1 As shown, the process steps of the screen rendering method include:

[0038] Step 101: Obtain rendering consistency data of a first window process and a second window process.

[0039] In this embodiment, the window process refers to a process in a graphical user interface (GUI) environment, and the window process can create and manage windows displayed on the screen. These processes are responsible for handling interactions with users, such as mouse clicks, keyboard input, virtual key input, etc., and updating the window content accordingly. The first window process and the second window process refer to any two different window processes. It should be noted that a processing device may include two or more window processes, and the first window process and the second window process are any two of all window processes. Exemplarily, a total of 4 windows A, B, C, and D need to be displayed on the vehicle's central control screen at the same time, and each window corresponds to a window process, then the first window process and the second window process can be any two of the window processes. Furthermore, any kind of association relationship such as a tree relationship can be set between multiple window processes according to actual conditions and rendering consistency requirements, and the first window process and the second window process can be any two window processes with an association relationship.

[0040] In this embodiment, the first window process and the second window process may correspond to two different software applications that need to display pictures based on windows, or may be any two processes in a multi-process software that need to display pictures based on windows. Optionally, the application software corresponding to the first window process and the second window process are 3D application software. Each window process corresponds to a rendering window, the first window process corresponds to the first rendering window, and the second window process corresponds to the second rendering window. When the application software is a 3D application software, the picture displayed by the corresponding rendering window is a 3D picture. Each rendering window corresponds to a system interface, and the life cycle of the window process is controlled based on the system interface, for example, the window process is controlled to enter different states such as start, stop, sleep, and active; based on the system interface, the display mode such as the position and size of the rendering window can also be controlled.

[0041] In this embodiment, when the first window process and the second window process perform screen rendering, in order to ensure the visual consistency of the first window screen and the second window screen, it is necessary to ensure that some rendering elements in the first window screen and the second window screen are consistent, and the rendering consistency data is defined as the data corresponding to the consistent rendering elements.

[0042] Step 102 : performing screen rendering based on the rendering consistency data to ensure visual consistency between a second window screen rendered by the second window process and a first window screen rendered by the first window process.

[0043] In this embodiment, the first window process and the second window process both render the screen based on the rendering consistency data, thereby ensuring the visual consistency between the second window screen rendered by the second window process and the first window screen rendered by the first window process. Exemplarily, the rendering consistency data includes vehicle model data, and the first window process and the second window process both render the screen based on the rendering consistency data. Then, the vehicle model in the first window screen rendered by the first window process and the vehicle model in the second window screen rendered by the second window process are visually the same, and based on this, the visual consistency between the first window screen and the second window screen is ensured.

[0044] In one embodiment, the communication function between the first window process and the second window process can be realized by any communication technology adapted to the present method, such as Ethernet technology, Bluetooth technology, and local area network technology based on IEEE 802.3 standard. In order to ensure normal communication between the first window process and the second window process, a standardized software protocol framework for collaborative linkage based on rendering elements is defined. Rendering elements refer to components that constitute a rendering screen, for example, a vehicle model in a rendering screen, an individual building in the background, etc. Multiple rendering elements together constitute a complete rendering screen.

[0045] In this embodiment, taking the case where both the first window and the second window display 3D images as an example, the first window process and the second window process correspond to different 3D software applications respectively, and the rendering elements are 3D elements. The software protocol framework includes a header and a data part. The header includes the normative definition of items such as version, header data length, checksum, application identifier, message type, element item length, key, etc.; the data part structure includes the normative definition of each item in the 3D element list. The details are as follows:

[0046] For the header structure, the specific definition is as follows:

[0047] (1) Version: Bit sequence 1, length 2 bytes (byte, B), indicating the current version number of this software protocol framework;

[0048] (2) Header length: bit sequence 2, length 1B, indicating the size of the header content, in bytes (B);

[0049] (3) Data length: bit sequence 3, length 2B, indicating the size of the data content, in bytes (B);

[0050] (4) Checksum: bit sequence 4, length 2B, used to determine the correctness and integrity of the data packet, both the header and the data are checked;

[0051] (5) Application ID: bit sequence 5, length 4 bytes, a number that uniquely identifies the 3D software application;

[0052] (6) Message type: bit sequence 6, length 1B, 0 indicates a request message, 1 indicates a response message;

[0053] (7) Element item length: bit sequence 7, length 4B, indicating the length of each item in the 3D element list;

[0054] (8) Key: bit sequence 8, length 4B, used for encryption and decryption of data content.

[0055] For the data part structure, the 3D element list is mainly defined, and the bit order of the 3D element list is defined as 9. The content of each item in the 3D element list is as follows:

[0056] (1) Element category: bit sequence 1, length 2B; optionally, different identifiers may be used to represent different element categories, for example, 1 represents a camera, 2 represents a scene, 3 represents a car model, 4 represents a voice image, 5 represents a theme color, etc. The element categories described in this embodiment may be added or modified according to actual conditions and needs.

[0057] (2) Identity document (ID): bit sequence 2, length 2B; a number that can uniquely identify a 3D element during the interaction of the window process.

[0058] (3) Current state matrix: bit order 3, length 32B; a 4*4 affine matrix stored in row-first principle, used to represent the current displacement, scaling, rotation, shearing, mirroring, and other information of the 3D element in the world coordinate system. It should be noted that the size of 4*4 used by the current state matrix is ​​only an exemplary size, and other matrix sizes can also be used according to actual conditions and needs.

[0059] (4) Target state matrix: bit order 4, length 32B; a 4*4 affine matrix stored in row-first order, used to represent the displacement, scaling, rotation, shearing, mirroring, and other information of the 3D element in the world coordinate system before the start of the next animation cycle. It should be noted that the size of 4*4 used by the target state matrix is ​​only an exemplary size, and other matrix sizes can also be used according to actual conditions and requirements.

[0060] (5) Spatial interpolation algorithm: bit sequence 5, length 1B; indicates the intermediate transition algorithm used by the 3D element from the current state to the target state. Different identifiers can be used to indicate different spatial interpolation algorithms, for example, 1 indicates the nearest neighbor interpolation method, 2 indicates the bilinear interpolation method, 3 indicates the cubic interpolation method, and 4 indicates the inverse distance weighted interpolation method. The spatial interpolation algorithms described in this embodiment can be added or modified according to actual conditions and requirements.

[0061] (6) Current color: bit sequence 6, length 4B; a 1*4 matrix stored in the order of red, green, blue, and transparency. Used to indicate the current color of a 3D element.

[0062] (7) Target color: bit order 7, length 4B; a 1*4 matrix stored in the order of red, green, blue, and transparency. Used to represent the color of the 3D element before the next animation cycle starts.

[0063] (8) Color interpolation algorithm: bit sequence 8, length 1B; indicates the intermediate transition algorithm used by the 3D element from the current color to the target color: different identifiers can be used to indicate different color interpolation algorithms, for example, 1 indicates the nearest neighbor interpolation method, 2 indicates the bilinear interpolation method, 3 indicates the cubic interpolation method, 4 indicates the inverse distance weighted interpolation method, and 5 indicates the interpolation method based on the color ratio and color difference law. The color interpolation algorithms described in this embodiment can be added or modified according to actual conditions and needs.

[0064] (9) Redundant bits: bit order 10; padding bits, which align the data packet to 8B to facilitate data transmission.

[0065] In one embodiment, obtaining rendering consistency data of the first window process and the second window process includes: the second window process sends a rendering consistency request to the first window process; the first window process sends rendering consistency data to the second window process based on the rendering consistency request. Rendering the screen based on the rendering consistency data includes: the second window process renders the screen based on the rendering consistency data.

[0066] In this embodiment, the second window process is a process waiting to obtain rendering consistency data, and the first window process is a process providing rendering consistency data. In order to ensure the visual consistency between the second window process and the first window process, when the second window process needs to render the screen, the second window process first sends a rendering consistency request to the first window process, and based on the rendering consistency request, the second window process requests the first window process for rendering consistency data. The rendering consistency data is obtained by filling the information of the consistency-related rendering elements in the first window process. After the first window process responds to the rendering consistency request and feeds back the rendering consistency data to the second window process, the second window process renders the screen based on the rendering consistency data, thereby ensuring the visual consistency of the first window screen and the second window screen.

[0067] In one embodiment, the second window process sends a rendering consistency request to the first window process, including: switching the second window process in a background dormant state to a foreground active state; and the second window process sends a rendering consistency request to the first window process in the foreground active state.

[0068] In this embodiment, for any foreground window process, its life cycle is in an active state, and for any background window process, its life cycle is in a dormant state. The first window process is a window process in the foreground active state, and the second window process is a window process in the background dormant state. When the second window needs to be adjusted to the foreground display screen, the second window process needs to be switched to the foreground active state first, and then the second window process sends a rendering consistency request to the first window process in the foreground active state, thereby ensuring that the second window process can obtain rendering consistency data from the first window process in the foreground active state, thereby ensuring that the second window screen rendered by the second window process maintains consistency with the first window screen.

[0069] In one embodiment, after the first window process sends the rendering consistency data to the second window process based on the rendering consistency request, the method further includes: switching the first window process in the foreground active state to the background dormant state.

[0070] In this embodiment, if the second window needs to be displayed in the foreground while the first window needs to be adjusted to the background sleep state, the first window process is switched to the background sleep state after the first window process sends the rendering consistency data to the second window process. That is to say, in combination with the above embodiment and this embodiment, an implementation method of switching between the foreground and background processes is provided.

[0071] In one embodiment, for the scenario of switching between the foreground and background window processes, take the foreground active window process switching from the first window process to the second window process as an example. Figure 2 As shown, the implementation process of the screen rendering method is as follows:

[0072] Step 201, switching the second window process from a background dormant state to a foreground active state through a system interface;

[0073] Step 202: The second window process sends a rendering consistency request to the first window process;

[0074] Step 203, after the first window process receives the rendering consistency request sent by the second window process, the first window process fills the local information of each rendering element related to the rendering consistency based on the software protocol framework provided above to obtain rendering consistency data, and feeds back the rendering consistency data to the second window process;

[0075] Step 204, switching the first window process from the foreground active state to the background dormant state through the system interface;

[0076] Step 205 , after receiving the rendering consistency data fed back by the first window process, the second window process determines a behavior of maintaining the consistency of the rendering effect locally according to the information of each rendering element in the rendering consistency data.

[0077] In an exemplary embodiment, taking the vehicle's central control screen as a processing device, the first window process is the desktop window process, the second window process is the vehicle setting window process, and the second window process is switched to the foreground, while the first window process is switched to the background. Specifically, based on the 3D lens in the desktop window process being the currently active state, the scene transitions to the vehicle setting window process. The transition effects between the desktop window process and the 3D lens in the vehicle setting window process ensure visual consistency and achieve seamless connection.

[0078] In this embodiment, the implementation process of the screen rendering method is as follows:

[0079] Step 1: Switch the vehicle setting window process from the background dormant state to the foreground active state through the system interface, that is, open the vehicle setting window process in the background;

[0080] Step 2: The vehicle settings window process sends a rendering consistency request to the desktop window process; optionally, the rendering consistency request is based on the software protocol framework provided in the above embodiment, and the vehicle settings window process identifier is filled in the application identifier part of the header structure, and the other parts of the header structure are filled in according to the actual situation and required specifications. For example, Figure 3 An example after the header is filled is shown, and the rendering consistency request completes the communication based on the software protocol framework provided in the above embodiment;

[0081] Step three, after the desktop window process receives the rendering consistency request sent by the vehicle setting window process, the desktop window process fills the local information of each rendering element related to the rendering consistency based on the software protocol framework provided above, obtains the rendering consistency data, and feeds the rendering consistency data back to the vehicle setting window process; optionally, the rendering consistency data is based on the software protocol framework provided in the above embodiment, and the application identification part of the header structure is filled with the desktop window process identification, and the other parts of the header structure are filled according to the actual situation and required specifications. For example, Figure 4 An example of a filled header is shown; the camera ID, current matrix, target matrix, current color, target color, scene ID, current matrix, target matrix, current color, target color, car model ID, current matrix, target matrix, current color, target color and other information are filled in the data part. For example, Figure 5 An example after a data portion is filled is shown; the rendering consistency data is communicated based on the software protocol framework provided in the above embodiment;

[0082] Step 4: Switch the desktop window process from the foreground active state to the background dormant state through the system interface, that is, the vehicle setting window covers the desktop window;

[0083] Step 5. After receiving the rendering consistency data fed back by the desktop window process, the vehicle setting window process determines the local behavior to maintain the consistency of the rendering effect based on the information of each rendering element in the rendering consistency data. That is, based on the lens, car model and scene information fed back by the desktop window process, the vehicle setting window process connects the motion state of its own lens, car model and scene, thereby achieving the purpose of 3D lens transition across processes while maintaining consistency in rendering effect.

[0084] In one embodiment, the second window process sends a rendering consistency request to the first window process, including: the second window process in the foreground active state sends a rendering consistency request to the first window process in the foreground active state.

[0085] In this embodiment, multiple windows can be active on a display screen at the same time, that is, in a scenario where multiple window processes share the same screen, all windows in the foreground at the same time need to ensure visual consistency. The first window process and the second window process are window processes that are active in the foreground at the same time. In order to ensure the visual consistency of the first window process and the second window process, during the operation of the first window process and the second window process, the second window process can send a rendering consistency request to the first window process, so that the second window process obtains the rendering consistency data provided by the first window process. The first window process and the second window process both render the screen based on the rendering consistency data, thereby ensuring the visual consistency of the first window and the second window.

[0086] In one embodiment, the second window process sends a rendering consistency request to the first window process, including: based on an action cycle of screen rendering of the second window process, the second window process periodically sends a rendering consistency request to the first window process.

[0087] In this embodiment, for the first window process and the second window process that are both in the foreground active state, in order to ensure that the first window screen and the second window screen maintain visual consistency no matter how they change, based on the action cycle of the second window process screen rendering, the second window process periodically sends a rendering consistency request to the first window process, to ensure that the screen rendered by the second window process in each action cycle maintains visual consistency with the first window screen, thereby further improving the consistency effect.

[0088] In one embodiment, for a scenario where multiple window processes share a screen, take the foreground active window process including a first window process and a second window process as an example. Figure 6As shown, the implementation process of the screen rendering method is as follows:

[0089] Step 601: The second window process sends a rendering consistency request to the first window process based on the animation cycle of the actual special effect;

[0090] Step 602: After the first window process receives the rendering consistency request sent by the second window process, the first window process fills the local information of each rendering element related to the rendering consistency based on the software protocol framework provided above to obtain rendering consistency data, and feeds the rendering consistency data back to the second window process;

[0091] Step 603: After receiving the rendering consistency data fed back by the first window process, the second window process determines a behavior of maintaining the consistency of the rendering effect locally according to the information of each rendering element in the rendering consistency data.

[0092] In an exemplary embodiment, taking the vehicle central control screen as an example of a processing device, the first window process is the time desktop window process, and the second window process is the real-time traffic window process. The real-time environment 3D special effects across the time desktop window process and the real-time traffic window process are specifically implemented as follows:

[0093] First, the real-time traffic window process sends a rendering consistency request to the time desktop window process based on the animation cycle of the actual special effects; exemplarily, the animation cycle of the real-time traffic window process is 0.5 seconds; optionally, the rendering consistency request is based on the software protocol framework provided in the above embodiment, and the real-time traffic window process identifier is filled in the application identifier part of the header structure, and the other parts of the header structure are filled in according to the actual situation and required specifications. Figure 7 An example of data after header filling is shown, and the rendering consistency request completes communication based on the software protocol framework provided in the above embodiment;

[0094] Then, after the Shidai Desktop Window Process receives the rendering consistency request sent by the real-scene traffic window process, the Shidai Desktop Window Process fills in the information of each rendering element related to the local rendering consistency based on the software protocol framework provided above, obtains the rendering consistency data, and feeds back the rendering consistency data to the real-scene traffic window process; optionally, the rendering consistency data is based on the software protocol framework provided in the above embodiment, when the Shidai Desktop Window Process ID is filled in the application ID part of the header structure, the other parts of the header structure are filled in according to the actual situation and required specifications, for example, Figure 8 An example of a header filled in is shown; the scene ID, current matrix, target matrix, current color, target color and other information are filled in the data part. For example, Fig. 9An example after a data portion is filled is shown; the rendering consistency data is communicated based on the software protocol framework provided in the above embodiment;

[0095] Finally, after receiving the rendering consistency data fed back by the Time Desktop Window Process, the Real-time Traffic Conditions Window Process decides on the local behavior to maintain the consistency of the rendering effect based on the information of each rendering element in the rendering consistency data. That is, according to the scene information fed back by the Time Desktop Window Process, it connects the motion state of its own scene, thereby achieving the purpose of consistency in rendering effects for scenes across processes.

[0096] In one embodiment, the rendering consistency data includes information related to rendering elements that ensure visual consistency between the first window image and the second window image.

[0097] In this embodiment, the relevant information of the rendering element includes but is not limited to the element category, element ID, current state, target state, current color, target color, adopted spatial interpolation algorithm and adopted color interpolation algorithm. Based on the above embodiment provided by the present application, the rendering consistency data can be filled with corresponding content in the data part based on the software protocol framework provided by the above embodiment, so as to realize the interactive rendering consistency data between the first window process and the second window process.

[0098] In one embodiment, the rendering consistency request includes identification information of the second window process.

[0099] In this embodiment, the window processes are configured with one-to-one corresponding identification information, thereby ensuring normal communication and data security between the window processes. In the implementation schemes provided by the above embodiments, the rendering consistency request includes the identification information of the second window process, ensuring the secure transmission of the rendering consistency request.

[0100] In an embodiment of the present application, rendering consistency data of the first window process and the second window process are obtained; screen rendering is performed based on the rendering consistency data to ensure visual consistency between the second window screen rendered by the second window process and the first window screen rendered by the first window process. In this process, there is no need to concentrate multiple application software in one process, but the rendering consistency data is interactively performed between the first window process and the second window process to flexibly allocate multiple window processes according to actual business needs, thereby avoiding the high performance requirements of processing resources when multiple application software are concentrated in one process. At the same time, when the first window process and the second window process perform screen rendering, the visual consistency of the second window screen and the first window screen is ensured by rendering consistency data, rather than restricting the design language of the application software, thereby improving the degree of freedom of technical design and development and reducing development costs; rich and diverse application software can dynamically access the display process through different window processes, providing more convenient conditions for the upgrade, iteration and maintenance of application software.

[0101] Furthermore, the number of application processes in each scenario can be flexibly allocated according to actual business needs, so that all software applications are not squeezed into one application process because they need to meet a certain visual effect, which eases the pressure of system resource load, improves the freedom of technical development, and reduces R&D costs; at the same time, the final rendering effect of each window process can be kept consistent based on the interaction between two processes. For application software between different window processes, a communication pipeline between window processes is opened. Based on the pipeline technology and related communication protocols, different window processes can intervene in their respective program execution paths, and achieve consistency of the final rendering effect through such inter-process collaboration. There is no need to constrain the development process of each software application through predefined specifications of the design language, but to support the dynamic access of various application software from the system software framework level, which not only ensures the consistency of rendering effects, but also reduces the coupling degree between the design module and the technical module, improves the freedom of design and development, and thus improves the flexibility of the system framework and reduces the cost of software upgrades, iterations and maintenance in the later stage.

[0102] Example Vehicles

[0103] Correspondingly, an embodiment of the present application also provides a vehicle, the vehicle including a display screen; the display screen is used to display a second window screen and a first window screen rendered by the screen rendering method provided in any of the above embodiments.

[0104] The vehicle provided in this embodiment belongs to the same application concept as the screen rendering method provided in the above embodiments of this application, and can apply the screen rendering method provided in any of the above embodiments of this application, and has the corresponding functional modules and beneficial effects of the application method. For technical details not fully described in this embodiment, please refer to the specific processing content of the screen rendering method provided in the above embodiments of this application, and will not be repeated here.

[0105] Exemplary Devices

[0106] Accordingly, the embodiment of the present application also provides a picture rendering device, such as Fig.10 As shown, the device may include:

[0107] An acquisition module 1001 is used to acquire rendering consistency data of a first window process and a second window process;

[0108] The rendering module 1002 is used to perform screen rendering based on the rendering consistency data to ensure visual consistency between the second window screen rendered by the second window process and the first window screen rendered by the first window process.

[0109] In one embodiment, the acquisition module 1001 is used for the second window process to send a rendering consistency request to the first window process; the first window process sends rendering consistency data to the second window process based on the rendering consistency request;

[0110] The rendering module 1002 is used for the second window process to perform screen rendering based on the rendering consistency data.

[0111] In one embodiment, the acquisition module 1001 is used to switch the second window process in the background dormant state to the foreground active state; the second window process sends a rendering consistency request to the first window process in the foreground active state.

[0112] In one embodiment, the acquisition module 1001 is used to switch the first window process in the foreground active state to the background dormant state after the first window process sends the rendering consistency data to the second window process based on the rendering consistency request.

[0113] In one embodiment, the acquisition module 1001 is used for the second window process in the foreground active state to send a rendering consistency request to the first window process in the foreground active state.

[0114] In one embodiment, the acquisition module 1001 is configured to cause the second window process to periodically send a rendering consistency request to the first window process based on an action cycle of rendering a screen of the second window process.

[0115] In one embodiment, the rendering consistency data includes information related to rendering elements that ensure visual consistency between the first window image and the second window image.

[0116] In one embodiment, the rendering consistency request includes identification information of the second window process.

[0117] The screen rendering device provided in this embodiment belongs to the same application concept as the screen rendering method provided in the above embodiments of this application, and can execute the screen rendering method provided in any of the above embodiments of this application, and has the corresponding functional modules and beneficial effects of the execution method. For technical details not fully described in this embodiment, please refer to the specific processing content of the screen rendering method provided in the above embodiments of this application, and will not be repeated here.

[0118] Exemplary Electronic Devices

[0119] The present application also provides an electronic device, such as Fig.11 As shown, the electronic device includes: a memory 1100 and a processor 1101 .

[0120] The memory 1100 is connected to the processor 1101 and is used to store programs.

[0121] The processor 1101 is used to implement the picture rendering method in the above embodiment by running the program stored in the memory 1100.

[0122] Specifically, the electronic device may further include: a communication interface 1102 , an input device 1103 , an output device 1104 and a bus 1105 .

[0123] The processor 1101, the memory 1100, the communication interface 1102, the input device 1103 and the output device 1104 are connected to each other via a bus.

[0124] Bus 1105 may include a pathway for transferring information between various components of a computer system.

[0125] The processor 1101 may be a general-purpose processor, such as a general-purpose central processing unit (CPU), a microprocessor, etc., or an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the scheme of the present invention. It may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0126] The processor 1101 may include a main processor, and may also include a baseband chip, a modem, etc.

[0127] The memory 1100 stores a program for executing the technical solution of the present invention, and may also store an operating system and other key services. Specifically, the program may include a program code, and the program code includes a computer operation instruction. More specifically, the memory 1100 may include a read-only memory (ROM), other types of static storage devices that can store static information and instructions, a random access memory (RAM), other types of dynamic storage devices that can store information and instructions, a disk storage, a flash, and the like.

[0128] The input device 1103 may include a device for receiving data and information input by a user, such as a keyboard, a mouse, a camera, a scanner, a light pen, a voice input device, a touch screen, a pedometer, or a gravity sensor.

[0129] Output device 1104 may include a device that allows information to be output to a user, such as a display screen, printer, speaker, etc.

[0130] The communication interface 1102 may include any transceiver or the like to communicate with other devices or communication networks, such as Ethernet, Radio Access Network (RAN), Wireless Local Area Network (WLAN), etc.

[0131] The processor 1101 executes the program stored in the memory 1100 and calls other devices, which can be used to implement the various steps of the image rendering method provided in the above embodiments of the present application.

[0132] Exemplary computer program products and storage media

[0133] In addition to the above-mentioned method and device, the embodiment of the present application may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps in the screen rendering method described in the embodiment of the present application.

[0134] The computer program product may be implemented in hardware, software or a combination thereof. In one optional embodiment, the computer program product is embodied as a computer storage medium, and in another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (SDK).

[0135] The computer program product may be written in any combination of one or more programming languages ​​to write program codes for performing the operations of the embodiments of the present application, including object-oriented programming languages, such as Java, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as an independent software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0136] In addition, the embodiment of the present application may also be a storage medium on which a computer program is stored, and the computer program is executed by a processor to execute the steps of the screen rendering method described in the embodiment of the present application.

[0137] For the aforementioned method embodiments, for the sake of simplicity, they are all described as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the order of the actions described, because according to the present application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.

[0138] It should be noted that each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments, and the same or similar parts between the embodiments can be referred to each other. For the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0139] The steps in the methods of each embodiment of the present application can be adjusted in order, combined and deleted according to actual needs, and the technical features recorded in each embodiment can be replaced or combined.

[0140] The modules and sub-modules in the devices and terminals provided in the embodiments of the present application can be merged, divided and deleted according to actual needs.

[0141] In the several embodiments provided in the present application, it should be understood that the disclosed terminals, devices and methods can be implemented in other ways. For example, the terminal embodiments described above are only schematic, for example, the division of modules or submodules is only a logical function division, and there may be other division methods in actual implementation, for example, multiple submodules or modules can be combined or integrated into another module, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or modules, which can be electrical, mechanical or other forms.

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

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

[0144] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in the above description according to function. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0145] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly by hardware, software units executed by a processor, or a combination of the two. The software units may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.

[0146] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0147] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A picture rendering method, characterized in that: include: Obtain rendering consistency data of the first window process and the second window process; Screen rendering is performed based on the rendering consistency data to ensure visual consistency between the second window screen rendered by the second window process and the first window screen rendered by the first window process.

2. The image rendering method according to claim 1, characterized in that: The obtaining of rendering consistency data of the first window process and the second window process includes: The second window process sends a rendering consistency request to the first window process; The first window process sends the rendering consistency data to the second window process based on the rendering consistency request; The performing picture rendering based on the rendering consistency data includes: The second window process performs screen rendering based on the rendering consistency data.

3. The image rendering method according to claim 2, characterized in that: The second window process sends a rendering consistency request to the first window process, including: Switching the second window process in the background dormant state to the foreground active state; The second window process sends a rendering consistency request to the first window process in the foreground active state.

4. The image rendering method according to claim 3, characterized in that: After the first window process sends the rendering consistency data to the second window process based on the rendering consistency request, the process further includes: Switch the first window process in the foreground active state to the background dormant state.

5. The image rendering method according to claim 2, characterized in that: The second window process sends a rendering consistency request to the first window process, including: The second window process in the foreground active state sends a rendering consistency request to the first window process in the foreground active state.

6. The image rendering method according to claim 2, characterized in that: The second window process sends a rendering consistency request to the first window process, including: Based on an action cycle of screen rendering of the second window process, the second window process periodically sends a rendering consistency request to the first window process.

7. The image rendering method according to any one of claims 1 to 6, characterized in that: The rendering consistency data includes relevant information of rendering elements that ensure visual consistency between the first window picture and the second window picture.

8. The image rendering method according to any one of claims 2 to 6, characterized in that: The rendering consistency request includes identification information of the second window process.

9. A vehicle, characterized in that: The vehicle includes a display screen; The display screen is used to display the second window image and the first window image rendered by the image rendering method according to any one of claims 1 to 8.

10. An electronic device, characterized in that: include: Memory and processor; The memory is connected to the processor and is used to store programs; The processor is used to implement the picture rendering method according to any one of claims 1 to 8 by running the program in the memory.

11. A computer program product, characterized in that includes computer program instructions; When the computer program instructions are executed by a processor, the processor executes the picture rendering method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Method and device for inter-process rendering in browser

    CN104376016A

  • Cross-process rendering method and system

    CN107463370A

  • User interface rendering method and device of application program, medium and electronic equipment

    CN110347464A

  • Cross-process interface for non-compatible frameworks

    CN111936967A

  • Page processing method and device, electronic equipment and storage medium

    CN117312017A