Image processing method and device, storage medium and electronic equipment
By decomposing the scene model into tetrahedrons and determining the rendering priority based on the level of interest, the problem of low rendering efficiency of 3D models in games is solved, achieving efficient rendering and a high-quality visual experience, and enhancing the immersion of the game.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHENZHEN WANGYU COMPUTER NETWORK CO LTD
- Filing Date
- 2024-10-29
- Publication Date
- 2026-05-01
AI Technical Summary
The rendering efficiency of 3D models in the game is low, resulting in unsatisfactory rendering effects or uneven resource allocation. Furthermore, the efficiency of optimizing rendering after rendering failure is low, leading to serious waste of resources.
By obtaining the scene model to be rendered and the interest levels of different regions in the target scene, the scene model is decomposed into tetrahedrons. The rendering priority is determined based on the interest level of the region where the interest-priority surface is located, and the interest-priority surfaces are added to the rendering queue in sequence for rendering.
It improves rendering efficiency, ensures that areas of player focus and interaction are rendered with high priority, provides a high-quality visual experience, enhances game immersion and realism, and reduces unnecessary rendering calculations.
Smart Images

Figure CN121962374A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computers, and more specifically, to an image processing method and apparatus, a storage medium, and an electronic device. Background Technology
[0002] With the rapid development of computer technology and the increasing demands for immersive experiences, competition in the gaming industry is becoming increasingly fierce, and the rendering effects of games are receiving more and more attention. High-precision models and complex scenes can not only attract more players but also enhance their immersion. However, choosing the right rendering technology for different scenes and models to achieve high-efficiency and high-performance rendering is a major challenge for game designers. Due to the varying complexity and level of detail in scenes, different scenes require different rendering strategies and hardware resources. Furthermore, if the rendering of a 3D model in a game fails and optimization fails, it can lead to missing special effects. Reconstructing the rendering process can result in low rendering efficiency or wasted resources, leading to unsatisfactory rendering effects or uneven resource allocation.
[0003] There is currently no effective solution to the above problems. Summary of the Invention
[0004] This application provides an image processing method and apparatus, a storage medium and an electronic device to at least solve the technical problem of low rendering efficiency of three-dimensional models in the related art.
[0005] According to one aspect of the embodiments of this application, an image processing method is provided, comprising: acquiring a scene model to be rendered in a target scene and interest levels corresponding to different regions in the target scene, wherein the interest level is used to represent the degree of user attention to the corresponding region; decomposing the scene model into at least one tetrahedron, determining an interest-priority surface based on the at least one tetrahedron, wherein the position of the interest-priority surface is determined by target control points and a pre-set weight matrix, the target control points are determined by the vertices of the target tetrahedron, and the at least one tetrahedron includes the target tetrahedron; determining the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and sequentially adding the interest-priority surface to a rendering queue corresponding to the rendering priority; and rendering the target scene sequentially according to the rendering queue to display the target scene.
[0006] According to another aspect of the embodiments of this application, an image processing apparatus is also provided, comprising: an acquisition module, configured to acquire a scene model to be rendered in a target scene and interest levels corresponding to different regions in the target scene, wherein the interest level is used to represent the degree of user attention to the corresponding region; a decomposition module, configured to decompose the scene model into at least one tetrahedron, and determine an interest-priority surface based on the at least one tetrahedron, wherein the position of the interest-priority surface is determined by a target control point and a pre-set weight matrix, the target control point is determined by the vertices of the target tetrahedron, and the at least one tetrahedron includes the target tetrahedron; a determination module, configured to determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and sequentially add the interest-priority surface to a rendering queue corresponding to the rendering priority; and a rendering module, configured to render sequentially according to the rendering queue to display the target scene.
[0007] Optionally, the device is used to decompose the scene model into at least one tetrahedron in the following manner, and determine the interest-priority surface based on the at least one tetrahedron: perform a meshing operation on the scene model to obtain the at least one tetrahedron; perform an identification analysis operation on each tetrahedron in the at least one tetrahedron to determine the vertex corresponding to each tetrahedron; and determine the interest-priority surface based on the vertex corresponding to each tetrahedron.
[0008] Optionally, the apparatus is configured to determine the interest-priority surface based on the vertices corresponding to each tetrahedron in the following manner: obtaining a predetermined weight matrix, wherein an element in the weight matrix represents the contribution weight of a vertex of the target tetrahedron to a control point, the target tetrahedron representing any tetrahedron among the at least one tetrahedron associated with any interest-priority surface; determining the position of each target control point using linear interpolation based on the vertex positions of the target tetrahedron; determining the control weight corresponding to each target control point based on the distance between the position of each target control point and the center of the target tetrahedron; and determining the interest-priority surface based on the position and control weight of each target control point, wherein the interest-priority surface is represented as a polynomial including at least two three-dimensional spatial parameters.
[0009] Optionally, the apparatus is further configured to: determine the normal data corresponding to the interest-first surface based on the polynomial corresponding to the interest-first surface; and determine the lighting model used in the rendering process of the interest-first surface based on the normal data, wherein the lighting model includes at least one of the following: ambient light coefficient, diffuse reflection coefficient, and specular reflection coefficient.
[0010] Optionally, the device is further configured to: acquire scene information and material properties of the target scene, wherein the scene information includes the size and position of the interest-priority surface; and adjust the shading parameters of the target scene according to the lighting model, the scene information, and the material properties.
[0011] Optionally, the apparatus is further configured to: decompose the scene model into at least one tetrahedron, determine the interest-first surface based on the at least one tetrahedron, obtain the size and position of the interest-first surface; and assign a corresponding level of detail to the interest-first surface based on the size and position, wherein the level of detail is used to indicate the complexity of the surface equation corresponding to the interest-first surface and the rendering accuracy of the interest-first surface.
[0012] Optionally, the device is used to obtain the scene model to be rendered in the target scene and the interest level corresponding to different areas in the target scene in the following manner: obtaining the scene model to be rendered in the target scene; performing a division operation on the target scene to determine a set of interactive areas; obtaining the number of interactions with the target account within each interactive area in the set of interactive areas during a historical period; and determining the interest level corresponding to each interactive area in the set of interactive areas based on the number of interactions.
[0013] Optionally, the device is configured to determine the interest level corresponding to each interactive area in the set of interactive areas based on the number of interactions in the following manner: obtaining the number of first accounts of the target account in the first interactive area and the number of second accounts of the target account in the second interactive area during the historical period; determining a first interaction frequency based on the number of first interactions and the number of first accounts in the first interactive area during the historical period; determining a second interaction frequency based on the number of second interactions and the number of second accounts in the second interactive area during the historical period; and determining a first interest level corresponding to the first interactive area and a second interest level corresponding to the second interactive area based on the first interaction frequency and the second interaction frequency.
[0014] Optionally, the device is configured to determine a first interest level corresponding to the first interaction area and a second interest level corresponding to the second interaction area based on the first interaction frequency and the second interaction frequency in the following manner: obtaining a first visual rating parameter corresponding to the first interaction area and a second visual rating parameter corresponding to the second interaction area; performing a weighted operation on the first interaction frequency and the first visual rating parameter based on a preset ratio to obtain the first interest level; and performing a weighted operation on the second interaction frequency and the second visual rating parameter based on the preset ratio to obtain the second interest level.
[0015] Optionally, the device is configured to obtain a first visual rating parameter corresponding to the first interactive area and a second visual rating parameter corresponding to the second interactive area in the following manner: obtaining the rating factor weights set for a set of rating factors; determining the first visual rating parameter based on the rating factor weights and the set of rating factors corresponding to the first interactive area in the historical period; and determining the second visual rating parameter based on the rating factor weights and the set of rating factors corresponding to the second interactive area in the historical period.
[0016] Optionally, the device is configured to determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and to add the interest-priority surface sequentially to the rendering queue corresponding to the rendering priority in the following manner: comparing the interest level associated with the region where the interest-priority surface is located with a preset threshold to obtain a target comparison result, wherein the preset threshold is used to indicate whether rendering is required, and the interest level is allowed to be dynamically updated when the behavior pattern of the target account changes; if the target comparison result indicates that the interest level is greater than the preset threshold, the rendering priority is determined to require rendering, and the interest-priority surface is added to the rendering priority queue.
[0017] Optionally, the device is configured to determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and to add the interest-priority surface sequentially to the rendering queue corresponding to the rendering priority in the following manner: comparing the interest level associated with the region where the interest-priority surface is located with multiple preset thresholds to obtain multiple target comparison results, wherein different preset thresholds correspond to different rendering priorities; when the target comparison result indicates that the interest level is greater than a first preset threshold, determining the rendering priority as a first rendering priority and adding the interest-priority surface to a first rendering priority queue, wherein the multiple preset thresholds include the first preset threshold; when the target comparison result indicates that the interest level is greater than a second preset threshold, determining the rendering priority as a second rendering priority and adding the interest-priority surface to a second rendering priority queue, wherein the multiple preset thresholds include the first preset threshold, the second preset threshold is less than the first preset threshold, the second rendering priority is lower than the first rendering priority, the rendering order of the second rendering priority queue is later than that of the first rendering priority queue, and / or the rendering accuracy of the second rendering priority queue is lower than that of the first rendering priority queue.
[0018] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer program, and the computer program is configured to execute the above-described image processing method when it is run.
[0019] According to another aspect of the embodiments of this application, a computer program product or computer program is provided, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the image processing method described above.
[0020] According to another aspect of the embodiments of this application, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to execute the above-described image processing method through the computer program.
[0021] In this embodiment, the scene model to be rendered in the target scene and the interest levels corresponding to different regions in the target scene are obtained. The scene model is decomposed into at least one tetrahedron. Interest priority surfaces are determined based on at least one tetrahedron. The rendering priority of the interest priority surfaces is determined based on the interest levels associated with the regions where the interest priority surfaces are located. The interest priority surfaces are added to the rendering queue corresponding to the rendering priority in sequence. The target scene is displayed by rendering according to the rendering queue in sequence. By prioritizing the processing of regions of interest to the user and intelligently allocating rendering resources, unnecessary rendering calculations are reduced, thereby improving rendering efficiency. This ensures that the regions that players are most likely to pay attention to and interact with are rendered with high priority. While maintaining high performance, it also provides players with a high-quality visual experience, enhancing the immersion and realism of the game world. This solves the technical problem of low rendering efficiency of 3D models in related technologies. Attached Figure Description
[0022] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0023] Figure 1 This is a schematic diagram of an application environment for an optional image processing method according to an embodiment of this application;
[0024] Figure 2 This is a schematic flowchart of an optional image processing method according to an embodiment of this application;
[0025] Figure 3This is a schematic diagram of an optional image processing method according to an embodiment of this application;
[0026] Figure 4 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0027] Figure 5 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0028] Figure 6 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0029] Figure 7 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0030] Figure 8 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0031] Figure 9 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0032] Figure 10 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0033] Figure 11 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0034] Figure 12 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0035] Figure 13 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0036] Figure 14 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0037] Figure 15 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0038] Figure 16 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0039] Figure 17 This is a schematic diagram of another optional image processing method according to an embodiment of this application;
[0040] Figure 18This is a schematic diagram of the structure of an optional image processing apparatus according to an embodiment of this application;
[0041] Figure 19 This is a schematic diagram of the structure of an optional image processing product according to an embodiment of this application;
[0042] Figure 20 This is a schematic diagram of the structure of an optional electronic device according to an embodiment of this application. Detailed Implementation
[0043] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0044] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0045] If this application requires the collection of object data (such as user data), a prompt interface or pop-up window will be displayed before and during the collection process. This prompt interface or pop-up window is used to inform the user that certain data is being collected. The data acquisition steps will only begin after the user confirms the prompt interface or pop-up window; otherwise, the process will end. Furthermore, the acquired user data will be used in reasonable and legal scenarios or for reasonable purposes. Optionally, in scenarios where user data needs to be used but user authorization has not been obtained, authorization can be requested from the user, and the user data will be used only after authorization is granted. Moreover, the use of user data in this application complies with relevant laws and regulations, meaning that the use of user data is reasonable and legal.
[0046] First, some nouns or terms that appear in the description of the embodiments of this application shall be interpreted as follows:
[0047] In computer graphics, surfaces are commonly used to model the surfaces of 3D objects, for example, by using polygonal meshes (composed of multiple vertices, edges, and faces) to approximate the surface. Rendering a surface involves calculating how light interacts with it, including lighting models, texture mapping, and shading. In 3D modeling and animation software, surfaces can be used to create complex shapes and character models. Deformation and animation of surfaces can be achieved by adjusting control points or using skeletal animation systems.
[0048] A tetrahedron is a polyhedron with four triangular faces, widely used in mathematics, physics, engineering, and computer graphics. A tetrahedron has four faces, each a triangle, six edges (each edge shared by two vertices), and four vertices (each connected by three edges). The volume of a tetrahedron can be calculated using its base area and height. In computer graphics, tetrahedrons can be used to construct more complex 3D models or as the basic unit for subdividing surfaces.
[0049] The present application will be described below with reference to embodiments:
[0050] According to one aspect of the embodiments of this application, an image processing method is provided. Optionally, in the embodiments of this application, the above-described image processing method can be applied to, for example... Figure 1 The hardware environment shown consists of server 101 and terminal device 103. For example... Figure 1As shown, server 101 is connected to terminal 103 via a network and can be used to provide services to terminal devices or applications 107 installed on terminal devices. Applications can be video applications, instant messaging applications, browser applications, educational applications, game applications, etc. Database 105 can be set up on the server or independently of the server to provide data storage services for server 101, such as a game data storage server. The network mentioned above can include, but is not limited to, wired networks and wireless networks. The wired network includes local area networks, metropolitan area networks, and wide area networks. The wireless network includes Bluetooth, WIFI, and other networks that enable wireless communication. Terminal device 103 can be a terminal configured with an application, and can include, but is not limited to, at least one of the following: mobile phones (such as Android phones, iOS phones, etc.), laptops, tablets, handheld computers, MID (Mobile Internet Devices), PADs, desktop computers, smart TVs, smart voice interaction devices, smart home appliances, vehicle terminals, aircraft, virtual reality (VR) terminals, augmented reality (AR) terminals, mixed reality (MR) terminals, and other computer devices. The server mentioned above can be a single server, a server cluster composed of multiple servers, or a cloud server.
[0051] Combination Figure 1 As shown, the above image processing method can be executed by an electronic device, which can be a terminal device or a server. The above image processing method can be implemented by the terminal device or the server respectively, or by the terminal device and the server together.
[0052] The above is merely an example, and this embodiment does not impose any specific limitations.
[0053] In this embodiment, the electronic device can acquire a scene model to be rendered in the target scene, decompose the scene model into at least one tetrahedron, determine interest-priority surfaces based on the at least one tetrahedron, determine the rendering priority of the interest-priority surfaces based on the interest level associated with the region where the interest-priority surfaces are located, and add the interest-priority surfaces sequentially to the rendering queue corresponding to the rendering priority. Rendering is then performed sequentially according to the rendering queue to display the target scene, achieving automatic rendering modeling and improving the rendering efficiency of the scene model. Specifically, the electronic device can acquire the scene model from local storage, or it can acquire the scene model from any business device. This application can be applied to any application with 3D rendering capabilities, such as game applications (including but not limited to online games or virtual reality games) and media applications (such as applications that can be used to display or generate 3D videos), etc., without limitation.
[0054] Alternatively, as an alternative implementation method, such as Figure 2 As shown, the above image processing method includes:
[0055] S202, obtain the scene model to be rendered in the target scene and the interest level corresponding to different areas in the target scene, where the interest level is used to represent the degree of user attention to the corresponding area;
[0056] Optionally, in this embodiment, the application can be applied to various scenarios such as games and videos. The target scenario mentioned above may include the scene model to be rendered, which may include, but is not limited to, virtual characters, virtual props, virtual equipment, virtual vehicles, virtual animals, virtual plants, virtual walls, etc., and the scene model is related to the specific application scenario. For example, if the application scenario is a game, the target scenario is a virtual scene in the game, which may include, but is not limited to, the scene corresponding to the game task.
[0057] It's important to note that scene models are typically created using 3D modeling software and can be static (such as buildings and terrain) or dynamic (such as characters and vehicles). These models usually exist in the form of triangular meshes, each consisting of vertices, edges, and faces. In game engines, these models can be further processed to meet the demands of real-time rendering.
[0058] Optionally, in this embodiment, the aforementioned interest level can be defined based on user behavior data. For example, it can be determined which areas receive more attention by analyzing player gaze detection, click heatmaps, or dwell time in the game. This data can help developers understand user preferences and adjust game content accordingly.
[0059] Optionally, in this embodiment, the scene information corresponding to the scene model includes lighting, camera position, and environmental settings, which are crucial for the rendering process. By combining interest levels, developers can apply different rendering techniques and levels of detail to different areas. For example, for areas that users pay more attention to, higher texture resolution and more complex lighting effects can be provided, while for areas that users pay less attention to, the detail can be reduced to save resources.
[0060] It should be noted that this application can dynamically adjust rendering parameters at runtime based on the level of interest. For example, for areas of high interest, details can be increased, shadow quality improved, and lighting effects enhanced. For areas of low interest, details can be reduced to optimize performance and maintain a smooth frame rate.
[0061] Furthermore, this application can utilize AI and machine learning algorithms to analyze user-uploaded data and predict interest levels for different areas. These algorithms can help automate the adjustment process, making scene rendering more aligned with user expectations and needs. While real-time rendering is common in games, offline rendering techniques can also be combined to pre-render high-quality images or video clips of areas of high interest, which can then be used as background or cutscenes during game runtime.
[0062] For example, the above-described process of obtaining the scene model to be rendered and the interest levels corresponding to different regions in the target scene can be applied to modern computer vision and augmented reality applications. In modern game development, optimizing rendering performance and improving user experience are crucial. Therefore, it is necessary to effectively manage scene models and interest levels in the game scene. Interest levels help identify areas of interest to the user, thereby prioritizing the rendering of these areas and improving rendering efficiency. Below are two specific implementation examples, each targeting a different application scenario.
[0063] In one exemplary embodiment, Figure 3 This is a schematic diagram of an optional image processing method according to an embodiment of this application, such as... Figure 3 As shown, the process of obtaining interest levels based on user-uploaded data analysis can include, but is not limited to, the following steps:
[0064] S302, through an in-game data collection module, records every action a player takes in the game scene, including movement, observation, and interaction. This can include, but is not limited to, statistics on the time a player spends in different areas, the frequency of perspective changes, and the number of interactions.
[0065] S304 analyzes the collected user-uploaded data to identify the areas players are most interested in. This can include, but is not limited to, calculating the interest level of each area using time weighting and interaction weighting, forming an interest level matrix.
[0066] S306 maps the interest level matrix to various regions in the game scene, sets thresholds for the interest levels to determine areas requiring high-priority rendering. This can include, but is not limited to, normalizing the interest levels to ensure their values are between 0 and 1, facilitating subsequent rendering optimization.
[0067] S308 determines the scene model or surface associated with the scene model to be rendered based on the set interest level threshold, and loads it into the rendering engine in preparation for rendering.
[0068] S310, during game runtime, periodically updates user-uploaded data and interest levels, dynamically adjusting the scene model to be rendered or the surfaces associated with that scene model. This can include, but is not limited to, monitoring player behavior changes in real time to ensure the rendering engine always renders the areas the user is most interested in.
[0069] In another exemplary embodiment, taking the interest level acquisition process based on scene features and AI algorithms as an example, Figure 4 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 4 As shown, the steps may include, but are not limited to, the following:
[0070] S402 uses image processing techniques and computer vision algorithms to analyze the features (such as color, lighting, complexity, etc.) of various regions in a game scene. This can include, but is not limited to, combining important elements within the scene (such as mission objectives, enemy positions, etc.) to assign an initial interest score to each region.
[0071] S404 involves collecting a large amount of player behavior data in different scenarios to build a machine learning model. This can include, but is not limited to, using reinforcement learning algorithms to allow the model to learn player interests and preferences, train the model to predict the impact of different scenario features on player interests, and thus generate a more accurate interest level.
[0072] S406 inputs the extracted scene features into the trained AI model to generate an interest level for each region. This can include, but is not limited to, setting rendering priorities for different regions based on the interest levels output by the model, forming a dynamic rendering strategy.
[0073] S408 filters scene models to be rendered based on calculated interest levels. Models in high-interest-level areas will be loaded and rendered first. This can be achieved, but is not limited to, passing the selected models to the rendering engine for processing through a scene management system.
[0074] The S410 continuously adjusts its AI model by acquiring real-time player feedback and behavioral data during gameplay. This includes, but is not limited to, periodically updating scene features and interest level calculation methods to ensure that rendering strategies align with player interests and enhance the user experience.
[0075] The above is merely an example, and this application does not impose any specific limitations.
[0076] S204, decompose the scene model into at least one tetrahedron, and determine the interest priority surface based on at least one tetrahedron, wherein the position of the interest priority surface is determined by the target control point and a pre-set weight matrix, the target control point is determined by the vertices of the target tetrahedron, and at least one tetrahedron includes the target tetrahedron;
[0077] Optionally, in this embodiment, the aforementioned scene model can be understood as a virtual representation of objects or environments constructed in three-dimensional space, including but not limited to buildings, terrain, characters, vehicles, etc. Scene models typically consist of multiple geometric shapes and are used in applications such as games, movies, and simulations. For example, in game rendering, a scene model refers to the three-dimensional geometric data that constitutes all visible objects in the game world, including characters, buildings, props, etc. In a first-person shooter game, all objects within the player's environment, such as walls, props, and enemy characters, are part of the scene model.
[0078] Optionally, in this embodiment, the aforementioned tetrahedron may include, but is not limited to, a polyhedron composed of four triangular faces, six edges, and four vertices. It is one of the simplest polyhedra in three-dimensional space and can be used to construct more complex three-dimensional meshes. A tetrahedron is the smallest unit into which a scene model is decomposed; each tetrahedron consists of four vertices and four triangular faces, used to simulate complex geometric shapes. For example, in medical visualization, the vascular network of human organs can be modeled using tetrahedral meshes to facilitate blood flow analysis. In a game's physics destruction system, walls may be decomposed into multiple tetrahedrons. When a player shoots, the system calculates which tetrahedrons need to be removed or modified to simulate the effect of a wall being hit.
[0079] Optionally, in this embodiment, the aforementioned interest-priority surface can be understood as the surface of the area in the scene that the user is most likely to be interested in. In games or simulations, this may be the surface of the area that the player is most likely to focus on or interact with, or the area that has a significant impact on the game's progress; these areas will be given a higher rendering priority. For example, in an adventure game, the surface of a chest containing treasure might be an interest-priority surface because it is the focus of the player's exploration and interaction.
[0080] Optionally, in this embodiment, the aforementioned target control points can be understood as points used to define and adjust the shape of a surface. In surface modeling, the position and number of control points can affect the shape of the surface, thereby creating the desired shape. During rendering, the aforementioned target control points may include, but are not limited to, points used to adjust and define the shape of an interest-priority surface. The position of these points affects the final appearance of the surface. For example, when designing a car's exterior using Bézier surfaces, designers adjust control points to create smooth body curves. In character facial animation, control points can be used to adjust facial expressions, such as controlling the upturn of the corners of the mouth or the widening of the eyes, to express the character's emotions.
[0081] Optionally, in this embodiment, the weight matrix is a mathematical tool used to store and process the degree of influence of control points on the shape of the interest-priority surface. Each control point has a corresponding weight, which determines its contribution to the surface shape. In computer graphics, it can be used to determine the degree of influence of control points on the surface shape. For example, in facial animation, the weight matrix can be used to control how different facial muscles affect facial expressions to achieve more realistic expression changes. In terrain generation, the weight matrix can be used to control the influence of different control points on terrain height, thereby creating more realistic and diverse terrain.
[0082] It's important to note that after decomposing a scene model into tetrahedra, each tetrahedron has four vertices. The vertices of a target tetrahedron are the four corner points that constitute it; these points define the target tetrahedron's spatial location and shape. For example, when building a 3D model of a room, each tetrahedron's vertex could represent a corner of the room or a point where a wall intersects the floor. When tetrahedring a scene model, at least one tetrahedron is selected or marked as the target tetrahedron; this tetrahedron may contain or be close to an area of interest to the user. For instance, in a virtual environment simulating heart surgery, the heart model might be decomposed into many tetrahedra, where the tetrahedron representing key parts of the heart can be marked as the target tetrahedron for special focus during the surgical simulation. In a rendered scene of a building's interior, the vertices of the tetrahedrons that form the walls determine the wall's thickness and position. In a horror game, when a player enters a room, the system may identify a tetrahedron in the room that contains a key puzzle item. This tetrahedron is then marked as the target tetrahedron, and the system will prioritize processing and rendering this area to ensure that the details and texture of the item are fully displayed.
[0083] It should be noted that this application decomposes the scene model into tetrahedrons, determines interest-priority surfaces based on these tetrahedrons, and renders these surfaces with high priority in the game engine. In this way, engaging key areas can be created in the game, enhancing the player's gaming experience.
[0084] In one exemplary embodiment, Figure 5 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 5 As shown, suppose we are developing a virtual reality game where there is an ancient ruin that players need to explore and find hidden treasure. To ensure that key areas within the ruins, such as the altar containing the treasure, are rendered with high detail to attract the player's attention, the following steps may be taken, including but not limited to:
[0085] S502, the scene model is decomposed into tetrahedrons. First, the scene model of the ruins needs to be decomposed into tetrahedrons. Figure 6 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 6 As shown, this can be achieved through the following technical steps:
[0086] S502-1 generates point cloud data of the ruins using 3D scanning technology or manual modeling.
[0087] S502-2 performs Delaunay triangulation on the point cloud to generate a tetrahedral mesh. Each tetrahedron is defined by four vertices, which are points in the original point cloud.
[0088] S502-3 optimizes the generated tetrahedral mesh by removing unnecessary tetrahedra, ensuring mesh quality and performance.
[0089] By decomposing the scene model into tetrahedrons through the above steps, a relic mesh composed of tetrahedrons can be obtained. Each tetrahedron is a part of the relic and can be processed and rendered separately.
[0090] S504, determine the interest-first surface. Next, we need to determine the interest-first surface, that is, the surface of the altar. Figure 7 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 7 As shown, this can be achieved through the following technical steps:
[0091] S504-1 identifies the tetrahedron surrounding the altar. This can be achieved through spatial querying or by tagging the point cloud near the altar.
[0092] S504-2, select or calculate target control points from the vertices of these target tetrahedrons. These control points will be used to define the shape of the interest-priority surface.
[0093] S504-3 assigns a weight to each target control point, reflecting the degree of influence each control point has on the shape of the interest-priority surface. The weights can be set according to the geometry of the altar and design requirements.
[0094] By determining the interest-first surfaces through the above steps, we can obtain the position and shape of the interest-first surfaces. These surfaces are defined by the target control points and the weight matrix, and can accurately represent the surface of the altar.
[0095] S506, rendering of interest-priority surfaces. Finally, these interest-priority surfaces need to be rendered in the game engine. Figure 8 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 8 As shown, this can be achieved through the following technical steps:
[0096] S506-1 uses target control points and a weight matrix to reconstruct interest-priority surfaces using algorithms such as NURBS (Non-Uniform Rational B-Splines) or other surface reconstruction algorithms.
[0097] S506-2 dynamically adjusts the LOD (Level of Detail) of the altar surface based on the distance between the player and the altar, ensuring high-detail rendering as the player approaches.
[0098] S506-3 applies high dynamic range lighting and advanced shading techniques, such as subsurface scattering, to interest-priority surfaces to enhance visual effects.
[0099] By rendering interest-priority surfaces, the altar surface in the game can be rendered with high priority and high detail, attracting the player's attention and providing an immersive exploration experience. Meanwhile, LOD adjustments and advanced lighting techniques ensure the game's performance and visual quality.
[0100] It should be noted that after determining the interest-priority surface, further optimization and refinement may be needed to ensure the surface quality and visual effect. This may involve fine-tuning the control points or adjusting the weight matrix. For example, this applies to applications of real-time rendering versus offline rendering.
[0101] In games or virtual environments, real-time rendering and offline rendering are two distinct technologies. Real-time rendering emphasizes interactivity and the ability to render images quickly, while offline rendering can produce higher-quality images. When determining the interest-priority surface, the appropriate rendering technology can be selected based on the needs of the application scenario.
[0102] S206, determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and add the interest-priority surfaces to the rendering queue corresponding to the rendering priority in sequence.
[0103] Optionally, in embodiments of this application, the aforementioned rendering priority may include, but is not limited to, representing the order in which different objects or regions are processed during the rendering process. High-priority objects are rendered first to ensure their visual quality and detail. For example, in a first-person shooter game, enemies and items near the player's line of sight may have a higher rendering priority because these are the objects the player is most directly focused on.
[0104] A rendering queue can be, but is not limited to, a data structure used to store objects or regions that are about to be rendered. Objects are added to different queues based on their rendering priority. For example, in a real-time strategy game, the game engine might maintain multiple rendering queues, such as one for rendering distant landscapes and another for rendering nearby units and buildings. The process of adding objects to a rendering queue can be understood as adding them to the appropriate queue based on their rendering priority. This ensures that the most important objects are processed first during the rendering process. For example, in a racing game, key areas on the track, such as upcoming turns or the finish line, might be added to a high-priority rendering queue to ensure that these areas are rendered with high resolution and detail as the player approaches.
[0105] Therefore, in game rendering, the regions that the player is most likely to be interested in (interest-priority surfaces) are identified, and their interest levels are determined based on their relevance to the player's tasks or behaviors. Then, based on this interest level, a rendering priority is assigned to each interest-priority surface. Finally, these interest-priority surfaces are added sequentially to the corresponding rendering queues according to their rendering priorities to ensure that the regions the player is most interested in receive the best rendering results during game runtime. This process helps optimize rendering performance and enhances the player's gaming experience.
[0106] For example, in a game rendering scene, the rendering priority is determined based on the interest level associated with the region where the interest-priority surface is located, and this priority is added to the corresponding rendering queue. This collectively implements a system that dynamically adjusts the rendering priority based on player interests and game progress. This system can optimize the use of rendering resources, improve the quality of key visual elements, and thus enhance the player's gaming experience.
[0107] In one exemplary embodiment, Figure 9 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 9 As shown, the following steps may be used, but are not limited to:
[0108] S902 evaluates the interest levels of interest-priority surfaces using in-game task data and player behavior analysis to determine which areas are associated with the current task or player interests. Each interest-priority surface is assigned an interest level based on its proximity to the task objective, player gaze detection data, or historical interaction frequency.
[0109] In this way, the game can dynamically adjust the allocation of rendering resources to ensure that areas most relevant to the player's current goal or interest receive higher rendering quality. For example, if the player is looking for a hidden switch, the surface containing that switch will receive a higher level of interest and rendering priority.
[0110] S904 determines the rendering priority of interest-priority surfaces. Based on the level of interest, a rendering priority is assigned to each interest-priority surface. Preset rules or algorithms, such as multiplying the interest level by a weighting factor, can be used to determine the final rendering priority. Interest-priority surfaces are then sorted according to their rendering priority to ensure that higher-priority surfaces are processed first.
[0111] This approach ensures that the game's rendering system can dynamically adjust the rendering order based on player behavior and game progress. For example, in a combat scene, the models of the enemies the player is currently facing and the surrounding environment will receive higher rendering priority to ensure that these key visual elements are rendered at the highest quality.
[0112] S906, add the interest-priority surface to the rendering queue, creating multiple rendering queues, each corresponding to a different rendering priority. Based on the rendering priority determined in step S904, add each interest-priority surface to its corresponding rendering queue. During rendering, process the interest-priority surfaces in each queue sequentially according to their queue order, ensuring that higher-priority queues are rendered completely first.
[0113] By adding interest-priority surfaces to the rendering queue corresponding to the rendering priority, games can achieve a more efficient rendering workflow. For example, in open-world games, when a player approaches an important landmark, the surfaces associated with that landmark will be added to a high-priority queue, ensuring that the landmark's details and textures are fully displayed when the player arrives, thereby enhancing the player's immersion and visual experience.
[0114] S208 renders the target scene sequentially according to the queue of scenes to be rendered.
[0115] Optionally, in this embodiment, the aforementioned rendering queue is a data structure used to manage and store objects that need to be rendered in the game, in a certain order. This order is typically based on the object's importance, rendering priority, or other rendering-related criteria. For example, in a third-person shooter game, the rendering queue might contain player-controlled characters, enemies, environmental objects (such as walls and boxes), special effects (such as explosions and smoke), etc. These objects are added to the queue according to their rendering priority.
[0116] Optionally, in this embodiment, the sequential rendering process refers to processing and rendering each object in the queue one by one according to the order defined in the queue to be rendered. The rendering order is usually determined by the rendering priority of the objects, with higher-priority objects being rendered first. For example, when rendering a scene, a game engine may first render the background (such as the sky and distant view), then the mid-ground (such as buildings and trees), and finally the foreground (such as characters and nearby objects). This ensures that important visual elements (such as characters and interactive objects) receive sufficient rendering resources during the rendering process.
[0117] Optionally, in this embodiment, displaying the target scene can be understood as rendering and displaying the target scene on the player's screen. For example, in an open-world action-adventure game, the target scene might be an ancient ruin that the player is exploring. The game engine will render the details of the ruin and its surrounding environment based on the player's position and perspective, and display them on the player's screen.
[0118] For example, first, the game engine determines the rendering order based on various criteria (such as object importance, player line of sight, and distance between objects and the camera), and adds the objects to be rendered to a rendering queue. Then, the game engine renders the objects in the queue one by one in this order, and finally displays the rendered target scene on the player's screen. This process ensures that the player sees what they are supposed to see in the game world, and that the display order and detail of the content conform to the game's design intent.
[0119] Through the above steps S202 to S208, combined with Figure 10 As shown, animation rendering can be achieved using, but is not limited to, the following specific steps:
[0120] S1002, Obtain the original mesh of each scene model in the target scene;
[0121] S1004, based on the tetrahedron obtained by decomposing the original mesh structure, determines the interest-priority surface, where, for example... Figure 11 As shown, each tetrahedron includes four vertices, which can be used to determine the control points of the resulting interest-priority surfaces. For example... Figure 12 As shown, each interest-priority surface includes at least one tetrahedron, and the corresponding control points are determined by the vertices of the outer surfaces of these tetrahedrons, and the shape and size of the interest-priority surface are determined based on these control points;
[0122] S1006, mark the priority of interest-priority surfaces (e.g., assign corresponding rendering priorities);
[0123] S1008 reconstructs the lighting and shading regions involved in the interest-priority surface and renders them using an animation engine.
[0124] This embodiment acquires the scene model to be rendered in the target scene and the interest levels corresponding to different regions in the target scene. The scene model is decomposed into at least one tetrahedron. Interest-priority surfaces are determined based on at least one tetrahedron. The rendering priority of the interest-priority surfaces is determined based on the interest levels associated with the regions where the interest-priority surfaces are located. The interest-priority surfaces are then added to the rendering queue corresponding to their rendering priorities. The target scene is displayed by rendering according to the rendering queue. By prioritizing the processing of regions of interest to the user and intelligently allocating rendering resources, unnecessary rendering calculations are reduced, thereby improving rendering efficiency. This ensures that the regions most likely to attract the player's attention and interaction are rendered with high priority. While maintaining high performance, it also provides players with a high-quality visual experience, enhancing the immersion and realism of the game world. This technical effect solves the technical problem of low rendering efficiency of 3D models in related technologies.
[0125] As an optional solution, combined with Figure 10 As shown, the scene model is decomposed into at least one tetrahedron, and the interest priority surface is determined based on at least one tetrahedron, including:
[0126] S1004-1, Perform a meshing operation on the scene model to obtain at least one tetrahedron;
[0127] S1004-2, Perform an identification analysis operation on each tetrahedron in at least one tetrahedron to determine the vertex corresponding to each tetrahedron;
[0128] S1004-3, determine the interest-priority surface based on the vertices corresponding to each tetrahedron.
[0129] Optionally, in embodiments of this application, the aforementioned meshing operation may include, but is not limited to, converting a 3D model into a structure composed of multiple mesh units, each mesh unit typically being a tetrahedron or other polygon. This process involves discretization techniques in computational geometry and computer graphics, the purpose of which is to approximate a continuous 3D shape as a discrete mesh so that a computer can process and render it. For example, in game development, a complex building model may be converted into a mesh composed of many tetrahedrons through a meshing operation, each tetrahedron representing a part of the building, so that the game engine can perform lighting calculations and rendering on these tetrahedrons.
[0130] Optionally, in embodiments of this application, the aforementioned identification and analysis operations may include, but are not limited to, analyzing each tetrahedron in the mesh to determine its properties and characteristics. This may include calculating information such as the tetrahedron's volume, surface area, and vertex positions, as well as identifying the relationship between the tetrahedron and other tetrahedrons. For example, in physical simulations, performing identification and analysis operations on each tetrahedron can help determine the stability of a structure; for instance, in simulating building collapse, analyzing the stress on each tetrahedron can help predict its behavior.
[0131] Optionally, in this embodiment, each tetrahedron has four vertices, which are key points defining the shape and position of the tetrahedron. In three-dimensional space, each vertex is defined by its coordinates (x, y, z). For example, in a meshed representation of a character model, the vertices of each tetrahedron correspond to specific points on the character's surface, and the set of these vertices defines the character's shape and outline.
[0132] For example, in game rendering scenes, it can be applied to character animation rendering scenes, building rendering scenes, and open-world environment rendering scenes, etc.
[0133] In one exemplary embodiment, taking a character animation rendering scene as an example, Figure 13 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 13 As shown, including but not limited to the following exemplary steps:
[0134] S1302, perform a meshing operation on the character model, converting the model into a mesh composed of multiple tetrahedrons, each tetrahedron representing a small part of the character's body.
[0135] S1304 identifies and analyzes each tetrahedron, determines its vertices, and analyzes the motion and deformation of these vertices to support character animation.
[0136] S1306, based on the character's vertex data, determines the face, hands, and other areas related to emotional expression or interaction as interest-priority surfaces.
[0137] The above techniques allow for detailed rendering of key character expressions and movements, enhancing the character's expressiveness and player immersion. By focusing on rendering key facial expression areas, the animation's detail and smoothness are improved while maintaining rendering efficiency.
[0138] In one exemplary embodiment, taking a building rendering scene as an example, Figure 14 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 14 As shown, including but not limited to the following exemplary steps:
[0139] S1402 uses an automatic mesh generation algorithm to convert a 3D model of a building into a mesh composed of multiple tetrahedrons. Each tetrahedron approximately represents a part of the building, such as a wall, floor, or ceiling.
[0140] S1404: Perform identification analysis on each generated tetrahedron to determine the four vertices of each tetrahedron. Use the vertex information to calculate the geometric properties of the tetrahedron, such as side lengths and angles.
[0141] S1406 identifies which tetrahedrons correspond to key visual elements of the building, such as entrances, windows, or decorative structures, based on the vertices of each tetrahedron. These areas are designated as interest-priority surfaces.
[0142] The above methods enable high-quality rendering of key visual elements of buildings, enhancing the realism and visual appeal of game scenes. By prioritizing the rendering of critical areas, rendering performance is optimized, ensuring smooth gameplay.
[0143] In one exemplary embodiment, taking an open-world environment rendering scene as an example, Figure 15 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 15 As shown, including but not limited to the following exemplary steps:
[0144] S1502 performs a meshing operation on open-world environments, converting terrain, vegetation, and other natural elements into a mesh composed of tetrahedrons.
[0145] S1504 identifies and analyzes each tetrahedron, determines its vertices, and analyzes the spatial relationships between these vertices to support the complexity of the environment.
[0146] S1506 determines the terrain high points, special landmarks, or hidden paths within the player's current exploration area as interest-priority surfaces based on the vertices of each tetrahedron.
[0147] The above features allow key areas explored by players to be rendered first, ensuring visual quality and detail in these areas and enhancing the player's exploration experience. By intelligently allocating rendering resources, the overall rendering performance of the open-world environment is optimized, reducing loading time and increasing frame rate.
[0148] In these examples, through meshing operations, identification analysis, and the determination of interest-priority surfaces, efficient and high-quality rendering effects can be achieved for different game scenarios and needs. The application of these technologies not only improves the visual quality of games but also optimizes rendering performance, providing players with a richer and smoother gaming experience.
[0149] As an optional solution, combined with Figure 10 As shown, the interest-priority surface is determined based on the vertices corresponding to each tetrahedron, including:
[0150] S1004-3-1, Obtain a predetermined weight matrix, wherein an element in the weight matrix represents the contribution weight of a vertex of the target tetrahedron to a control point, and the target tetrahedron represents any tetrahedron among at least one tetrahedrons that is associated with any interest priority surface.
[0151] S1004-3-2, The position of each target control point is determined using linear interpolation based on the vertex positions of the target tetrahedron;
[0152] S1004-3-3, determine the control weight corresponding to each target control point based on the distance between the position of each target control point and the center of the target tetrahedron;
[0153] S1004-3-4, determine the interest-priority surface based on the position and control weight of each target control point, wherein the interest-priority surface is represented as a polynomial including at least two three-dimensional spatial parameters.
[0154] Optionally, in embodiments of this application, the aforementioned control weights may include, but are not limited to, values associated with each target control point, which determine the importance of that control point in defining the interest-priority surface. Control weights are typically determined based on the distance of the control point from the center of the tetrahedron. For example, in simulating water surface fluctuations, control points closer to the wave center will have higher control weights because they have a greater influence on the wave shape.
[0155] Optionally, in this embodiment, the polynomial of the three-dimensional spatial parameters can be understood as representing the interest-first surface as a polynomial containing at least two three-dimensional spatial parameters. This representation allows for a precise mathematical description of the surface in three-dimensional space. For example, when creating a complex terrain model, such as a mountain range or valley, the interest-first surface can be defined by a polynomial that captures the undulations and changes in the terrain, thereby achieving a realistic rendering effect.
[0156] For example, in 3D game design, the preparation of models and surfaces is a detailed and crucial process. This step involves decomposing the scene model into multiple interest priorities and calculating control points and weights for each interest priority. The first step is the decomposition of the scene model, breaking down the complex scene model into multiple simple mesh structures. Each mesh structure is further decomposed into smaller units that can be represented by interest priority surfaces. An interest priority surface is defined by four control points, which determine the shape and size of the interest priority. For each mesh unit, the four vertices of the target tetrahedron associated with the surface are selected to determine the control points, where the positions of the control points can be calculated using the following formula:
[0157]
[0158] Among them, P i Let B represent the i-th control point. ij It is the weight matrix, V j It is the position of the j-th vertex.
[0159] It should be noted that a weight w can be assigned to each control point. i This weight determines the degree of influence that point has on the interest-priority shape. The weight can be calculated based on the distance from the control point to the center of the mesh.
[0160]
[0161] Wherein d(P i C) is the control point P. i Distance to Mesh center C.
[0162] Each interest-priority surface can be represented by the following polynomial equation:
[0163]
[0164] Among them, B i (u,v,w) is a polynomial based on the three-dimensional spatial parameters u,v,w.
[0165] Polynomials are constructed based on the principle of curves and can be represented as:
[0166]
[0167] Among them, C i It is a constant, a i b i c i It is control point P i The corresponding index.
[0168] Therefore, based on the size and location of the interest-first surfaces, a level of detail can be assigned to each surface. The level of detail determines the complexity of the surface equations and the accuracy during rendering. To optimize the rendering process, hardware-accelerated tessellation can be used. This technique can quickly compute interest-first tessellation surfaces on the GPU. Through the above steps, interest-first surfaces can be prepared for each part of the 3D game map scene model, and the corresponding control points and weights can be calculated. This not only improves rendering efficiency but also ensures the visual quality of the scene.
[0169] It's important to note that, firstly, in the game rendering process, each element in the aforementioned weight matrix represents the influence of a vertex of the target tetrahedron on the control point. These target tetrahedrons are a set of tetrahedrons directly related to the interest-priority surface. Due to the player's high level of attention, they require more refined rendering, enabling precise control over the rendering details of key areas in the scene and ensuring that important objects within the player's field of vision are presented with higher quality.
[0170] Secondly, by using linear interpolation, the exact position of each target control point can be calculated based on the position of the vertices of the target tetrahedron. This allows for the accurate simulation of complex surfaces while maintaining computational efficiency. Through linear interpolation, the position of the target control points can be precisely adjusted, thereby enhancing the rendering accuracy of key features in the scene without sacrificing performance.
[0171] Next, the control weight of each target control point is determined based on its position relative to the center of the tetrahedron. The weight reflects the importance of the control point in defining the interest-priority surface; control points closer to the center have higher weights. This distance-based weighting method allows us to more realistically simulate the local details of the surface, especially in areas the player is likely to pay close attention to, such as the character's facial expressions or the details of key objects.
[0172] Finally, by combining the position of each target control point and its corresponding control weight, interest-priority surfaces are determined. These surfaces are represented by polynomials containing at least two three-dimensional spatial parameters, thus mathematically defining the shape of the surface precisely. Using polynomials to represent interest-priority surfaces not only improves rendering accuracy but also makes surface deformation and animation smoother and more natural. This method is particularly suitable for scenarios requiring complex surface deformation, such as simulating the dynamic behavior of soft objects or creating realistic fluid effects.
[0173] As an optional solution, combined with Figure 10 As shown, the above method also includes:
[0174] S1008-1, Add interest-priority surfaces to the rendering queue corresponding to the rendering priority in sequence;
[0175] S1008-2, render according to the queue of scenes to be rendered, and display the target scene. S1008-2 includes, but is not limited to, the following steps:
[0176] S1008-2-1, Determine the normal data corresponding to the interest-first surface based on the polynomial corresponding to the interest-first surface;
[0177] S1008-2-2, Determine the lighting model used in the interest-first surface rendering process based on normal data, wherein the lighting model includes at least one of the following: ambient light coefficient, diffuse reflection coefficient, and specular reflection coefficient.
[0178] Optionally, in this embodiment, the aforementioned interest-first surface is defined by multiple control points and a weight matrix, the positions of which can be described by polynomial equations. A polynomial typically contains at least two three-dimensional spatial parameters used to define the shape of the surface. In a game scene, a character's facial expression might be an interest-first surface. This surface can be defined by polynomial equations, where the parameters include the positions of key points on the character's face. Using polynomials to define interest-first surfaces provides more flexible and precise surface control, resulting in more realistic and detailed rendered facial expressions.
[0179] Optionally, in this embodiment, the aforementioned normal data refers to the normal vector at each point on the interest-priority surface. These vectors are perpendicular to the surface and are used to determine how light interacts with it. When rendering a character's cheek, normal data helps determine how light reflects, thereby simulating the skin's sheen and texture. Accurate normal data can enhance the realism of the rendering, making the lighting effects more consistent with the laws of the physical world and improving the quality of the game's visuals.
[0180] Optionally, in embodiments of this application, the lighting model described above is a set of algorithms used to calculate how light rays interact with the interest-priority surface. The model typically includes ambient light coefficients, diffuse reflection coefficients, and specular reflection coefficients.
[0181] The ambient light coefficient can include, but is not limited to, representing the contribution of light to an object after multiple reflections in the environment, typically used to simulate indirect lighting. The diffuse reflection coefficient can include, but is not limited to, representing the uniform scattering of light in all directions after it hits an object's surface, and is related to the object's surface color and roughness. The specular reflection coefficient can include, but is not limited to, simulating the reflection of light on a smooth surface, typically used to simulate the specular effect of metallic or glossy surfaces. In a game scene, a metal armor surface might have a high specular reflection coefficient, while a plush toy surface might have a low specular reflection coefficient and a high diffuse reflection coefficient. By using lighting models, the lighting effects of various materials can be simulated, enhancing the visual effects and immersion of the game world. For example, by adjusting the specular reflection coefficient, the gloss changes of metal armor under different lighting conditions can be simulated, making the game visuals more vivid and realistic.
[0182] For example, by combining the polynomial definition of interest-priority surfaces, normal data, and lighting models, game rendering scenes can achieve more efficient and realistic rendering effects, enhancing the player's visual experience.
[0183] In an exemplary embodiment, in a game rendering scene, rendering a virtual character with a complex surface can be achieved through the following steps:
[0184] S1, based on the polynomial corresponding to the interest-priority surface (such as a character's face), uses differentiation to calculate the normal vector at each point of the surface. These normal vectors describe the degree of inclination of the surface at each point and are crucial for lighting calculations.
[0185] S2, based on the calculated normal data, determines the lighting model used for rendering the character's face. This model may include ambient light coefficients to simulate global ambient light, diffuse reflection coefficients to simulate basic light scattering, and specular reflection coefficients to simulate highlights on the skin.
[0186] S3, during the rendering process, uses the above lighting model to calculate how light rays incident on the character's face from various directions interact with the curved surface to produce the final shading effect.
[0187] This embodiment enhances the detail and texture of the character's face, making the character appear more vivid and realistic. Precise normal data and lighting models result in more natural character rendering under different lighting conditions, improving the overall quality of the game's visuals.
[0188] In an exemplary embodiment, in a game rendering scene, rendering a virtual prop with a glossy surface can be achieved through the following steps:
[0189] S1, for the interest-first surface of the virtual prop, uses polynomial equations to calculate the normal data of each point, which reflects the complex geometry of the virtual prop surface.
[0190] S2. Considering the glossiness of the virtual prop's surface, a lighting model is selected, in which the specular reflection coefficient is high and the diffuse reflection coefficient is low, to simulate the metallic luster.
[0191] S3, during the rendering process, uses normal data and a selected lighting model to calculate how light interacts with the surface of virtual props, especially specular highlights and reflections, to achieve a realistic glossy appearance.
[0192] This embodiment enhances the gloss and reflection effects of virtual props, making them appear more high-tech and futuristic. Precise normal and lighting models make the reflection and gloss changes of virtual props more realistic under different angles and lighting conditions, improving the visual detail of the game.
[0193] In an exemplary embodiment, in a game rendering scene, rendering a natural environment with rich textures can be achieved through the following steps:
[0194] S1 calculates the normal data for each point based on polynomial equations for interest-priority surfaces in natural environments (such as rocks or leaves). These data reflect the complexity and inhomogeneity of the surface of natural objects.
[0195] S2, Select a lighting model with a high ambient light coefficient to simulate the complex light reflection and scattering in the natural environment, while using an appropriate diffuse reflection coefficient to simulate the color and texture of natural objects.
[0196] S3, during the rendering process, combines normal data and a selected lighting model to calculate the appearance of the natural environment under different lighting conditions, including shadows, uneven surfaces, and rich texture details.
[0197] This embodiment enhances the surface details of objects in the natural environment, making rocks, leaves, and other natural elements appear more realistic and textured. Precise normal data and lighting models allow for more diverse and vivid representations of the natural environment under different times and weather conditions, enhancing the immersive experience of the game world.
[0198] It should be noted that the lighting model suitable for the interest-priority surface can be selected in the following way.
[0199] Light intensity I can be calculated using the following formula:
[0200]
[0201] Where, k a k d k s These are the ambient light coefficient, diffuse reflectance coefficient, and specular reflectance coefficient, I. a It is ambient light intensity, L m N is the direction of the light source, N is the normal, and R is the direction of the light source. m V is the reflection vector, V is the view vector, and n is the specular index.
[0202] The calculation of the normal N includes, but is not limited to, the following methods:
[0203] For each interest-priority surface
[0204] Where S is the surface equation, and u and v are the three-dimensional spatial parameters corresponding to the surface.
[0205] For the reflection vector R m The calculation includes, but is not limited to, the following methods:
[0206] R m =2·(L m ·N)·NL m
[0207] Among them, L m This represents the parameters used to calculate the reflected light from the mirror.
[0208] For ambient light intensity I a The calculations are used to simulate indirect lighting:
[0209] I a =L a ·M a
[0210] Among them, L a It is the ambient light intensity, M a It is the material's response to ambient light.
[0211] Calculation of diffuse illumination, calculation of diffuse illumination I d :
[0212] I d =L d ·(N·L m )·M d
[0213] Among them, L d It is the intensity of diffuse light source, M d It is the material's response to diffuse light.
[0214] Calculation of specular reflection illumination, calculation of specular reflection illumination I s :
[0215] I s =L s ·(R m ·V)n·M s
[0216] Among them, L s It is the intensity of the specular reflected light source, M s It is the material's response to the light reflected from the mirror.
[0217] As an optional solution, combined with Figure 10 As shown, the above method also includes:
[0218] S1008-2-3, Obtain scene information and material properties of the target scene, where the scene information includes the size and position of the interest-priority surface;
[0219] S1008-2-4, adjusts the shading parameters of the target scene based on the lighting model, scene information, and material properties.
[0220] Optionally, in this embodiment, the aforementioned scene information refers to detailed data describing the environment and objects in the game world, including geometry, location, size, color, etc. For interest-first surfaces, scene information pays particular attention to the size and location of these surfaces, as these attributes directly affect the accuracy and efficiency of rendering. For example, in a fantasy-style game, an important interest-first surface might be a bridge about to collapse. Scene information would include the bridge's dimensions (such as length and width) and location (coordinates in the game world) to ensure that the rendering details of the bridge are correctly handled when the player approaches.
[0221] Optionally, in this embodiment, the aforementioned material properties refer to the characteristics of an object's surface, which determine the object's appearance under illumination. Material properties may include color, texture, transparency, reflectivity, roughness, etc. For example, in a racing game, the car body may have a highly reflective material property to simulate shiny paint. This material property affects the shading parameters, causing the car to reflect light from the surrounding environment under different lighting conditions.
[0222] Optionally, in this embodiment, the lighting model described above is a set of algorithms used to calculate how light interacts with objects in a scene. This typically includes components such as ambient light, diffuse reflection, and specular reflection, which together determine the appearance of objects under different lighting conditions. In an open-world adventure game, the lighting model may vary according to time (e.g., daytime, dusk, nighttime) and weather (e.g., sunny, cloudy, rainy) to simulate the impact of these conditions on scene lighting.
[0223] Optionally, in this embodiment, the aforementioned shading parameters are parameters used to determine the color and appearance of an object. These parameters are adjusted based on the lighting model, scene information, and material properties. Shading parameters may include color values, light intensity, shadow depth, etc. In a first-person shooter game, the shading parameters of the items held by the player may be adjusted according to changes in ambient lighting. For example, in a dark indoor environment, the color of the items may become darker to match the tone of the surrounding environment.
[0224] It's important to note that game rendering first involves acquiring scene information and material properties of the target scene. This information includes the size and position of interest-priority surfaces, as well as the material characteristics of object surfaces. Then, based on the lighting model, scene information, and material properties, the shading parameters of the target scene are adjusted to ensure that objects in the scene present a realistic and consistent appearance under different lighting conditions. This process is crucial for creating a visually engaging and immersive game world.
[0225] Specifically, adjust the lighting and shading parameters according to the needs of the game scene:
[0226] P adjusted =AdjustParameters(I,M,Scene)
[0227] Among them, P adjusted This is the adjusted parameter set, where M is the material property, Scene is the scene information, and AdjustParameters is the system shading function.
[0228] Through the embodiments of this application, complex lighting and shading effects can be achieved for interest-priority surfaces, thereby improving the visual quality and realism of the game.
[0229] As an alternative approach, after decomposing the scene model into at least one tetrahedron and determining the interest-priority surface based on at least one tetrahedron, the above method further includes:
[0230] Obtain the dimensions and position of the interest-priority surface;
[0231] The interest-first surface is assigned a corresponding level of detail based on its size and location. The level of detail is used to indicate the complexity of the surface equation corresponding to the interest-first surface and the rendering precision of the interest-first surface.
[0232] Optionally, in this embodiment, the aforementioned level of detail is a technique used to adjust the complexity of an object based on its distance from the observer or the viewpoint. A higher level of detail implies higher surface equation complexity and higher rendering accuracy, typically used for objects at close range, while a lower level of detail is used for objects at a distance to optimize performance. In an open-world game, distant mountains might use a lower level of detail to reduce the number of polygons, while as the player approaches, the mountain model automatically switches to a higher level of detail to display more texture and terrain details.
[0233] Optionally, in this embodiment, the complexity of the surface equation refers to the complexity of the mathematical equation defining the shape of the interest-priority surface. Complex surface equations can create more refined and detailed shapes, but also require more computational resources. When simulating a character's facial expressions, using complex surface equations can accurately simulate the stretching and compression of the skin, thus providing more realistic facial animation.
[0234] Optionally, in this embodiment, the rendering precision of the aforementioned interest-first surfaces refers to the rendering resources and level of detail allocated to these surfaces during the rendering process. High rendering precision can provide clearer and more detailed images, but may also require more computational and memory resources. In a shooting game, a player's item might be an interest-first surface. With high rendering precision, the item's texture, scratches, and metallic reflections can be rendered in detail, providing the player with rich visual feedback.
[0235] This embodiment first obtains the size and location of the interest-priority surfaces to determine which areas require focused attention. Then, based on this size and location information, appropriate levels of detail are assigned to the interest-priority surfaces, which determines the complexity of their surface equations and rendering accuracy. In this way, it ensures that, with limited computing resources, the key areas of interest to the player receive the best visual effects, while optimizing overall rendering performance.
[0236] As an optional solution, combined with Figure 10 As shown, the process involves obtaining the scene model to be rendered in the target scene and the interest levels corresponding to different regions in the target scene, including:
[0237] S1002-1, Obtain the scene model to be rendered in the target scene;
[0238] S1002-2, Obtain the interest levels corresponding to different areas of the target scene. First, obtain the interest levels corresponding to different areas of the target scene, including but not limited to:
[0239] S1002-2-1, Perform a segmentation operation on the target scene to determine a set of interactive areas;
[0240] S1002-2-2, Get the number of interactions with the target account within each interaction area of a set of interaction areas within a historical time period;
[0241] The interest level for each interactive area in a set of interactive areas can be determined based on the number of interactions, including but not limited to:
[0242] S1002-2-3, Determine the interaction frequency based on the number of accounts and the number of interactions;
[0243] S1002-2-4, Determine interest level based on interaction frequency and visual rating parameters.
[0244] Optionally, in this embodiment, after obtaining the scene model, the game engine performs a scene segmentation operation to determine a set of interactive areas. These areas are places where players can interact, such as doors that can be opened, items that can be picked up, etc. For example, in an adventure game, the game engine may divide a maze into multiple interactive areas, each with different puzzles and challenges, which players need to interact with to solve.
[0245] Optionally, in this embodiment, the game records the number of times a player interacts with their designated interaction area. This data can be used to analyze player behavior patterns and preferences. If a player frequently interacts with a specific interaction area, that area may correspond to a high level of interest. For example, in a role-playing game, the game may record the number of times a player talks to various NPCs. If a particular NPC has an unusually high number of conversations, the area where that NPC is located may be marked as a high-interest area.
[0246] Optionally, in this embodiment, the game can determine the interest level of each area. Areas with high interest levels may contain important mission objectives, interesting game mechanics, or content that players are particularly interested in. For example, in a strategy game, if a player frequently gathers resources at a specific resource point, the interest level of that resource point may be increased, and the game engine may prioritize rendering the details of that area to ensure that the player can clearly see the status of the resource point.
[0247] Through the embodiments of this application, the game engine can effectively manage and optimize rendering resources, ensuring that key areas of interest to players receive the best visual effects, while further enhancing the player's gaming experience.
[0248] In an exemplary embodiment, taking an open-world role-playing game (RPG) as an example, the steps may include, but are not limited to, the following:
[0249] S1 loads all 3D models around the player's current location in the game world, including buildings, natural landscapes, NPCs (non-player controlled characters), etc.
[0250] S2 uses spatial partitioning algorithms, such as quadtrees or octrees, to divide the player's surrounding environment into multiple interactive areas, such as market areas, residential areas, and combat areas.
[0251] S3 collects data through the game server and counts the number of interactions of the target account in each interactive area, such as the number of conversations with NPCs, the number of times items are picked up, and the number of times battles are triggered.
[0252] S4 assigns an interest level to each interactive area based on the collected interaction data. The more interactions, the higher the interest level, indicating that these areas are more important to the player.
[0253] Through the embodiments of this application, the game can dynamically adjust resource allocation, prioritizing the rendering and updating of areas where players frequently interact, thereby improving the rendering quality and detail of these areas. The game world reacts more realistically, player interactions are better responsive, and the game's immersion and player satisfaction are enhanced.
[0254] In an exemplary embodiment, taking a first-person shooter (FPS) game as an example, the steps may include, but are not limited to, the following:
[0255] S1 loads all scene models within the player's field of view, including cover, items, enemy bases, etc.
[0256] S2 uses preset data from the game map to divide the map into multiple tactical interaction areas, such as point A, point B, sniper zone, and respawn point.
[0257] S3 uses an in-game data detection system to record the target account's interactive behavior in various interactive areas, such as the number of times an enemy is killed or the number of times C4 is placed in a certain area.
[0258] S4 determines the interest level of each area based on the number of times players interact with it. For example, areas where battles frequently occur may be marked as having a high interest level.
[0259] Through the embodiments of this application, the game can dynamically adjust rendering details according to interest levels, such as providing higher texture details and more complex lighting effects in areas where players frequently engage in combat, thereby enhancing visual impact. By optimizing the rendering of these high-interest areas, the game can provide a more intense and exciting gaming experience while maintaining a smooth frame rate, especially in multiplayer online modes, which can significantly improve player engagement and game playability.
[0260] As an alternative approach, the interest level corresponding to each interactive area in a set of interactive areas can be determined based on the number of interactions, including:
[0261] Get the number of first accounts of the target account in the first interaction area and the number of second accounts of the target account in the second interaction area during the historical period;
[0262] The first interaction frequency is determined based on the number of first interactions and the number of first accounts that occurred in the first interactive area within a historical period.
[0263] The frequency of the second interaction is determined based on the number of second interactions that occurred in the second interaction area within a historical period and the number of second accounts.
[0264] The first interest level corresponding to the first interaction area and the second interest level corresponding to the second interaction area are determined based on the first interaction frequency and the second interaction frequency.
[0265] Optionally, in the embodiments of this application, the aforementioned first interactive area and second interactive area may include, but are not limited to, two different predefined interactive areas in the game, where players can perform specific interactions, such as combat, exploration, and trading. For example, in a multiplayer online game map, the first interactive area may be a popular PvP (player versus player) area, while the second interactive area may be a trading market.
[0266] Optionally, in this embodiment of the application, the number of first accounts and the number of second accounts of the target account may include, but are not limited to, the number of accounts registered or logged in by a specific player (target account) in the first interaction area and the second interaction area during a historical period. For example, if a player registers 3 different character accounts in the PvP area and 2 different character accounts in the trade market area, then the number of first accounts is 3 and the number of second accounts is 2.
[0267] Optionally, in this embodiment of the application, the aforementioned first interaction count and second interaction count may include, but are not limited to, the number of times the target account interacted in the first interaction area and the second interaction area within a historical time period. For example, if a player participates in 15 battles in the PvP area and conducts 10 transactions in the trade market area, then the first interaction count is 15 and the second interaction count is 10.
[0268] Optionally, in embodiments of this application, the aforementioned first and second interaction frequencies may include, but are not limited to, terms calculated by dividing the number of interactions by the number of accounts, used to measure the activity level of a target account in each interaction area. For example, if a player's three accounts in a PvP area participate in a total of 15 battles, then the first interaction frequency is 15 times / 3 accounts = 5 times / account. Similarly, if two accounts in the trading market conduct a total of 10 transactions, the second interaction frequency is 10 times / 2 accounts = 5 times / account.
[0269] Optionally, in embodiments of this application, the aforementioned first and second interest levels may include, but are not limited to, levels determined based on interaction frequency, used to indicate the attractiveness or importance of each interactive area to the target account. Interest levels can influence how the game allocates resources, such as rendering precision and update frequency. For example, if the first interaction frequency (PvP area) is high, the game may set the interest level of that area to "high," thereby providing more detailed rendering and a smoother interactive experience when players enter that area. Conversely, if the second interaction frequency (trading market) is low, the interest level may be set to "low," and the game may reduce the detail of that area to optimize performance.
[0270] For example, the game can dynamically adjust the interest level of each interactive area based on the player's interaction behavior and frequency, thereby optimizing the allocation of rendering resources and providing a more personalized and immersive gaming experience.
[0271] In one exemplary embodiment, taking a multiplayer online battle arena game as an example, Figure 16 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 16 As shown, the steps may include, but are not limited to, the following:
[0272] S1602, Number of accounts acquired:
[0273] S1602-1: Retrieve the login records of the target account in the first interactive area (e.g., the battle arena) within a historical period from the game server database, and count the number of unique accounts.
[0274] S1602-2: Perform the same operation on the second interactive area (e.g., the in-game trading market) to count the login records of the target account in order to obtain the number of second accounts.
[0275] S1604, Determine the interaction frequency:
[0276] S1604-1: Collect the battle records of the target account in the first interaction area, including wins, losses, and draws, and calculate the number of first interactions.
[0277] S1604-2: Combining the number of first accounts, use the formula (number of first interactions / number of first accounts) to calculate the first interaction frequency, reflecting the account's activity level in the battle arena.
[0278] S1606, Determine the level of interest:
[0279] S1606-1: Perform similar data collection and calculation on the second interaction area to obtain the number of second interactions and the frequency of second interactions.
[0280] S1606-2: Based on the first interaction frequency and the second interaction frequency, determine the interest level of the first interaction area and the second interaction area using a preset threshold. For example, if the first interaction frequency is higher than a certain value, it may indicate that the player is very interested in the battle arena, so its interest level is set to "high".
[0281] In one exemplary embodiment, an exploration-based role-playing game (RPG) is used as an example. Figure 17 This is a schematic diagram of another optional image processing method according to an embodiment of this application, such as... Figure 17 As shown, the steps may include, but are not limited to, the following:
[0282] S1702, Number of accounts acquired:
[0283] S1702-1: Analyze the behavior logs of the target account exploring the first interactive area (e.g., the mysterious cave) within a historical time period, and count the number of unique accounts that entered the area.
[0284] S1702-2: Perform data retrieval on the second interactive area (e.g., a city center square) to count the activity records of the target account in the area in order to determine the number of second accounts.
[0285] S1704, Determine the interaction frequency:
[0286] S1704-1: Summarize all exploration activities of the target account in the Mysterious Cave, such as picking up items, fighting, solving puzzles, etc., and calculate the first interaction count.
[0287] S1704-2: Calculate the first interaction frequency based on the number of first accounts, which may reflect the level of player interest in exploratory content.
[0288] S1706, Determine the level of interest:
[0289] S1706-1: Collect data on the city center square, including social activities and trading behaviors of players, and calculate the number of second interactions and the frequency of second interactions.
[0290] S1706-2: Assign interest levels to the two areas based on the first and second interaction frequencies, as well as the game design objectives. If players explore the Mysterious Cave frequently, it may indicate a preference for exploration content, thus increasing the interest level for that area.
[0291] Specifically, player interaction frequency can be quantified by collecting player interaction data in various areas and defining the interaction frequency F. i This represents the number of times a player interacts with an area per unit of time, used to calculate the interaction frequency for each area:
[0292] F i =T / N i
[0293] Where, N i T is the number of times the player interacts in region i, and T is the observation time (corresponding to the aforementioned historical period).
[0294] Through this embodiment, the game can dynamically adjust resource allocation based on player behavior data, identify player preferred game modes, and thus optimize the rendering details of the arena and trading market to enhance the player experience. High-interest areas receive higher rendering priority and more refined graphical details, such as high-resolution textures for character models and more complex lighting effects. Exploration areas favored by players offer richer environmental details and more realistic lighting effects. This also helps developers understand player playstyles and preferences, allowing them to better meet player needs in future content updates and enhance the game's appeal and retention rate.
[0295] As an optional approach, a first interest level corresponding to the first interaction area and a second interest level corresponding to the second interaction area are determined based on a first interaction frequency and a second interaction frequency, including:
[0296] Obtain the first visual scoring parameters corresponding to the first interactive area and the second visual scoring parameters corresponding to the second interactive area;
[0297] The first interest level is obtained by performing a weighted operation on the first interaction frequency and the first visual rating parameter based on a preset ratio;
[0298] The second interest level is obtained by weighting the second interaction frequency and the second visual rating parameters based on a preset ratio.
[0299] Optionally, in the embodiments of this application, the aforementioned first visual rating parameters and second visual rating parameters may include, but are not limited to, indicators used to evaluate the visual appeal of a certain area in a game scene. These parameters may include texture complexity, model detail, lighting effects, animation quality, etc. For example, in a science fiction-themed shooting game, the visual rating parameters of the first interactive area (a battle zone in an alien city) may include the level of detail of the futuristic architecture, the dynamic range of lighting effects, and the spectacle of special effects (such as explosions and lasers).
[0300] Optionally, in the embodiments of this application, the aforementioned first interaction frequency and second interaction frequency may include, but are not limited to, the frequency at which players interact in a specific interaction area, which is an important indicator for measuring player interest and participation. For example, if a player's average combat participation frequency in the first interaction area (battle zone) is once every 5 minutes, and the transaction frequency in the second interaction area (market zone) is once every 10 minutes, these data can be used to calculate the interaction frequency.
[0301] Optionally, in the embodiments of this application, the above-mentioned weighting operation is a mathematical calculation used to combine the influence of two or more parameters according to a preset proportional relationship to obtain a comprehensive score or level. For example, in game rendering optimization, developers may decide that the visual score parameter is more important than the interaction frequency, and therefore give the visual score parameter a greater weight. For example, the weighting formula may be: Interest Level = 0.6 × Interaction Frequency + 0.4 × Visual Score Parameter.
[0302] Optionally, in embodiments of this application, the aforementioned first interest level and second interest level may include, but are not limited to, those calculated based on the player's interaction frequency and visual rating parameters, used to indicate the attractiveness and importance of different game areas to the player. For example, if the player's interaction frequency in the first interaction area (combat area) is very high, and the visual rating parameter is also high, then this area may be assigned a high interest level, and the game engine will prioritize high-detail rendering of this area.
[0303] Specifically, the importance of each area in the game's narrative and visual presentation can be assessed, defining visual importance V. i Assign a visual importance score to each area based on its ability to visually attract the player's attention:
[0304]
[0305] Among them, w j It is the weight of rating factor j, C ij It is the score of region i on factor j.
[0306] In this embodiment, during game rendering, visual rating parameters for two interactive areas are first obtained. Then, a weighted operation is performed based on the player's interaction frequency in these areas and the visual rating parameters to calculate the interest level for each area. These interest levels can then be used to optimize the rendering process, ensuring that the areas of greatest interest to the player receive the best visual effects and performance. This method helps improve the player's gaming experience and ensures that game resources are used most effectively.
[0307] As an optional solution, the first visual scoring parameters corresponding to the first interactive area and the second visual scoring parameters corresponding to the second interactive area are obtained, including:
[0308] Get the weights of the rating factors set for a set of rating factors;
[0309] The first visual scoring parameters are determined based on the weights of the scoring factors and a set of scoring factors corresponding to the first interactive area within the historical period.
[0310] The second visual scoring parameters are determined based on the weights of the scoring factors and a set of scoring factors corresponding to the second interactive area within the historical time period.
[0311] Optionally, in this embodiment, the weight of the scoring factors refers to the degree of influence of each scoring factor (such as image quality, interactive experience, player engagement, etc.) on the final scoring result during the evaluation process. The weight is a numerical value representing the importance of that factor when calculating the total score. For example, in game performance evaluation, there may be multiple scoring factors, such as frame rate (weight 0.4), loading time (weight 0.2), graphics detail (weight 0.3), and player interaction (weight 0.1). These weights reflect the degree of influence of different factors on the player's gaming experience.
[0312] Optionally, in this embodiment, the aforementioned set of scoring factors refers to a series of quantitative indicators used to evaluate the game area. These factors may include the player's dwell time in the area, the number of interactions, the speed of completing tasks, etc. For example, for the first interactive area, a set of scoring factors may include the player's average dwell time in the area, the number of tasks completed, the win rate in battles, etc. These factors reflect the player's activity and participation in the area.
[0313] Specifically, the priority ranking algorithm combines interaction frequency and visual importance to determine the priority of each area. A weighted sum is used to calculate the priority U. i :
[0314] U i =α·F i +β·V i
[0315] Here, α and β are coefficients that adjust the influence of interaction frequency and visual importance.
[0316] It should be noted that the above U i This allows for real-time dynamic updates as player behavior patterns change, enabling the system to dynamically monitor and update area priorities. When player behavior patterns change, priorities are recalculated.
[0317]
[0318] Where γ, δ, and ∈ are adjustment coefficients, and ΔF i ΔV i It represents the changes in interaction frequency and visual importance.
[0319] In this embodiment, during game rendering, weights are first assigned to various rating factors that influence the player's visual experience. Then, based on these weights and the player's rating factor data in the first interaction area, a first visual rating parameter is calculated; the same method is applied to the second interaction area. These visual rating parameters are then used to adjust the game's rendering settings to ensure the player receives the best visual experience in different areas. This method helps game developers optimize game performance and visual quality based on actual player behavior and preferences.
[0320] As an optional solution, combined with Figure 10 As shown, the rendering priority of an interest-priority surface is determined based on the interest level associated with the region where the interest-priority surface is located, and the interest-priority surfaces are added sequentially to the rendering queue corresponding to their rendering priorities, including:
[0321] S1006-1, compare the interest level associated with the region where the interest-priority surface is located with a preset threshold to obtain the target comparison result. The preset threshold is used to indicate whether rendering is required. The interest level can be dynamically updated when the behavior pattern of the target account changes.
[0322] S1006-2, if the target comparison result indicates that the interest level is greater than the preset threshold, the rendering priority is determined to be required for rendering, and the interest-priority surface is added to the rendering priority queue.
[0323] Optionally, in this embodiment, the preset threshold may include, but is not limited to, a pre-set numerical value used to determine whether a certain area needs to be rendered. If the interest level exceeds this threshold, then the area will be rendered. For example, assuming the preset threshold is 5, if the interest level of an area is 6, then that area will be rendered.
[0324] Optionally, in this embodiment, the target comparison result may include, but is not limited to, the result obtained by comparing the interest level and a preset threshold, used to indicate whether rendering is required. For example, if the interest level is 7 and the preset threshold is 5, then the target comparison result will indicate that rendering is required.
[0325] Optionally, in embodiments of this application, the aforementioned dynamic update may include, but is not limited to, indicating that the interest level can change according to changes in the player's behavior pattern, rather than remaining fixed. For example, if the player changes direction and begins moving towards a new area, the interest level of this new area may increase, while the interest level of the previous area may decrease.
[0326] Optionally, in this embodiment, the rendering priority may include, but is not limited to, representing the order in which different regions or objects are rendered during the game rendering process. Higher priority regions will be rendered first. For example, in a combat scene, the enemy currently facing the player may have a higher rendering priority.
[0327] Optionally, in this embodiment, the rendering priority queue may include, but is not limited to, a data structure used to store regions or objects that need to be rendered, typically sorted according to rendering priority. For example, in a game rendering system, there may be a queue containing all regions that need to be rendered, sorted according to a comparison of their interest level and a preset threshold.
[0328] Specifically, a priority queue is constructed based on the calculated priorities. This ensures that the rendering process handles regions in the order they appear in the queue. Rendering scheduling strategy: Develop a rendering scheduling strategy to utilize GPU resources most efficiently. Rendering tasks are allocated according to the priority queue.
[0329] R i =if,P i >P threshold 1
[0330] Among them, P threshold It is the priority threshold that determines whether or not to render (corresponding to the aforementioned preset threshold).
[0331] This embodiment allows for the determination of which areas need to be rendered based on player behavior and dynamic changes in areas of interest, thereby optimizing game performance and enhancing the player experience.
[0332] As an optional solution, combined with Figure 10 As shown, the rendering priority of an interest-priority surface is determined based on the interest level associated with the region where the interest-priority surface is located, and the interest-priority surfaces are added sequentially to the rendering queue corresponding to their rendering priorities, including:
[0333] The interest level associated with the region where the interest-priority surface is located is compared with multiple preset thresholds to obtain multiple target comparison results. Different preset thresholds correspond to different rendering priorities.
[0334] S1006-2-1, when the target comparison result indicates that the interest level is greater than the first preset threshold, the rendering priority is determined as the first rendering priority, and the interest priority surface is added to the first rendering priority queue, wherein the multiple preset thresholds include the first preset threshold;
[0335] S1006-2-2, when the target comparison result indicates that the interest level is greater than the second preset threshold, the rendering priority is determined as the second rendering priority, and the interest-priority surface is added to the second rendering priority queue. Here, the multiple preset thresholds include the first preset threshold, the second preset threshold is less than the first preset threshold, the second rendering priority is lower than the first rendering priority, the rendering order of the second rendering priority queue is later than the first rendering priority queue, and / or the rendering accuracy of the second rendering priority queue is lower than that of the first rendering priority queue.
[0336] Optionally, in the embodiments of this application, dynamic rendering based on the player's line of sight and distance may include, but is not limited to, the following steps:
[0337] S1, determine the interest-priority surface:
[0338] S1-1: Identify objects in the player's line of sight. Using the player's perspective and line of sight, determine the object the player is currently focusing on, such as an NPC, item, or environmental element.
[0339] S1-2: Calculate the distance between the player and these objects. Based on the player's position and the object's position, calculate the distance between them to determine the basis for the interest level.
[0340] S2, compare with a preset threshold and determine the rendering priority:
[0341] S2-1: Set multiple preset thresholds. For example, the first preset threshold is set to 5, and the second preset threshold is set to 3, which correspond to different rendering priorities.
[0342] S2-2: Compare the interest level with the preset threshold. If the interest level is greater than the first preset threshold (5), it is determined to be the first rendering priority, and the object is added to the first rendering priority queue. If the interest level is between the second preset threshold (3) and the first preset threshold, it is determined to be the second rendering priority, and the object is added to the second rendering priority queue.
[0343] Optionally, in the embodiments of this application, dynamic rendering based on player tasks and exploration areas may include, but is not limited to, the following steps:
[0344] S1, Identify task-related and explored areas:
[0345] S1-1: Analyze the player's current quest. Based on the player's quest log, identify areas or objects related to the quest, such as the quest objective location, key NPCs, or quest items.
[0346] S1-2: Determine the interest level of the exploration area. Based on the player's exploration history and the game map, determine the areas the player may explore and assign interest levels to these areas.
[0347] S2, compare with the preset threshold and allocate to the rendering queue:
[0348] S2-1: Set preset thresholds. For example, the first preset threshold is set to 7, and the second preset threshold is set to 4, which correspond to different rendering priorities.
[0349] S2-2: Compare the interest level with the preset threshold. If the interest level is greater than the first preset threshold (7), it is determined as the first rendering priority, and the region or object is added to the first rendering priority queue. If the interest level is between the second preset threshold (4) and the first preset threshold, it is determined as the second rendering priority, and the region or object is added to the second rendering priority queue.
[0350] It should be noted that the methods for determining the interest-priority surface may include, but are not limited to, any of the methods described above in this application; the methods for determining the interest level may include, but are not limited to, any of the methods described above in this application; the methods for determining the multiple preset thresholds may include, but are not limited to, any of the methods described above in this application for comparison; and the methods for determining the comparison results of the multiple targets may include, but are not limited to, any of the methods described above in this application.
[0351] This embodiment ensures that objects within the player's field of vision are rendered first, enhancing player immersion. Simultaneously, dynamically adjusting rendering priority optimizes resource allocation and improves rendering efficiency. It also ensures that areas and objects relevant to the player's task are rendered first, strengthening the task's focus and sense of urgency. Furthermore, dynamically adjusting rendering priority optimizes the use of rendering resources based on player behavior and game progress, improving game smoothness and player experience.
[0352] It is understood that in the specific embodiments of this application, data such as user information are involved. When the above embodiments of this application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0353] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0354] According to another aspect of the embodiments of this application, an image processing apparatus for implementing the above-described image processing method is also provided. For example... Figure 18 As shown, the device includes:
[0355] The acquisition module 1802 is used to acquire the scene model to be rendered in the target scene and the interest level corresponding to different regions in the target scene. The interest level is used to represent the degree of user attention to the corresponding region.
[0356] The decomposition module 1804 is used to decompose the scene model into at least one tetrahedron and determine the interest priority surface based on the at least one tetrahedron. The position of the interest priority surface is determined by the target control point and a pre-set weight matrix. The target control point is determined by the vertices of the target tetrahedron. The at least one tetrahedron includes the target tetrahedron.
[0357] The determination module 1806 is used to determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and to add the interest-priority surfaces to the rendering queue corresponding to the rendering priority in sequence.
[0358] Rendering module 1808 is used to render the target scene sequentially according to the queue of scenes to be rendered.
[0359] As an alternative, the above-mentioned device is used to decompose the scene model into at least one tetrahedron in the following manner, and determine the interest-priority surface based on the at least one tetrahedron: perform a meshing operation on the scene model to obtain at least one tetrahedron; perform a recognition analysis operation on each tetrahedron in the at least one tetrahedron to determine the vertex corresponding to each tetrahedron; and determine the interest-priority surface based on the vertex corresponding to each tetrahedron.
[0360] As an alternative, the above-described apparatus is used to determine the interest-priority surface based on the vertices corresponding to each tetrahedron in the following manner: obtaining a predetermined weight matrix, wherein each element in the weight matrix represents the contribution weight of a vertex of a target tetrahedron to a control point, and the target tetrahedron represents any tetrahedron among at least one tetrahedron associated with any interest-priority surface; determining the position of each target control point using linear interpolation based on the vertex positions of the target tetrahedron; determining the control weight corresponding to each target control point based on the distance between the position of each target control point and the center of the target tetrahedron; and determining the interest-priority surface based on the position and control weight of each target control point, wherein the interest-priority surface is represented as a polynomial including at least two three-dimensional spatial parameters.
[0361] As an optional solution, the above-mentioned device is also used to: determine the normal data corresponding to the interest-first surface based on the polynomial corresponding to the interest-first surface; and determine the lighting model used in the rendering process of the interest-first surface based on the normal data, wherein the lighting model includes at least one of the following: ambient light coefficient, diffuse reflection coefficient, and specular reflection coefficient.
[0362] As an optional solution, the above-mentioned device is also used to: acquire scene information and material properties of the target scene, wherein the scene information includes the size and position of the interest-priority surface; and adjust the shading parameters of the target scene according to the lighting model, scene information and material properties.
[0363] As an optional solution, the above-mentioned device is also used to: decompose the scene model into at least one tetrahedron, determine the interest-first surface based on at least one tetrahedron, and then obtain the size and position of the interest-first surface; assign a corresponding level of detail to the interest-first surface based on the size and position, wherein the level of detail is used to indicate the complexity of the surface equation corresponding to the interest-first surface and the rendering accuracy of the interest-first surface.
[0364] As an optional solution, the above-mentioned device is used to obtain the scene model to be rendered in the target scene and the interest level corresponding to different regions in the target scene in the following manner: obtain the scene model to be rendered in the target scene; perform a division operation on the target scene to determine a set of interactive regions; obtain the number of interactions with the target account within each interactive region in the set of interactive regions during a historical period; and determine the interest level corresponding to each interactive region in the set of interactive regions based on the number of interactions.
[0365] As an optional solution, the above-mentioned device is used to determine the interest level corresponding to each interactive area in a set of interactive areas based on the number of interactions in the following manner: obtaining the number of first accounts of target accounts in the first interactive area and the number of second accounts of target accounts in the second interactive area during the historical period; determining a first interaction frequency based on the number of first interactions and the number of first accounts in the first interactive area during the historical period; determining a second interaction frequency based on the number of second interactions and the number of second accounts in the second interactive area during the historical period; and determining the first interest level corresponding to the first interactive area and the second interest level corresponding to the second interactive area based on the first interaction frequency and the second interaction frequency.
[0366] As an optional solution, the above-mentioned device is used to determine the first interest level corresponding to the first interaction area and the second interest level corresponding to the second interaction area based on the first interaction frequency and the second interaction frequency in the following manner: obtaining the first visual rating parameter corresponding to the first interaction area and the second visual rating parameter corresponding to the second interaction area; performing a weighted operation on the first interaction frequency and the first visual rating parameter based on a preset ratio to obtain the first interest level; and performing a weighted operation on the second interaction frequency and the second visual rating parameter based on a preset ratio to obtain the second interest level.
[0367] As an optional solution, the above-mentioned device is used to obtain the first visual rating parameters corresponding to the first interactive area and the second visual rating parameters corresponding to the second interactive area in the following manner: obtaining the rating factor weights set for a set of rating factors; determining the first visual rating parameters based on the rating factor weights and a set of rating factors corresponding to the first interactive area in the historical period; and determining the second visual rating parameters based on the rating factor weights and a set of rating factors corresponding to the second interactive area in the historical period.
[0368] As an optional solution, the above-mentioned device is used to determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and to add the interest-priority surface to the rendering queue corresponding to the rendering priority in the following manner: the interest level associated with the region where the interest-priority surface is located is compared with a preset threshold to obtain a target comparison result, wherein the preset threshold is used to indicate whether rendering is required, and the interest level is allowed to be dynamically updated when the behavior pattern of the target account changes; if the target comparison result indicates that the interest level is greater than the preset threshold, the rendering priority is determined to be required to render, and the interest-priority surface is added to the rendering priority queue.
[0369] As an optional solution, the above-mentioned device is used to determine the rendering priority of an interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and to add the interest-priority surface to the rendering queue corresponding to the rendering priority in the following manner: The interest level associated with the region where the interest-priority surface is located is compared with multiple preset thresholds to obtain multiple target comparison results, wherein different preset thresholds correspond to different rendering priorities; when the target comparison result indicates that the interest level is greater than a first preset threshold, the rendering priority is determined as the first rendering priority, and the interest-priority surface is added to the first rendering priority queue, wherein the multiple preset thresholds include the first preset threshold; when the target comparison result indicates that the interest level is greater than a second preset threshold, the rendering priority is determined as the second rendering priority, and the interest-priority surface is added to the second rendering priority queue, wherein the multiple preset thresholds include the first preset threshold, the second preset threshold is less than the first preset threshold, the second rendering priority is lower than the first rendering priority, the rendering order of the second rendering priority queue is later than that of the first rendering priority queue, and / or the rendering accuracy of the second rendering priority queue is lower than that of the first rendering priority queue.
[0370] In this application embodiment, the terms "module" or "unit" refer to a computer program or part of a computer program that has a predetermined function and works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functionality of that module or unit.
[0371] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.
[0372] According to one aspect of this application, a computer program product is provided, the computer program product comprising a computer program.
[0373] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0374] Figure 19 A schematic block diagram of a computer system architecture for implementing an electronic device according to embodiments of the present application is shown.
[0375] It should be noted that, Figure 19 The computer system 1900 of the electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.
[0376] like Figure 19 As shown, the computer system 1900 includes a central processing unit (CPU) 1901, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 1902 or programs loaded from storage section 1908 into random access memory (RAM) 1903. The RAM 1903 also stores various programs and data required for system operation. The CPU 1901, ROM 1902, and RAM 1903 are interconnected via a bus 1904. An input / output interface 1905 (I / O interface) is also connected to the bus 1904.
[0377] The following components are connected to the input / output interface 1905: an input section 1906 including a keyboard, mouse, etc.; an output section 1907 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 1908 including a hard disk, etc.; and a communication section 1909 including a network interface card such as a local area network card, modem, etc. The communication section 1909 performs communication processing via a network such as the Internet. A drive 1910 is also connected to the input / output interface 1905 as needed. Removable media 1911, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on the drive 1910 as needed so that computer programs read from them can be installed into the storage section 1908 as needed.
[0378] Specifically, according to embodiments of this application, the processes described in the various method flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 1909, and / or installed from removable medium 1911. When the computer program is executed by central processing unit 1901, it performs various functions defined in the system of this application.
[0379] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 1909, and / or installed from removable media 1911. When the computer program is executed by the central processing unit 1901, it performs various functions provided in the embodiments of this application.
[0380] According to another aspect of the embodiments of this application, an electronic device for implementing the above-described image processing method is also provided. This electronic device may be... Figure 1 The terminal device or server shown. This embodiment uses this electronic device as an example for illustration. Figure 20 As shown, the electronic device includes a memory 2002 and a processor 2004. The memory 2002 stores a computer program, and the processor 2004 is configured to execute the steps in any of the above method embodiments via the computer program.
[0381] Optionally, in this embodiment of the application, the above-mentioned electronic device may be located in at least one of a plurality of network devices in a computer network.
[0382] Optionally, in embodiments of this application, the processor described above may be configured to execute the methods in various embodiments of this application via a computer program.
[0383] Alternatively, as those skilled in the art will understand, Figure 20 The structure shown is for illustrative purposes only. Figure 20 This does not limit the structure of the aforementioned electronic devices. For example, the electronic device may also include components that are more... Figure 20 The more or fewer components shown (such as network interfaces, etc.), or having the same Figure 20 The different configurations shown.
[0384] The memory 2002 can be used to store software programs and modules, such as the program instructions / modules corresponding to the image processing method and apparatus in this embodiment. The processor 2004 executes various functional applications and data processing by running the software programs and modules stored in the memory 2002, thereby implementing the aforementioned image processing method. The memory 2002 may include high-speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 2002 may further include memory remotely located relative to the processor 2004, and these remote memories can be connected to the terminal via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. Specifically, the memory 2002 may be used, but is not limited to, to store information such as scene models. As an example, such as... Figure 20 As shown, the memory 2002 may include, but is not limited to, the acquisition module 1802, decomposition module 1804, determination module 1806, and rendering module 1808 from the image processing apparatus described above. Furthermore, it may include, but is not limited to, other module units from the image processing apparatus described above, which will not be elaborated upon in this example.
[0385] Optionally, the aforementioned transmission device 2006 is used to receive or send data via a network. Specific examples of the network may include wired and wireless networks. In one example, the transmission device 2006 includes a Network Interface Controller (NIC), which can be connected to other network devices and a router via a network cable to communicate with the Internet or a local area network. In another example, the transmission device 2006 is a Radio Frequency (RF) module used for wireless communication with the Internet.
[0386] In addition, the aforementioned electronic device also includes: a display 2008 for displaying the aforementioned target scene; and a connection bus 2010 for connecting the various module components in the aforementioned electronic device.
[0387] In other embodiments, the aforementioned terminal device or server can be a node in a distributed system, wherein the distributed system can be a blockchain system, which is a distributed system formed by connecting multiple nodes through network communication. The nodes can form a peer-to-peer network, and any form of computing device, such as a server, terminal, or other electronic device, can become a node in the blockchain system by joining this peer-to-peer network.
[0388] According to one aspect of this application, a computer-readable storage medium is provided, wherein a processor of an electronic device reads computer instructions from the computer-readable storage medium, and executes the computer instructions, causing the electronic device to perform the image processing method provided in the various alternative implementations of the above-described image processing aspect.
[0389] Optionally, in embodiments of this application, the aforementioned computer-readable storage medium may be configured to store methods for performing the embodiments of this application.
[0390] Optionally, in the embodiments of this application, those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing the hardware related to the terminal device. The program can be stored in a computer-readable storage medium, which may include: flash drive, read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.
[0391] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0392] If the integrated units in the above embodiments are implemented as software functional units and sold or used as independent products, they can be stored in the aforementioned computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause one or more electronic devices to execute all or part of the steps of the methods described in the various embodiments of this application.
[0393] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0394] In the several embodiments provided in this application, it should be understood that the disclosed application can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual couplings, direct couplings, or communication connections may be through some interfaces; indirect couplings or communication connections between units or modules may be electrical or other forms.
[0395] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0396] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0397] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. An image processing method, characterized in that, include: Obtain the scene model to be rendered in the target scene and the interest level corresponding to different regions in the target scene, wherein the interest level is used to represent the degree of user attention to the corresponding region; The scene model is decomposed into at least one tetrahedron, and an interest-priority surface is determined based on the at least one tetrahedron. The position of the interest-priority surface is determined by the target control point and a pre-set weight matrix. The target control point is determined by the vertices of the target tetrahedron. The at least one tetrahedron includes the target tetrahedron. The rendering priority of the interest-priority surface is determined based on the interest level associated with the region where the interest-priority surface is located, and the interest-priority surface is added to the rendering queue corresponding to the rendering priority in sequence. The target scene is displayed by rendering sequentially according to the queue of scenes to be rendered.
2. The method according to claim 1, characterized in that, The step of decomposing the scene model into at least one tetrahedron and determining the interest-priority surface based on the at least one tetrahedron includes: Perform a meshing operation on the scene model to obtain the at least one tetrahedron; Perform an identification and analysis operation on each of the at least one tetrahedrons to determine the vertex corresponding to each tetrahedron; The interest-priority surface is determined based on the vertices corresponding to each tetrahedron.
3. The method according to claim 2, characterized in that, The step of determining the interest-priority surface based on the vertices corresponding to each tetrahedron includes: Obtain a predetermined weight matrix, wherein an element in the weight matrix represents the contribution weight of a vertex of the target tetrahedron to a control point, and the target tetrahedron represents any tetrahedron among the at least one tetrahedrons associated with any of the interest priority surfaces. The position of each target control point is determined using linear interpolation based on the vertex positions of the target tetrahedron. The control weight corresponding to each target control point is determined based on the distance between the position of each target control point and the center of the target tetrahedron. The interest-priority surface is determined based on the position and control weight of each target control point, wherein the interest-priority surface is represented as a polynomial including at least two three-dimensional spatial parameters.
4. The method according to claim 3, characterized in that, The method further includes: The normal data corresponding to the interest-priority surface is determined based on the polynomial corresponding to the interest-priority surface. The lighting model used in the interest-first surface rendering process is determined based on the normal data, wherein the lighting model includes at least one of the following: ambient light coefficient, diffuse reflection coefficient, and specular reflection coefficient.
5. The method according to claim 4, characterized in that, The method further includes: Obtain scene information and material properties of the target scene, wherein the scene information includes the size and position of the interest-priority surface; The shading parameters of the target scene are adjusted based on the lighting model, the scene information, and the material properties.
6. The method according to claim 1, characterized in that, After decomposing the scene model into at least one tetrahedron and determining the interest-priority surface based on the at least one tetrahedron, the method further includes: Obtain the dimensions and position of the interest-priority surface; The interest-first surface is assigned a corresponding level of detail based on the size and position, wherein the level of detail is used to indicate the complexity of the surface equation corresponding to the interest-first surface and the rendering accuracy of the interest-first surface.
7. The method according to claim 1, characterized in that, The step of obtaining the scene model to be rendered in the target scene and the interest levels corresponding to different regions in the target scene includes: Obtain the scene model to be rendered in the target scene; Perform a segmentation operation on the target scene to determine a set of interactive areas; Get the number of interactions between the target account and each interactive area within a set of interactive areas during the historical time period; The interest level corresponding to each interactive area in the set of interactive areas is determined based on the number of interactions.
8. The method according to claim 7, characterized in that, Determining the interest level corresponding to each interactive area in the set of interactive areas based on the number of interactions includes: Obtain the number of first accounts of the target account in the first interactive area within the historical time period and the number of second accounts of the target account in the second interactive area within the historical time period; The first interaction frequency is determined based on the number of first interactions that occurred in the first interactive area during the historical period and the number of the first accounts. The second interaction frequency is determined based on the number of second interactions that occurred in the second interactive area during the historical period and the number of second accounts. The first interest level corresponding to the first interaction area and the second interest level corresponding to the second interaction area are determined based on the first interaction frequency and the second interaction frequency.
9. The method according to claim 8, characterized in that, Determining the first interest level corresponding to the first interaction area and the second interest level corresponding to the second interaction area based on the first interaction frequency and the second interaction frequency includes: Obtain the first visual scoring parameters corresponding to the first interactive area and the second visual scoring parameters corresponding to the second interactive area; The first interest level is obtained by performing a weighted operation on the first interaction frequency and the first visual rating parameter based on a preset ratio; The second interest level is obtained by performing a weighted operation on the second interaction frequency and the second visual rating parameter based on the preset ratio relationship.
10. The method according to claim 9, characterized in that, The step of obtaining the first visual scoring parameters corresponding to the first interactive area and the second visual scoring parameters corresponding to the second interactive area includes: Get the weights of the rating factors set for a set of rating factors; The first visual scoring parameter is determined based on the weights of the scoring factors and the set of scoring factors corresponding to the first interactive area within the historical time period. The second visual scoring parameter is determined based on the weights of the scoring factors and the set of scoring factors corresponding to the second interactive area within the historical time period.
11. The method according to claim 1, characterized in that, The step of determining the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and sequentially adding the interest-priority surfaces to the rendering queue corresponding to the rendering priority, includes: The interest level associated with the region where the interest-priority surface is located is compared with a preset threshold to obtain a target comparison result. The preset threshold is used to indicate whether rendering is required. The interest level is allowed to be dynamically updated when the behavior pattern of the target account changes. If the target comparison result indicates that the interest level is greater than the preset threshold, the rendering priority is determined to be required for rendering, and the interest-priority surface is added to the rendering priority queue.
12. The method according to claim 11, characterized in that, The step of determining the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and sequentially adding the interest-priority surfaces to the rendering queue corresponding to the rendering priority, includes: The interest level associated with the region where the interest-priority surface is located is compared with multiple preset thresholds to obtain multiple target comparison results, wherein different preset thresholds correspond to different rendering priorities; If the target comparison result indicates that the interest level is greater than a first preset threshold, the rendering priority is determined as the first rendering priority, and the interest-priority surface is added to the first rendering priority queue, wherein the plurality of preset thresholds include the first preset threshold; If the target comparison result indicates that the interest level is greater than the second preset threshold, the rendering priority is determined as the second rendering priority, and the interest-priority surface is added to the second rendering priority queue. The multiple preset thresholds include the first preset threshold, the second preset threshold is less than the first preset threshold, the second rendering priority is lower than the first rendering priority, the rendering order of the second rendering priority queue is later than the first rendering priority queue, and / or the rendering accuracy of the second rendering priority queue is lower than that of the first rendering priority queue.
13. An image processing apparatus, characterized in that, include: The acquisition module is used to acquire the scene model to be rendered in the target scene and the interest level corresponding to different regions in the target scene, wherein the interest level is used to represent the degree of user attention to the corresponding region; The decomposition module is used to decompose the scene model into at least one tetrahedron and determine an interest-priority surface based on the at least one tetrahedron. The position of the interest-priority surface is determined by the target control point and a pre-set weight matrix. The target control point is determined by the vertices of the target tetrahedron. The at least one tetrahedron includes the target tetrahedron. The determination module is used to determine the rendering priority of the interest-priority surface based on the interest level associated with the region where the interest-priority surface is located, and to add the interest-priority surface to the rendering queue corresponding to the rendering priority in sequence. The rendering module is used to render the target scene sequentially according to the queue of scenes to be rendered.
14. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored computer program, wherein the computer program can be executed by an electronic device to perform the method described in any one of claims 1 to 12.
15. A computer program product, comprising a computer program, characterized in that, When executed by a processor, the computer program implements the steps of the method described in any one of claims 1 to 12.
16. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method described in any one of claims 1 to 12 through the computer program.