CN115705668A - View drawing method and device and storage medium - Google Patents

View drawing method and device and storage medium Download PDF

Info

Publication number
CN115705668A
CN115705668A CN202110944931.7A CN202110944931A CN115705668A CN 115705668 A CN115705668 A CN 115705668A CN 202110944931 A CN202110944931 A CN 202110944931A CN 115705668 A CN115705668 A CN 115705668A
Authority
CN
China
Prior art keywords
view
sub
parameter
parameters
dynamic effect
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110944931.7A
Other languages
Chinese (zh)
Inventor
苟亚明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110944931.7A priority Critical patent/CN115705668A/en
Publication of CN115705668A publication Critical patent/CN115705668A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

The application provides a method, a device and a storage medium for drawing a view, which are applied to the technical field of view processing; in the application, when determining that a window of an application program changes, a window change event is transferred to a drawing function provided by OpenGL, and in a child thread, the drawing function is called to execute: acquiring a color space value from a rendering environment parameter, and setting a background color of each sub-view in a main view for displaying page data on a window based on the color space value when a color buffer is cleared, wherein the rendering environment parameter is used for recording a parameter used when an initialized rendering environment is created; and aiming at each sub-view, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color. When the window size of the application program changes, view drawing is performed based on OpenGL, and expandability is achieved.

Description

View drawing method and device and storage medium
Technical Field
The present invention relates to the field of view processing technologies, and in particular, to a method and an apparatus for drawing a view, and a storage medium.
Background
The view drawing is an important process for generating visual images in application programs, and is widely applied to application programs with view drawing requirements, such as games, video playing and the like; the view drawing is mainly implemented by executing view drawing logic on image objects to be displayed by the terminal device, where the image objects may include any display object to be rendered, for example, a character image, an article image, a background image, and the like in the three-dimensional scene model, and various display controls in a web page, such as buttons, borders, and the like.
At present, because platform systems of each terminal device are different at present, application interfaces for drawing views corresponding to different platform systems are different, that is, corresponding upper Application Programming Interfaces (APIs) are called under different platform systems to draw views.
In summary, in the process of drawing the view, different platform systems call respective upper APIs, and for the view drawing function in the same application program, separate development needs to be performed for different platform systems, which is relatively complex in development and relatively high in resource consumption; therefore, how to implement the extensibility of the view drawing function and reduce the cost in view drawing processing is a problem to be solved at present.
Disclosure of Invention
The application provides a method, a device and a storage medium for drawing a view, which are used for realizing the expandability of a view drawing function and reducing the cost.
In a first aspect, an embodiment of the present application provides a method for drawing a view, where the method includes:
when determining that the window of the application program changes, transmitting the window change event to a drawing function provided by an Open Graphics Library (OpenGL);
in the child thread, a drawing function is called, and the following operations are executed:
acquiring a color space value from the rendering environment parameters, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer area is cleared, wherein the rendering environment parameters are the rendering environment parameters corresponding to the main view and are used for recording the parameters used when the initialized rendering environment is created;
for each sub-view, respectively based on the obtained vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color,
and drawing each sub-view.
In a second aspect, an embodiment of the present application provides an apparatus for view drawing, where the apparatus includes:
the transfer unit is used for transferring the window change event to a drawing function provided by OpenGL when determining that the window of the application program changes;
the execution unit is used for calling the drawing function in the sub thread and executing the following operations:
acquiring a color space value from the rendering environment parameters, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer area is cleared, wherein the rendering environment parameters are the rendering environment parameters corresponding to the main view and are used for recording the parameters used when the initialized rendering environment is created;
for each sub-view, respectively based on the obtained vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color,
and drawing each sub-view.
In one possible implementation, the execution unit is further configured to obtain a color space value from the rendering environment parameter, and when the color buffer is cleared, before setting a background color for each sub-view in the main view of the page data on the display window based on the color space value, the execution unit is further configured to:
sending bitmap information of the main view to a server, and acquiring rendering environment parameters corresponding to the main view;
wherein, the rendering environment parameter is determined by the server through at least one of the following modes:
determined based on a corresponding relationship between the bitmap information and the rendering environment parameters;
and determining the sub-rendering environment parameters corresponding to the obtained element information based on the setting rules corresponding to the element information contained in the bitmap information.
In one possible implementation, the execution unit is further configured to obtain a color space value from the rendering environment parameter, and when the color buffer is cleared, before setting a background color for each sub-view in the main view of the page data on the display window based on the color space value, the execution unit is further configured to:
setting the view successfully created by the graphics library view (GLKView) as a sub-view, and initializing the color buffer of the sub-view.
In a possible implementation manner, before drawing each sub-view based on the obtained vertex parameter, the default coordinate point of each sub-view relative to the main view, and the dynamic effect parameter of each sub-view, the execution unit is further configured to:
creating a corresponding batch container (GLbatch) based on an enumeration value type parameter for creating the GLbatch container, which is acquired from the rendering environment parameter; acquiring a target shader from the shader set based on the shader array number acquired from the rendering environment parameters;
the execution unit is specifically configured to: drawing each sub-view through a target shader based on the acquired vertex parameters, the default coordinate points of each sub-view relative to the main view and the dynamic effect parameters of each sub-view;
the vertex parameters are transmitted by a GLBatch calling start function (Begin), the default coordinate points are transmitted by a GLBatch calling vertex data copy function (copyVertexData 3 f), and the dynamic effect parameters are acquired from a configuration file.
In one possible implementation, the execution unit is further configured to:
if the target shader is not obtained from the shader set, calling a graphics library shader manager (GLshader manager) provided by OpenGL to create a shader, and taking the successfully created shader as the target shader;
and after the target shader is determined to finish drawing the sub-view, storing the target shader in the shader set.
In one possible implementation, the dynamic effect parameter is determined by:
based on the main view, obtaining the dynamic effect parameters corresponding to each sub-view in the main view from the corresponding relation between the view stored in the configuration file and the dynamic effect parameters, wherein the dynamic effect parameters are used for representing the animation mode of the corresponding sub-view relative to the terminal screen;
the corresponding relation is obtained from the server when the application program is started, and the dynamic effect parameters comprise at least one of rotation parameters, translation parameters and scaling parameters.
In a possible implementation manner, if the dynamic effect parameters include a scaling parameter, the execution unit obtains, from the correspondence between the views and the dynamic effects stored in the configuration file, the dynamic effect parameters corresponding to each of the sub-views in the main view, and specifically is configured to:
calling a self-defined scaling function to obtain a corresponding dynamic effect parameter; the user-defined scaling function is determined based on first description information of the variable parameters corresponding to the sub-views and second description information of the fixed parameters corresponding to the sub-views.
In a possible implementation manner, before calling the custom scaling function and obtaining the corresponding dynamic effect parameter, the execution unit is further configured to:
acquiring a change rule of a window relative to a terminal screen from rendering environment parameters;
and determining the relative position information of the window relative to the terminal screen based on the change rule, so as to display the page data on the window based on the dynamic effect parameter determined by the scaling function at the position of the terminal screen corresponding to the relative position information.
In a third aspect, an embodiment of the present application provides an electronic device, including: a memory and a processor, wherein the memory is used for storing a computer program; a processor, configured to execute a computer program to implement the method for drawing a view provided in the embodiment of the present application.
In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, where a computer program is stored, and when the computer program is executed by a processor, the method for drawing a view provided by the embodiment of the present application is implemented.
The beneficial effect of this application is as follows:
the embodiment of the application provides a method, a device and a storage medium for drawing a view, which are applied to the technical field of view processing; in this embodiment of the present application, when determining that a window of an application program changes, a window change event is transferred to a drawing function provided by OpenGL, and in a child thread, the drawing function is called to execute: acquiring a color space value from the rendering environment parameter, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer is cleared; and aiming at each sub-view, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color. When the size of a window of an application program changes, view drawing is performed on the basis of a drawing function provided by OpenGL in a sub-thread, and the universality of the view drawing function when the window changes in a multi-platform system is solved through OpenGL, namely, different platform systems can achieve view drawing on the basis of the drawing function provided by OpenGL, the expandability of view drawing is achieved, and the cost in view drawing processing is reduced; in addition, in the embodiment of the application, view drawing is realized in the sub-thread, the influence of other operation instructions is avoided, and the view drawing efficiency is improved.
Additional features and advantages of the application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the application. The objectives and other advantages of the application may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
FIG. 1 is a schematic diagram of a main view on a window of an application displayed in a terminal screen;
FIG. 2 is a schematic diagram of a main view on a window of another application displayed in a terminal screen;
fig. 3 is a schematic view of an application scenario provided in an embodiment of the present application;
FIG. 4 is a flowchart of a method for view rendering according to an embodiment of the present application;
FIG. 5 is a flowchart of a method for performing view rendering in a child thread according to an embodiment of the present application;
FIG. 6 is a schematic diagram of a patterning provided in an embodiment of the present application;
FIG. 7 is a schematic diagram illustrating a sub-view being arranged in a front view according to an embodiment of the present application;
FIG. 8 is a flowchart of an overall method for performing view rendering in a child thread according to an embodiment of the present application;
FIG. 9 is a flow chart of a preparation operation before view rendering according to an embodiment of the present application;
FIG. 10 is a drawing of a block diagram of an apparatus according to an embodiment of the present application;
fig. 11 is a structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to make the purpose, technical solution and advantages of the present application more clearly and clearly understood, the technical solution in the embodiments of the present application will be described below in detail and completely with reference to the accompanying drawings in the embodiments of the present application, and it is obvious that the described embodiments are only some embodiments of the present application, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The terms "first," "second," and the like in the description and in the claims of the present application and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the application described herein are capable of operation in sequences other than those illustrated or described herein.
Some terms in the embodiments of the present application are explained below to facilitate understanding by those skilled in the art.
Open graphics library (OpenGL): is a cross-language, cross-platform Application Programming Interface (API) for rendering 2D, 3D vector graphics. This interface consists of a number of different function calls to draw from simple graphics bits to complex three-dimensional scenes. OpenGL is commonly used in Computer Aided Design (CAD), virtual reality, scientific visualization programs, and electronic game development. In the embodiment of the application, view drawing of application programs on different platform systems is realized by applying OpenGL. Platform systems include, but are not limited to: mac, windows.
The thread is the minimum unit that the operating system can perform operation scheduling, is included in the process, is the actual operation unit in the process, and each thread executes different tasks. The threads are divided into a main thread and a sub-thread, and in the embodiment of the application, the process of drawing the view is executed in the sub-thread.
RGBA is a color space representing Red (Red) Green (Green) Blue (Blue) and Alpha. Although it is sometimes described as a color space, it is actually just the RGB model with the addition of extra information. Where alpha is typically used as the opacity parameter, if a pixel has an alpha value of 0%, it is completely transparent, and a value of 100% means a completely opaque pixel. Values between 0% and 100% allow the pixel to be displayed through the background. The alpha value may be expressed in percentage, integer, or real number from 0 to 1 as in the case of RGB parameters.
A bitmap (bitmap), also called a dot matrix image or a raster image, is composed of single points called pixels. These individual pixels may be arranged and dyed differently to form a pattern. When the bitmap is enlarged, countless individual squares that make up the entire image can be seen. The effect of enlarging the bitmap size is to increase the individual pixels, making the lines and shapes appear jaggy. But from a slightly distant point of view, the color and shape of the bitmap image again appears continuous. The bitmap image can represent color variations and subtle transitions in color. Bitmap images include, but are not limited to: photographs taken with a digital camera, pictures scanned by a scanner, and computer screenshots.
Viewport (viewport), which refers to the mapping function in Windows, involves the conversion of logical coordinates to device coordinates. Windows, view ports are corresponding concepts. The viewport is a rectangular area associated with the terminal device, and the coordinate units are "pixels" associated with the terminal device, and in most cases, the viewport is the same as the client area. The coordinates of the window are logical coordinates, independent of the terminal device, and may be pixels, millimeters, or inches. The origin of the window coordinates and the origin of the viewport coordinates always correspond to the same point. The length and width of the region expressed in the window coordinate system is different from the length and width expressed in the coordinate system of the viewport for the same graphic.
The design concept of the embodiment of the present application is briefly described below.
The embodiment of the application mainly relates to how to display page data of an application program into a screen of a terminal device, and mainly relates to a process of view drawing and rendering. When the window size of the application program changes, the display state of the upper view of the window of the application program with different widths and heights needs to be reset, or the relative layout conversion is carried out on one or more views on the window of the application program. That is, when the window of the application is reduced/enlarged to a certain limit, the redrawing of the view on the window of the application is triggered, different view controls are displayed, and the layout of the view is opposite in the process of reducing/enlarging.
For example, referring to fig. 1, fig. 1 provides a schematic diagram of a front view on a window of an application program displayed in a terminal screen, and it can be seen from fig. 1 that the window of the application program occupies the whole terminal screen; when a user triggers an instruction to zoom an application, the main view displayed in the terminal screen changes accordingly, please refer to fig. 2, where fig. 2 provides a schematic diagram of the main view displayed in the terminal screen on a window of another application;
through comparison between fig. 1 and fig. 2, in the process from fig. 1 to fig. 2, the user performs a width scaling operation, the width of the window of the application program becomes smaller, the height becomes larger, and after the width is smaller than a certain value, the list on the right side is automatically hidden.
In the related art, when the terminal device responds to the window change of the application program, the upper API is called to perform re-layout drawing on the main view on the window of the application program. Platform systems of different terminal devices are different, and corresponding APIs of different platform systems are different, so that view drawing functions of application programs in different terminal devices need to be developed independently, maintenance is difficult, and cost is high; and when drawing the view, the process of drawing each sub-view in the main view on the window of the application program is inefficient.
In view of this, in the embodiments of the present application, in consideration of the characteristics of OpenGL that are independent from a window system and an operating system, an application program developed based on OpenGL may be very conveniently transplanted among various system platforms, and a method, an apparatus, an electronic device, and a storage medium for performing view drawing based on OpenGL are provided, so as to implement extensibility of a view drawing function, that is, the view drawing function is applicable to each platform system.
In the embodiment of the present application, when it is determined that a window of an application program changes, a window change event is transferred to a drawing function provided by OpenGL, and in a child thread, the drawing function is called to execute: acquiring a color space value from the rendering environment parameter, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer is cleared; and aiming at each sub-view, in the corresponding background color, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view. When the size of a window of an application program changes, view drawing is performed on the basis of a drawing function provided by OpenGL in a sub-thread, and the universality of the view drawing function when the window changes in a multi-platform system is solved through OpenGL, namely, different platform systems can achieve view drawing on the basis of the drawing function provided by OpenGL, the expandability of view drawing is achieved, and the cost in view drawing processing is reduced; in addition, in the embodiment of the application, view drawing is realized in the sub-thread, the influence of other operation instructions is avoided, and the view drawing efficiency is improved.
Some brief descriptions are given below to application scenarios to which the technical solution of the embodiment of the present application can be applied, and it should be noted that the application scenarios described below are only used for describing the embodiment of the present application and are not limited. In a specific implementation process, the technical scheme provided by the embodiment of the application can be flexibly applied according to actual needs.
Referring to fig. 3, fig. 3 exemplarily provides an application scenario in the embodiment of the present application, where the application scenario includes a terminal device 10 and a server 20;
wherein, various application programs are installed and operated in the terminal device 10; the terminal device 10 is an electronic device such as a smart phone, a tablet computer, a notebook computer, a desktop computer, a smart sound box, a smart watch, and the like, or a vehicle-mounted terminal;
the server 20 may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing basic cloud computing services such as a cloud service, a cloud database, cloud computing, a cloud function, cloud storage, a web service, cloud communication, a middleware service, a domain name service, a security service, a Content Delivery Network (CDN), a big data and artificial intelligence platform, and the like.
In one possible embodiment, the terminal device 10 and the server 20 may communicate with each other through a communication network, which may be a wired network or a wireless network. The terminal device 10 and the server 20 may be directly or indirectly connected by wired or wireless communication. For example, the terminal device 10 may be indirectly connected to the server 20 through the wireless access point 12, or the terminal device 10 may be directly connected to the server 20 through the internet, which is not limited herein.
In a possible application scenario, the embodiment of the application can be applied to cloud games in cloud technology; the Cloud technology (Cloud technology) is a hosting technology for unifying series resources such as hardware, software, network and the like in a wide area network or a local area network to realize calculation, storage, processing and sharing of data.
Cloud technology (Cloud technology) is based on a general term of network technology, information technology, integration technology, management platform technology, application technology and the like applied in a Cloud computing business model, can form a resource pool, is used as required, and is flexible and convenient. Cloud computing technology will become an important support. Background services of the technical network system require a large amount of computing and storage resources, such as video websites, picture-like websites and more web portals. With the high development and application of the internet industry, each article may have an own identification mark and needs to be transmitted to a background system for logic processing, data of different levels can be processed separately, and various industry data need strong system background support and can be realized only through cloud computing.
Cloud gaming (Cloud gaming), also known as game on demand (gaming), is an online gaming technology based on Cloud computing technology. Cloud game technology enables light-end devices (thin clients) with relatively limited graphics processing and data computing capabilities to run high-quality games. In a cloud game scene, a game is not operated in a player game terminal but in a cloud server, and the cloud server renders the game scene into a video and audio stream which is transmitted to the player game terminal through a network. The player game terminal does not need to have strong graphic operation and data processing capacity, and only needs to have basic streaming media playing capacity and capacity of acquiring player input instructions and sending the instructions to the cloud server.
Based on the above application scenarios, the method of view rendering provided by the exemplary embodiments of the present application is described below with reference to the above application scenarios, and it should be noted that the above application scenarios are only illustrated for the convenience of understanding the spirit and principles of the present application, and the embodiments of the present application are not limited in this respect.
Referring to fig. 4, fig. 4 exemplarily provides a flowchart of a method for drawing a view in an embodiment of the present application, which is applied to a terminal device, and the method includes the following steps:
in step S400, when it is determined that the window of the application program changes, the window change event is transferred to a drawing function provided by OpenGL.
Here, the drawing function (Rendering) is registered in advance by calling a display function (glutDisplayFunc) provided by OpenGL.
It should be noted that the glutDisplayFunc is a function called when view drawing display needs to be performed, but the glutDisplayFunc is not called by the terminal device alone.
Generally, the glutDisplayFunc is called after a remolding function (glutreshapfunc) is called, where the glutreshapfunc is a function called when a window of an application is changed.
Illustratively, invoking a function address size move (sizeMove) of a glutReshapeFunc incoming monitoring window width and height change, wherein the width and the height are incoming, invoking a graphics library view port function (glViewport) provided by OpenGL in the sizeMove to set a view port, and converting the logical coordinates of a window of an application program into the screen coordinates of a terminal device; and the current glutDisplayFunc function is used for registering a drawing function, when the window of the application program changes, the window change event is transferred to the drawing function provided by the OpenGL by calling the glViewport provided by the OpenGL, and the view drawing process is executed.
Step S401, in the sub thread, calling a drawing function, and executing: acquiring a color space value from the rendering environment parameter, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer is cleared; and aiming at each sub-view, in the corresponding background color, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view.
In the embodiment of the present application, it is preferable that the color space value is RGBA.
In order to improve the efficiency of view drawing, the view drawing is not affected by other operation instructions, a sub thread is opened by a multi-thread optimization (GCD) before each view drawing, and then the operation of view drawing is put in the sub thread, that is, the drawing of each sub view is performed in the sub thread.
Referring to fig. 5, fig. 5 exemplarily provides a flowchart of a method for performing view drawing in a child thread in an embodiment of the present application, including the following steps:
step S501, obtaining a color space value from the rendering environment parameter, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer is cleared.
In this embodiment of the present application, before a Graphics Processing Unit (GPU) performs view drawing through a shader, a rendering environment should be initialized based on rendering environment parameters, where initializing the rendering environment mainly includes:
create batch container object (GLBatch): based on a type parameter for creating an enumerated value of GLBatch obtained from the rendering environment parameter, a corresponding GLBatch is created.
Setting background color of view: the RGBA values are obtained from the rendering environment parameters through the created GLBatch, and the obtained RGBA values are transmitted to a clean color function (glClearColor), and when the color buffer is cleaned, the background color for each sub-view in the main view of the page data on the display window is set based on the RGBA values.
Determining a target shader: acquiring a target shader from a shader set based on a shader array number acquired from the rendering environment parameters; however, when the target shader is not acquired from the shader set, a graphics library shader manager (glshader manager) provided by OpenGL is called to create the shader, and the successfully created shader is used as the target shader;
it should be noted that, in order to reduce CPU overhead of memory opening and destruction for implementing multiplexing of the shader, in the embodiment of the present application, after it is determined that the child view is completely drawn by the target shader, the target shader is stored in the shader set.
In the embodiment of the present application, the rendering environment parameter is returned by a server after a Central Processing Unit (CPU) sends bitmap information of a comment view to the server when determining that a window of an application program changes;
wherein, the server is determined by at least one of the following modes:
determined based on a corresponding relationship between the bitmap information and the rendering environment parameters;
and determining the sub-rendering environment parameters corresponding to the obtained element information based on the setting rules corresponding to the element information contained in the bitmap information.
Step S502, aiming at each sub-view, in the corresponding background color, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view curtain and the dynamic effect parameter of each sub-view.
In this embodiment of the present application, the target shader is mainly used for drawing a view, that is, in this embodiment of the present application, for each sub-view, drawing each sub-view based on the obtained vertex parameter, the default coordinate point of each sub-view relative to the main view curtain, and the dynamic effect parameter of each sub-view in the corresponding background color by the target shader;
therefore, the target shader needs to obtain vertex parameters, default coordinate points, and dynamic effect parameters during the process of drawing the view.
Illustratively, a target shader receives vertex parameters transmitted by a Begin function called by GLBatch, and connects all points in the vertex parameters into a graph, and then performs pixel filling; referring to fig. 6, fig. 6 schematically illustrates a process of forming a pattern;
the target shader receives a default coordinate point, relative to the main view, of the sub-view, transmitted by the GLBatch call copyVertexData3f, determines position information of each sub-view relative to the main view, and displays the sub-views in the main view based on the position information; referring to fig. 7, fig. 7 exemplarily provides a schematic diagram for setting the sub-view in the main view;
and the target shader receives the dynamic effect parameters, and the dynamic effect parameters are used for representing the animation mode of the corresponding sub-view relative to the terminal screen, so that the animation effect of each sub-view based on the dynamic effect parameters is displayed in the main view.
In a possible implementation manner, the dynamic effect parameter is obtained by the CPU from a corresponding relationship between a view stored in a configuration file (view _ information. Configuration) and the dynamic effect parameter based on a main view, where the corresponding relationship is obtained from a server when an application program is started, and the dynamic effect parameter includes at least one of a rotation parameter, a translation parameter, and a scaling parameter.
Illustratively, the obtained dynamic effect parameters are defined as temporary variables of a type of 4 × 4 matrix (M3 d matrix44 f), specifically, the bottom layer is a floating-point type array, and the temporary variables are used for performing data calculation by 4 × 4 matrix transformation.
Exemplarily, determining that translation transformation occurs, and calling a 4 × 4 translation matrix function (m 3dTranslationMatrix 44) to obtain corresponding dynamic effect parameters;
determining the occurrence of rotation transformation, and calling a 4 x4 rotation matrix function (m 3 dRotatRix 44) to obtain corresponding dynamic effect parameters;
determining that scaling transformation occurs, calling a self-defined scaling function scale (matrix xA, matrix B) to obtain corresponding dynamic effect parameters; the matrix A (matrix A) is first description information of a variation parameter corresponding to the sub-view and is used for representing the variation process and effect of the variation parameter; the matrix B (matrix B) is second description information of the fixed parameters corresponding to the sub-views, and is used for representing the display effect of the fixed parameters, and the display effect is a fixed value, such as brightness and transparency.
In one possible implementation manner, at the beginning of the scaling function, the change rule of the window relative to the terminal screen is obtained from the rendering environment parameters; and determining relative position information of the window relative to the terminal screen based on the change rule, so that the page data on the window is displayed based on the dynamic effect parameters determined by the scaling function at the position of the terminal screen corresponding to the relative position information.
In one possible implementation, the M3d matrix44f variables resulting from the translation and rotation are matrix multiplied and combined into a new M3d matrix44f variable, the resulting value being the relative position of each vertex.
In the embodiment of the application, after the view is drawn, a buffer exchange is executed to display the main view in a terminal screen; in the process of drawing the view, before the rendering environment is initialized, the context of OpenGL needs to be opened, the buffer area needs to be cleared, and a sub-view needs to be created;
illustratively, before any OpenGL instruction is invoked, a context needs to be created, and a context can be understood as a state machine for storing states of buffers, shaders, views, vertex information, and the like, which is the basis for OpenGL view rendering instruction execution. Therefore, the context of OpenGL should be turned on first when drawing is performed by a child thread;
the buffer area is an area for storing image information, the area can refer to a memory or a video memory of a GPU, and the area comprises a color buffer area, a depth buffer area and a template buffer area;
in order to smoothly draw page data in each view, a sub-view is acquired firstly; in order to quickly acquire the sub-views in the view drawing process, the views are created through the GLKView, the views which are successfully created are set as the sub-views, and a color buffer area of the sub-views is initialized in advance, so that the view drawing speed in the sub-thread is increased, and the efficiency is improved.
Referring to fig. 8, fig. 8 is a flowchart illustrating an overall method for performing child view rendering in a child thread in an embodiment of the present application, including the following steps:
step S800, starting the context of OpenGL, clearing a buffer area and creating a sub-view;
step S801, create a batch container object;
step S802, setting the background color of the view;
step S803, determine the target shader;
step S804, acquiring vertex parameters, connecting all points in the vertex parameters into a graph, and filling pixels in the graph;
step S805, determining the position of the sub-view in the main view relative to the default coordinate point of the main view;
step S806, obtaining the dynamic effect parameters of the sub-views, and drawing animation effects in the main view based on the dynamic effect parameters;
in step S807, the buffer is committed.
In the embodiment of the present application, before a process of performing view drawing based on OpenGL, some preparation works are further required, please refer to fig. 9, where fig. 9 exemplarily provides a flow chart of the preparation works before view drawing in the embodiment of the present application, including the following steps:
step S900, starting an application program, and acquiring dynamic effect parameters corresponding to each sub-view in the application program;
step S901, storing the obtained dynamic effect parameters in a configuration file according to the corresponding relation between the view and the dynamic effect parameters;
when an application program is started, obtaining dynamic effect parameters of a plurality of views contained in the application program from a server, namely the dynamic effect parameters corresponding to each view when moving relative to a terminal screen, wherein the dynamic effect parameters comprise rotation, translation, scaling and the like; and storing the obtained dynamic effect parameters in a configuration file in a corresponding relation between the view and the dynamic effect parameters, namely in a view _ information.config file in a key-value form.
Step S902, initializing a tool library (GLUT) library and a double buffer window for processing an OpenGL program;
illustratively, by calling the glutInit function, the address of the argc variable and the argv pointer in the main function (main) are passed in unmodified; the flag bits required by the current dynamic effect execution are determined, wherein the flag bits comprise a DOUBLE buffer window (GLUT _ DOUBLE), an RGBA color mode (GLUT _ RGBA), a DEPTH test (GLUT _ DEPTH) and a STENCIL buffer area (GLUT _ STENCIL), wherein the RGBA color mode is an essential parameter which indicates that an element background color is required during rendering, and in general, GLUT _ DOUBLE and GLUT _ RGBA are adopted.
Step S903, setting a monitoring function;
illustratively, calling glutReshapeFunc imports a function address sizeMove that listens for a change in screen width height, the incoming width height.
The embodiment of the application provides a method, a device and a storage medium for drawing a view, which are applied to the technical field of view processing; in the embodiment of the present application, when it is determined that a window of an application program changes, a window change event is transferred to a drawing function provided by OpenGL, and in a child thread, the drawing function is called to execute: acquiring a color space value from the rendering environment parameter, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer is cleared; and aiming at each sub-view, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color. When the size of a window of an application program changes, view drawing is performed in a child thread based on a drawing function provided by OpenGL, and the universality of the view drawing function when the window changes in a multi-platform system is solved through OpenGL, namely, different platform systems can realize view drawing based on the drawing function provided by OpenGL, the expandability of view drawing is realized, and the cost in view drawing processing is reduced; in the embodiment of the application, the view drawing is realized in the sub-thread, the influence of other operation instructions is avoided, and the view drawing efficiency is improved; and the concurrent processing capability of the GPU is utilized, the scheduling of the CPU to the interface display is reduced, and the performance in the dynamic effect process is improved.
Based on the same inventive concept, an embodiment of the present application further provides a view drawing apparatus, please refer to fig. 10, fig. 10 exemplarily provides a structural diagram of an apparatus 1000 for view drawing in an embodiment of the present application, and the apparatus 1000 includes:
a transfer unit 1001, configured to transfer a window change event to a drawing function provided by OpenGL when it is determined that a window of an application program changes;
the execution unit 1002 is configured to call a drawing function in a child thread, and perform the following operations:
acquiring a color space value from the rendering environment parameters, and setting the background color of each sub-view in the main view for displaying the page data on the window based on the color space value when the color buffer area is cleared, wherein the rendering environment parameters are the rendering environment parameters corresponding to the main view and are used for recording the parameters used when the initial rendering environment is created;
for each sub-view, respectively based on the obtained vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color,
and drawing each sub-view.
In one possible implementation manner, the execution unit 1002 is further configured to obtain a color space value from the rendering environment parameter, and when the color buffer is cleared, before setting the background color for each sub-view in the main view of the page data on the display window based on the color space value, to:
sending bitmap information of the main view to a server, and acquiring rendering environment parameters corresponding to the main view;
wherein the rendering environment parameter is determined by the server through at least one of the following modes:
determined based on a corresponding relationship between bitmap information and rendering environment parameters;
and determining the sub-rendering environment parameters corresponding to the obtained element information based on the setting rules corresponding to the element information contained in the bitmap information.
In one possible implementation manner, before obtaining a color space value from the rendering environment parameter and setting a background color for each sub-view in the main view of the page data on the display window based on the color space value when the color buffer is cleared, the execution unit 1002 is further configured to:
and setting the view successfully created by the GLKView as a sub-view, and initializing a color buffer of the sub-view.
In a possible implementation manner, before drawing each sub-view based on the obtained vertex parameter, the default coordinate point of each sub-view with respect to the main view, and the dynamic effect parameter of each sub-view, the execution unit 1002 is further configured to:
creating corresponding GLBatch based on an enumeration value type parameter which is acquired from the rendering environment parameter and used for creating GLBatch; acquiring a target shader from the shader set based on the shader array number acquired from the rendering environment parameters;
the execution unit 1002 is specifically configured to: drawing each sub-view through a target shader based on the acquired vertex parameters, the default coordinate points of each sub-view relative to the main view and the dynamic effect parameters of each sub-view;
the vertex parameters are introduced by a GLBatch calling start function Begin, the default coordinate points are introduced by a GLBatch calling vertex data copy function copyVertexData3f, and the dynamic effect parameters are obtained from a configuration file.
In a possible implementation manner, the execution unit 1002 is further configured to:
if the target shader is not obtained from the shader set, calling a GLSHADRAMager provided by OpenGL to create a shader, and taking the successfully created shader as the target shader;
and after the sub-view is determined to be completely drawn through the target shader, the target shader is stored in the shader set.
In a possible implementation manner, before drawing each sub-view based on the obtained vertex parameter, the default coordinate point of each sub-view relative to the main view, and the dynamic effect parameter of each sub-view, the execution unit 1002 is further configured to:
based on the main view, obtaining the dynamic effect parameters corresponding to each sub view in the main view from the corresponding relation between the view stored in the configuration file and the dynamic effect parameters, wherein the dynamic effect parameters are used for representing the animation mode of the corresponding sub view relative to the terminal screen;
the corresponding relation is obtained from the server when the application program is started, and the dynamic effect parameters comprise at least one of rotation parameters, translation parameters and scaling parameters.
In a possible implementation manner, if the dynamic effect parameters include a scaling parameter, the execution unit 1002 obtains the dynamic effect parameters corresponding to each sub-view in the main view from the corresponding relationship between the view and the dynamic effect stored in the configuration file, and specifically is configured to:
calling a custom scaling function to obtain a corresponding dynamic effect parameter; the user-defined scaling function is determined based on first description information of the variable parameters corresponding to the sub-views and second description information of the fixed parameters corresponding to the sub-views.
In a possible implementation manner, before calling the custom scaling function and obtaining the corresponding dynamic effect parameter, the execution unit 1002 is further configured to:
acquiring a change rule of a window relative to a terminal screen from rendering environment parameters;
and determining the relative position information of the window relative to the terminal screen based on the change rule, so as to display the page data on the window based on the dynamic effect parameter determined by the scaling function at the position of the terminal screen corresponding to the relative position information.
For convenience of description, the above submodels are described separately in terms of functional division into units (or modules). Of course, the functionality of the various elements (or modules) may be implemented in the same or in multiple pieces of software or hardware in practicing the present application.
Having described the method and apparatus for view rendering in accordance with the exemplary embodiments of the present application, an electronic device in accordance with another exemplary embodiment of the present application is described.
As will be appreciated by one skilled in the art, aspects of the present application may be embodied as a system, method or program product. Accordingly, various aspects of the present application may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.), or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
In one possible implementation, an electronic device provided by the embodiments of the present application may include at least a processor and a memory. Wherein the memory stores program code which, when executed by the processor, causes the processor to perform each of the steps of the method of view rendering of various exemplary embodiments of the present application.
An electronic device 1100 according to this embodiment of the present application is described below with reference to fig. 11. The electronic device 1100 of fig. 11 is only one example and should not bring any limitation to the functions and the scope of use of the embodiments of the present application.
As shown in fig. 11, the submodels of electronic device 1100 may include, but are not limited to: at least each processor 1101, at least each memory 1102, and a bus 1103 connecting different system submodels (including memory 1102 and processors 1101).
Bus 1103 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, and a processor or local bus using any of a variety of bus architectures.
The memory 1102 may include readable media in the form of volatile memory, such as Random Access Memory (RAM) 11021 and/or cache memory 11022, and may further include Read Only Memory (ROM) 11023.
Memory 1102 may also include a program/utility 11025 having a set (at least each) of program modules 11024, such program modules 11024 including, but not limited to: an operating system, each or some combination of application programs, other program modules, and program data may include an implementation of a network environment in each or some combination of these examples.
The electronic device 1100 may also communicate with each or more external devices 1104 (e.g., keyboard, pointing device, etc.), each or more devices that enable a viewer to interact with the electronic device 1100, and/or any devices (e.g., router, modem, etc.) that enable the electronic device 1100 to communicate with each or more other computing devices. Such communication may be through an input/output (V/O) interface 1105. Also, the electronic device 1100 may communicate with each or multiple networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) via the network adapter 1106. As shown in fig. 11, the network adapter 1106 communicates with other modules for the electronic device 1100 over the bus 1103. It should be understood that although not shown in FIG. 11, other hardware and/or software modules may be used in conjunction with the electronic device 1100, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAVD systems, tape drives, and data backup storage systems.
In some possible embodiments, various aspects of the method for drawing a view provided by the present application may also be implemented in the form of a program product including program code for causing an electronic device to perform the steps of the method for drawing a view according to various exemplary embodiments of the present application described above in this specification when the program product is run on the electronic device.
The program product may employ any combination of each or multiple readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having each or more wires, a portable disk, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The view-rendering program product of embodiments of the present application may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a computing device.
A readable signal medium may include a propagated data signal with readable program code embodied therein, for example, in baseband or as a sub-model of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with a command execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages.
It should be noted that although several units or sub-units of the apparatus are mentioned in the above detailed description, such division is merely exemplary and not mandatory. Indeed, according to embodiments of the present application, the feature vectors and functions of two or more units described above may be embodied in each unit. Conversely, the feature vectors and functions of each unit described above may be further divided into embodiments by a plurality of units.
Further, while the operations of the methods of the present application are depicted in the drawings in a particular order, this does not require or imply that these operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into each step execution, and/or each step broken into multiple step executions.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (10)

1. A method of view rendering, the method comprising:
when determining that the window of the application program changes, transmitting a window change event to a drawing function provided by an open graphics library OpenGL;
in the sub thread, calling the drawing function to execute the following operations:
acquiring a color space value from a rendering environment parameter, and setting a background color of each sub-view in a main view for displaying page data on the window based on the color space value when a color buffer area is cleared, wherein the rendering environment parameter is a rendering environment parameter corresponding to the main view and is used for recording a parameter used when an initialized rendering environment is created;
and for each sub-view, drawing each sub-view based on the acquired vertex parameter, the default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view in the corresponding background color.
2. The method of claim 1, wherein the obtaining a color space value from the rendering environment parameters and before setting a background color for displaying each sub-view in the main view of the page data on the window based on the color space value when the color buffer is cleared, further comprises:
sending bitmap information of the main view to a server, and acquiring rendering environment parameters corresponding to the main view;
wherein the rendering environment parameter is determined by the server by at least one of:
determined based on a corresponding relationship between the bitmap information and the rendering environment parameters;
and determining the sub-rendering environment parameters corresponding to the obtained element information based on the setting rules corresponding to the element information contained in the bitmap information.
3. The method of claim 1, wherein the obtaining a color space value from the rendering environment parameters and before setting a background color for displaying each sub-view in the main view of the page data on the window based on the color space value when the color buffer is cleared, further comprises:
setting the view successfully created by the graphics library view GLKView as the sub-view, and initializing the color buffer area of the sub-view.
4. The method of claim 1, wherein before the drawing the sub-views respectively based on the obtained vertex parameter, the default coordinate point of each of the sub-views relative to the main view, and the motion effect parameter of each of the sub-views, the method further comprises:
creating corresponding GLBatch based on an enumeration value type parameter which is acquired from the rendering environment parameter and used for creating batch processing container GLBatch; acquiring a target shader from a shader set based on the shader array number acquired from the rendering environment parameters;
the drawing the sub-views respectively based on the acquired vertex parameters, the default coordinate points of the sub-views relative to the main view and the dynamic effect parameters of the sub-views comprises:
drawing, by the target shader, each sub-view based on the acquired vertex parameters, the default coordinate point of each sub-view relative to the main view, and the dynamic effect parameters of each sub-view respectively;
the vertex parameters are transmitted by the GLBatch calling start function Begin, the default coordinate points are transmitted by the GLBatch calling vertex data copying function copyVertexData3f, and the dynamic effect parameters are obtained from a configuration file.
5. The method of claim 4, wherein the method further comprises:
if the target shader is not obtained from the shader set, calling a graphics library shader manager (GLSHAREDManager) provided by OpenGL to create a shader, and taking the successfully created shader as the target shader;
after it is determined that the drawing of the sub-view by the target shader is completed, storing the target shader into the shader set.
6. The method of any one of claims 1 to 4, wherein the dynamic effect parameter is determined by:
based on the main view, obtaining the dynamic effect parameters corresponding to each sub-view in the main view from the corresponding relation between the view stored in the configuration file and the dynamic effect parameters, wherein the dynamic effect parameters are used for representing the animation mode of the corresponding sub-view relative to the terminal screen;
the corresponding relation is obtained from a server when the application program is started, and the dynamic effect parameters comprise at least one of rotation parameters, translation parameters and scaling parameters.
7. The method according to claim 6, wherein if the dynamic effect parameters include a scaling parameter, the obtaining dynamic effect parameters corresponding to each sub-view in the main view from the correspondence between the view stored in the configuration file and the dynamic effect includes:
calling a self-defined scaling function to obtain a corresponding dynamic effect parameter; the user-defined scaling function is determined based on first description information of a variation parameter corresponding to the sub-view and second description information of a fixed parameter corresponding to the sub-view.
8. The method of claim 6, wherein said invoking the custom scaling function, prior to obtaining the corresponding dynamic effect parameter, further comprises:
acquiring a change rule of the window relative to a terminal screen from the rendering environment parameter;
and determining relative position information of the window relative to the terminal screen based on the change rule, so as to display page data on the window based on the dynamic effect parameters determined by the scaling function at the position of the terminal screen corresponding to the relative position information.
9. An apparatus for view rendering, the apparatus comprising:
the transfer unit is used for transferring the window change event to a drawing function provided by an open graphics library OpenGL when determining that the window of the application program changes;
the execution unit is used for calling the drawing function in the sub thread and executing the following operations:
acquiring a color space value from a rendering environment parameter, and setting a background color of each sub-view in a main view for displaying page data on the window based on the color space value when a color buffer is cleared, wherein the rendering environment parameter is a rendering environment parameter corresponding to the main view and is used for recording a parameter used when an initialized rendering environment is created;
and for each sub-view, in a corresponding background color, respectively drawing each sub-view based on the acquired vertex parameter, a default coordinate point of each sub-view relative to the main view and the dynamic effect parameter of each sub-view.
10. A computer-readable storage medium, characterized in that the computer-readable storage medium stores a computer program which, when being executed by a processor, carries out the method steps of any one of claims 1 to 8.
CN202110944931.7A 2021-08-17 2021-08-17 View drawing method and device and storage medium Pending CN115705668A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110944931.7A CN115705668A (en) 2021-08-17 2021-08-17 View drawing method and device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110944931.7A CN115705668A (en) 2021-08-17 2021-08-17 View drawing method and device and storage medium

Publications (1)

Publication Number Publication Date
CN115705668A true CN115705668A (en) 2023-02-17

Family

ID=85180555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110944931.7A Pending CN115705668A (en) 2021-08-17 2021-08-17 View drawing method and device and storage medium

Country Status (1)

Country Link
CN (1) CN115705668A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116843540A (en) * 2023-08-31 2023-10-03 南京砺算科技有限公司 Graphics processor and graphics processing apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116843540A (en) * 2023-08-31 2023-10-03 南京砺算科技有限公司 Graphics processor and graphics processing apparatus
CN116843540B (en) * 2023-08-31 2024-01-23 南京砺算科技有限公司 Graphics processor and graphics processing apparatus

Similar Documents

Publication Publication Date Title
WO2022116759A1 (en) Image rendering method and apparatus, and computer device and storage medium
US9928637B1 (en) Managing rendering targets for graphics processing units
CN107154063B (en) Method and device for setting shape of image display area
US20100289804A1 (en) System, mechanism, and apparatus for a customizable and extensible distributed rendering api
US11113876B2 (en) Method for displaying a 3D scene graph on a screen
EP2245598B1 (en) Multi-buffer support for off-screen surfaces in a graphics processing system
US10002403B2 (en) Command remoting
US20200219322A1 (en) Snapping, virtual inking, and accessibility in augmented reality
WO2022252547A1 (en) Rendering method, device and system
CN112316433B (en) Game picture rendering method, device, server and storage medium
US20200242726A1 (en) Task Execution on a Graphics Processor Using Indirect Argument Buffers
CN114972607B (en) Data transmission method, device and medium for accelerating image display
WO2023134277A1 (en) Visible element determination method and apparatus, and storage medium and electronic device
CN111679738A (en) Screen switching method and device, electronic equipment and storage medium
CN113034653A (en) Animation rendering method and device
JP7160495B2 (en) Image preprocessing method, device, electronic device and storage medium
CN115705668A (en) View drawing method and device and storage medium
CN117788609A (en) Method, device, equipment and storage medium for picking up interface graphic elements
EP4258218A1 (en) Rendering method, device, and system
WO2023029424A1 (en) Method for rendering application and related device
US20240242403A1 (en) System and Method for Creating a Design Tool Using a Clockwise Fill Rule
WO2024199097A1 (en) Rendering method and corresponding device
WO2024087971A1 (en) Method and apparatus for image processing, and storage medium
CN114494544A (en) Ghost generating method and device, storage medium and electronic equipment
CN116820457A (en) OpenGL-based lightweight UI operation method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination