Texture processing method and device, electronic equipment and readable storage medium

By dividing and splicing texture patches in texture processing, the problems of low tolerance and low efficiency of texture processing in the prior art are solved, and more efficient resource utilization and processing efficiency are achieved.

CN119941960APending Publication Date: 2025-05-06NETEASE (HANGZHOU) NETWORK CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411907141.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-23
Publication Date
2025-05-06

AI Technical Summary

Technical Problem

When cutting and reorganizing multiple texture maps, existing texture processing methods require pixel-by-pixel processing, resulting in low fault tolerance, high storage resources and computing resources, and low cutting efficiency.

Method used

By obtaining the texture patch, determine the position to be split and the target vertex pair, divide it into sub-texture patches, and splicing them together to obtain a new texture patch, avoiding the use of pixel-by-pixel processing and masking maps.

Benefits of technology

Improves the fault tolerance of texture processing, saves storage and computing resources, and improves the efficiency of texture splitting and reorganization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119941960A_ABST
    Figure CN119941960A_ABST
Patent Text Reader

Abstract

The invention discloses a texture processing method and device, electronic equipment and a readable storage medium. The method comprises the following steps: acquiring at least one first texture patch configured with a first texture; the first texture is obtained by sampling in the original texture map; determining a to-be-split position corresponding to the first texture patch and a target vertex pair corresponding to the to-be-split position; determining a plurality of sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture surface patch is the local texture of the first texture; splicing the plurality of sub-texture patches to obtain a second texture patch with a second texture; the second texture is obtained by splicing the sub-textures corresponding to the sub-texture patches respectively. According to the method, storage resources in the texture processing process can be saved, the fault tolerance rate of texture splitting is improved, and the splitting and recombining efficiency of the patch texture is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computers, and in particular to a texture processing method, device, electronic device and computer-readable storage medium. Background Art

[0002] Currently, in the process of cutting and reorganizing different regions of multiple different texture maps to obtain new textures, it is usually necessary to cut each texture map through a mask map and then reorganize them.

[0003] However, the above method requires generating an independent mask map for each texture map, and pixel-by-pixel processing is required during the cutting process, and the final cutting process is to obtain the map area to be reorganized. The pixel-by-pixel cutting method has a low fault tolerance rate, easily occupies more storage resources, computing resources, etc., and has low cutting efficiency.

[0004] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present application, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0005] In view of this, the present application provides a model texture processing method, device, electronic device and computer-readable storage medium, which can save storage resources in the texture processing process, improve the fault tolerance of split textures, and improve the efficiency of splitting and reorganizing patch textures.

[0006] In a first aspect, an embodiment of the present application provides a texture processing method, the method comprising:

[0007] Acquire at least one first texture patch configured with a first texture; obtain by sampling in an original texture map;

[0008] Determine the position to be split corresponding to the first texture patch and the target vertex pair corresponding to the position to be split;

[0009] Determine a plurality of sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture patch is a local texture of the first texture;

[0010] A plurality of sub-texture patches are spliced ​​together to obtain a second texture patch having a second texture; the second texture is obtained by splicing the sub-textures corresponding to the sub-texture patches.

[0011] In a second aspect, an embodiment of the present application provides a texture processing device, the device comprising: an acquisition unit, a determination unit, and a splicing unit;

[0012] An acquisition unit, configured to acquire at least one first texture patch configured with a first texture; the first texture is obtained by sampling in an original texture map;

[0013] A determination unit, used to determine a position to be split corresponding to the first texture patch, and a target vertex pair corresponding to the position to be split;

[0014] The determination unit is further used to determine a plurality of sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture patch is a local texture of the first texture;

[0015] The splicing unit is used to splice multiple sub-texture patches to obtain a second texture patch with a second texture; the second texture is obtained by splicing the sub-textures corresponding to each sub-texture patch.

[0016] In a third aspect, an embodiment of the present application provides an electronic device, including:

[0017] Processor; and

[0018] The memory is used to store a data processing program. After the electronic device is powered on and the program is run by the processor, the method of the first aspect is executed.

[0019] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium storing a data processing program, which is executed by a processor to perform the method of the first aspect.

[0020] The texture processing method provided by the present application obtains at least one first texture patch configured with a first texture, and the first texture is sampled in an original texture map; further, a position to be split corresponding to the first texture patch and a target vertex pair corresponding to the position to be split are determined; based on the original vertex of the first texture patch and the target vertex in the target vertex pair, multiple sub-texture patches corresponding to the first texture patch are determined; the sub-texture corresponding to the sub-texture patch is a local texture of the first texture; that is, each sub-texture patch inherits the texture mapping relationship of the first texture patch, and its surface texture does not change; after obtaining multiple sub-texture patches, the above-mentioned multiple sub-texture patches can be spliced ​​to obtain a second texture patch with a second texture; the second texture is obtained by splicing the sub-textures corresponding to each sub-texture patch.

[0021] The above method can indirectly realize the splitting and splicing of the first texture attached to the patch model by determining the sub-texture patch corresponding to the first texture patch and splicing the sub-texture patches, and reorganize the second texture with a different texture layout. When determining each sub-texture patch, only vertex processing needs to be performed on the first texture patch. Compared with the related technology described above, there is no need to generate a mask map for each texture map, which can save storage resources. In addition, there is no need to perform pixel-by-pixel processing on the texture map, the fault tolerance rate of the split texture is higher, and the efficiency of splitting and reorganizing the patch texture is improved. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0023] Figure 1 A flowchart of a texture processing method provided in an embodiment of the present application;

[0024] Figure 2 A schematic diagram of an example of a first texture patch provided in an embodiment of the present application;

[0025] Figure 3 A schematic diagram of an example of dividing a first texture patch into a plurality of patch areas provided in an embodiment of the present application;

[0026] Figure 4 Another schematic diagram of dividing a first texture patch into a plurality of patch areas provided in an embodiment of the present application;

[0027] Figure 5 A schematic diagram of an example of splitting a sub-texture patch corresponding to a first texture patch provided in an embodiment of the present application;

[0028] Figure 6 A schematic diagram of an example of determining a target vertex pair provided in an embodiment of the present application;

[0029] Figure 7 A schematic diagram of an example of splicing sub-texture patches to obtain a second texture patch provided in an embodiment of the present application;

[0030] Figure 8 A schematic diagram of the structure of a texture processing device provided in an embodiment of the present application;

[0031] Fig. 9 A structural block diagram of an electronic device for implementing a texture processing method is provided for an embodiment of the present application. DETAILED DESCRIPTION

[0032] Many specific details are described in the following description to facilitate a full understanding of the present application. However, the present application can be implemented in many other ways than those described herein, and those skilled in the art can make similar generalizations without violating the connotation of the present application, so the present application is not limited by the specific implementation disclosed below.

[0033] It should be noted that the terms "first", "second", "third", etc. in the claims, description and drawings of the present application are used to distinguish similar objects and are not used to describe a specific order or sequence. The data used in this way are interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "including", "having" and their variants are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0034] It should be understood that in the embodiments of the present application, "at least one" refers to one or more, "several" refers to one or more, and "multiple" refers to two or more. "And / or" is only a way to describe the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and subsequent associated objects are in an "or" relationship. "Including A, B and / or C" means including any one, any two, or any three of A, B, and C.

[0035] It should be understood that in the embodiments of the present application, "B corresponding to A", "B corresponding to A", "A corresponds to B", or "B corresponds to A" means that B is associated with A, and B can be determined according to A. Determining B according to A does not mean determining B only according to A, and B can also be determined according to A and / or other information.

[0036] Based on the problems existing in the related technologies described above, the embodiments of the present application provide a texture processing method, device, electronic device and computer-readable storage medium.

[0037] The texture processing method provided in the embodiment of the present application can be performed by at least one electronic device, which can be a terminal and / or a server. The terminal can be a terminal device such as a smart phone, a tablet computer, a laptop computer, etc. The server can be an independent physical server, or a server cluster or a distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms. The server can be hardware or software. When the server is hardware, it can be implemented as a distributed server cluster composed of multiple servers, or it can be implemented as a single server. When the server is software, it can be implemented as multiple software or software modules (such as software or software modules for providing distributed services), or it can be implemented as a single software or software module. The embodiment of the present application does not specifically limit this.

[0038] It should be noted that in the embodiments of the present application, the execution subject of the texture processing method may be a terminal device or a server, or may be executed by both the terminal device and the server at the same time, wherein the terminal device may be a local terminal device or a client device in the aforementioned cloud game. The embodiments of the present application do not limit the type of the execution subject.

[0039] The technical solution of the present application is described in detail below through specific embodiments. It should be noted that the following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0040] like Figure 1 As shown, Figure 1 This is a flowchart of an example of a texture processing method provided in an embodiment of the present application. It should be noted that the steps shown may be performed in a logical order different from that shown in the flowchart of the method. The method may include the following steps S110 to S140.

[0041] Step S110: obtaining at least one first texture patch configured with a first texture; the first texture is sampled from an original texture map.

[0042] Step S120: Determine the position to be split corresponding to the first texture patch and the target vertex pair corresponding to the position to be split.

[0043] Step S130: Determine multiple sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture patch is the local texture of the first texture.

[0044] Step S140: stitching together a plurality of sub-texture patches to obtain a second texture patch having a second texture; the second texture is obtained by stitching together the sub-textures corresponding to the sub-texture patches.

[0045] Next, each of the above steps is described in detail.

[0046] With respect to the above-mentioned step S110, in this embodiment, the first texture patch refers to a two-dimensional patch model with a first texture added to the surface prepared in advance; the first texture patch can be a triangle, a quadrilateral or other shapes, and there is no specific limitation on this. In the subsequent scheme introduction process, the patch model in which the first texture patch is a quadrilateral is taken as an example for introduction.

[0047] It should be noted that, in this embodiment, the sizes of the first texture patches prepared in advance are the same.

[0048] The first texture is the texture information obtained by sampling the original vertices of the first texture patch through the corresponding original texture coordinates in the original texture map. In addition, the original texture map can be a PBR (Physically Based Rendering) texture map. Among them, PBR texture map refers to a set of maps used to represent different material properties. For example, PBR texture map can include basic color maps, normal maps, roughness maps, light maps, height maps and other maps. The texture maps described in this embodiment all refer to PBR maps.

[0049] like Figure 2 As shown, Figure 2 is a specific example of the first texture patch. Figure 2 The first texture patch shown is a quadrilateral patch ABCD, which includes four vertices, four edges and one face; the four vertices are vertex A, vertex B, vertex C and vertex D; the four edges are edge AB, edge BC, edge CD and edge DA; and one face is patch ABCD. In addition, Figure 2 The pattern shown is the first texture pre-configured for the first texture patch ABCD.

[0050] It should be noted that in this embodiment, when performing patch texture processing, one or more first texture patches can be obtained, that is, there is no specific limit on the number of first texture patches obtained. The first textures on the surfaces of the first texture patches can be the same or different, and there is no limit on this.

[0051] For the above step S120, the above position to be split can be understood as: a specific split point for indicating the splitting of the first texture patch. In this embodiment, when splitting the first texture patch, at least two positions to be split need to be determined to split the first texture patch into at least two parts.

[0052] In an optional specific embodiment, when determining the position point to be split corresponding to the first texture patch, it can be automatically determined according to a preset splitting condition, or it can be determined by the user through a specific operation, and there is no specific limitation.

[0053] Exemplarily, when the preset splitting condition is: to evenly split the first texture patch into a number of vertically arranged sub-texture patches of equal size, the above-mentioned positions to be split are each position point located on any two patch edges of the first texture patch and can evenly split the first texture patch; when the preset splitting condition is: to split based on the key feature points of the first texture patch (such as the corner points of the first texture patch, the boundary center points, etc.), the positions to be split are the positions where any two key feature points that can generate the splitting edges are located. For example, in the first texture patch of a quadrilateral, the key feature points can be two relative corner points of the first texture patch that can form a diagonal line, and the positions of the two relative corner points can be determined as the positions to be split; when the preset splitting condition is: to split according to the texture features of the first texture, the best two edges can be automatically determined according to the texture features, and then the best positions to be split are determined on the two patch edges.

[0054] The specific implementation method for the user to determine the position to be split through specific operations can be referred to the detailed description below and will not be described in detail here.

[0055] In this embodiment, the target vertex pair refers to two target vertices located at the same position to be split. In other words, the two target vertices have the same position in the world coordinate system, that is, the target vertex pair is two target vertices with overlapping positions.

[0056] In step S120, the purpose of determining the target vertex pair at the position to be split is to create a new vertex for the first texture patch, so as to generate a sub-texture patch of the first texture patch through the new vertex and the original vertex. For the method of determining the target vertex pair at the position to be split, please refer to the detailed description below, which will not be described here.

[0057] With respect to the above step S130, the multiple sub-texture patches corresponding to the above first texture patch are multiple independent sub-texture patches generated according to the original vertices of the first texture patch and the target vertices in the target vertex pairs generated in step S120. It should be noted that each sub-texture patch and the first texture patch are decoupled from each other. In other words, each sub-texture patch and the first texture patch do not have a dependency relationship with each other, so that each sub-texture patch is a completely independent object, that is, each sub-texture patch is completely independent in terms of geometric structure, material properties, texture, transformation capability, etc., and any modification made to any of the sub-texture patches will not affect the first texture patch or another sub-texture patch.

[0058] It should be noted that each sub-texture patch can inherit the relevant attributes of the first texture patch; in other words, some attributes of each sub-texture patch are the same as those of the first texture patch. For example, the world transformation matrix, texture coordinates, etc. of the first texture patch are not specifically limited. When each patch vertex of a sub-texture patch is the original vertex of the first texture patch, and the texture coordinates corresponding to the patch are the same as the texture coordinates corresponding to each patch vertex in the first texture patch, although the geometric structure of the sub-texture patch has changed relative to the first texture patch, the texture mapping on each sub-texture patch can still accurately reflect the distribution of the first texture on the first texture patch, that is, the sub-texture corresponding to each sub-texture patch is a local texture of the first texture.

[0059] It should be noted that, in the embodiment of the present application, optionally, the multiple sub-texture patches and the first texture patch have the same topological structure, that is, they have the same number of vertices, the same number of edges, the same number of faces, and the connection order between the vertices is also the same (that is, the topological flow of the patches is oriented in the same direction). In this way, it can be ensured that after the first texture patch is split into independent sub-texture patches, the original texture mapping relationship of the first texture patch is used so that the surface texture of each sub-texture patch does not change.

[0060] When there are multiple first texture patches, the sub-texture patches corresponding to each first texture patch are determined respectively to obtain multiple sub-texture patches; this embodiment will hereinafter only exemplarily describe the process of splitting one first texture patch.

[0061] For the specific splitting process of a first texture patch, please refer to the detailed description below and will not be described in detail here.

[0062] For the above step S140, after determining multiple sub-texture patches, each sub-texture patch can be spliced. Optionally, when splicing, it is necessary to further determine factors such as the splicing order and splicing direction of each sub-texture patch. The specific splicing method can be referred to the following description and will not be described here.

[0063] When the sub-texture patches are stitched together, the sub-textures corresponding to the sub-texture patches can be stitched together to obtain a second texture. It can be understood that the texture features of the second texture are partially the same as the texture features of the first texture described above, but the layout is different.

[0064] It can be seen that the above method can indirectly realize the splitting and splicing of the first texture attached to the patch model by determining the sub-texture patch corresponding to the first texture patch and splicing the sub-texture patches, and reorganize the second texture with a different texture layout. When determining each sub-texture patch, only vertex processing is required for the first texture patch. Compared with the related technology described above, there is no need to generate a mask map for each texture map, which can save storage resources. In addition, there is no need to perform pixel-by-pixel processing on the texture map, the fault tolerance rate of the split texture is higher, and the efficiency of splitting and reorganizing the patch texture is improved.

[0065] Next, the texture processing method provided in this application is further introduced in detail.

[0066] In an optional specific embodiment, the step of determining "the target vertex pair corresponding to the position to be split" in step S120 may specifically include the following steps S121 to S122.

[0067] Step S121: Divide the first texture patch into a plurality of patch areas according to the positions to be split.

[0068] Step S122: determining a target vertex pair at a position to be split corresponding to a first patch area among the plurality of patch areas.

[0069] The patch regions refer to a plurality of region ranges obtained by dividing the first texture patch according to the positions to be split, and the corresponding local patch in each patch region is the sub-texture patch to be split.

[0070] The first patch region is any one or more target patch regions to be split that are determined from among the patch regions, and is not specifically limited.

[0071] That is, the purpose of the above steps S121 to S122 is to only determine the target vertex pairs corresponding to the specific positions to be split, rather than determining the target vertex pairs for each position to be split. In this way, the amount of data in the texture processing process can be reduced, making the process of determining the target vertex pairs more targeted.

[0072] In some optional embodiments, whether determining the target vertex pairs corresponding to all positions to be split or determining only the target vertex pairs corresponding to specific positions to be split, the positions to be split can be determined through visualization operations.

[0073] Based on this, illustratively, the step of "determining the target vertex pair corresponding to the position to be split" in the above step S120 or step S122 may specifically include the following steps T1 to T2.

[0074] Step T1: Displaying a first texture patch through a graphical user interface.

[0075] Step T2: In response to the partitioning operation on the first texture patch, determine the position to be split corresponding to the first texture patch.

[0076] That is, in this exemplary embodiment, the first texture patch is visualized in a graphical user interface, and the player can apply a partitioning operation to the visualized first texture patch, determine the positions to be split corresponding to the first texture patch based on the partitioning operation, and then determine the target vertex pairs at all the positions to be split or specific positions to be split.

[0077] The graphical user interface is a visual representation and operation interface for the user to interact with the first texture patch, which includes the virtual space where the first texture patch is located and control information for guiding the user's operation.

[0078] In some optional embodiments, the above-mentioned partitioning operation can be a box selection operation, and the box selection operation can be that the user draws a rectangular box on the first texture patch by dragging the mouse or other input device to select the intersection position of the boundary of the rectangular box and the edge line of the first texture patch to be determined as the position to be split.

[0079] Or, optionally, the partitioning operation may also be a coordinate input operation applied to a coordinate input control, and the position point indicated by the coordinate value input by the user is the position point to be split.

[0080] Alternatively, in some optional specific embodiments, the above partitioning operation may specifically include a first partitioning operation and a second partitioning operation. Based on this, the above step T2 may specifically be implemented through the following steps T20 to T22.

[0081] Step T20: In response to the first partitioning operation, a partition mark is displayed at a first display position in the first texture patch.

[0082] Step T21: In response to the second partition operation, control the partition mark to move from the first display position to the second display position.

[0083] Step T22: In response to the completion of the second partitioning operation, the intersection position of the partition mark located at the second display position and at least two patch edges of the first texture patch is determined as the position to be split.

[0084] Optionally, the first partition operation refers to an operation for processing logic to display a partition identifier in the first texture patch. The first partition operation may include, but is not limited to: a shortcut key operation, a trigger operation for a partition control displayed in a graphical user interface, a voice command operation, an air gesture operation, etc., without specific limitation.

[0085] The first display position refers to a preset default position when the partition mark is displayed for the first time. The default position may be any position in the first texture patch and is not specifically limited.

[0086] The above-mentioned partition mark may include but is not limited to: a rectangular frame mark, a line mark, a partition mark composed of multiple five-pointed stars, or a partition mark composed of other style graphics. It should be noted that in this optional embodiment, the size of the partition mark in the preset direction is equal to or greater than the size of the first texture patch, so that the partition mark can intersect with the patch edge of the first texture patch.

[0087] The second partition operation is to control the movement of the partition mark and determine the position to be split. The second partition operation may include but is not limited to: dragging the partition mark, sliding in the first graphical user interface, clicking, etc., without specific limitation.

[0088] The second display position refers to the target position to which the partition mark indicated by the second partition operation is to be moved. The second display position may be the same as or different from the first display position, which is not specifically limited in this embodiment.

[0089] The end of the second partition operation means that the player stops applying the second partition operation. For example, when the second partition operation is an operation in which the player drags the partition mark with the mouse, the end of the second partition operation means that the player stops dragging and no longer presses the mouse.

[0090] When the second partitioning operation is completed, the intersection position of the partition marker located at the second display position and at least two patch edges of the first texture patch is determined as the position to be split. In this way, in this optional specific embodiment, by determining the target vertex pair at the patch edge of the first texture patch, and generating a sub-texture patch corresponding to the first texture patch through the target vertex pair and the original vertices of the first texture patch, the feeling of "split" the first texture patch is achieved.

[0091] Next, combine Figure 3 A specific example is given to describe in detail the position points to be split corresponding to the first texture patch determined above.

[0092] It should be noted that in Figure 3In the specific example shown, a line mark is a specific example of a partition mark, a preset first shortcut key operation is a specific example of the first partition operation described above, and a sliding operation is a specific example of the second partition operation described above.

[0093] like Figure 3 As shown in (a), in response to a preset first shortcut key operation, a line mark can be displayed at a first display position in the first texture patch ABCD, and the length of the line mark is the same as the length of the patch edge line AB of the first texture patch ABCD.

[0094] Based on this, users can Figure 3 If a sliding operation is applied to the line mark at the first display position shown in (a) in the direction indicated by the dotted arrow, the Figure 3 The line marker shown in (a) moves to Figure 3 At the second display position shown in (b), if the player ends the sliding operation, the Figure 3 As shown in (c), the intersection point E of the line mark at the second display position and the patch edge line AD of the first texture patch ABCD, and the intersection point F of the line mark at the second display position and the patch edge line BC of the first texture patch ABCD are used as the two positions to be split corresponding to the first texture patch ABCD. Therefore, according to the position to be split E and the position to be split F, the first texture patch ABCD can be divided into two patch areas, namely patch area 1 and patch area 2.

[0095] Furthermore, after dividing the patch area 1 and the patch area 2, the patch area 1 and / or the patch area 2 can be used as the above-mentioned first patch area to generate a sub-texture patch that is the same as the corresponding local patch in the patch area 1 and / or the patch area 2 in the first texture patch ABCD, and obtain the sub-texture patch corresponding to the first texture patch ABCD.

[0096] It should be noted that, when the above sliding operation is finished, you can continue Figure 3 As shown in (a), the line mark is displayed at the first display position in the first texture patch ABCD. Repeating the above sliding operation can continue to determine the remaining positions to be split corresponding to the first texture patch, thereby further dividing the first texture patch ABCD according to the remaining positions to be split. This will not be repeated.

[0097] Next, combine Figure 4 A specific example is given to describe in detail the position points to be split corresponding to the first texture patch determined above.

[0098] It should be noted that in Figure 4In the specific example shown, the rectangular frame mark is a specific example of a partition mark, the preset second shortcut key operation is a specific example of the first partition operation described above, and the sliding operation is a specific example of the second partition operation described above.

[0099] like Figure 4 As shown in (a), in response to the second shortcut key operation, a rectangular frame mark A may be displayed at the first display position in the first texture patch ABCD. 1 B 1 C 1 D 1 , the rectangular box marks A 1 B 1 C 1 D 1 Border A 1 B 1 The length of is the same as the length of the patch edge line AB of the first texture patch ABCD.

[0100] Based on this, users can Figure 4 The rectangular frame mark A shown in (a) at the first display position 1 B 1 C 1 D 1 Apply a sliding operation in the direction indicated by the dotted arrow, then the Figure 4 The rectangular box shown in (a) indicates A 1 B 1 C 1 D 1 Move to Figure 4 At the second display position shown in (b), if the player ends the sliding operation, the Figure 4 As shown in (c), the rectangular frame located at the second display position is marked A 1 B 1 C 1 D 1 Intersection point A with the edge line AD of the patch 1 Location, intersection D 1 The location and the rectangular frame mark A 1 B 1 C 1 D 1 Mark the intersection point B with the edge line BC of the face 1 Location, intersection C 1 The positions are used as the four positions to be split corresponding to the first texture patch ABCD; thus, according to the position to be split A 1 、Position B to be split 1 、Position C to be split 1 and the position to be split D 1, the first texture patch ABCD can be divided into three patch areas, namely patch area 1, patch area 2 and patch area 3.

[0101] Furthermore, after dividing into patch area 1, patch area 2 and patch area 3, patch area 1, patch area 2 and / or patch area 3 can be used as the above-mentioned first patch area to determine the sub-texture patch that is the same as the corresponding local patch in patch area 1, patch area 2 and / or patch area 3 in the first texture patch ABC, and obtain multiple sub-texture patches corresponding to the first texture patch ABCD.

[0102] It should be noted that, when the above sliding operation is finished, you can continue Figure 4 As shown in (a), the rectangular frame mark is displayed at the first display position in the first texture patch ABCD. Repeating the above sliding operation can continue to determine the remaining positions to be split corresponding to the first texture patch, thereby further dividing the first texture patch ABCD according to the remaining positions to be split. This will not be repeated.

[0103] It can be seen that when the sub-texture patch corresponding to the first texture patch is determined by the above method, the splitting operation is convenient, and there is no limit on the number of sub-patterns split. The technical solution of splitting through the Mask map described in the previous article is affected by the cost-effectiveness of the splitting, and usually only 8 sub-patches can be split at a time. Therefore, in some exemplary implementations disclosed in the present application, the splitting efficiency is high and the scalability is relatively high.

[0104] Next, the specific implementation method of "splitting the local patch corresponding to the first patch area from the multiple patch areas" in the above step S122 is introduced in detail.

[0105] In some optional embodiments, based on the foregoing description, when the first texture patch is visualized in a graphical user interface, the "determining the target vertex pair at the position to be split corresponding to the first patch area among multiple patch areas" in the above step S122 can be specifically implemented through the following steps S1220 to S1221.

[0106] Step S1220: In response to the region selection operation, determining the patch region selected by the region selection operation as a first patch region;

[0107] Step S1221: In response to the splitting operation, determine a target vertex pair at a position to be split corresponding to the first patch area.

[0108] In this embodiment, the function of the above region selection operation is to select a first patch region where a specific to-be-split position is located from multiple patch regions corresponding to the first texture patch. The above region selection operation may include, but is not limited to, a click operation, a slide operation, a box selection operation, a shortcut key operation, a voice command operation, etc., and is not specifically limited.

[0109] For example, when the area selection operation is a click operation, the patch area selected by the above area selection operation is: the patch area where the display position coincides with the click position of the click operation; when the area selection operation is a sliding operation, the patch area selected by the above area selection operation can be: the patch area passed by the sliding track of the sliding operation.

[0110] The above-mentioned splitting operation may include but is not limited to: touch operations such as clicking, sliding, and pressing operations on the splitting controls displayed in the graphical user interface; or, clicking, sliding, and pressing operations on the first surface area; or, shortcut key operations, voice command operations, air gesture operations, etc., without specific restrictions.

[0111] That is, the above step S1221 limits the timing of determining the target vertex pair at the position to be split corresponding to the first face patch area. That is, after each position to be split is determined, the target vertex pair is not determined immediately, but is split when the player needs to generate a sub-texture face patch. The user can control the progress of texture processing in real time.

[0112] In an optional specific embodiment, according to the above splitting operation, the sub-texture patch corresponding to the first patch area and the sub-texture patch corresponding to the second patch area can also be displayed distinguishably; wherein the second patch area is the remaining patch areas in each patch area except the first patch area.

[0113] In this embodiment, the above-mentioned differential display means displaying the sub-texture patch corresponding to the first patch area and the sub-texture patch corresponding to the second patch area in different ways. The differential display method may include, but is not limited to: displaying the sub-texture patch corresponding to the first patch area and the sub-texture patch corresponding to the second patch area in different colors; highlighting the sub-texture patch corresponding to the first patch area and darkening the sub-texture patch corresponding to the second patch area; bolding the patch edge of the sub-texture patch corresponding to the first patch area, or displaying it in different colors, etc., which is not specifically limited in this embodiment.

[0114] Further, when the sub-texture patches corresponding to the first patch area and the sub-texture patches corresponding to the second patch area are displayed in different colors, if there are multiple first patch areas, the sub-texture patches corresponding to different first patch areas may be displayed by assigning random colors, specifically, the vertices of the sub-texture patches corresponding to different first patch areas may be assigned random vertex colors. The specific process of assigning random colors is not described in detail in this embodiment.

[0115] By distinguishing and displaying the sub-texture patches corresponding to different patch areas, the user can be assisted in further determining whether the currently determined sub-texture patch is the desired sub-texture patch, thereby improving the user's texture processing experience.

[0116] Next, combine Figure 5 The specific example shown in FIG. 1 is a detailed description of the interactive process of splitting the sub-texture patch corresponding to the first patch area from the multiple patch areas. Figure 5 In the specific examples shown, the click operation is a specific example of the area selection operation described above, and the click operation on the split control is a specific example of the split operation described above.

[0117] like Figure 5 As shown, a first texture patch ABCD is displayed in the graphical user interface 1000, and the first texture patch ABCD is divided into two patch areas, namely patch area 1 and patch area 2; in addition, a split control 10 is also displayed in the graphical user interface.

[0118] Based on the graphical user interface 1000, if the user applies a click operation to the patch area 2, it can indicate that the patch area 2 is selected as the first patch area, that is, in response to the click operation, the graphical user interface 1000 can be switched to the graphical user interface 1001, and the patch area 2 is selected in a semi-transparent display manner in the graphical user interface 1001.

[0119] Based on the graphical user interface 1001, in the case where the patch area 2 is used as the first patch area, if the user applies a click operation to the split control 10, the sub-texture patch identical to the local patch in the patch area 2 can be separated from the first texture patch ABCD, that is, the sub-texture patch corresponding to the patch area 2 is decoupled from the first texture patch ABCD. That is, in response to the click operation, the graphical user interface 1001 can be switched to the graphical user interface 1002, in which the patch edge of the local patch of the patch area 2 is displayed in bold, indicating that the patch identical to the local patch in the patch area 2 has been determined as a sub-texture patch corresponding to the first texture patch ABCD, and the split control 10 is grayed out to indicate that the split control 10 has been clicked.

[0120] The area division method for the first texture patch ABCD displayed on the graphical user interface 1000 can refer to the above description of Figure 3 The introduction of will not be repeated here.

[0121] In some optional embodiments, based on the description above, the first texture patch is visually displayed in the graphical user interface, and the first texture patch is divided into multiple patch areas through a partitioning operation, and multiple sub-texture patches corresponding to each first texture patch are obtained through a splitting operation. The step S140 described above can be specifically implemented in the following manner: in response to a splicing operation, multiple sub-texture patches are spliced ​​to obtain a second texture patch with a second texture. The splicing operation may include, but is not limited to: shortcut key operation, trigger operation (such as click operation, press operation, etc.) for the splicing control provided in the graphical user interface, voice command operation, air gesture operation, etc., without specific limitation.

[0122] Furthermore, a specific method for determining the target vertex pair at the position to be split corresponding to the first face patch area in the above step S122 or step S1221 is introduced in detail.

[0123] In an optional specific embodiment, when the position to be split is not the position of the original vertex of the first texture patch, a target vertex pair is generated at the position to be split; when the position to be split is the position of the original vertex of the first texture patch, the original vertex is split into a target vertex pair.

[0124] It can be understood that the original vertices of the first texture patch are the vertex set initially defined to create the first texture patch, and these original vertices determine the initial structure of the first texture patch. Figure 3 As shown, the original vertices of the first texture patch ABCD are vertex A, vertex B, vertex C and vertex D respectively.

[0125] The position to be split is not the position of the original vertex of the first texture patch, which can be understood as the position to be split and the position of the original vertex of the first texture patch do not overlap; the position to be split is the position of the original vertex of the first texture patch, which can be understood as the position to be split overlaps with the position of the original vertex of the first texture patch.

[0126] The above-mentioned generation of a target vertex pair at the to-be-split position point refers to inserting two target vertices at the to-be-split position point that originally has no vertices, while at the to-be-split position point that has the original vertex, there is no need to reinsert, and only the vertex attributes of the original vertex need to be copied to achieve the effect of splitting the original vertex into two target vertices.

[0127] like Figure 5 As shown in FIG. 1 , the position points to be split determined according to the line mark are divided into the position of the intersection point E and the position of the intersection point F, but the positions of the intersection point E and the intersection point F do not coincide with any of the four original vertices of the first texture patch ABCD: vertex A, vertex B, vertex C and vertex D. Therefore, the target vertex pair (E) corresponding to the position of the intersection point E can be generated at the position of the intersection point E. 1 , E 2 ), and generate the target vertex pair (F 1 , F 2 ); In other words, two new target vertices are inserted at the locations of intersection point E and intersection point F respectively.

[0128] Or, if Figure 6 As shown, when the first texture patch is a triangular patch model ABC, it is assumed that the intersection point of the line mark with the patch edge line BC of the triangular patch model ABC is the intersection point D, and the intersection point with the patch edge line AB or the patch edge line AC is the original vertex A of the triangular patch model ABC. In this case, the target vertex pair (D 1 , D 2 ), split the original vertex A into target vertex pairs (A 1 , A 2 ).

[0129] Next, the specific determination process of "determining a plurality of sub-texture patches corresponding to the first texture patch according to the original vertices of the first texture patch and the target vertices in the target vertex pairs" in the above-described step S130 is introduced.

[0130] In some optional implementations, the above step S130 can be specifically implemented through the following steps S131 to S133.

[0131] Step S131: Based on the preset topological connection relationship, the original vertex and the target vertex are connected to obtain a plurality of sub-faces without texture.

[0132] Step S132: Determine the target texture coordinates of the patch vertices of each sub-patch in the original texture map; the patch vertices are the original vertices or the target vertices.

[0133] Step S133: sampling the original texture map according to the target texture coordinates of the patch vertices of each sub-patch to obtain a plurality of sub-texture patches corresponding to the first texture patch.

[0134] In this embodiment, the above-mentioned preset topological connection relationship refers to the connection relationship between the original vertices of the preset first texture patch and the determined target vertices. This connection relationship determines the patch shape of each sub-texture patch to be generated, as well as the direction of the patch edges of each sub-texture patch, etc.

[0135] Optionally, the preset topological connection relationship may be the same as the connection relationship between the vertices of the first texture patch, so as to generate a sub-texture patch having the same topological relationship as the first texture patch. Figure 5 As shown, for the first texture patch ABCD, the original vertices are connected clockwise, that is, the connection order of the original vertices is: original vertex A→original vertex B→original vertex C→original vertex D. Then the connection relationship between the patch vertices of each sub-texture patch determined for the first texture patch ABCD is the same as the connection relationship between the original vertices of the first texture patch.

[0136] After the original vertex and each target vertex are connected based on a preset topological connection relationship, a plurality of sub-faces without textures can be generated.

[0137] For example, Figure 5 As shown, after determining the target vertex pair (E 1 , E 2 ) and the target vertex pair corresponding to the position point F to be split (F 1 , F 2 ) After that, according to the clockwise connection order of the original vertices of the first texture patch ABCD, the original vertex A, the original vertex B, the target vertex F 1 and the target vertex E 1 Connect them in a clockwise direction to generate a sub-face ABF without texture. 1 E 1 , the target vertex E 2 、Target vertex F 2 , the original vertex C, and the original vertex D are connected in a clockwise direction to generate a sub-face E without texture. 2 F2 CD; ABF of non-textured patches is not included here 1 E 1 And sub-patch E 2 F 2 CD is used for schematic display.

[0138] Furthermore, the above step S132 can be implemented specifically through the following steps S1320 to S1321.

[0139] Step S1320: for each sub-patch, determine the target patch edge lines corresponding to the patch vertices of the sub-patch in the first texture patch.

[0140] Step S1321: Determine the target texture coordinates of the patch vertices of the sub-patch in the original texture map according to the original texture coordinates corresponding to the original vertices corresponding to the edge lines of the target patch in the original texture map.

[0141] The target patch edge refers to the patch edge to which the position of each patch vertex of the sub-patch in the world coordinate system belongs in the first texture patch. Figure 5 As shown, sub-face E 2 F 2 Vertex E of CD patch 2 The target patch edge line in the first texture patch ABCD is the patch edge line AD, and the sub-patch E 2 F 2 Vertex F of CD patch 2 The target patch edge line in the first texture patch ABCD is the patch edge line BC.

[0142] The original vertices corresponding to the edge of the target patch are the two end points of the edge of the target patch. 2 F 2 Vertex E of CD patch 2 When the target patch edge line in the first texture patch ABCD is the patch edge line AD, the original vertices corresponding to the target patch edge line AD include: original vertex A and original vertex D; when the sub-patch E 2 F 2 Vertex F of CD patch 2 When the target patch edge line in the first texture patch ABCD is the patch edge line BC, the original vertices corresponding to the target patch edge line BC include: an original vertex B and an original vertex C.

[0143] It should be noted that, for the above-mentioned step S1321, when the patch vertex of the sub-patch is the original vertex of the first texture patch, the patch vertex can inherit the vertex data of the corresponding original vertex, including the texture coordinates of the original vertex. Therefore, the original texture coordinates corresponding to the corresponding original vertex in the original texture map can be determined as the target texture coordinates of the patch vertex in the original texture map.

[0144] When the patch vertex of the sub-patch is not the original vertex of the first texture patch, it is necessary to reallocate the target texture coordinates for the patch vertex. Specifically, when the patch vertex of this type is determined, the original texture coordinates of the original vertex of the target patch edge corresponding to the patch vertex can be interpolated to obtain the target texture coordinates of the patch vertex in the original texture map. In this way, the texture mapping of the first texture patch and the corresponding sub-texture patches can be kept consistent, achieving a visual effect in which the sub-texture of the generated sub-texture patch is consistent with the texture in the corresponding patch area.

[0145] The specific process of the interpolation calculation in this embodiment is not described in detail. The interpolation calculation may be linear interpolation calculation, bilinear interpolation calculation, etc.

[0146] For example, Figure 5 As shown, sub-face E 2 F 2 Vertex E of CD patch 2 The target texture coordinates in the original texture map can be calculated by interpolating the original texture coordinates of the original vertex A and the original texture coordinates of the original vertex D corresponding to the target face edge AD.

[0147] In this way, the target texture coordinates of the vertex of each sub-patch can be sampled in the original texture map to obtain multiple sub-texture patches corresponding to the first texture patch. Figure 5 As shown, sub-face E 2 F 2 CD and sub-face E 2 F 2 CD samples the target texture coordinates to obtain the sub-texture patch ABF with texture 1 E 1 and sub-texture patch E 2 F 2 CD. The first texture patch ABCD is split into sub-texture patches ABF corresponding to patch area 1. 1 E 1 , and the sub-texture patch E corresponding to patch area 2 2 F 2 The effect of CD.

[0148] It can be seen that, through the embodiments described above, the first texture patch can be split into a plurality of independent sub-texture patches, and the surface of each sub-texture patch has a local texture of the first texture.

[0149] In some optional embodiments, in the above step S140, "joining the multiple sub-texture patches to obtain a second texture patch having a second texture" can be specifically implemented through the following steps S141 to S142.

[0150] Step S141: determining the first position and the second position of each sub-texture patch in a preset world coordinate system.

[0151] Step S142: Control each sub-texture patch to move from the first position to the second position, and splice them to obtain a second texture patch with a second texture.

[0152] Regarding the above-mentioned step S141, in this embodiment, the above-mentioned preset world coordinate system is a global reference system for the virtual space where the first texture patch is located, and is used to describe the position and posture of virtual objects (such as the first texture patch and the multiple sub-texture patches obtained by splitting) located inside the virtual space.

[0153] When determining multiple sub-texture patches corresponding to the first texture patch, each sub-texture patch can inherit the world transformation matrix of the first texture patch, where the world transformation matrix is ​​used to indicate all transformation information of the first texture patch, and the transformation information may include but is not limited to information such as the position, rotation, and scaling of the first texture patch in the world coordinate system.

[0154] Therefore, in this embodiment, the first position of each sub-texture patch in the world coordinate system is the initial position of the patch area corresponding to each sub-texture patch in the first texture patch in the world coordinate system.

[0155] The second position refers to the target position of each sub-texture patch in the world coordinate system when the sub-texture patches are spliced. The determination of the second position of each sub-texture patch can be described in detail below and will not be described here.

[0156] It should be noted that, in this embodiment, the position of the first texture patch or each sub-texture patch in the world coordinate system is represented by the position coordinates of a key position point, for example, the key position point may be the geometric center point, special vertex, etc. of the first texture patch or each sub-texture patch. Then the first position refers to the first position of the key position point of the sub-texture patch in the world coordinate system, and the second position refers to the second position of the key position point of the sub-texture patch in the world coordinate system.

[0157] For the above step S142, when the second position of each sub-texture patch in the world coordinate system is determined, each sub-texture patch can be moved from the first position to the second position in turn to complete the splicing of the sub-texture patches and obtain a second texture patch with a second texture; the second texture is obtained by splicing the sub-textures corresponding to each sub-texture patch.

[0158] In an optional specific embodiment, the texture orientation of the second texture is the same as the texture orientation of the first texture. The same texture orientation means that the sub-texture patches obtained by splitting are not rotated so that the texture direction of the surface texture does not change. For example, when the texture orientations in the first texture are all horizontal, the texture orientation in the second texture obtained by splicing is also horizontal.

[0159] However, whether to adjust the texture orientation may be determined according to specific needs. Specifically, the orientation of the sub-texture patch may be adjusted to adjust the orientation of the sub-texture corresponding to each sub-texture patch.

[0160] Next, the specific implementation method of "determining the second position of each sub-texture patch in the preset world coordinate system" in the above step S141 is further introduced.

[0161] In some optional specific embodiments, "determining the second position of each sub-texture patch in a preset world coordinate system" in the above step S141 can be specifically implemented through the following steps S1410 to S1411.

[0162] Step S1410: Determine the splicing order of each sub-texture patch.

[0163] Step S1411: determining the second position of each sub-texture patch in the world coordinate system in turn according to the splicing order.

[0164] The above stitching order refers to the order in which the sub-texture patches are stitched.

[0165] It can be understood that the second position of the first spliced ​​sub-texture patch in the world coordinate system can be regarded as the reference splicing position. After determining the reference splicing position, it is necessary to further determine the second position corresponding to each sub-texture patch in turn according to the splicing order, splicing direction and the reference splicing position, so as to achieve the purpose of splicing each sub-texture patch into a whole piece.

[0166] Optionally, the stitching order of the above-mentioned sub-texture patches can be the selection order when the selection operation described above determines the sub-texture patches; it can also be a stitching order automatically determined according to texture features or the patch size of each sub-texture patch; or it can also be a stitching order determined in response to a sorting operation according to the sorting operation, for example, the sorting operation can be a sorting operation for the model identifier corresponding to each sub-texture patch, and there is no restriction on this.

[0167] In an optional specific embodiment, the above step S1411 can be implemented through the following steps S1 to S3.

[0168] Step S1: Determine the preset position in the world coordinate system as the second position in the world coordinate system of the sub-texture patch that ranks first in the splicing order.

[0169] Step S2: Determine the second position of the i-th sub-texture patch in the splicing order in the world coordinate system according to the second position of the i-1th sub-texture patch and the size value of the i-1th sub-texture patch in the preset axial direction of the world coordinate system.

[0170] Step S3: When it is detected that i is less than N, set i=i+1, and return to execute steps S2 to S3 until it is detected that i is equal to N; i traverses 2 to N, N is the number of sub-texture patches, i is an integer, and N is an integer greater than 1.

[0171] The preset position is a pre-specified position of the second texture patch in the world coordinate system. The preset position may be the origin position of the world coordinate system, or any other position, which is not specifically limited in this embodiment.

[0172] In this embodiment, the preset position is determined as the second position of the sub-texture patch ranked first in the splicing order in the world coordinate system. In other words, the sub-texture patch ranked first in the splicing order is moved to the preset reference splicing position, and the remaining sub-texture patches are spliced ​​with the sub-texture patch ranked first as the reference.

[0173] If there is only one sub-texture patch, the sub-texture patch can be moved from the first position to the second position, and this embodiment will not be described in detail. The following description will take the case where there are multiple sub-texture patches as an example to introduce the solution.

[0174] In this embodiment, it is assumed that the number of sub-texture patches is N, where N is an integer greater than 1, which means that there are multiple sub-texture patches. i represents the sorting position of each sub-texture patch in the stitching order, where i traverses 2 to N and i is an integer. That is, when i=2, it indicates the sub-texture patch ranked second in the stitching order, and when i=N, it indicates the sub-texture patch ranked last in the stitching order, which can also be understood as the last sub-texture patch to be stitched. Therefore, when i=N is detected, it means that the second position of each sub-texture patch has been determined, and the above steps S2 to S3 are stopped.

[0175] The preset axis in the above step S2 refers to the direction of the specified coordinate axis in the preset world coordinate system, and the preset axis is used to specify the splicing direction of each sub-texture patch. For example, when the above preset axis is the Z axis in the world coordinate system, and the Z axis is used to indicate the height attribute of the virtual space, it indicates that each sub-texture patch is arranged vertically and spliced ​​along the Z axis; when the above preset axis is the X axis in the world coordinate system, and the X axis is used to indicate the left and right horizontal directions of the virtual space, it indicates that each sub-texture patch is arranged horizontally and spliced ​​along the X axis.

[0176] The size value of the sub-texture patch in the preset axis direction refers to the length value, width value, or height value of the sub-texture patch. For example, when the preset axis direction is the Z axis, the size value of the sub-texture patch in the Z axis direction is the height value of the sub-texture patch; when the preset axis direction is the X axis, the size value of the sub-texture patch in the X axis direction is the length value of the sub-texture patch.

[0177] The above step S2 can be specifically implemented in the following manner: the sum of the first coordinate component in the coordinate corresponding to the second position of the i-1th sub-texture patch and the size value of the i-1th sub-texture patch in the preset axial direction is determined as the first coordinate component in the coordinate corresponding to the second position of the i-th sub-texture patch, the second coordinate component in the coordinate corresponding to the second position of the i-th sub-texture patch is determined as the second coordinate component in the coordinate corresponding to the second position of the i-th sub-texture patch, and the third coordinate component in the coordinate corresponding to the second position of the i-1th sub-texture patch is determined as the third coordinate component in the coordinate corresponding to the second position of the i-th sub-texture patch. The above first coordinate component is the coordinate component in the preset axial direction.

[0178] For example, assuming that the preset axis is the Z axis in the world coordinate system, and the Z axis is used to indicate the height attribute of the virtual space. Based on this, when the second position of the first sub-texture patch is (x 1 ,y 1 , z 1), and the size data of the first sub-texture patch in the Z-axis direction is l 1 , then the second position of the second sub-texture patch is (x 1 ,y 1 , z 1 +l 1 ).

[0179] In some optional embodiments, the above-described step S142 may be specifically implemented through the following steps S1420 to S1422.

[0180] Step S1420: For each of the sub-texture patches, determine the key position points on the target edge line of the sub-texture patch, and determine the key position points as the origin of the model coordinate system corresponding to the sub-texture patch; the target edge line is used to connect the reference vertices of the sub-texture patch, and the reference vertex has the smallest coordinate component in the axial direction among the patch vertices of the sub-texture patch.

[0181] Step S1421: Determine a displacement vector between a first position and a second position corresponding to the key position point in the world coordinate system.

[0182] Step S1422: According to the displacement vector, control the sub-texture patch to move from the first position to the second position.

[0183] It should be noted that in the embodiment of the present application, the movement processes of different sub-texture patches are the same, and only the movement process of one sub-texture patch is taken as an example for introduction.

[0184] The above target edge is used to connect the reference vertex of the sub-texture patch, and the reference vertex has the smallest coordinate component on the preset axis among the vertices of the sub-texture patch; for example, when the preset axis is the Z axis, and the Z axis represents the height of the virtual space, the reference vertex with the smallest coordinate component on the Z axis is the bottom vertex of the sub-texture patch, and the target edge is the bottom edge of the sub-texture patch. Figure 3 As shown in (c), when the sub-texture patch ABF 1 E 1 When it is a sub-texture patch, the sub-texture patch ABF 1 E 1 The target edge is edge F 1 E 1 .

[0185] The above key position point is any position point on the target edge line, for example, it can be a vertex of the sub-texture patch located on the target edge line, or it can be the geometric center point of the target edge line of the sub-texture patch. For example, as in the above example, when the target edge line is Figure 3 The edge line F shown in (c) 1 E1 When the key position point can be vertex E 1 , or vertex F 1 , or the edge F 1 E 1 The center point of the image is not specifically limited.

[0186] It is understandable that when the sub-texture patch is moved from the first position to the second position, the sub-texture patch is translated as a whole based on a key position point of the sub-texture patch. Generally speaking, when the sub-texture patch is moved in the world coordinate system, the position of the model coordinate system of the sub-texture patch relative to the world coordinate system is actually adjusted; specifically, the position of the origin of the model coordinate system of the sub-texture patch in the world coordinate system can be adjusted to achieve the overall movement of the sub-texture patch.

[0187] In this embodiment, the model coordinate system refers to the local coordinate system corresponding to the patch model, which is a coordinate system defined relative to the patch model. It is different from the world coordinate system. The origin and axis of the model coordinate system are usually associated with the patch model itself, rather than fixed to the entire virtual space.

[0188] However, it should be noted that when each sub-texture patch is split, the origin of the model coordinate system established by each sub-texture patch is not necessarily located on the target edge line. Therefore, before controlling each sub-texture patch to move to the second position, the origin of the model coordinate system of the sub-texture patch needs to be reset so that the origin is located on the target edge line. Based on this, in this embodiment, the key position point located on the target edge line can be determined as the origin of the model coordinate system corresponding to the sub-texture patch to reset the model coordinate system.

[0189] After resetting the origin of the model coordinate system of the sub-texture patch, a displacement vector between the first position and the second position corresponding to the key position point in the world coordinate system can be further determined. The displacement vector is used to indicate how to move the key position point (the origin of the model coordinate system) from the first position to the second position. Therefore, the sub-texture patch can be moved from the first position to the second position based on the displacement vector.

[0190] In this way, when the key position point is located on the target edge line, after moving the key position point from the first position to the second position, it is ensured that the two adjacent sub-texture patches are completely matched in the preset axis, avoiding obvious seams or discontinuities, that is, eliminating the gaps or overlaps between the sub-texture patches at the joints of the target edge line, making the splicing alignment more intuitive and accurate, and achieving seamless splicing.

[0191] It should be noted that, when each sub-texture patch is moved from the first position to the second position, in addition to translation, each sub-texture patch may also be rotated and / or scaled, which is not specifically limited in this embodiment.

[0192] Next, combine Figure 7 The specific example shown is used to exemplify the texture processing method provided in this application.

[0193] like Figure 7 As shown, the first texture patch A obtained can be displayed in the graphical user interface. 1 B 1 C 1 D 1 , first texture patch A 2 B 2 C 2 D 2 , first texture patch A 2 B 3 C 3 D 2 And the first texture patch A 4 B 4 C 4 D 4 , and the first textures configured for these four first texture patches are different.

[0194] For the above four first texture patches, refer to Figure 3 The specific examples of the partitioning operation and splitting operation introduced in the previous section can be used to convert the first texture patch A 1 B 1 C 1 D 1 Divide into patch area 1 to patch area 4, and take the first texture patch A 2 B 2 C 2 D 2 Split into patch area 5 to sub-texture patch area, and divide the first texture patch A 3 B 3 B 3 D 3 Divide into patch area 8 to patch area 11, and divide the first texture patch A 4 B 4 C 4 D 4 It is divided into patch area 12 and patch area 13.

[0195] After dividing the above-mentioned first texture patches into a plurality of patch areas, you can refer to Figure 5The region selection operation and splitting operation shown in the figure determine the sub-texture patches corresponding to each first texture patch. Assuming that patch region 1, patch region 3, patch region 6, patch region 8, patch region 11 and patch region 13 are selected respectively, the first texture patch A can be 1 B 1 C 1 D 1 Generate a sub-texture patch 1 that is the same as the local patch in patch area 1, and a sub-texture patch 3 that is the same as the local patch in patch area 3; for the first texture patch A 2 B 2 C 2 D 2 Generate a sub-texture patch 6 that is the same as the local patch in the patch area 6; for the first texture patch A 3 B 3 C 3 D 3 Generate a sub-texture patch 8 that is the same as the local patch in patch area 8, and a sub-texture patch 11 that is the same as the local patch in patch area 11; for the first texture patch A 4 B 4 C 4 D 4 A sub-texture patch 13 identical to the local patch in the patch region 13 is generated.

[0196] Assume that Figure 7 In the specific example shown, the splicing order of the above sub-texture patches is: sub-texture patch 1, sub-texture patch 3, sub-texture patch 6, sub-texture patch 11, sub-texture patch 8 and sub-texture patch 13. Then, the second positions corresponding to sub-texture patch 1, sub-texture patch 3, sub-texture patch 6, sub-texture patch 11, sub-texture patch 8 and sub-texture patch 13 can be determined in sequence.

[0197] Specifically, assuming that in this specific example, the world coordinates of the reference position to be stitched are (x 1 ′ ,y 1 ′ ,z 1 ′ ); the splicing direction of each sub-texture patch is the Z-axis direction, that is, each sub-texture patch is spliced ​​vertically; the size value of sub-texture patch 1 in the Z-axis direction is l 1 , the size of sub-texture patch 3 in the Z-axis direction is l 2 , the size of sub-texture patch 6 in the Z-axis direction is l 3 , the size of the sub-texture patch 11 in the Z-axis direction is l 4 , the size of sub-texture patch 8 in the Z-axis direction is l 5The size of the sub-texture patch 13 in the Z-axis direction is l 6 .

[0198] Based on the above assumptions, the reference position (x 1 ′ ,y 1 ′ ,z 1 ′ ) is determined as the second position corresponding to sub-texture patch 1, and the second position corresponding to sub-texture patch 3 is (x 1 ′ ,y 1 ′ ,z 1 ′ +l 1 ), the second position corresponding to sub-texture patch 6 is (x 1 ′ ,y 1 ′ ,z 1 ′ +l 1 +l 2 ), the second position corresponding to the sub-texture patch 11 is (x 1 ′ ,y 1 ′ ,z 1 ′ +l 1 +l 2 +l 3 ), the second position corresponding to the sub-texture patch 8 is (x 1 ′ ,y 1 ′ ,z 1 ′ +l 1 +l 2 +l 3 +l 4 ) and the second position corresponding to the sub-texture patch 13 is (x 1 ′ ,y 1 ′ ,z 1 1 +l 1 +l 2 +l 3 +l 4 +l 5 ).

[0199] Further, when sub-texture patch 1, sub-texture patch 3, sub-texture patch 6, sub-texture patch 11, sub-texture patch 8 and sub-texture patch 13 are generated, the origin of the model coordinate system established for each sub-texture patch is the geometric center of each sub-texture patch. In this case, before controlling each sub-texture patch to move to the second position, the center position point on the bottom edge line of each sub-texture patch can be reset to the origin of the model coordinate system of each sub-texture patch.

[0200] like Figure 7 As shown, the center position point E on the bottom edge line of sub-texture patch 1 is determined as the origin of the model coordinate system of sub-texture patch 1, the center position point F on the bottom edge line of sub-texture patch 3 is determined as the origin of the model coordinate system of sub-texture patch 3, the center position point G on the bottom edge line of sub-texture patch 6 is determined as the origin of the model coordinate system of sub-texture patch 6, the center position point H on the bottom edge line of sub-texture patch 11 is determined as the origin of the model coordinate system of sub-texture patch 11, the center position point I on the bottom edge line of sub-texture patch 8 is determined as the origin of the model coordinate system of sub-texture patch 8, and the center position point J on the bottom edge line of sub-texture patch 13 is determined as the origin of the model coordinate system of sub-texture patch 13.

[0201] In addition, it should be noted that the first position (x 1 ,y 1 , z 1 ) as the first position of sub-texture patch 1 in the world coordinate system. Similarly, the center point F is at the first position (x 2 ,y 2 , z 2 ) as the first position of the sub-texture patch 3 in the world coordinate system, and the center position point G is at the first position (x 3 ,y 3 , z 3 ) as the first position of the sub-texture patch 6 in the world coordinate system, and the center point H is at the first position (x 4 ,y 4 , z 4 ) as the first position of the sub-texture patch 11 in the world coordinate system, and the center position point I is at the first position (x 5 ,y 5 , z 5 ) as the first position of the sub-texture patch 8 in the world coordinate system, and the center position point J is at the first position (x 6 ,y 6 , z 6) as the first position of the sub-texture patch 13 in the world coordinate system.

[0202] Based on this, for each sub-texture patch, the displacement vector between the first position of the center position point of the bottom edge line and the corresponding second position can be determined, and then according to the displacement vector, the center position point of the bottom edge line is moved from the first position to the second position, so as to realize moving each sub-texture patch to the corresponding second position. For example, according to the current first position (x 1 ,y 1 , z 1 ) and the second position (x) corresponding to sub-texture patch 1 1 ′ ,y 1 ′ ,z 1 ′ ), determine the displacement vector (x 1 ′ -x 1 ,y 1 ′ -y 1 , z 1 ′ -z 1 ), and then determine the transformation matrix corresponding to the sub-texture patch 1 according to the displacement vector, so as to move the sub-texture patch 1 from the first position (x 1 ,y 1 , z 1 ) moves to the second position (x 1 ′ ,y 1 ′ ,z 1 ′ ), similarly, sub-texture patch 3, sub-texture patch 6, sub-texture patch 11, sub-texture patch 8 and sub-texture patch 13 are moved from the first position to the second position in sequence, and the obtained Figure 6 The second texture patch A shown 5 B 5 C 5 D 5 , the second texture patch A 5 B 5 B 5 D 5 The corresponding second texture is formed by splicing the local first textures corresponding to sub-texture patch 1, sub-texture patch 3, sub-texture patch 6, sub-texture patch 11, sub-texture patch 8 and sub-texture patch 13 respectively.

[0203] So far, the method provided in this embodiment has been explained. By determining the sub-texture patches corresponding to the first texture patch and splicing the sub-texture patches, the first texture attached to the patch model can be indirectly split and spliced, and a second texture with a different texture layout can be reassembled. When determining each sub-texture patch, only vertex processing needs to be performed on the first texture patch. Compared with the related technology described above, there is no need to generate a mask map for each texture map, which can save storage resources. In addition, there is no need to perform pixel-by-pixel processing on the texture map, the fault tolerance rate of the split texture is higher, and the efficiency of splitting and reassembling the patch texture is improved.

[0204] In addition, since the splitting and reassembly efficiency of the patch texture is high, even if the user needs to adjust the spliced ​​second texture patch, the sub-patch to be spliced ​​can be re-determined based on the area selection operation, splitting operation, etc., so as to generate a new second texture patch by splicing. Compared with the cutting method through the mask map described above, the adjustment efficiency of the second texture patch is faster.

[0205] It can be understood that the above is similar to Figures 2 to 7 The size, appearance, layout, display text and other information of each element in the schematic diagram are exemplary and are not intended to limit the actual graphical user interface.

[0206] It should be noted that in each drawing, the same pattern represents the same element. Therefore, each pattern is labeled when it first appears, and when it appears in subsequent drawings, although it is not labeled, the description in the previous drawings can be referred to.

[0207] In addition, in the embodiments of the present application, the operations applied when implementing different processing functions may be operations of the same type, but different triggering timings or triggering objects may trigger different processing functions, which can be distinguished in actual application without further specific restrictions.

[0208] Corresponding to the texture processing method provided in the embodiment of the present application, the embodiment of the present application also provides a texture processing device 2000, such as Figure 8 As shown, the device 2000 includes: an acquisition unit 2001, a determination unit 2002 and a splicing unit 2003;

[0209] An acquisition unit 2001 is used to acquire at least one first texture patch configured with a first texture;

[0210] A determination unit 2001 is used to determine a position to be split corresponding to the first texture patch and a target vertex pair corresponding to the position to be split;

[0211] The determining unit 2002 is further used to determine a plurality of sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture patch is a local texture of the first texture;

[0212] The stitching unit 2003 is used to stitch a plurality of sub-texture patches to obtain a second texture patch having a second texture; the second texture is obtained by stitching the sub-textures corresponding to each sub-texture patch.

[0213] Optionally, the determination unit 2002 is specifically configured to divide the first texture patch into a plurality of patch areas according to the position to be split; and determine a target vertex pair at the position to be split corresponding to a first patch area among the plurality of patch areas.

[0214] Optionally, the above device 2000 further includes a display unit 2004;

[0215] A display unit 2004, configured to display the first texture patch via a graphical user interface;

[0216] The determining unit 2002 is specifically configured to determine the to-be-split position points corresponding to the first texture patch in response to the partitioning operation on the first texture patch.

[0217] Optionally, the partitioning operation includes a first partitioning operation and a second partitioning operation; in response to the partitioning operation on the first texture patch;

[0218] The display unit 2004 is further configured to display a partition mark at a first display position in the first texture patch in response to the first partition operation; and to control the partition mark to move from the first display position to the second display position in response to the second partition operation;

[0219] The determining unit 2002 is further configured to determine, in response to the completion of the second partitioning operation, the intersection of the partition mark at the second display position and at least two patch edges of the first texture patch as the position to be split.

[0220] Optionally, the determination unit 2002 is further specifically configured to, in response to an area selection operation, determine the patch area selected by the area selection operation as the first patch area; and in response to a splitting operation, determine a target vertex pair at a position to be split corresponding to the first patch area.

[0221] Optionally, determination unit 2002 is further specifically used to connect the original vertices and the target vertices based on a preset topological connection relationship to obtain a plurality of sub-patches without texture; determine the target texture coordinates of the patch vertex of each of the sub-patches in the original texture map; the patch vertex is the original vertex or the target vertex; and sample in the original texture map according to the target texture coordinates of the patch vertex of each of the sub-patches to obtain the plurality of sub-texture patches corresponding to the first texture patch.

[0222] Optionally, determination unit 2002 is further specifically used to determine, for each of the sub-patch, the target patch edge lines corresponding to the patch vertices of the sub-patch in the first texture patch; and determine the target texture coordinates of the patch vertices of the sub-patch in the original texture map according to the original texture coordinates corresponding to the original vertices corresponding to the target patch edge lines in the original texture map.

[0223] Optionally, the determination unit 2002 is further specifically used to generate a target vertex pair at the position to be split when the position to be split is not the position of the original vertex of the first texture patch; when the position to be split is the position of the original vertex of the first texture patch, split the original vertex into a target vertex pair.

[0224] Optionally, the display unit 2004 is further used to distinguish and display the sub-texture patch corresponding to the first patch area and the sub-texture patch corresponding to the second patch area according to the splitting operation; the second patch area is the remaining patch areas in each patch area except the first patch area.

[0225] Optionally, the texture orientation of the second texture is the same as the texture orientation of the first texture.

[0226] Optionally, the stitching unit 2003 is specifically used to determine the first position and the second position of each sub-texture patch in a preset world coordinate system; control each sub-texture patch to move from the first position to the second position, and stitch together to obtain a second texture patch with a second texture.

[0227] Optionally, the stitching unit 2003 is specifically used to determine the stitching order of each sub-texture patch; and determine the second position of each sub-texture patch in the world coordinate system in turn according to the stitching order.

[0228] Optionally, the splicing unit 2003 is specifically configured to perform the following steps S1 to S3:

[0229] Step S1: determining the preset position in the world coordinate system as the second position in the world coordinate system of the sub-texture patch that ranks first in the splicing order;

[0230] Step S2: determining the second position of the i-th sub-texture patch in the splicing order in the world coordinate system according to the second position of the i-1th sub-texture patch and the size value of the i-1th sub-texture patch in the preset axial direction of the world coordinate system;

[0231] Step S3: When it is detected that i is less than N, set i=i+1, and return to execute steps S2 to S3 until it is detected that i is equal to N; i traverses 2 to N, N is the number of sub-texture patches, i is an integer, and N is an integer greater than 1.

[0232] Optionally, the stitching unit 2003 is specifically used to determine, for each sub-texture patch, a key position point on a target edge line of the sub-texture patch; the key position point is the origin of a model coordinate system corresponding to the sub-texture patch; the target edge line is used to connect reference vertices of the sub-texture patch, and the reference vertex has a minimum coordinate component in a preset axial direction among the vertices of each patch of the sub-texture patch; determine a displacement vector between a first position and a second position corresponding to the key position point in the world coordinate system; and control the sub-texture patch to move from the first position to the second position according to the displacement vector.

[0233] Optionally, the splicing unit 2003 is specifically configured to determine the geometric center point of the target edge line as the key position point.

[0234] Corresponding to a texture processing method provided in an embodiment of the present application, an electronic device 3000 for implementing the texture processing method is also provided in an embodiment of the present application. Fig. 9 As shown, the electronic device 3000 includes: a processor 3001; and a memory 3002, which is used to store a program of a texture processing method. After the device is powered on and the program of the texture processing method is run by the processor, any method embodiment of the above-mentioned patch texture method can be executed. For example, the following steps can be executed:

[0235] Obtain at least one first texture patch configured with a first texture, where the first texture is sampled from an original texture map;

[0236] Determine the position to be split corresponding to the first texture patch and the target vertex pair corresponding to the position to be split;

[0237] Determine a plurality of sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture patch is a local texture of the first texture;

[0238] A plurality of sub-texture patches are spliced ​​together to obtain a second texture patch having a second texture; the second texture is obtained by splicing the sub-textures corresponding to the sub-texture patches.

[0239] Corresponding to the texture processing method provided in the embodiment of the present application, the embodiment of the present application further provides a computer-readable storage medium storing a program of the texture processing method, the program is run by a processor, and any method embodiment of the above-mentioned patch texture method can be executed, for example, the following steps can be executed:

[0240] Obtain at least one first texture patch configured with a first texture, where the first texture is sampled from an original texture map;

[0241] Determine the position to be split corresponding to the first texture patch and the target vertex pair corresponding to the position to be split;

[0242] Determine a plurality of sub-texture patches corresponding to the first texture patch according to the original vertex of the first texture patch and the target vertex in the target vertex pair; the sub-texture corresponding to the sub-texture patch is a local texture of the first texture;

[0243] A plurality of sub-texture patches are spliced ​​together to obtain a second texture patch having a second texture; the second texture is obtained by splicing the sub-textures corresponding to the sub-texture patches.

[0244] It should be noted that for the detailed description of the device, electronic device and computer-readable storage medium provided in the embodiments of the present application, reference can be made to the relevant description of the texture processing method embodiment provided in the embodiments of the present application, which will not be repeated here.

[0245] Although the present application is disclosed as above in the form of a preferred embodiment, it is not intended to limit the present application. Any technical personnel in this field may make possible changes and modifications without departing from the spirit and scope of the present application. Therefore, the scope of protection of the present application shall be based on the scope defined by the claims of the present application.

[0246] In a typical configuration, an electronic device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0247] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0248] 1. Computer-readable media includes permanent and non-permanent, removable and non-removable media that can be used to store information by any method or technology. Information can be computer-readable operations, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined in this article, computer-readable media does not include non-transitory media such as modulated data signals and carrier waves.

[0249] 2. Those skilled in the art should understand that the embodiments of the present application can be provided as methods, systems or computer program products. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0250] Although the present application is disclosed as above in the form of a preferred embodiment, it is not intended to limit the present application. Any technical personnel in this field may make possible changes and modifications without departing from the spirit and scope of the present application. Therefore, the scope of protection of the present application shall be based on the scope defined by the claims of the present application.

Claims

1. A texture processing method, characterized in that: The method comprises: Acquire at least one first texture patch configured with a first texture, where the first texture is sampled from an original texture map; Determine a position to be split corresponding to the first texture patch, and a target vertex pair corresponding to the position to be split; Determine a plurality of sub-texture patches corresponding to the first texture patch according to an original vertex of the first texture patch and a target vertex in the target vertex pair; the sub-textures corresponding to the sub-texture patches are local textures of the first texture; The plurality of sub-texture patches are spliced ​​together to obtain a second texture patch having a second texture; the second texture is obtained by splicing the sub-textures corresponding to the sub-texture patches.

2. The method according to claim 1, characterized in that The step of determining the target vertex pair corresponding to the position to be split includes: Dividing the first texture patch into a plurality of patch areas according to the position to be split; A target vertex pair at a position to be split corresponding to a first patch area among the plurality of patch areas is determined.

3. The method according to claim 2, characterized in that The determining the position to be split corresponding to the first texture patch includes: Displaying the first texture patch through a graphical user interface; In response to the partitioning operation on the first texture patch, a to-be-split position corresponding to the first texture patch is determined.

4. The method according to claim 3 is characterized in that The partitioning operation includes a first partitioning operation and a second partitioning operation; and in response to the partitioning operation on the first texture patch, determining a to-be-split position corresponding to the first texture patch includes: In response to the first partitioning operation, displaying a partition mark at a first display position in the first texture patch; In response to the second partition operation, controlling the partition mark to move from the first display position to a second display position; In response to the completion of the second partitioning operation, the intersection position of the partition mark located at the second display position and at least two patch edges of the first texture patch is determined as the position to be split.

5. The method according to claim 3, characterized in that: The step of determining a target vertex pair at a position to be split corresponding to a first patch area among the plurality of patch areas comprises: In response to a region selection operation, determining the patch region selected by the region selection operation as the first patch region; In response to the splitting operation, a target vertex pair at a to-be-split position corresponding to the first patch area is determined.

6. The method according to any one of claims 1 to 5, characterized in that: The determining, according to the original vertex of the first texture patch and the target vertex in the target vertex pair, a plurality of sub-texture patches corresponding to the first texture patch comprises: Based on a preset topological connection relationship, the original vertex and the target vertex are connected to obtain a plurality of sub-faces without texture; Determine the target texture coordinates of the patch vertex of each of the sub-patch in the original texture map; the patch vertex is the original vertex or the target vertex; Sampling is performed in the original texture map according to the target texture coordinates of the patch vertices of each of the sub-patch to obtain the multiple sub-texture patches corresponding to the first texture patch.

7. The method according to claim 6, characterized in that: Determining the target texture coordinates of the patch vertices of each of the sub-patch in the original texture map comprises: For each of the sub-patch, determining a target patch edge line corresponding to the patch vertices of the sub-patch in the first texture patch; The target texture coordinates of the patch vertices of the sub-patch in the original texture map are determined according to the original texture coordinates corresponding to the original vertices corresponding to the edge lines of the target patch in the original texture map.

8. The method according to claim 2 or 5, characterized in that: The step of determining a target vertex pair at a position to be split corresponding to the first patch area comprises: When the position to be split is not the position of the original vertex of the first texture patch, generating the target vertex pair at the position to be split; When the position to be split is the position of the original vertex of the first texture patch, the original vertex is split into the target vertex pair.

9. The method according to claim 5, characterized in that The method further comprises: According to the splitting operation, the sub-texture patch corresponding to the first patch area and the sub-texture patch corresponding to the second patch area are displayed separately; the second patch area is the remaining patch areas in each patch area except the first patch area.

10. The method according to claim 1, characterized in that The texture orientation of the second texture is the same as the texture orientation of the first texture.

11. The method according to claim 1, characterized in that: The step of stitching the plurality of sub-texture patches to obtain a second texture patch having a second texture includes: Determine a first position and a second position of each of the sub-texture patches in a preset world coordinate system; Each of the sub-texture patches is controlled to move from the first position to the second position, and the sub-texture patches are spliced ​​to obtain a second texture patch having a second texture.

12. The method according to claim 11, characterized in that The step of determining the second position of each of the sub-texture patches in a preset world coordinate system comprises: Determining the splicing order of each of the sub-texture patches; According to the splicing order, the second position of each of the sub-texture patches in the world coordinate system is determined in sequence.

13. The method according to claim 12, characterized in that The step of sequentially determining the second position of each of the sub-texture patches according to the splicing order includes: Step S1: determining the preset position in the world coordinate system as the second position in the world coordinate system of the sub-texture patch that ranks first in the splicing order; Step S2: determining the second position of the sub-texture patch ranked at the i-th position in the splicing order in the world coordinate system according to the second position of the sub-texture patch ranked at the i-1th position and the size value of the sub-texture patch ranked at the i-1th position in the preset axial direction of the world coordinate system; Step S3: When it is detected that i is less than N, set i=i+1, and return to execute steps S2 to S3 until it is detected that i is equal to N; i traverses 2 to N, N is the number of the sub-texture patches, i is an integer, and N is an integer greater than 1.

14. The method according to claim 11, characterized in that The controlling each of the sub-texture patches to move from the first position to the second position respectively, and splicing to obtain a second texture patch having a second texture, comprises: For each of the sub-texture patches, determine a key position point on a target edge line of the sub-texture patch; the key position point is the origin of a model coordinate system corresponding to the sub-texture patch; the target edge line is used to connect reference vertices of the sub-texture patch, and the reference vertex has a minimum coordinate component in a preset axial direction among the patch vertices of the sub-texture patch; Determine a displacement vector between the first position and the second position corresponding to the key position point in the world coordinate system; According to the displacement vector, the sub-texture patch is controlled to move from the first position to the second position.

15. The method according to claim 14, characterized in that Determining the key position points on the target edge line of the sub-texture patch includes: The geometric center point of the target edge line is determined as the key position point.

16. A texture processing device, characterized in that: The device comprises: an acquisition unit, a determination unit and a splicing unit; The acquisition unit is used to acquire at least one first texture patch configured with a first texture; the first texture is sampled from an original texture map; The determining unit is used to determine the position to be split corresponding to the first texture patch and the target vertex pair corresponding to the position to be split; The determining unit is further configured to determine a plurality of sub-texture patches corresponding to the first texture patch according to an original vertex of the first texture patch and a target vertex in the target vertex pair; the sub-textures corresponding to the sub-texture patches are local textures of the first texture; The stitching unit is used to stitch the multiple sub-texture patches to obtain a second texture patch with a second texture; the second texture is obtained by stitching the sub-textures corresponding to each of the sub-texture patches.

17. An electronic device, characterized in that: include: processor; as well as The memory is used to store a data processing program. After the electronic device is powered on and the program is run by the processor, the method according to any one of claims 1 to 15 is executed.

18. A computer-readable storage medium, characterized in that: A data processing program is stored, and the program is run by a processor to execute the method according to any one of claims 1 to 15.